我正在尝试分析在Tomcat中部署的应用程序的内存使用情况。
当应用程序在tomcat中运行时,我需要获取堆转储和线程转储。
任何人都可以让我知道如何从终端为Tomcat获取这些转储。
我尝试使用“ps ux | grep apache”获取tomcat PID然后执行“kill -3 PID”,但没有任何反应......
答案 0 :(得分:1)
它取决于您用来运行Tomcat的JVM。 我强烈建议使用JDK运行所有应用程序和服务器(如果是HotSpot,您可能会使用它)。 那么你应该有多个实用工具:
或者你使用jvisualvm将所有工具捆绑成一个漂亮的用户界面。 最后,但并非最不重要的是,你可能得到了错误的PID: - )
答案 1 :(得分:0)
执行kill -3 PID后,Apache Tomcat的PID进程ID在哪里,线程转储将被写入/tomcat/logs/catalina.out