我目前正在开发一个使用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);这似乎不起作用。你知道我哪里错了吗?
发布于 2018-01-18 22:49:51
您的记录器配置为
<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"/>https://stackoverflow.com/questions/48323670
复制相似问题