Appearance
Druid为监控而生的数据库连接池,下面来实际操作下.
具体实现Maven依赖
<dependencies> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.1.14</version> </dependency> </dependencies>
Druid监控页面Druid有自己的监控页面,要想访问只需要配置参数spring.datasource.druid.stat-view-servlet.enabled=true即可。 启动项目后,访问http://localhost:8080/druid,看到监控页面。
因为监控页面里的信息是比较敏感的,所以一般都会对其进行登录验证。 要想实现登录验证,只需要配置如下参数: # 指定登录的账号和密码
spring.datasource.druid.stat-view-servlet.login-username=root spring.datasource.druid.stat-view-servlet.login-password=123456
重启项目后,访问会发现需要登录才能访问。
再来看监控页面的TAB页,会发现上面功能有数据源、SQL监控、SQL防火墙、Web应用、URL监控、Session监控、Spring监控。 但实际上默认只能查看数据源,其它默认都是关闭的,下面来逐一配置。
SQL监控和SQL防火墙 通过配置 spring.datasource.druid.filters=stat,wall 开启SQL监控和SQL防火墙。
执行访问数据库的操作后,在SQL监控页面就可以看到执行SQL的执行次数、时间等信息,如下: 在SQL防火墙页面,可以看到表访问、白名单统计、黑名单统计等信息。
Web应用和URL监控 通过配置spring.datasource.druid.web-stat-filter.enabled=true开启Web应用和URL监控。在WEB应用页面,可以查看项目的一些信息。
在URL监控页面,可以查看请求的URI信息,包括请求时间、最大并发数等信息,如下:
Session监控 通过配置spring.datasource.druid.web-stat-filter.session-stat-enable=true开启Session监控。 在Session监控页面,可以查看每个Session的执行信息,如下:
Spring监控 通过配置spring.datasource.druid.aop-patterns=com.zhuqc.framework.*指定Spring监控的范围。 在Spring监控页面,可以查看类中,每个方法的执行次数、执行时间等信息,如下:
完整配置
spring: datasource: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://xxxxxxxx:3306/framework?useUnicode=true&characterEncoding=utf-8 username: xxxxxxxx password: xxxxxxxx druid: stat-view-servlet: # 开启Druid监控页面
- enabled: true
访问路径
url-pattern: /druid/*
#
白名单
- allow: 127.0.0.1
黑名单
- deny:
设置账号密码
- login-username: root
- login-password: 123456
重置按钮
- reset-enable: true
- web-stat-filter:
开启Web应用 URI监控
- enabled: true
拦截路径
url-pattern: /*
#
开启Session监控
- session-stat-enable: true
开启SQL监控 SQL防火墙
- filters: stat,wall
开启Spring监控 aop-patterns: com.zhuqc.framework.*
总结 Druid的监控功能还是很强大的,不仅限于对SQL进行监控。而且Druid使用很方便,不需要进行代码编写,仅仅是添加一些配置即可。
来自
<https://juejin.cn/post/6844904186727907342\>
