新版 druid 数据源驱动的 SQL 监控如果用以前的老版本配置是无法监控到 SQL 的:
application.yml
spring:
datasource:
druid:
filters:
- stat
- wall
- log4j
启动应用之后访问 druid 监控页面,除了 SQL 相关的页面都正常工作,但是访问 SQL 监控页面时没有看到 SQL 记录。
查看监控页面 数据源 菜单发现 filter 类名 显示的是空,估计是 filter 配置有问题导致。
查阅官方文档发现 filter 配置有变更,改成以下形式即可统计 SQL,同时在数据源页面 filter 类名 会显示正常。
application.yml
spring:
datasource:
druid:
initial-size: 5
min-idle: 5
max-active: 20
max-wait: 5000
# 状态监控
filter:
stat:
enabled: true
db-type: mysql
log-slow-sql: true
slow-sql-millis: 2000
# 监控过滤器
web-stat-filter:
enabled: true
exclusions:
- "*.js"
- "*.gif"
- "*.jpg"
- "*.png"
- "*.css"
- "*.ico"
- "/druid/*"
# druid 监控页面
stat-view-servlet:
enabled: true
url-pattern: /druid/*
reset-enable: false
login-username: root
login-password: root
数据源 filter 类名:com.alibaba.druid.filter.stat.StatFilter