Log4j ConsoleAppender
配置示例
原文: https://howtodoinjava.com/log4j/log4j-console-appender-example/
任何旨在将日志记录信息打印到控制台的日志记录应用都应使用此org.apache.log4j.ConsoleAppender
。 ConsoleAppender
是一个非常简单的类,旨在将日志记录信息写入System.out
或System.err
。 可以通过名为target
的属性来配置日志消息的目的地。
ConsoleAppender
的属性
ConsoleAppender
的可配置属性如下所述:
属性 | 描述 |
---|---|
immediateFlush |
设置是否用每个日志记录输出请求刷新控制台流。 |
encoding |
重写默认的字符编码方案。 |
threshold |
级别低于阈值的任何日志记录请求都将被忽略。 |
target |
System.out 或System.err 。 默认值为System.out 。 |
ConsoleAppender
配置
属性文件中的ConsoleAppender
配置
log4j.rootCategory=debug,console
log4j.logger.com.demo.package=debug,console
log4j.additivity.com.demo.package=false
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.target=System.out
log4j.appender.console.immediateFlush=true
log4j.appender.console.encoding=UTF-8
#log4j.appender.console.threshold=warn
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.conversionPattern=%d [%t] %-5p %c - %m%n
XML 文件中的ConsoleAppender
配置
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration>
<appender name="console" class="org.apache.log4j.ConsoleAppender">
<param name="target" value="System.err"/>
<param name="immediateFlush" value="false"/>
<param name="encoding" value="UTF-8"/>
<param name="threshold" value="warn"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="conversionPattern" value="%d [%t] %-5p %c - %m%n"/>
</layout>
</appender>
<logger name="com.demo.package">
<level value="debug"/>
<appender-ref ref="console"/>
</logger>
<root>
<priority value ="debug" />
<appender-ref ref="console"/>
</root>
</log4j:configuration>
测试ConsoleAppender
配置
让我们编写一个快速的 Java 程序,并使用上述配置在控制台中写入日志。
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
public class Demo
{
static Logger logger = Logger.getLogger(Demo.class);
public static void main(String[] args) {
// PropertiesConfigurator is used to configure logger from properties file
PropertyConfigurator.configure("log4j.properties");
// Log in console
logger.debug("Log4j console appender configuration is successful !!");
}
}
现在,根据需要将log4j.properties
文件放在项目根文件夹或资源文件夹中,然后运行该应用。 您将在控制台中获得以下日志消息。
2016-06-14 18:03:13,175 [main] DEBUG Demo - Log4j console appender configuration is successful !!
将我的问题放在评论部分。
学习愉快!