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/process.go | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'internal/statsengine/process.go') diff --git a/internal/statsengine/process.go b/internal/statsengine/process.go index 3bfd019..b7eb6e7 100644 --- a/internal/statsengine/process.go +++ b/internal/statsengine/process.go @@ -174,11 +174,12 @@ func (s processSnapshotInput) toSnapshot(rateDiv float64) ProcessSnapshot { } return ProcessSnapshot{ - PID: s.pid, - Comm: s.comm, - Syscalls: s.count, - RatePerSec: safeRate(s.count, rateDiv), - Bytes: s.totalBytes, - AvgLatencyNs: avg, + PID: s.pid, + Comm: s.comm, + Syscalls: s.count, + RatePerSec: safeRate(s.count, rateDiv), + Bytes: s.totalBytes, + AvgLatencyNs: avg, + TotalLatencyNs: s.totalLatency, } } -- cgit v1.2.3