SpringBoot集成Druid连接池进行SQL监控的问题解析

Druid连接池是阿里巴巴开源的数据库连接池项目。Druid连接池为监控而生,内置强大的监控功能,监控特性不影响性能。
Druid的监控统计功能是通过filter-chain扩展实现,采集的信息非常全面,包括SQL执行、并发、慢查、执行时间区间分布等。并且Druid内置提供了一个StatViewServlet用于展示Druid的统计信息,提高html页面展示非常完备的监控信息,可以快速诊断系统的瓶颈。
而Druid增加StatFilter之后,能采集大量统计信息,同时对性能基本没有影响。StatFilter对CPU和内存的消耗都极小,对系统的影响可以忽略不计。监控不影响性能是Druid连接池的重要特性。
在SpringBoot工程中引入Druid连接池非常简单。
【SpringBoot集成Druid连接池进行SQL监控的问题解析】首先需要引入pom

com.alibabadruid-spring-boot-starter1.2.6

在yml中增加一些配置
spring:http:encoding:charset: UTF-8force: trueenabled: truedatasource:url: jdbc:mysql://xxx.xxx.xxx.xxx:3306/database?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&useSSL=falseusername: rootpassword : 123456driverClassName : com.mysql.cj.jdbc.Drivertype : com.alibaba.druid.pool.DruidDataSourcedruid:initialSize: 5minIdle: 5maxActive: 20# 配置获取连接等待超时的时间maxWait: 60000# 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒timeBetweenEvictionRunsMillis: 60000# 配置一个连接在池中最小生存的时间,单位是毫秒minEvictableIdleTimeMillis: 300000validationQuery: SELECT 1 FROM DUALtestWhileIdle: truetestOnBorrow: falsetestOnReturn: false# 打开PSCache,并且指定每个连接上PSCache的大小poolPreparedStatements: truemaxPoolPreparedStatementPerConnectionSize: 20# 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙filters: stat,wall,log4j2# 通过connectProperties属性来打开mergeSql功能;慢SQL记录connectionProperties: druid.stat.mergeSql=true; druid.stat.slowSqlMillis=5000# 合并多个DruidDataSource的监控数据useGlobalDataSourceStat: true# StatViewServlet配置 sql监控stat-view-servlet:enabled: trueurl-pattern: "/druid/*"reset-enable: falselogin-username: druidlogin-password: druid123#允许那些ipallow: 127.0.0.1,192.168.120.93#禁止那些ipdeny: 192.168.120.93# WebStatFilter配置 web-jdbc关联监控web-stat-filter:enabled: trueurl-pattern: "/*"exclusions: "*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*"

配置监控页面访问密码,通过设置login-username 和 login-password这两个初始参数。
allow和deny这两个参数,可以做访问控制。deny优先于allow,如果在deny列表中,就算在allow列表中,也会被拒绝。如果allow没有配置或者为空,则只允许127.0.0.1访问。
ip配置格式:或者 /
启动服务后,访问http://localhost:8080/druid 就可以访问监控页面。输入访问密码后,可对系统运行情况进行监控。

SpringBoot集成Druid连接池进行SQL监控的问题解析
文章图片


监控web-jdbc关联

SpringBoot集成Druid连接池进行SQL监控的问题解析
文章图片

到此这篇关于SpringBoot集成Druid连接池进行SQL监控的文章就介绍到这了,更多相关SpringBoot集成Druid连接池SQL监控内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    推荐阅读