Files
rpi_weather/monitor_network.py
2019-08-31 18:08:33 +00:00

29 lines
788 B
Python
Executable File

#!/usr/bin/env python3
import json
import time
import subprocess
from subprocess import CalledProcessError
import logging
import logging.handlers as Handlers
logging.basicConfig(format='%(asctime)s - %(name)s - %(levelname)s - %(message)s')
log = logging.getLogger()
log.setLevel(logging.DEBUG)
file = open('config.json', mode='r')
config = json.loads(file.read())
file.close()
while True:
try:
log.info("Pinging server " + config['server'])
output = subprocess.check_output(['ping', '-c', '5', config['server']], stderr=subprocess.STDOUT)
log.info("Ping OK")
time.sleep(5)
except CalledProcessError as e:
log.error(e.output.decode('ascii', 'ignore'))
log.error("Will reboot now")
output = subprocess.check_output(['shutdown', '-r', 'now'], stderr=subprocess.STDOUT)