我正在使用LoggingEventCompositeJsonEncoder
本logback.xml
示例中配置的 a:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder class="net.logstash.logback.encoder.LoggingEventCompositeJsonEncoder">
<providers>
<message/>
<loggerName>
<fieldName>loggerName</fieldName>
</loggerName>
<nestedField>
<fieldName>thrown</fieldName>
<providers>
<throwableClassName>
<fieldName>name</fieldName>
</throwableClassName>
<stackTrace>
<fieldName>extendedStackTrace</fieldName>
<throwableConverter class="net.logstash.logback.stacktrace.ShortenedThrowableConverter">
</throwableConverter>
</stackTrace>
</providers>
</nestedField>
</providers>
</encoder>
</appender>
<root level="INFO">
<appender-ref ref="STDOUT"/>
</root>
</configuration>
它正在生成这样的日志:
{
"message": "Starting app",
"loggerName": "my.api.App",
"thrown": {}
}
我只想要thrown
Throwable 存在时的字段输出。有没有办法使用提供的类来完成这个logstash-logback-encoder
?如果没有,是否有关于需要覆盖自定义类/方法的建议?