日志是什么日志级别java使用log4j框架
日志是什么记录项目运行信息的文本,长期存储,定位异常,数据分析。
日志级别- ALLTRACE:跟踪(不常用)DEBUG:调式(开发者)INFO:信息提示WARN:警告ERROR:错误FATAL:致命的错误
- 首先在src目录下配置文件,log4j.properties
配置内容
#设置为DEBUG模式 可以输出比DEBUG级别高 log4j.rootLogger=DEBUG,cmd,myfile #config cmd #设置在控制台输出 log4j.appender.cmd=org.apache.log4j.ConsoleAppender log4j.appender.cmd.Target=System.out #级别为ERROR 则如果比ERROR级别高得可以输出 低得必能输出 log4j.appender.cmd.Threshold=ERROR log4j.appender.cmd.layout=org.apache.log4j.PatternLayout #设置输出得语句格式 log4j.appender.cmd.layout.ConversionPattern=[%c]-%d-%l-%t-%m%n #config log.file log4j.appender.myfile = org.apache.log4j.FileAppender #此处配置日志文件得地址 log4j.appender.myfile.File=D:/logs/test.log log4j.appender.myfile.Threshold = DEBUG log4j.appender.myfile.layout = org.apache.log4j.PatternLayout log4j.appender.myfile.layout.ConversionPattern=[%c]-%d-%l-%t-%m%n
格式含义
2. 创建lib文件夹,然后引入log4j.jar包,随后进行加载
- 创建Test.java进行测试
LogsTest.java代码
package com.dyit.logs;
import org.apache.log4j.Logger;
//直接使用日志
public class LogsTest {
//创建main方法
public static void main(String[] args) {
//此处得包 为apache下的包 getLogger()填写得是类得信息,后面是日志得等级
Logger.getLogger("LogsTest.class").error("日志信息");
//进行测试
int a = 3;
int b = 0;
try {
int c = a/b;
} catch (Exception e) {
//将异常信息进行保存
Logger.getLogger("LogsTest.class").debug(e.getMessage());
e.printStackTrace();
}
}
}
输出结果
分析结果:
第一个输出得级别为error
所以在日志中和控制台都会进行输出
第二个,下面的异常设置得输出级别为debug
因为配置文件中输出级别为error,所以控制台不能输出比他级别低得信息,所以控制台没有输出关于异常得日志,但是日志文件有。
通常在有异常输出的地方都配合日志文件使用,Logger.getLogger("LogsTest.class").debug(e.getMessage());存进日志文件中。



