log4j日志级别
今天学习了下mybatis,用到了log4j,发现 log4j.rootLogger 配置的 level 会影响到日志的输出
log4j.properties配置文件
# Global logging configuration
# 开发环境中,日志级别设置为DEBUG;正式环境中日志级别设置为INFO或ERROR
log4j.rootLogger=DEBUG, stdout
# MyBatis logging configuration...
# log4j.logger.org.mybatis.example.BlogMapper=TRACE
# Console output...
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n
测试类:
package org.pine.mybatis.first; import org.apache.log4j.Logger; public class LogLevelTest { public static void main(String[] args) { Logger logger = Logger.getLogger(LogLevelTest.class); logger.fatal("致命错误"); logger.error("一般错误"); logger.warn("出现警告"); logger.info("提示信息"); logger.debug("调试信息"); } }
将日志级别改为INFO,输出如下:
FATAL [main] - 致命错误
ERROR [main] - 一般错误
WARN [main] - 出现警告
INFO [main] - 提示信息
总结:
日志级别有OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL这7种
OFF:不输出日志
ALL:输出所有日志
中间5种:
FATAL:致命错误,输出FATAL及以上级别的日志(FATAL)
ERROR:一般错误,输出ERROR及以上级别的日志(ERROR,FATAL)
WARN:出现警告,输出WARN及以上级别的日志(WARN,ERROR,FATAL)
INFO:提示信息,输出INFO及以上级别的日志(INFO,WARN,ERROR,FATAL)
DEBUG:调试信息,输出DEBUG及以上级别的日志(DEBUG、INFO,WARN,ERROR,FATAL)
一般开发环境用DEBUG,正式环境用INFO即可~~~