==== Check service and restart if failed ====
Check the service if nginx is running and if not start
#!/usr/bin/env bash
# Enable System level logging
# Redirect log to logger
exec 1> >(logger -t $(basename $0)) 2>&1
STATUS="$(systemctl is-active nginx.service)"
if [ "${STATUS}" != "active" ]; then
echo "Not running starting Service : Nginx"
systemctl start nginx.service
fi
for python
#!/usr/bin/env python3
import os
import logging
from systemd import journal
def main(serviceName):
status = os.system('systemctl is-active --quiet ' + serviceName)
finisher(status)
def finisher(status):
if status is not 0:
status = os.system('systemctl start --quiet ' + serviceName)
print(status)
if status is not 0:
log.error('Failed to start: ' + serviceName)
else:
log.info('Started service: ' + serviceName)
if __name__ == "__main__":
# Initialize and handle options
log = logging.getLogger(__file__)
log.addHandler(journal.JournaldLogHandler())
log.setLevel(logging.INFO)
# Define service array
serviceName = ["nginx"]
for service in serviceName:
main(service)