Merge pull request #3 from Ved-vampir/master
perprocess cpu usage added
diff --git a/sensors/io_sensors.py b/sensors/io_sensors.py
index 2fdd24e..219a48f 100644
--- a/sensors/io_sensors.py
+++ b/sensors/io_sensors.py
@@ -44,3 +44,25 @@
sensor_name = "{0}.{1}".format(dev_name, name)
results[sensor_name] = SensorInfo(int(vals[pos]), accum_val)
return results
+
+
+def get_latency(stat1, stat2):
+ disks = set([ i.split('.')[0] for i in stat1 ])
+ results = {}
+ for disk in disks:
+ rdc = disk+'.reads_completed'
+ wrc = disk+'.writes_completed'
+ rdt = disk+'.rtime'
+ wrt = disk+'.wtime'
+ if all(i in stat1 for i in [rdc, wrc, rdt, wrt]) and \
+ all(i in stat2 for i in [rdc, wrc, rdt, wrt]):
+ lat = 0.0
+ if abs((stat1[rdc].value + stat1[wrc].value) - \
+ (stat2[rdc].value + stat2[wrc].value)) > 0:
+ lat = abs(float((stat1[rdt].value + stat1[wrt].value) - \
+ (stat2[rdt].value + stat2[wrt].value)) / \
+ (stat1[rdc].value + stat1[wrc].value) - \
+ (stat2[rdc].value + stat2[wrc].value))
+ results[disk+'.latence'] = SensorInfo(lat, False)
+
+ return results