python 脚本监控windows上tomcat是否运行,否则重启

# -*- coding: utf-8 -*-


import os  
import sys 
import socket
import time
import datetime
import psutil  #到python的pip的路径下,一般是python\scripts下执行命令(pip install psutil)


#-----服务器上tomcat的信息和服务器的信息---
path = 'E:\\tomcat\\apache-tomcat-8.0.0-RC5\\bin'   #服务器tomcat路径
ip = '10.148.83.179'      #服务器ip地址
port = 8008              #tomcat端口
file_path = 'F:\webapps'   #记录每次脚本执行的日志文件文件夹路径


#-------检测8008端口是否能连接,能则tomcat运行中,否则重启tomcat----        
def tomcat():
    try:
        b = s.connect((ip,port))
        os.system("echo %s  connect to port 8008 successfully! >> %s" %(otherStyleTime, logfile))
        status_code = 1
    except Exception:
        status_code = 2
    if status_code == 2:
        os.chdir(path)
        os.system('shutdown.bat')
        os.system("echo %s   can't connect to port 8008, stop tomcat >> %s" %(otherStyleTime,logfile))
        time.sleep(10)
        os.system('startup.bat')
        os.system("echo %s    tomcat restart! >> %s" %(otherStyleTime, logfile)) 

if __name__ == '__main__':   
    while True :     #每五分钟循环执行一次脚本
        #--------创建ipv4地址簇的tcp连接的socket-------------------
        try:
            s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
            s.settimeout(1)
        except socket.error, msg:
            os.system("echo Failed to create socket. Error code: %s , Error message : %s >> %s " %s(str(msg[0]),msg[1],logfile))
        now = int(time.time())
        timeArray = time.localtime(now)
        otherStyleTime = time.strftime("%Y-%m-%d %H:%M:%S", timeArray)    #获取固定格式时间的字符串
        logfile = file_path + '\%s.log' %(time.strftime('%Y%m%d',time.localtime()))    #日志文件存放处
        tomcat()
        time.sleep(60)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值