gpt4 book ai didi

java - 日志记录 - Log4j2 日志记录问题

转载 作者:行者123 更新时间:2023-12-02 11:44:11 24 4
gpt4 key购买 nike

我目前正在开发一个使用 Log4j2 进行日志记录的应用程序。

下面是Log4j2.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="debug" packages="myappsystem">
<Appenders>
<MyDockerAppender name="STDOUT" />
</Appenders>
<Loggers>
<logger name="org.springframework" level="ERROR"/>
<logger name="myappsystem" level="INFO"/>
<Root level="ERROR" additivity="true" includeLocation="true">
<AppenderRef ref="STDOUT"/>
</Root>
</Loggers>

现在我面临的挑战是记录器似乎只有当我执行如下操作时才会记录

private static final Logger LOGGER = LogManager.getLogger("myappsystem");
LOGGER.info("Entering method");

这里的问题是,它没有给我记录该特定行的类文件的详细信息。

所以,我尝试做如下的事情:

private static final Logger LOGGER = LogManager.getLogger(MyServiceImpl.class);

这似乎不起作用。关于我哪里出错了有什么想法吗?

最佳答案

您的记录器已配置为

<logger name="myappsystem"  level="INFO"/>

因此

LogManager.getLogger("myappsystem");

有效。

如果您使用

LogManager.getLogger(MyServiceImpl.class);

您必须配置一个以完全限定的类名(带包)开头的记录器,就像您在 <logger name="org.springframework" level="ERROR"/> 中使用的那样

所以即

<logger name="my.project.package.structure"  level="INFO"/>

关于java - 日志记录 - Log4j2 日志记录问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48323670/

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