gpt4 book ai didi

java - Log4j 2 记录输出消息以及文​​件编号的链接

转载 作者:行者123 更新时间:2023-12-02 09:23:59 25 4
gpt4 key购买 nike

以前我使用 log4j 版本 1,其中有以下 log4j.xml 配置文件:-

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">

<appender name="STDOUT" class="org.apache.log4j.ConsoleAppender">
<param name="threshold" value="info" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level Line: %L - %msg%n" />
</layout>
</appender>

<category name="com.ma.dev" additivity="false">
<priority value="INFO" /> <!-- <priority value="${myinfo}" /> -->
<appender-ref ref="STDOUT" />
<appender-ref ref="LOGFILE" />
</category>


<root>
<priority value="WARN" />
<appender-ref ref="UNMAPFILE" />
</root>

</log4j:configuration>

此配置生成以下日志输出,其中我链接到日志记录行:-

enter image description here

我尝试使用以下配置文件获取 log4j 版本 2 的类似日志输出:-

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
<Properties>
<Property name="priorityLevel">info</Property>
</Properties>

<Appenders>
<Console name="myConsole" target="SYSTEM_OUT">
<PatternLayout pattern="%d{HH:mm:ss.SSS} [%thread] %-5level Line: %L - %msg%n"/>
</Console>
</Appenders>

<Loggers>
<Root level="${priorityLevel}">
<AppenderRef ref="myConsole"/>
</Root>
</Loggers>
</Configuration>

我得到的输出为:-

enter image description here

没有链接。如何在 Log4j 版本 2 中拥有链接?

最佳答案

在 Log4j1 中,%l意思是“位置”,所以你在哪里 %level您将获得记录器位置 + evel。

在 Log4j2 中,位置已更改为 %c它输出记录器的名称(如果您使用 LoggerFactory.getLogger(Foo.class) 正确实例化记录器,则这是类名称,其中 foo 是您的类名称。

%level打印日志记录级别,因此您需要将其更改为 %c在您的 PatternLayout 配置中获得与使用 Log4j1 时相同的输出:

<PatternLayout pattern="%d{HH:mm:ss.SSS} [%thread] %c %-5level Line: %L  - %msg%n"/>

查看 log4j2 文档中的布局页面并向下滚动到 PatternLayout 了解更多信息 https://logging.apache.org/log4j/2.x/manual/layouts.html

关于java - Log4j 2 记录输出消息以及文​​件编号的链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58475591/

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