在CentOS上監控Tomcat性能有多種方法,以下是一些常用的監控方法:
catalina.sh
),添加以下JMX相關的配置: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"
$TOMCAT_HOME/conf/tomcat-users.xml
文件,添加一個具有manager-gui
角色的用戶:<role rolename="manager-gui"/>
<user username="admin" password="admin" roles="manager-gui"/>
http://<your-tomcat-server>:8080/manager/html
,使用配置的用戶名和密碼登錄即可。Prometheus + Grafana:
prometheus.yml
文件以抓取Tomcat的JMX指標。Application Manager:這是一個功能強大的Tomcat監控工具,可以提供深入的性能監控和警報功能。按照官方文檔進行安裝和配置。
ps -ef | grep tomcat
命令來檢查Tomcat進程是否正在運行。tail -f $TOMCAT_HOME/logs/catalina.out
命令來查看Tomcat的日志文件。netstat -tuln | grep 8080
命令來查看Tomcat使用的端口。可以編寫一個Shell腳本來監控Tomcat進程,并在進程掛掉時自動重啟:
#!/bin/sh
JAVA_HOME=/usr/local/jdk1.8.0_161
PATH=$JAVA_HOME/bin:$PATH
while true; do
PID=$(ps -ef | grep java | grep tomcat | grep -w 'apache-tomcat-8.5.29_2' | grep -v 'grep' | awk '{print $2}')
if [ -z "$PID" ]; then
echo "[error] Tomcat process not found. Restarting..."
/usr/local/apache-tomcat-8.5.29_2/bin/startup.sh
else
echo "[info] Tomcat process is running with PID $PID."
fi
sleep 10
done
將腳本保存為monitor.sh
,并賦予執行權限:
chmod +x monitor.sh
使用crontab -e
定時執行該腳本。
通過上述方法,你可以有效地監控CentOS上Tomcat的運行狀態。選擇適合你需求的方法進行實施。