mybatis设置日志级别(怎么设置日志级别)
本文目录
怎么设置日志级别
这个一个关于springmvc的坑的故事。某天晚上本打算一个小功能分分钟搞定上线,但页面总是报404错误,肉眼实在找不到原因。 各种手段折腾,断点,重启,重新打包,拍脑袋觉得代码没写错,url路径也ok,真心没问题,无数次f5就是不出来。很多时候遇到一个bug越着急越搞不定,我就是这种情况,花了一两个小时时间,眼看都过0点了,此时我正用最后的手段,引入spring源码直接一步步debug,看起来也没问题,那能不能更深入点,从spring启动开始。这时我突然想到了日志,平时线上的日志级别都是error,本地一般也很少改,大多数情况都是断点debug,日志更多的是用来日后线上问题排查。所以我改了下spring的日志级别,看看他启动干了啥。因此,修改了下log4j的配置文件,将springmvc的日志级别改为debug,如果是logback的话,配置文件也是类似。《logger name="org.springframework.web"》《level value="DEBUG"/》《/logger》这样的话启动后,springmvc就会打印出它所加载的路径映射,每次请求也会详细打印出请求的参数,路径等等。然后,重启,看到控制台打印出来的路径和我实际访问的路径,问题一目了然了,原来我与显示页面只差一个字母大小写的距离。看一下时间,已然是凌晨1点,默默的在心里说一句:WTF。然后倒头就睡。合理的日志级别日志是我们经常用到的东西,但很多时候只有在遇到线上bug之类的情况才会想起有日志可以协助排查,但开发的时候一点点日志级别修改,就能避免某个bug调试到凌晨1点才发现与答案只差一个字母的距离。我个人的经验,在web项目时会把三个方面的日志级别改为debugwebmvc框架:springmvc 或者struts2,主要查看请求路径和参数,页面400,404了,看看请求路径和参数对不对;orm框架:如mybatis,debug级别会打印sql和参数,有sql异常通过日志就可以很快定位;项目本身的业务日志,这个一般很少。至于其他外部依赖的项目根据需要自行定义,root日志级别一般是error,不然很多其他日志混进来会导致很难查看。对于struts2,日志级别是这么定义的。《logger name="com.opensymphony.xwork2"》《level value="DEBUG"/》《/logger》当然这是xml格式的配置文件,如果是properties,需要这么做log4j.logger.com.opensymphony.xwork2=debugmybatis的sql则可参考如下log4j.logger.com.ibatis=debug log4j.logger.java.sql.Connection=debug log4j.logger.java.sql.PreparedStatement=debug
用mybatis日志如何配置
首先配置 log4j日志文件ibatis配置 log4j.logger.com.ibatis=DEBUG log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=DEBUG log4j.logger.com.ibatis.common.jdbc.ScriptRunner=DEBUG log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=DEBUG log4j.logger.org.mybatis=DEBUG log4j.logger.java.sql.Connection=DEBUG log4j.logger.java.sql.Statement=DEBUG log4j.logger.java.sql.PreparedStatement=DEBUG log4j.logger.java.sql.ResultSet=DEBUG 导入依赖日志包 log4j《!-- SLFJ 可依赖到log4j--》 《dependency》《groupId》org.slf4j《/groupId》《artifactId》slf4j-log4j12《/artifactId》《version》1.6.4《/version》 《/dependency》 《dependency》《groupId》log4j《/groupId》《artifactId》log4j《/artifactId》《version》1.2.14《/version》 《/dependency》 《dependency》《groupId》org.slf4j《/groupId》《artifactId》slf4j-api《/artifactId》《version》1.7.7《/version》 《/dependency》
怎么修改logback输出的mybatis的日志的格式
《appender name="ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender"》 《!-- 当发生滚动时 TimeBasedRollingPolicy滚动策略 根据时间来制定滚动策略 --》 《rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"》 《!-- 按天回滚 daily --》 《!-- local 《fileNamePattern》/Users/liyixiang/Documents/logs/xxx-xxx-${appPort}-%d{-MM-dd}.log《/fileNamePattern》 --》 《!-- log.dir 在maven profile里配置 --》 《fileNamePattern》/logs/xxx-xxx-${appPort}-%d{-MM-dd}.log《/fileNamePattern》 《!-- 控制保留的归档文件的最大数量 日志最大的历史 5天 --》 《maxHistory》5《/maxHistory》 《/rollingPolicy》 《!-- 日志格式化 --》 《encoder》 《pattern》%d{HH:mm:ss.SSS} %n《/pattern》 《/encoder》《p》 《/appender》《/p》 《p》 《br》 《/p》 《p》 《/p》《pre class="brush:xml; toolbar: true; auto-links: false;"》具体的pattern可以查询logback pattern like this --》 《/pre》《p》《/p》
怎么配置mybatis使sql语句不打印出来
你使用的哪个日志jar, 如果你是log4j的话,在log4j.properties中添加如下的配置log4j.logger.java.sql.Statement = ERRORlog4j.logger.java.sql.PreparedStatement = ERRORlog4j.logger.java.sql.ResultSet =ERRORlog4j.logger.java.sql.Connection = ERROR***隐藏网址***
更多文章:
showmodal(delphi中show和showmodal的区别)
2024年7月3日 09:31
如何写个人职业生涯主题内容?关于勇敢主题个人励志演讲稿优秀范文三篇
2024年7月3日 01:58
XDATA寻址空间为多少字节?51单片机定义一个大数组存在idata与xdata中有什么区别
2024年5月19日 03:14
广西网站建设(广西最厉害的网络公司,南宁最厉害的网站建设公司)
2024年7月24日 03:43
嵌入式linux系统中进行开发(linux嵌入式开发是不是必须用linux才能开发_linux嵌入式开发是什么)
2024年7月24日 14:47
matlab傅里叶变换的幅度谱和相位谱(在 MATLAB 下如何实现对一组数据振幅谱和相位谱)
2024年4月22日 06:50
粤绣为什么能成为中国四大名绣之一粤绣有什么特点?粤绣与其他绣有什么不同之处
2024年7月24日 11:13
企业标准模板(来份WORD格式GB/T1.1-2009企业标准要齐全点,谢谢了)
2024年7月11日 09:48
queue full什么意思(循环队列中rear、front 初始值是什么)
2024年7月24日 08:05