我目前正在使用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);
这似乎不起作用。 关于我哪里出错的任何想法?
答案 0 :(得分:1)
您的记录器已配置为
<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"/>