时间:2021-05-22
最近公司需要在Linux下监控tomcat的服务,一旦tomcat服务存在异常或者宕机,重启tomcat保证服务的正常运行,由于Linux下有Shell脚本可以实现此效果,下面是Linux下shell脚本监控Tomcat的状态并实现自动启动的步骤。
1.编写Shell脚本monitor.sh
#!/bin/sh# func:自动监控tomcat脚本并且执行重启操作# author:EagleHao# date:2018-04-08# DEFINE# 获取tomcat进程ID(其中[grep -w 'tomcat']代码中的tomcat需要替换为你的tomcat文件夹名)TomcatID=$(ps -ef |grep tomcat |grep -w 'tomcat'|grep -v 'grep'|awk '{print $2}')# tomcat启动程序(这里注意tomcat实际安装的路径)StartTomcat=/opt/tomcat/bin/startup.shTomcatCache=/opt/tomcat/work#定义要监控的页面地址WebUrl=http://localhost:8080#日志输出GetPageInfo=/tmp/TomcatMonitor.InfoTomcatMonitorLog=/tmp/TomcatMonitor.logMonitor(){echo "[info]开始监控tomcat...[$(date +'%F %H:%M:%S')]"if [ $TomcatID ];then #这里判断Tomcat进程是否存在echo "[info]当前tomcat进程ID为:$TomcatID,继续检测页面..."# 检测是否启动成功(成功的话页面会返回状态"200")TomcatServiceCode=$(curl -s -o $GetPageInfo -m 10 --connect-timeout 10 $WebUrl -w %{http_code})if [ $TomcatServiceCode -eq 200 ];thenecho "[info]页面返回码为$TomcatServiceCode,tomcat启动成功,测试页面正常"elseecho "[error]tomcat页面出错,请注意...状态码为$TomcatServiceCode,错误日志已输出到$GetPageInfo"echo "[error]页面访问出错,开始重启tomcat"kill -9 $TomcatID # 杀掉原tomcat进程sleep 3rm -rf $TomcatCache # 清理tomcat缓存$StartTomcatfielseecho "[error]tomcat进程不存在!tomcat开始自动重启..."echo "[info]$StartTomcat,请稍候..."rm -rf $TomcatCache$StartTomcatfiecho "--------------------------"}Monitor>>$TomcatMonitorLog2.测试Shell脚本monitor.sh是否允许成功
第一:执行脚本./monitor.sh
如果报权限错误:chmod777 monitor.sh
第二:执行脚本./monitor.sh
如果报/bin/bash^M:,坏的解释器,没有那个文件或目录 :sed -i's/\r$//' build.sh
第三:执行脚本./monitor.sh
如果有\z字符输出不了:更改xshell字体
3.把脚本加到crontab定时任务中
每分钟检查一次
打开/etc/crontab文件添加定时任务
总结
以上所述是小编给大家介绍的Linux下shell脚本监控Tomcat的状态并实现自动启动的步骤,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文主要介绍的是Linux下重新启动Tomcat的步骤,在Linux系统下,重启Tomcat使用命令操作的!具体的步骤如下:首先,进入Tomcat下的bin目录
本文实例讲述了PHP+swoole+linux实现系统监控和性能优化操作。分享给大家供大家参考,具体如下:服务器监控端口监控php运行shell脚本classS
搭建MySQL主从后,很多时候不知道从的状态是否ok,有时候出现异常不能及时知道,这里通过shell脚本结合zabbix实现监控并告警一般情况下,在MySQL的
1.用shell工具进入到linux下的tomcat的文件夹下cd/usr/你的tomcat的路径2.进入bin目录下cdbin/3.调用关闭脚本./shutd
场景公司项目部署在docker中,由于未知原因容器偶尔会停止,需要写一个脚本监控容器运行状态,如果容器停止了,就再启动该容器shell脚本#!/bin/bash