阅读量:2
1. 系统命令监控(基础快速检查)
通过CentOS系统自带命令快速验证Tomcat运行状态及资源占用:
- 查看进程:
ps -ef | grep tomcat或ps -ef | grep java,确认Tomcat进程是否存在; - 检查端口监听:
sudo netstat -tulnp | grep 8080(默认端口)或sudo ss -tulnp | grep 8080,验证Tomcat是否在监听指定端口; - 测试HTTP响应:
curl http://localhost:8080/,若返回Tomcat默认页面则服务正常; - 实时资源监控:
top -p $(pgrep -f tomcat)或htop -p $(pgrep -f tomcat),查看Tomcat进程的CPU、内存占用情况; - 查看实时日志:
tail -f $CATALINA_HOME/logs/catalina.out,跟踪Tomcat运行日志,快速定位异常。
2. JMX(Java标准管理接口,深度监控)
通过JMX获取Tomcat的详细性能指标(如线程池、内存、类加载、JDBC连接池等),需先启用JMX远程访问:
- 启用JMX:编辑
$CATALINA_HOME/bin/catalina.sh,在文件开头添加以下配置(替换your_server_ip为Tomcat服务器IP):保存后重启Tomcat:CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9090 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=your_server_ip"sudo systemctl restart tomcat。 - 使用客户端连接:
- JConsole(JDK自带):运行
jconsole,选择“远程进程”,输入localhost:9090,登录后可查看各项指标; - VisualVM(JDK自带):运行
jvisualvm,添加JMX连接(同上),支持更丰富的插件扩展。
- JConsole(JDK自带):运行
3. Tomcat Manager应用(Web界面监控)
Tomcat自带的Web管理工具,适合快速查看应用状态、会话数、部署情况等:
- 启用Manager应用:编辑
$CATALINA_HOME/conf/tomcat-users.xml,添加具有manager-gui角色的用户:保存后重启Tomcat。<role rolename="manager-gui"/> <user username="admin" password="your_password" roles="manager-gui"/> - 访问Manager界面:在浏览器中输入
http://your_server_ip:8080/manager/html,使用上述用户名密码登录,即可查看Tomcat的运行状态、应用列表、会话信息等。
4. 第三方监控工具(企业级解决方案)
通过专业工具实现长期监控、报警及可视化,适合生产环境:
- Prometheus + Grafana(推荐):
- Prometheus:开源时间序列数据库,用于收集Tomcat指标;
- JMX Exporter:将Tomcat JMX指标转换为Prometheus可识别的格式。
步骤:下载JMX Exporter jar包,编辑catalina.sh添加启动参数:
配置Prometheus(CATALINA_OPTS="$CATALINA_OPTS -javaagent:/path/to/jmx_prometheus_javaagent-0.16.1.jar=9091:/path/to/config.yaml"/etc/prometheus/prometheus.yml)添加Tomcat job:启动Prometheus后,配置Grafana数据源(Prometheus),导入Tomcat监控仪表盘(如Grafana官方Tomcat仪表盘),实现可视化监控。scrape_configs: - job_name: 'tomcat' static_configs: - targets: ['localhost:9091'] - Nagios/Zabbix:
- Nagios:开源监控工具,通过插件监控Tomcat状态(如进程、端口、响应时间),需配置NRPE(远程执行插件);
- Zabbix:企业级监控解决方案,支持Tomcat自动发现、阈值报警、自动恢复等功能,需安装Zabbix Agent并配置模板。
5. 日志与脚本监控(自动化与定制化)
- ELK Stack(日志分析):通过Logstash收集Tomcat日志(
catalina.out、access_log),存储到Elasticsearch,使用Kibana进行可视化分析(如访问量、错误日志统计),快速定位性能瓶颈或异常; - 自定义脚本(自动化运维):编写Shell脚本定期检查Tomcat状态,异常时发送报警(邮件、Slack等)。例如,监控进程的脚本:
赋予执行权限:#!/bin/bash TOMCAT_PID=$(pgrep -f tomcat) if [ -z "$TOMCAT_PID" ]; then echo "$(date): Tomcat is down!" >> /var/log/tomcat_monitor.log # 发送报警(示例:邮件) echo "Tomcat is down!" | mail -s "Tomcat Alert" admin@example.com else echo "$(date): Tomcat is running (PID: $TOMCAT_PID)" >> /var/log/tomcat_monitor.log fichmod +x monitor.sh,添加到cron定时任务(每分钟执行一次):* * * * * /path/to/monitor.sh。
以上就是关于“centos中tomcat如何监控”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm