如何判断EC2 Linux服务器上运行的是哪个Tomcat实例
判断运行的Tomcat实例是tomcat1还是tomcat2的方法
以下是几种直接有效的判断方式:
通过进程工作目录定位
- 先获取Tomcat进程ID:
ps -ef | grep tomcat(过滤出Tomcat相关进程,记下PID) - 查看进程的工作目录:
pwdx <PID>
输出的路径如果是/etc/tomcat/就是tomcat1,是/var/lib/tomcat/就是tomcat2
- 先获取Tomcat进程ID:
通过环境变量CATALINA_HOME判断
Tomcat启动时会设置CATALINA_HOME指向自身安装目录,执行以下命令:cat /proc/<PID>/environ | tr '\0' '\n' | grep CATALINA_HOME
结果里的路径直接对应运行的Tomcat实例查看日志文件的活动状态
两个Tomcat实例的日志目录独立,分别查看日志更新情况:- 检查tomcat1日志:
tail -n 20 /etc/tomcat/logs/catalina.out - 检查tomcat2日志:
tail -n 20 /var/lib/tomcat/logs/catalina.out
有最新启动记录或实时输出的日志对应的就是当前运行的实例
- 检查tomcat1日志:
通过端口关联进程再查路径
虽然两个实例端口配置相同,但进程不同:- 查找端口对应的PID:
ss -tulpn | grep <你的Tomcat端口号> - 拿到PID后,用前面的
pwdx <PID>或环境变量方法确认路径
- 查找端口对应的PID:
内容的提问来源于stack exchange,提问作者April Oo
相关产品推荐
相关产品推荐

