From f86699a94bdde7d973ba5d6fa3e7ca4ab2f234fb Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Fri, 8 May 2026 19:43:33 +0300 Subject: add duration metric, tolerate missing tracepoints, ship el8 build - Bubbles, treemap, icicle, and the live flamegraph 'b' cycle now include syscall duration (sum) as a third metric alongside events and bytes. Statsengine snapshots expose TotalLatencyNs to support this. - AttachAll takes an optional warn callback. Production passes one so older kernels that lack newer tracepoints log a warning and keep going instead of aborting startup. - Dockerfile.el8 + scripts/build-with-docker-el8.sh + mage buildDockerEl8 produce ior.el8, a static binary built against Rocky Linux 8 glibc for RHEL/Rocky/Alma 8 hosts. - README.md documents installing mage and the new el8 target. --- internal/statsengine/snapshot.go | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) (limited to 'internal/statsengine/snapshot.go') diff --git a/internal/statsengine/snapshot.go b/internal/statsengine/snapshot.go index f2b617b..7a95ab8 100644 --- a/internal/statsengine/snapshot.go +++ b/internal/statsengine/snapshot.go @@ -68,12 +68,13 @@ type SyscallSnapshot struct { Errors uint64 Bytes uint64 - LatencyMinNs uint64 - LatencyMaxNs uint64 - LatencyMeanNs float64 - LatencyP50Ns uint64 - LatencyP95Ns uint64 - LatencyP99Ns uint64 + LatencyMinNs uint64 + LatencyMaxNs uint64 + LatencyMeanNs float64 + TotalLatencyNs uint64 + LatencyP50Ns uint64 + LatencyP95Ns uint64 + LatencyP99Ns uint64 } // FileSnapshot is an aggregated per-file ranking entry. @@ -84,8 +85,9 @@ type FileSnapshot struct { BytesRead uint64 BytesWritten uint64 - AvgLatencyNs float64 - MaxLatencyNs uint64 + AvgLatencyNs float64 + MaxLatencyNs uint64 + TotalLatencyNs uint64 } // ProcessSnapshot is an aggregated per-process entry. @@ -97,7 +99,8 @@ type ProcessSnapshot struct { RatePerSec float64 Bytes uint64 - AvgLatencyNs float64 + AvgLatencyNs float64 + TotalLatencyNs uint64 } // HistogramBucketSnapshot is one bucket of a histogram snapshot. -- cgit v1.2.3