网站app搭建,wordpress登陆背景,wordpress悬浮刷新,网站源代码上传使用Python写一个可以监控Tomcat 运行的脚本,并且把.py文件转换成.exe文件 文章来源与博主本人的CSDN博客#xff0c;博客地址#xff1a;https://blog.csdn.net/weixin_43558566/article/details/101458567之前写过.bat 脚本用来监控tomcat运行宕机后自动重启的文章#xf…使用Python写一个可以监控Tomcat 运行的脚本,并且把.py文件转换成.exe文件 文章来源与博主本人的CSDN博客博客地址https://blog.csdn.net/weixin_43558566/article/details/101458567之前写过.bat 脚本用来监控tomcat运行宕机后自动重启的文章接下来提供下python脚本方法供各位同仁参考所有方法基于本人实际开发环境如有瑕疵还望各位看官批评指正## 原理1.通过socket 连接需要监控的服务器及端口 2.如果无法建立连接则说明该都端口存在问题此时调用tomcat重启方法。注意tomcat 启动也需要一定的时间这里我们需要做个时间缓冲。## 具体流程1.打开python 编辑器我用的是PyCharm2.随便新建一个python项目3.这里我开始创建python file取名TomcatRestart.py直接上代码具体原理上面已做说明# -*- coding: utf-8 -*-import os
import sys
import socket
import time
import datetime
import pip
#到python的pip的路径下一般是pythonscripts下执行命令(pip install psutil)#-----服务器上tomcat的信息和服务器的信息---
path path #服务器tomcat路径 注意需要双斜杠
ip ip #服务器ip地址
port 8080 #tomcat端口
file_path E:tomcatlog #记录每次脚本执行的日志文件文件夹路径#-------检测8080端口是否能连接能则tomcat运行中否则重启tomcat----
def tomcat():try:b s.connect((ip,port))# os.system(echo %s connect to port 8080 successfully! %s %(otherStyleTime, logfile))status_code 1except Exception:status_code 2if status_code 2:os.chdir(path)os.system(shutdown.bat)os.system(echo %s cant connect to port 8080, stop tomcat %s %(otherStyleTime,logfile))time.sleep(1)os.system(startup.bat)os.system(echo %s tomcat restart! %s %(otherStyleTime, logfile))time.sleep(60) //注重启需要一段时间这里放置60秒等待时间一般服务器足够重启了
if __name__ __main__:while True : #每1秒循环执行一次脚本#--------创建ipv4地址簇的tcp连接的socket-------------------try:s socket.socket(socket.AF_INET, socket.SOCK_STREAM)s.settimeout(1)//设置连接时间超过1秒无法链接即默认tomcat 发生异常执行tomcat()方法except socket.error as 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(1)4.可以现在本地测试效果直接run 这个TomcatRestart.py文件 然后发现自动打开了本地tomcat关闭tomcat后程序监控到关闭又会自动打开还是比较流畅好用的对于一般中小型项目没压力。## .py文件转换成.exe文件上面的代码可以达到预期的效果但是操作起来未免太麻烦接下来我将TomcatRestart.py文件进行转换生成一个.exe保证高效可移植。 转换步骤1.需要安装pywin32打开setings-------选择查看自己编辑器是否含有标红处的插件如没有点击右侧“”号搜索pywin32选中相应版本然后进行安装注如果安装失败看下具体什么原因一般情况是pip需要升级按照英文提示的本部进行更新然后再重新安装pywin32就好了。2.新建一个文件夹例如 pytomcat,将你需要转换的.py文件和exe文件的.ico图片复制到此文件下。(至于如何把图片转换成.ico格式直接网上一大堆在线工具)接下来打开cmd 命令窗口通过命令进入文件夹目录下执行命令 pyinstaller -F -i 1.ico TomcatRestart.py很棒转换完成执行完命令后需要的exe文件就在dist文件夹中## 双击启动TomcatRestart.exe 文件 完美运行