Monitoring disk latency in Linux

Started by blazarov, October 17, 2017, 03:26:16 PM

Previous topic - Next topic

blazarov

Hi,

I need to monitor disk I/O for some of our Linux machines, precisely:
1. IOPs
2. disk throughput
3. avg latency

1 and 2 are easy since they are natively supported in nxagentd - System.IO.ReadRate, System.IO.WriteRate, System.IO.BytesReadRate, System.IO.BytesWriteRate

About latency - so far it seems my best chances are parsing iostat's output. I can imagine a way to make it work, but it would be very ugly and probably fragile. Mostly because i should execute iostat on a regular basis and write its output to a local file. Then use nxagent to parse the output.

Another idea would be to parse /proc/diskstats directly in netxms, but i dont think there's a latency counters there..?

Does anyone have an idea on how to realize it in a more clean and robust way?

Also i dont entierly understand if DiskTime has direct relation to the latency?

Victor Kirhenshtein

Hi,

isn't disk time the same thing? It is time spent on I/O - which seems to be the same as disk latency defined in Windows documentation as "A measure of the time delay from the time a disk IO request is created, until the time the disk IO request is completed".

Best regards,
Victor