Log4j – Log4j在项目中的重要程度。
Log for java日志组件
Log4j – apche
Log4net
Log4j-xxxx.jar
用日志的好处:
可以长久的保存日志信息。
日志可以保存到:网络
文件
数据库
可以设置日志的级别。
OFF
Fatal – System.exit(0); - JVM,
ERROR – 错误,模块错误。
WARN – 警告
INFO - 程序员调试信息-相当于system.err. 这也是我们经常输出的方式
DEBUG - system.out. – 一般情况下,框架用out。
ON
以上的级别 如果你写了ON所有的信息都会输出 如果写了INFO 级别比它低的都不会输出 OFF都不会输出了
Log4j需要两个文件:
第一个文件就是log4j.jar,放到lib。
第二个文件就是log4j配置文件,此配置文件,必须要位于classpath,必须叫:log4j.properties
Log4j.properties日志:
四大组件:
Logger – 日志类,设置日志类。设计根日志.
Appener – 追加对象.日志输出目标。
Layout – 日志的格式
Level 级别
Log4j – apche
Log4net
Log4j-xxxx.jar
用日志的好处:
可以长久的保存日志信息。
日志可以保存到:网络
文件
数据库
可以设置日志的级别。
OFF
Fatal – System.exit(0); - JVM,
ERROR – 错误,模块错误。
WARN – 警告
INFO - 程序员调试信息-相当于system.err. 这也是我们经常输出的方式
DEBUG - system.out. – 一般情况下,框架用out。
ON
以上的级别 如果你写了ON所有的信息都会输出 如果写了INFO 级别比它低的都不会输出 OFF都不会输出了
Log4j需要两个文件:
第一个文件就是log4j.jar,放到lib。
第二个文件就是log4j配置文件,此配置文件,必须要位于classpath,必须叫:log4j.properties
Log4j.properties日志:
四大组件:
Logger – 日志类,设置日志类。设计根日志.
Appener – 追加对象.日志输出目标。
Layout – 日志的格式
Level 级别
#设置logger的根日志,级别,A1是指输出的目标
log4j.rootLogger=ON,console,file
#设置日志的appender-输出的目标
#其他的还是RollingFileAppender
log4j.appender.console=org.apache.log4j.ConsoleAppender
#日志的格式,说明日志的格式由程序自己指定
log4j.appender.console.layout=org.apache.log4j.PatternLayout
#%d=date,%p=preority级别,
log4j.appender.console.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss:SSS} %-5p %-10t %c<%L> %m%n
log4j.appender.file=org.apache.log4j.RollingFileAppender
#设置文件名
log4j.appender.file.File=d:/a/a.log
#设置文件最大大小
log4j.appender.file.MaxFileSize=10KB
#设置文件最多备份几个
log4j.appender.file.MaxBackupIndex=3
#日志的格式,说明日志的格式由程序自己指定
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss:SSS} %-5p %-10t %c<%L> %m%n
import org.apache.log4j.Logger;
import org.junit.Test;
public class LogDemo {
// 声明日志类
Logger logger = Logger.getLogger(LogDemo.class);
@Test
public void test() {
logger.fatal("fatal");
logger.error("error");
logger.warn("warn");
//只允许写info
logger.info("info+ 程序員做的");
logger.debug("debug+框架内部都是debug");
}
}