log4j是什么?
log4j是由apache推出的开源免费日志处理的类库。
为什么使用log4j?
- 在项目中编写System.out.println();输出到控制台,当项目发布发到tomcat后,没有控制台(在命令行界面能看见),不容易观察一些输出结果。
- log4j的作用:不仅能把内容输出到控制台,还能把内容输出到文件中,便于观察结果,实质是对io进行了封装。
使用步骤
- 导入log4j-xxx.jar;
- 在src下新建log4j.properties(路径和名称都不允许改变);
log4j.rootCategory=INFO, CONSOLE
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=- %m%n
log4j.appender.LOGFILE=org.apache.log4j.FileAppender
log4j.appender.LOGFILE.File=axis.log
log4j.appender.LOGFILE.Append=true
log4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayout
log4j.appender.LOGFILE.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n
//常用
log4j.appender.LOGFILE.layout.ConversionPattern=%C %d{YYYY-MM-dd HH:mm:ss} %m%n
- log4j输出级别:
fatal(致命错误)> error(异常) > warm(警告) > info(普通信息)
> debug(调试信息),设置info,则比info高的会显示。
- log4j输出目的地:
console,logfile
- 在第一行log4j.rootCategory=输出级别或输出目的地
- log4j输出格式(ConversionPattern):
pattern中常用的几个表达式
6.1 %C包名+类名
6.2 %d{YYYY-MM-dd HH:mm:ss} 时间
6.3 %L 行号
6.4 %m 信息
6.5 %n 换行
- 使用:
public class Test{
public static void main(String[] args){
Logger logger = Logger.getLogger(Test.class);
logger.debug("测试一个调试信息");
logger.info("测试”);
}
}