自动化脚本监控Tomcat服务器状态,假死时重启

4星 · 超过85%的资源 需积分: 44 159 下载量 154 浏览量 更新于2024-09-11 4 收藏 1KB TXT 举报
该脚本是一个用于检测和自动重启Tomcat服务器的实用工具,针对的是两个不同的端口(8080和9080)。它主要由三个部分组成:检测URL状态、检查进程并重启Tomcat以及日志记录。 1. **URL状态检测函数**: - `curlit8080()` 和 `curlit9080()` 函数分别用于检查`http://aiyuetuan.ebeiwai.com:8080/check.jsp` 和 `http://aiyuetuan.ebeiwai.com:9080/check.jsp` 的响应状态。它们使用`curl`命令进行HTTP HEAD请求,并设置超时限制(10秒连接时间,3秒最大总耗时),确保在服务器响应200状态码时返回成功。若未接收到200状态,表示服务器可能存在问题。 2. **Tomcat重启逻辑**: - 当检测到8080或9080端口的Tomcat服务状态异常(`curlit` 函数返回失败),脚本会执行以下操作: a. 等待10秒,避免频繁重启。 b. 如果存在对应的服务进程(通过`ps-ef`命令找到PID),则使用`kill -9`强制结束进程。 c. 清除Tomcat的工作目录(`/usr/tomcat6-1/work/` 或 `/usr/tomcat6-2/work/`)以清除旧数据。 d. 重新启动Tomcat服务,通过执行`catalina.sh start`命令。 e. 记录重启事件到日志文件`/var/log/trs/log8080.log`或`/var/log/trs/log9080.log`,包括重启时间和结果(成功或失败)。 3. **日志记录与错误处理**: - 重启操作后,再次检查URL状态,如果仍不成功,则输出错误信息并写入日志文件。 这个脚本设计的主要目的是为了在Tomcat服务器出现假死(即响应停止或超时)时,能够自动检测并重启服务,确保网站的正常运行。它利用了Linux的命令行工具进行监控和管理,对于维护者来说,提供了方便且高效的解决方案,尤其是在服务器无人值守的情况下。可以根据实际情况调整URL、超时时间、日志路径等配置,以适应不同的应用场景。