gpt4 book ai didi

java - Log4j 2.0 - 日志文件中没有出现日志 - 使用 log4j2.xml 在同一类中尝试多个记录器

转载 作者:太空宇宙 更新时间:2023-11-04 07:24:51 25 4
gpt4 key购买 nike

下面是我创建的 log4j2.xml 文件。我已为异步日志记录配置了 async_file.log,为常规和同步日志记录配置了 Regular_file.log。问题是创建了日志文件,但文件的大小为零并且没有日志。所有日志都进入 server.log 文件 (JBOSS),而不是我配置的 2 个文件(async_file.log 和 Regular_file.log)。

  • 请告诉我为什么日志没有进入我配置的日志文件。请帮我解决这个问题,或者给我一些方向或提示。

我在同一个类文件中通过名称 DCLASS 调用两个不同的记录器,如下所示:

private static final transient Logger LOG = Logger.getLogger(DCLASS.class);

private static final transient Logger ASYNC_LOG = Logger.getLogger("ASYNC");

我已在类路径中包含以下 jar:
1.log4j-api-2.0-beta8.jar
2.log4j-core-2.0-beta8.jar
3.disruptor-3.0.0.beta1.jar

我的log4j2.xml如下:

<?xml version="1.0" encoding="UTF-8"?>

<configuration status="INFO">
<appenders>
<!-- Async Loggers will auto-flush in batches, so switch off immediateFlush. -->

<FastFile name="AsyncFastFile" fileName="../standalone/log/async_file.log"
immediateFlush="false" append="true">
<PatternLayout>
<pattern>%d %p %class{1.} [%t] %location %m %ex%n</pattern>
</PatternLayout>
</FastFile>

<FastFile name="FastFile" fileName="../standalone/log/regular_file.log"
immediateFlush="true" append="true">
<PatternLayout>
<pattern>%d %p %class{1.} [%t] %location %m %ex%n</pattern>
</PatternLayout>
</FastFile>
</appenders>

<loggers>
<!-- pattern layout actually uses location, so we need to include it -->
<asyncLogger name="ASYNC" level="trace" includeLocation="true">
<appender-ref ref="AsyncFastFile"/>
</asyncLogger>

<root level="info" includeLocation="true">
<appender-ref ref="FastFile"/>
</root>

</loggers>
</configuration>

最佳答案

日志没有进入日志文件的原因是,我使用的是“Logger”而不是“LogManager”。

在代码中,我有

private static final transient Logger ASYNC_LOG = Logger.getLogger("ASYNC");

代码应该是

private static final transient Logger ASYNC_LOG = Logmanager.getLogger("ASYNC");

当它是“logger”时,编译器将查找“Log4j API”,当它是“LogManager”时,编译器将查找“Log4j2 API”。由于我已将所有内容配置为使用 Log4j2,因此通过将记录器更改为 LogManager,日志开始按预期进入日志文件。

关于java - Log4j 2.0 - 日志文件中没有出现日志 - 使用 log4j2.xml 在同一类中尝试多个记录器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18707681/

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