log4j2怎么按类输出文件

avatar
作者
筋斗云
阅读量:6

在log4j2中,可以按照类名来输出日志到不同的文件。首先,需要在log4j2的配置文件中定义一个或多个Logger,并指定它们的名称和要输出到的文件。

以下是一个示例配置文件log4j2.xml的内容:

<?xml version="1.0" encoding="UTF-8"?> <Configuration status="WARN">     <Appenders>         <File name="FileAppender1" fileName="logs/app1.log">             <PatternLayout pattern="%d [%t] %-5level %logger{36} - %msg%n" />         </File>         <File name="FileAppender2" fileName="logs/app2.log">             <PatternLayout pattern="%d [%t] %-5level %logger{36} - %msg%n" />         </File>     </Appenders>     <Loggers>         <Logger name="com.example.app1" level="debug" additivity="false">             <AppenderRef ref="FileAppender1" />         </Logger>         <Logger name="com.example.app2" level="debug" additivity="false">             <AppenderRef ref="FileAppender2" />         </Logger>         <Root level="error">             <AppenderRef ref="FileAppender1" />         </Root>     </Loggers> </Configuration> 

在上面的配置文件中,定义了两个FileAppender,分别输出到两个不同的文件(app1.log和app2.log)。然后定义了两个Logger,分别对应两个不同的类(com.example.app1和com.example.app2),并分别指定了要使用的FileAppender。

这样,当这两个类中的日志被打印时,会按照类名来输出到对应的文件中。同时,还定义了一个Root Logger,将所有其他未指定FileAppender的日志都输出到FileAppender1对应的文件中。

注意,需要将log4j2.xml配置文件放置在类路径下,以便log4j2能够找到并加载它。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!