kumistatus/portsopen.py

20 lines
510 B
Python
Executable file

#!/usr/bin/python3
import time, setuptools, porttools, twitools
hosts = setuptools.getListSetting("Ports", "hosts")
retry = int(setuptools.getSetting("Ports", "retry"))
two = twitools.twObject()
def check(host, port, recipient):
if not porttools.isPortOpen(host, port):
time.sleep(retry)
if not porttools.isPortOpen(host, port):
two.tweet("@%s Port %s is not open on host %s!" % (recipient, port, host))
for h in hosts:
try:
for p in h[1]:
check(h[0], p, h[2])
except TypeError:
check(*h)