iopsystems / rezolus

Systems performance telemetry
Other
59 stars 9 forks source link

Add the block sampler and the network interface sampler #197

Closed yangxi closed 1 month ago

yangxi commented 7 months ago

The samplers.network_interface samples network metrics from /sys/class/net/DEVICE/statistics The sampers.block_device samples block metrics from /sys/block/DEVICE/stat

brayniac commented 7 months ago

I'm wondering if there's another way we can achieve this. On my storage test system, this increases CPU utilization of rezolus from ~22% to ~42% and adds about 9k read syscalls/s. The total syscall load increase is about 22k/s from 8k/s -> 30k/s.

I'm hesitant to merge this with these increases.

brayniac commented 7 months ago

The storage sampler total read/write metrics double-count when things are layered using device mapper. I'm not sure if that's the desired behavior or if we want to try to filter things so we're only tracking metrics for physical block devices.

brayniac commented 7 months ago

Similarly the network sampler totals will double count traffic when physical interfaces are part of a bridge

brayniac commented 1 month ago

Closing this out since it's been open and significant code changes have happened. If we need any of the metrics from this PR, open an issue to track and we can add them following the new patterns.