https://www.yihaomen.com/article/1853.html
用 spring boot 开发应用时,在遇到麻烦问题时,经常会打开debug日志,下面记录一个通用的思路,基于spring boot以及jpa来实现, 一般来说,将root的日志级别设置为log.level.root=DEBUG, 会打印出太多日志出来,估计都看不清楚, 但我们可以把log.level.root=INFO, 然后在逐步缩小范围,就能打印出相关的debug日志,比如再下面的例子中将详细打印 hibernate jpa日志,hikari 数据库相关日志.
######################### debugg log ################# ### 日志级别的灵活运用 ## hibernate相关 # 显示sql的执行日志,如果开了这个,show_sql就可以不用了 logging.level.org.hibernate.SQL=debug # hibernate id的生成日志 logging.level.org.hibernate.id=debug # hibernate所有的操作都是PreparedStatement,把sql的执行参数显示出来 logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE # sql执行完提取的返回值 logging.level.org.hibernate.type.descriptor.sql=trace # 请求参数 logging.level.org.hibernate.type=debug # 缓存相关 logging.level.org.hibernate.cache=debug # 统计hibernate的执行状态 logging.level.org.hibernate.stat=debug # 查看所有的缓存操作 logging.level.org.hibernate.event.internal=trace logging.level.org.springframework.cache=trace # hibernate 的监控指标日志 logging.level.org.hibernate.engine.internal.StatisticalLoggingSessionEventListener=DEBUG ### 连接池的相关日志 ## hikari连接池的状态日志,以及连接池是否完好 #连接池的日志效果:HikariCPPool - Pool stats (total=20, active=0, idle=20, waiting=0) logging.level.com.zaxxer.hikari=TRACE #开启 debug可以看到 AvailableSettings里面的默认配置的值都有哪些,会输出类似下面的日志格式 # org.hibernate.cfg.Settings : Statistics: enabled # org.hibernate.cfg.Settings : Default batch fetch size: -1 logging.level.org.hibernate.cfg=debug #hikari数据的配置项日志 logging.level.com.zaxxer.hikari.HikariConfig=TRACE ### 查看事务相关的日志,事务获取,释放日志 logging.level.org.springframework.orm.jpa=DEBUG logging.level.org.springframework.transaction=TRACE logging.level.org.hibernate.engine.transaction.internal.TransactionImpl=DEBUG ### 分析connect 以及 orm和 data的处理过程更全的日志 logging.level.org.springframework.data=trace logging.level.org.springframework.orm=trace |
又比如 mybatis 的mapper 日志,同样可以类似配置包名的方式,打印debug日志
logging.level.com.your_package.mapper=DEBUG |