diff --git a/examples/config.test.json b/examples/config.test.json index 7a002a0..e9c0a04 100644 --- a/examples/config.test.json +++ b/examples/config.test.json @@ -7,6 +7,11 @@ "type":"uptime", "freq":"30", "args":{} + }, + { + "type":"load", + "freq":"30", + "args":{} } ] } \ No newline at end of file diff --git a/pymonitor/monitors/load.py b/pymonitor/monitors/load.py new file mode 100644 index 0000000..2889c9b --- /dev/null +++ b/pymonitor/monitors/load.py @@ -0,0 +1,28 @@ +def load(): + with open("/proc/loadavg", "r") as f: + m1, m5, m15, procs, pid = f.read().strip().split(" ") + return { + "load_1m": m1, + "load_5m": m5, + "load_15m":m15 + } + +mapping = { + "load": { + "properties": { + "load_15m": { + "type": "double" + }, + "load_5m": { + "type": "double" + }, + "load_1m": { + "type": "double" + } + } + } +} + +if __name__ == '__main__': + avg = load() + print(' '.join([avg["load_1m"], avg["load_5m"], avg["load_15m"]]))