gpt4 book ai didi

java - Logback AsyncAppender无法打印方法名称和行号

转载 作者:行者123 更新时间:2023-11-30 03:18:27 32 4
gpt4 key购买 nike

我正在使用 logback AsyncAppender ch.qos.logback.core.rolling.RollingFileAppender 将日志打印到具有以下配置的文件。如果在控制台上打印,则一切正常,但在日志文件中方法名称和行号打印为“?”特点。

登录配置

<appender name="activity_appender"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<File>${log.folder}/${log.activity.fileName}</File>
<encoder>
<pattern>%d{YYYY-MM-dd HH:mm:ss.SSS} -APP- %X{HOST} %X{requestId} [%t] %.-5level %logger{60}.%M-%L - %msg %n</pattern>
</encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- rollover daily -->
<fileNamePattern>${log.folder}/${log.activity.fileName}-%d{YYYY-MM-dd}.%i
</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy
class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<!-- or whenever the file size reaches 100MB -->
<maxFileSize>${log.file.maxsize}</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
</appender>

示例输出

2015-08-11 16:30:00.051 -APP-   [scheduler-1] WARN c.some.package.class.?-? - Configuration not present for configType:global or keysms.template Picking default value: 2 

所需输出

2015-08-11 16:30:00.051 -APP-   [scheduler-1] WARN c.some.package.class.method-98 - Configuration not present for configType:global or keysms.template Picking default value: 2 

最佳答案

我遇到了同样的问题并尝试了两种方法来解决它。它们如下所示,但只有第二种方法有效:

1: <includeCallerData>true</includeCallerData>

有人说解决问题很好,但不适合我。

2: <param name="locationInfo" value="true" />

添加此行后,我设法使 asyncappender 输出行号。

享受第二种方式!

关于java - Logback AsyncAppender无法打印方法名称和行号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31940230/

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