day74
Mybatis
日志
简介
mybatis有默认的日志实现,之前我们在mybatis的核心配置文件中设置logImpl值为STDOUT_LOGGING,就可以在控制台输出对应的SQL语句日志信息,好处不使用任何第三方jar包即可支持,但是仅限于控制台的输出,而且控制台可以看到的内容非常有限,最早的日志可能会因为日志内容过多而被"卷进去"而看不见。
<setting name="logImpl" value="SLF4J | LOG4J | LOG4J2 | JDK_LOGGING | COMMONS_LOGGING | STDOUT_LOGGING | NO_LOGGING"/>
mybatis也支持第三方jar包方式,本次以LOG4J为例
实现
-
pom.xml中添加log4j的依赖
<dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency>
-
在classpath中添加log4j.properties文件
-
配置log4j的配置文件内容
log4j.rootLogger = debug,stdout,D,E ### ???????? ### log4j.appender.stdout = org.apache.log4j.ConsoleAppender log4j.appender.stdout.Target = System.out log4j.appender.stdout.layout = org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern = [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n ### ??DEBUG ????????=DEBUG.log ### log4j.appender.D = org.apache.log4j.DailyRollingFileAppender log4j.appender.D.File = DEBUG.log log4j.appender.D.Append = true log4j.appender.D.Threshold = DEBUG log4j.appender.D.layout = org.apache.log4j.PatternLayout log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n ### ??ERROR ????????=error.log ### log4j.appender.E = org.apache.log4j.DailyRollingFileAppender log4j.appender.E.File =error.log log4j.appender.E.Append = true log4j.appender.E.Threshold = ERROR log4j.appender.E.layout = org.apache.log4j.PatternLayout
-
运行项目之后,同时会在控制台和对应的日志文件中有日志信息的打印
特点
日志框架描述:
日志级别有:
debug:调试
info:信息
warn:警告
error:错误
一般在平时开发过程中使用debug即可,看到比较详细的日志信息
一旦上线之后,设置为error级别,信息量会少一些
上面四个级别分别是从低到高,设置低优先级的,高优先级也是可以看到
设置高优先级的,低优先级看不到
这个日志级别有的日志里面还有trace追踪fatal致命错误两个级别