【发布时间】:2018-11-09 01:45:17
【问题描述】:
Java 应用在 k8s 容器中运行,并使用下一个 appender 将日志消息写入 stdout:
<Appenders>
<Console name="Console" target="SYSTEM_OUT">
<JsonLayout compact="true" eventEol="true" />
</Console>
</Appenders>
被fluentd收集并转移到ELK。
我不是 Java 开发人员,但我想知道在正常的 log4j2 日志记录之后,我是否可以以某种方式摆脱标准输出中的 Java 堆栈跟踪 Exception in thread "main" ...,在 JSON 中包含相同的消息。
【问题讨论】:
-
我认为
Exception in thread "main" ...消息是在应用程序中引发异常并且未在应用程序中捕获时出现的。在这种情况下,应用程序将停止。你说的是这个场景吗?或者你能分享更多你想要删除的细节吗? -
是的,我的意思是java进程因某些错误而失败并关闭的场景。在这种情况下,它会在 JsonLayout 中打印一行错误,并在其后打印堆栈跟踪。
-
捕获异常并根据需要进行处理。如果您提供Minimal, Complete, and Verifiable Example,您会得到更好的建议
-
@D.B.正如我所说,我不是 Java 开发人员,所以我不能自己用代码做任何事情,也许只是编辑 XML 或通过复制粘贴添加一些代码示例。不过还是谢谢你的建议。
标签: java elasticsearch kubernetes log4j2