python监控windows服务判断是否终止
from __future__ import print_function
import psutil
def get_service(name):
service = None
try:
service = psutil.win_service_get(name)
service = service.as_dict()
except Exception as ex:
print(str(ex))
return service
def is_service_running_or_start(name):
service = get_service(name)
if service and service['status'] == 'running':
return "{}:Service is running".format(name)
else:
try:
psutil.win_service_start(name)
return "{}:Service is running".format(name)
except Exception as ex:
return "{}:Service is not running".format(name)
print(is_service_running_or_start('MongoDB'))