log4j属性文件
##define an appender named console 日志附加器,设置输出位置
log4j.appender.console=org.apache.log4j.ConsoleAppender
#The Target value is System.out or System.err
log4j.appender.console.Target=System.out
#set the layout type of the apperder
log4j.appender.console.layout=org.apache.log4j.PatternLayout
#set the layout format pattern
log4j.appender.console.layout.ConversionPattern=[%-5p][%d{yyyy-MM-dd HH:mm:ss}] %c %L %m%n
##define a logger 根日志
#log4j.rootLogger=debug,console,file,rollfile
log4j.rootLogger=debug,console
日志级别
fatal,error,warn,info,debug,trace
log4j:
导入jar包和properties文件,
Logger logger=Logger.getLogger(MyTest.class);
logger.fatal("fatal msg");
logger.error("error msg");
logger.warn("warn msg");
logger.info("info msg");
logger.debug("debug msg");
logger.trace("trace msg");
log4j2
导入jar包和xml配置文件
log4j属性文件结构分析
为什么log4j不用调用就可以输出日志,而log4j2不行?
需要配置log4j2的status属性
status属性跟level什么关系?
Configuration.status是log4j2管理log4j2内部输出信息,与人为设定的日志不同;level是管理人为指定的日志的级别
Log4j2配置文件
<?xmlversion="1.0"encoding="UTF-8"?>
<configurationstatus="DEBUG">
<appenders>
<Consolename="myConsole"target="SYSTEM_OUT">
<PatternLayoutpattern="[%-5p][%d{yyyy-MM-ddHH:mm:ss}][%c%L]%m%n"/>
</Console>
</appenders>
<loggers>
<!--
<loggername="全限定类名或接口名"level="info">
<appender-refref="myConsole"/>
</logger>
-->
<rootlevel="trace">
<appender-refref="myConsole"/>
<!--<appender-refref="myLogFile"/>
<appender-refref="myRollingFile"/>-->
</root>
</loggers>
</configuration>
原文地址:https://www.cnblogs.com/darknessplus/p/10047923.html