JVM崩溃而没有任何崩溃转储,apport忽略了崩溃报告

时间:2014-09-05 14:19:56

标签: java grails ubuntu crash cron

我在生产服务器上遇到问题,它是groovy / grails应用程序,我使用石英来运行许多crons。

启用时会有一个cron崩溃JVM。我不知道为什么。我无法找到任何崩溃转储或任何日志。

我发现JVM正在调用apport进行崩溃报告,但apport忽略了它。我读到apport还在something.crash目录中创建了/var/crash文件,但我不知道它不是为Java崩溃创建的。

这是来自apport.log文件的日志。

ERROR: apport (pid 2150) Fri Sep  5 05:29:31 2014: called for pid 2100, signal 11
ERROR: apport (pid 2150) Fri Sep  5 05:29:31 2014: executable: /usr/local/java/bin/java (command line "/usr/local/java/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djvmarg=-Xms1024m -Xmx4096m -XX:PermSize=128m -XX:MaxPermSize=1024m -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintTenuringDistribution -Xloggc:/usr/local/tomcat/logs/gc.log -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/usr/local/tomcat/endorsed -classpath /usr/local/tomcat/bin/bootstrap.jar -Dcatalina.base=/usr/local/tomcat -Dcatalina.home=/usr/local/tomcat -Djava.io.tmpdir=/usr/local/tomcat/temp org.apache.catalina.startup.Bootstrap start")
ERROR: apport (pid 2150) Fri Sep  5 05:29:31 2014: executable does not belong to a package, ignoring

请建议我如何为apport启用崩溃转储,我读它只适用于从repo安装的软件包或任何其他方式使java创建崩溃转储而不是将其报告给apport。

如果您需要更多信息,请与我们联系。 提前谢谢。

1 个答案:

答案 0 :(得分:0)

你可以尝试添加一个关闭钩子来转储所有线程的堆栈......这有助于我追踪一次System.exit()调用。 看看this问题。