Device IO Plug-in - Technical Reference

Introduction

The Geneos Device IO Plug-in reports disk activity. This information is published by the kernel enabling the plug-in to produce highly accurate measures of throughput, utilisation, queue lengths, transaction rates, and service time. Each row in the table displays a device mounted on that disk.

The Device IO plug-in is only supported on Linux and Solaris platforms.

On Linux Netprobe versions 3.0.21 and up, the Device IO plug-in extracts its data from the operating system data sources file:

  • DiskStats — /proc/diskstats
  • SysFs — /sys/block/<Device Name>/stat
  • Partitions — /proc/partitions
  • StatFile — /proc/stat

This plug-in extracts the data in order. For example, the Device IO plug-in looks for DiskStats first. If DiskStats is not available, then it looks for SysFs and so on.

Views (for a single view)

View (Solaris)

The Device IO produces a single view for Solaris as follows:

Table Legend

Name Description
Device The name of the actual device
readRate Reads per second
writeRate Writes per second
readRateKB KB read per second
writeRateKB KB written per second
aveTransWaiting average number of transactions waiting for service(queue length)
aveTransActive average number of transactions actively being serviced (removed from the queue but not yet completed)
aveServiceTimeMs average service time, in milliseconds
percentWait percent of time there are transactions waiting for service (queue non-empty)
percentBusy percent of time the disk is busy (transactions in progress)

View (Linux)

The Device IO plug-in produces the following view for Linux:

Headline Legend

Name Description
activeSegments The number of devices.

Table Legend

Name Description
device The name of the actual device.
readRate The number of read requests that were issued to the device per second.
writeRate The number of write requests that were issued to the device per second.
readRateSector The number of sectors read from the device per second.
writeRateSector The number of sectors written to the device per second.
aveRequestSize Average size (in sectors) of the request that were issued to the device.
aveQueueLen The average queue length of the requests that were issued to the device.
aveRequestTimeMs The average time (in milliseconds) for I/O requests issued to the device to be served.
aveServiceTimeMs The average service time (in milliseconds) for I/O requests that were issued to the device.
cpuUtilisation

Percentage of CPU time during which requests were issued to the device.

On Linux Netprobe version 4.x.x or higher, the cpuUtilisation is computed as follows:

  • [(tot_ticks new - tot_ticks old) / (jiffies new - jiffies old)] * 10

Where:

  • tot_tick = total io_ticks from /sys/block/<Device Name>/stat
  • jiffies = Linux kernel time

Plug-in Configuration

deviceList

Allows the user to specify just those devices they are interested in, as opposed to having statistics displayed for all of the devices found in the system.

Mandatory: No

deviceList > device

Identifies a single device that the user wants to see statistics on. The idea is that the user be able to specify several of these, indicating specifically which devices they are interested in.

Mandatory: No