PATH:
usr
/
local
/
lib
/
python3.9
/
site-packages
/
agent360
/
plugins
#!/usr/bin/env python # -*- coding: utf-8 -*- import os import subprocess import plugins import json import re class Plugin(plugins.BasePlugin): __name__ = 'diskstatus-nvme' def run(self, config): ''' Monitor nvme disk status For NVME drives install nvme-cli (https://github.com/linux-nvme/nvme-cli#distro-support) This plugin requires the agent to be run under the root user. ''' results = {} try: data = subprocess.Popen('nvme --list --output-format=json', stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True).communicate()[0] data = json.loads(data.decode('utf-8')) data['Devices'] nvme = True except Exception: nvme = False return "Could not fetch nvme status information" if nvme is True: for value in data['Devices']: device = {} disk_data = os.popen('nvme smart-log {} --output-format=json'.format(value['DevicePath'])).read() try: data_disk = json.loads(disk_data) except Exception: pass for disk_key, disk_value in data_disk.items(): if disk_key.startswith('temperature'): device[disk_key] = round(disk_value-273.15, 0) # kelvin to celsius else: device[disk_key] = disk_value results[value['DevicePath'].replace('/dev/', '')] = device return results if __name__ == '__main__': Plugin().execute()
[-] wp-toolkit.py
[open]
[+]
..
[-] plugins.py
[open]
[-] yum-updates.py
[open]
[-] proftpd.py
[open]
[-] sleeper.py
[open]
[-] network.py
[open]
[+]
__pycache__
[-] bird.py
[open]
[-] diskusage.py
[open]
[-] exim.py
[open]
[-] cpanel.py
[open]
[-] loggedin.py
[open]
[-] memory.py
[open]
[-] megacli.py
[open]
[-] phpfpm.py
[open]
[-] rabbitmq.py
[open]
[-] elasticsearch.py
[open]
[-] mysql.py
[open]
[-] iostat.py
[open]
[-] plesk-cgroups.py
[open]
[-] fail2ban.py
[open]
[-] loadavg.py
[open]
[-] dirsize.py
[open]
[-] openvpn.py
[open]
[-] apt-updates.py
[open]
[-] postfix.py
[open]
[-] diskstatus.py
[open]
[-] tcpports.py
[open]
[-] haproxy.py
[open]
[-] ping.py
[open]
[-] unbound.py
[open]
[-] dovecot.py
[open]
[-] memcached.py
[open]
[-] bitninja.py
[open]
[-] powerdns.py
[open]
[-] mailq.py
[open]
[-] gpu.py
[open]
[-] system.py
[open]
[-] cloudlinux.py
[open]
[-] cpu_freq.py
[open]
[-] janus.py
[open]
[-] nginx.py
[open]
[-] bind.py
[open]
[-] cpu.py
[open]
[-] litespeed.py
[open]
[-] swap.py
[open]
[-] temp.py
[open]
[-] kamailio.py
[open]
[-] httpd.py
[open]
[-] diskstatus-nvme.py
[open]
[-] process.py
[open]
[-] mongodb.py
[open]
[-] __init__.py
[open]
[-] minecraft.py
[open]
[-] docker.py
[open]
[-] vms.py
[open]
[-] asterisk.py
[open]
[-] redis_stat.py
[open]
[-] mdstat.py
[open]
[-] cloudlinux-dbgov.py
[open]
[-] diskinodes.py
[open]