spring boot(11)-druid监控

来源:互联网 发布:nginx m3u8 点播 编辑:程序博客网 时间:2024/05/21 07:54

druid

druid是和tomcat jdbc一样优秀的连接池,出自阿里巴巴。关于druid连接池参数,参考
https://github.com/alibaba/druid/wiki/DruidDataSource%E9%85%8D%E7%BD%AE%E5%B1%9E%E6%80%A7%E5%88%97%E8%A1%A8
除了连接池,druid还有一个很实用的监控功能,这就是下面要讲的

pom.xml

添加了以下依赖后,会自动用druid连接池替代默认的tomcat jdbc连接池

<dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-starter</artifactId><version>1.1.0</version></dependency>

参数配置

在properties文件中配置以spring.datasource.druid为前缀的参数,会注入到druid连接池中。默认有的监控没有开启,现在全部配置开启
#默认为stat,即开启sql监控。这里加了个wall,表示同时开启sql防火墙spring.datasource.druid.filters=stat,wall#spring监控,hello.controller是我的控制层包名,也可以是服务层,用逗号分隔多个监控内容spring.datasource.druid.aop-patterns=hello.controller.*#监控页面登录用户名spring.datasource.druid.StatViewServlet.loginUsername=admin#监控页面登录密码spring.datasource.druid.StatViewServlet.loginPassword=123

sql监控

启动项目,访问http://localhost/druid/index.html,用户名和密码就是上面配置的内容

登录后,必须先访问一个后台应用的URL,执行了后台程序后,才能看到监控数据。

点击SQL监控菜单:可以查看后台程序执行的sql语句所耗的时间,时间单位是毫秒。 


时间分布显示[0,1,0,0,0,0,0,0]是什么意思?
第一个0代表这个SQL有0次执行耗时0-1毫秒
第二个1代表这个SQL有1次执行耗1-10毫秒,也就是我们这里唯一的一次
第三个0代表这个SQL有0次执行耗10-100毫秒
以此类推,越右边的数字代表执行SQL时间越长的次数,如果靠右边的数字很大,就必须关注这条SQL了

其他 监控

spring监控:和SQL监控类似,我配置的是监控控制层,所以显示的是控制层执行的时间分布
数据源:显示当前连接池的参数配置,页面右上角有中英文切换,可以对照着查看说明
SQL防火墙:防御SQl攻击,拦截SQL请求
其他监控:在这里就不多介绍了,都是中文的自己看。监控也会占用系统资源,没什么大用的监控可以关掉
更多详细内容参考druid中文文档 https://github.com/alibaba/druid/wiki/%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98
原创粉丝点击