服务监控-druid监控

一、概述
当前互联网和很多公司,日益都采用阿里数据库连接池druid,druid本身也有监控页面,但是我们自己也需要对监控信息进行采集 ,接入自己的监控平台,因此需要能够查询的druid的监控信息
二、方案
方案一: 直接监控平台中嵌入druid的页面 但是无法解决网关认证和指定ip调用的问题
方案二: 在监控平台开发属于自己的监控页面,调用接口获取监控信息
1、服务中打开druid监控
1)自定义StatViewServlet的Bean,对druid-spring-boot-starter做封装,在pom中加入druid-spring-boot-starter依赖
2)增加对DruidDataSource的子类CustomDruidDatasource,在类上增加@ConfigurationProperties(prefix="spring.datasource.druid")的注解
3)增加配置

xml 复制代码
# 支持SQL,防御统计
spring.datasource.druid.stat-view-servlet.enable=true
# 支持重置
spring.datasource.druid.stat-view-servlet.resetEnable=true
# 支持uri和session统计
spring.datasource.druid.web-stat-filter.enable=true
# 配置监控统计拦截的filters,去掉监控SQL无法统计
spring.datasource.druid.filters=stat,wall
# 用connectionPropertis属性来统计慢SQL记录,打开mergeSQL功能
spring.datasource.druid.connectionPropertis=druid.stat.mergeSql=true;druid.stat.slowSqlMills=5000

4)Filter配置
具体查看druid-spring-boot-starter包中spring-configuration-metadata.json文件

xml 复制代码
#如打印慢SQL可以使用
spring.datasource.druid.filter.stat.log-slow-sql=true
禁止alter table 
spring.datasource.druid.filter.wall.config.alter-table-allow=true
相关推荐
【非典型Coder】22 分钟前
Statement和PreparedStatement区别
数据库
m0_736927041 小时前
想抓PostgreSQL里的慢SQL?pg_stat_statements基础黑匣子和pg_stat_monitor时间窗,谁能帮你更准揪出性能小偷?
java·数据库·sql·postgresql
lang201509281 小时前
MySQL 8.0.29 及以上版本中 SSL/TLS 会话复用(Session Reuse)
数据库·mysql
望获linux2 小时前
【实时Linux实战系列】使用 u-trace 或 a-trace 进行用户态应用剖析
java·linux·前端·网络·数据库·elasticsearch·操作系统
清和与九2 小时前
binLog、redoLog和undoLog的区别
数据库·oracle
望获linux3 小时前
【实时Linux实战系列】FPGA 与实时 Linux 的协同设计
大数据·linux·服务器·网络·数据库·fpga开发·操作系统
总有刁民想爱朕ha3 小时前
Python自动化从入门到实战(24)如何高效的备份mysql数据库,数据备份datadir目录直接复制可行吗?一篇给小白的完全指南
数据库·python·自动化·mysql数据库备份
朝九晚五ฺ3 小时前
【Redis学习】持久化机制(RDB/AOF)
数据库·redis·学习
虾说羊3 小时前
sql中连接方式
数据库·sql
liweiweili1263 小时前
Django中处理多数据库场景
数据库·python·django