SpringBoot – Druid监控统计功能

SpringBoot – Druid监控统计功能配置属性编辑项目的 applicaiton properties 或 applicaiton

欢迎大家来到IT世界,在知识的湖畔探索吧!

配置属性

编辑项目的 applicaiton.propertiesapplicaiton.yml 文件,除了配置 JDBC 连接信息外,还需要配置 druid 过滤器、WebStatFilter 以及 StatViewServlet 相关参数信息:

 JDBC 配置 spring.datasource.type=com.alibaba.druid.pool.DruidDataSource spring.datasource.url=jdbc:mysql://localhost:3306/hangge2?serverTimezone=Asia/Shanghai spring.datasource.username=root spring.datasource.password=hangge1234 连接池配置 # 过滤器设置(第一个stat很重要,没有的话会监控不到SQL) spring.datasource.druid.filters=stat,wall,log4j2 WebStatFilter配置 #启用StatFilter spring.datasource.druid.web-stat-filter.enabled=true #添加过滤规则 spring.datasource.druid.web-stat-filter.url-pattern=/* #排除一些不必要的url spring.datasource.druid.web-stat-filter.exclusions=*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/* #开启session统计功能 spring.datasource.druid.web-stat-filter.session-stat-enable=true #缺省sessionStatMaxCount是1000个 spring.datasource.druid.web-stat-filter.session-stat-max-count=1000 #spring.datasource.druid.web-stat-filter.principal-session-name= #spring.datasource.druid.web-stat-filter.principal-cookie-name= #spring.datasource.druid.web-stat-filter.profile-enable= StatViewServlet配置 #启用内置的监控页面 spring.datasource.druid.stat-view-servlet.enabled=true #内置监控页面的地址 spring.datasource.druid.stat-view-servlet.url-pattern=/druid/* #关闭 Reset All 功能 spring.datasource.druid.stat-view-servlet.reset-enable=false #设置登录用户名 spring.datasource.druid.stat-view-servlet.login-username=admin #设置登录密码 spring.datasource.druid.stat-view-servlet.login-password=123 #白名单(如果allow没有配置或者为空,则允许所有访问) spring.datasource.druid.stat-view-servlet.allow=127.0.0.1 #黑名单(deny优先于allow,如果在deny列表中,就算在allow列表中,也会被拒绝) spring.datasource.druid.stat-view-servlet.deny=

欢迎大家来到IT世界,在知识的湖畔探索吧!

慢 SQL 记录

有时系统会存在一些 SQL 执行很慢,如果希望日志记录下来,可以添加如下配置开启 Druid 的慢 SQL 记录功能。

注意slow-sql-millis 用来配置 SQL 慢的标准,执行时间超过 slow-sql-millis 的就是慢。slow-sql-millis 的缺省值为 3000,也就是 3 秒。

欢迎大家来到IT世界,在知识的湖畔探索吧!# 开启慢SQL统计(这里超过10毫秒则判定为慢SQL) spring.datasource.druid.filter.stat.enabled=true spring.datasource.druid.filter.stat.log-slow-sql=true spring.datasource.druid.filter.stat.slow-sql-millis=10

Spring 监控

默认情况下监控控制台中“Spring监控”子页面内容是空的,我们可以通过类似如下的配置,利用 aop 对各个内容接口的执行时间、jdbc 数进行记录。

# Spring 监控配置(配置多个AOP切入点使用英文逗号分隔) spring.datasource.druid.aop-patterns=com.example.hanggetest2.dao.*

获取 Druid 的监控数据

Druid 的监控数据可以在开启 StatFilter 后通过 DruidStatManagerFacade 进行获取,获取到监控数据之后我们便可以将其暴露给我们自己的监控系统进行使用。Druid 默认的监控系统数据也来源于此。

欢迎大家来到IT世界,在知识的湖畔探索吧!@RestController public class DruidStatController { @GetMapping("/druid-stat") public Object druidStat(){ // DruidStatManagerFacade#getDataSourceStatDataList 该方法可以获取所有数据源的监控数据 // 除此之外 DruidStatManagerFacade 还提供了一些其他方法,我们可以按需选择使用。 return DruidStatManagerFacade.getInstance().getDataSourceStatDataList(); } }

通过http://localhost:8080/druid-stat 接口获取到如下统计数据

SpringBoot - Druid监控统计功能



欢迎大家来到IT世界,在知识的湖畔探索吧!

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/104722.html

(0)
上一篇 58分钟前
下一篇 43分钟前

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们YX

mu99908888

在线咨询: 微信交谈

邮件:itzsgw@126.com

工作时间:时刻准备着!

关注微信