gpt4 book ai didi

Logback AyncAppender 不打印文件和行号

转载 作者:行者123 更新时间:2023-12-04 01:28:10 28 4
gpt4 key购买 nike

我有以下配置文件,它与 Logback 手册中的标准示例非常相似。唯一的区别是添加了 [%F:%L]。虽然一切正常,但 %F 和 %L 不起作用。如果我删除异步附加程序并使用文件附加程序直接登录,则一切正常。

有人可以解释发生了什么吗?以及如何打印这两个参数应该打印的文件名和行号?

<configuration>
<appender name="FILE" class="ch.qos.logback.core.FileAppender">
<file>myapp.log</file>
<encoder><pattern>%logger{35} - [%F:%L] - %msg%n</pattern></encoder>
</appender>
<appender name="ASYNC" class="ch.qos.logback.classic.AsyncAppender">
<appender-ref ref="FILE" />
</appender>
<root level="DEBUG"><appender-ref ref="ASYNC" /></root>
</configuration>

最佳答案

你需要设置AsyncAppender的includeCallerData属性为真。这是修改后的配置文件:

<configuration>
<appender name="FILE" class="ch.qos.logback.core.FileAppender">
<file>myapp.log</file>
<encoder><pattern>%logger{35} - [%F:%L] - %msg%n</pattern></encoder>
</appender>

<appender name="ASYNC" class="ch.qos.logback.classic.AsyncAppender">
<appender-ref ref="FILE" />
<!-- add the following line -->
<includeCallerData>true</includeCallerData>
</appender>

<root level="DEBUG"><appender-ref ref="ASYNC" /></root>
</configuration>

关于Logback AyncAppender 不打印文件和行号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13944641/

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