gpt4 book ai didi

java - Tomcat 应用程序日志未显示完整堆栈跟踪

转载 作者:行者123 更新时间:2023-11-28 22:04:04 24 4
gpt4 key购买 nike

有一个在 Tomcat 上运行的 Web 应用程序。我使用 slf4j/logback 记录异常及其堆栈跟踪。例如

2017-08-01 00:00:00.000 [http-nio-80-exec-5] ERROR g.s.GuiceyRequestFactoryServlet - 'Server Failure'
java.lang.reflect.InvocationTargetException: null
...
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-util.jar:8.0.33]
at java.lang.Thread.run(Unknown Source) [na:1.8.0_131]
Caused by: ...
... 59 common frames omitted
Caused by: ...
... 64 common frames omitted
java.lang.NullPointerException: null

因为导致 NPE 的真实位置嵌套在至少两个反射调用中的几层以下,不确定是否是这种情况,Tomcat/slf4j/logback 没有显示完整的堆栈跟踪并在 NPE 处停止,不再进一步下。

我期待类似的东西

2017-08-01 00:00:00.000 [http-nio-80-exec-5] ERROR g.s.GuiceyRequestFactoryServlet - 'Server Failure'
java.lang.reflect.InvocationTargetException: null
...
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-util.jar:8.0.33]
at java.lang.Thread.run(Unknown Source) [na:1.8.0_131]
Caused by: ...
... 59 common frames omitted
Caused by: ...
... 64 common frames omitted
Caused by: java.lang.NullPointerException: null
at java.util.Calendar.setTime(Calendar.java:1770) ~[na:1.8.0_60]
... 80 common frames omitted

即在日志中显示更深层次的堆栈跟踪。有谁知道我应该在哪里看以及如何实现?例如汤姆猫配置?登录配置? slf4j 方法?

编辑

对于那些认为这是重复询问那些“... xx common frames omitted”的其他问题的人来说,不,我不在乎这些行。我问的是最后一个 NPE 根本没有被打印出来。请先认真准备。

最佳答案

这应该可以使用 -XX:-OmitStackTraceInFastThrow 选项。

关于java - Tomcat 应用程序日志未显示完整堆栈跟踪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45476483/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com