46 lines
1.2 KiB
Python
Executable File
46 lines
1.2 KiB
Python
Executable File
#!/usr/bin/python3
|
|
import time
|
|
import configparser
|
|
|
|
config = configparser.ConfigParser()
|
|
config.read('config.ini')
|
|
|
|
from exporter.cli import Cli
|
|
from exporter.statsdExporter import StatsdExporter
|
|
from monitors.load import Load
|
|
from monitors.hdd import HDD
|
|
from monitors.processes import Processes
|
|
from monitors.ram import Ram
|
|
from monitors.cpu import CPU
|
|
from monitors.user import User
|
|
from monitors.network import Network
|
|
from monitors.apt import APT
|
|
from monitors.ufw import UFW
|
|
from monitors.managed import Managed
|
|
from monitors.restart import Restart
|
|
|
|
#exporter = Cli()
|
|
exporter = StatsdExporter()
|
|
|
|
checks = []
|
|
checks.append(Load(exporter))
|
|
checks.append(HDD(exporter))
|
|
checks.append(Processes(exporter))
|
|
checks.append(Ram(exporter))
|
|
checks.append(CPU(exporter))
|
|
checks.append(User(exporter))
|
|
if config['Checks']['Network'] == True:
|
|
checks.append(Network(exporter))
|
|
checks.append(APT(exporter))
|
|
checks.append(UFW(exporter))
|
|
checks.append(Managed(exporter))
|
|
checks.append(Restart(exporter))
|
|
|
|
while True:
|
|
for check in checks:
|
|
if check.loopCount > check.interval:
|
|
check.run()
|
|
check.loopCount = -1;
|
|
check.loopCount = check.loopCount + 1
|
|
time.sleep(1)
|