log4j.xml
示例 – Log4j xml 配置示例
原文: https://howtodoinjava.com/log4j/how-to-configure-log4j-using-xml-configuration/
Log4j 是一个简单而灵活的日志记录框架。 应用日志为开发人员提供了有关应用故障的详细上下文。 使用 log4j,可以在运行时启用日志记录,而无需修改应用二进制文件。 log4j 包的设计目的是使这些语句可以保留在出厂代码中,而不会造成高昂的性能成本。
实际上,两个最常见的配置选项是使用log4j.xml
配置或使用log4j.properties
配置。
在此 log4j xml 配置教程中,我展示了log4j.xml
配置的示例代码。
阅读更多: Log4j 属性文件示例
1. Log4j Maven 依赖项
创建一个 Maven Java 项目并更新 log4j 依赖项。
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
2. log4j.xml
文件
这是主要配置文件,其中包含 log4j 使用的所有运行时配置。 该文件将具有 log4j 附加器信息,日志级别信息和文件附加器的输出文件名。
创建此文件并放入应用类路径。
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration debug="true" xmlns:log4j='http://jakarta.apache.org/log4j/'>
<appender name="console" class="org.apache.log4j.ConsoleAppender">
<param name="Target" value="System.out"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n" />
</layout>
</appender>
<appender name="fileAppender" class="org.apache.log4j.RollingFileAppender">
<param name="File" value="demoApplication.log"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n" />
</layout>
</appender>
<root>
<priority value ="debug"></priority>
<appender-ref ref="console"></appender>
<appender-ref ref="fileAppender"></appender>
</root>
</log4j:configuration>
3. log4j.xml
示例
package com.howtodoinjava;
import org.apache.log4j.Logger;
import org.apache.log4j.xml.DOMConfigurator;
public class Log4jXmlConfigurationExample
{
static Logger logger = Logger.getLogger(Log4jXmlConfigurationExample.class);
public static void main(String[] args)
{
//DOMConfigurator is used to configure logger from xml configuration file
DOMConfigurator.configure("log4j.xml");
//Log in console in and log file
logger.debug("Log4j appender configuration is successful !!");
}
}
在控制台中输出,在项目根文件夹中输出demoApplication.log
:
[main] DEBUG com.howtodoinjava.Log4jXmlConfigurationExample - Log4j xml configuration is successful !!
现在,让我们看一些log4j.xml
示例,这些示例将日志消息输出到特定位置。
4. Log4j 控制台附加器 – 记录到控制台
使用ConsoleAppender
将日志输出到控制台的 Java 程序。
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration debug="true" xmlns:log4j='http://jakarta.apache.org/log4j/'>
<appender name="console" class="org.apache.log4j.ConsoleAppender">
<param name="Target" value="System.out"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n" />
</layout>
</appender>
<root>
<priority value ="debug"></priority>
<appender-ref ref="console"></appender>
</root>
</log4j:configuration>
4. Log4j 滚动文件附加器 – 记录到文件
使用RollingFileAppender
将日志输出到文件的 Java 程序。
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration debug="true" xmlns:log4j='http://jakarta.apache.org/log4j/'>
<appender name="fileAppender" class="org.apache.log4j.RollingFileAppender">
<param name="File" value="demoApplication.log"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n" />
</layout>
</appender>
<root>
<priority value ="debug"></priority>
<appender-ref ref="fileAppender"></appender>
</root>
</log4j:configuration>
让我知道关于log4j.xml
配置和用法的任何问题。
学习愉快!