Logback Java中带模式的JSON布局

Logback Java中带模式的JSON布局,java,logback,logback-classic,Java,Logback,Logback Classic,我正在使用logback登录我的spring boot应用程序,并使用以下模式: "%d [%thread] %-5p [%c] [%F:%L] [trace=%X{X-B3-TraceId:-},span=%X{X-B3-SpanId:-}] - %msg%n" 现在我想转到日志的JSON布局。但是我看不到将该模式应用于日志的方法,因此上面的许多信息都丢失了 <appender name="stdout" class="ch.qos.

我正在使用logback登录我的spring boot应用程序,并使用以下模式:

"%d [%thread] %-5p [%c] [%F:%L] [trace=%X{X-B3-TraceId:-},span=%X{X-B3-SpanId:-}]  - %msg%n"
现在我想转到日志的JSON布局。但是我看不到将该模式应用于日志的方法,因此上面的许多信息都丢失了

<appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">
            <layout class="ch.qos.logback.contrib.json.classic.JsonLayout">
                <timestampFormat>yyyy-MM-dd'T'HH:mm:ss.SSSX</timestampFormat>
                <timestampFormatTimezoneId>Etc/UTC</timestampFormatTimezoneId>
                <jsonFormatter class="ch.qos.logback.contrib.jackson.JacksonJsonFormatter">
                    <prettyPrint>true</prettyPrint>
                </jsonFormatter>
            </layout>
    </appender>

yyyy-MM-dd'HH:MM:ss.SSSX
Etc/UTC
真的

有没有其他方法可以达到同样的效果?

您可以找到类似问题的答案。如果您认为使用Logback实现您想要的功能很麻烦,那么您可能需要看看Log4j2。这是一些指导。迁移到log4j2是不可行的。我们还必须更改代码中的日志。