log4j
logback
Slf4j 一套日志规范
slf4j-log4j 建立接口和实现之间的调用关系
1.日志的级别
debug----info----warning----error
低 高
日志级别越低,日志打印量越多,日志打印越详细
2.日志的分类
父日志:根日志(rootLogger)针对项目中使用的技术及项目中的日志处理(全局日志)
子日志(logger) : 针对某个包的日志控制 dao
查询所用,经过controller service dao 只看sql语句的日志
3.Appender 为日志输出目的地,Log4j提供的appender有以下几种:





4.Layout:日志输出格式
org.apache.log4j.HTMLLayout(以HTML表格形式布局),org.apache.log4j.PatternLayout(可以灵活地指定布局模式),
org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),
org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)
5.日志参数
%m 输出代码中指定的消息 %p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL
%r 输出自应用启动到输出该log信息耗费的毫秒数
%c 输出所属的类目,通常就是所在类的全名
%t 输出产生该日志事件的线程名
%n 输出一个回车换行符,Windows平台为“
”,Unix平台为“
”
%d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如: %d{yyy MMM dd HH:mm:ss , SSS},输出类似:2002年10月18日 22 : 10 : 28 , 921
%l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。举例:Testlog4.main(TestLog4.java: 10 )
6.log4j的使用
a.引入jar
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</dependency>
b.书写log4j.properties
c.在类上加上@slf4j注解,它提供logger作为核心对象,等同于
private static Logger logger = LoggerFactory.getLogger(TestLog.class)
d.logger的使用
注意:对于logger在打印变量的时候需要使用{},占位符,有一个变量就是一个占位符,多个就是多个占位符
7.logback的使用
logback和log4j的区别
log4j.properties
logback.xml
1.logback和log4j的区别
springboot 如果在springboot中使用logback不需要引入任何依赖,因为springboot内部集成的就是logback可以直接使用
使用两种形式,xml和
logback配置文件
> logback的配置文件必须放在项目根目录中 放在resources,名字必须为logback.xml
修改springboot的配置文件
父日志级别
logging:
level:
root: error
子日志级别
logging:
level:
com.nylg.dao: debug
com.nylg.service: debug
pattern:
控制台打印日志格式
console: "[%p]:%m%n"
文件日志打印格式
file: "[%p] %c:%m%n"
日志输出地输出到文件
file: springboot.log
日志打印格式
日志的输出地