#!/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")