Druid后台监控与过滤器
Druid是阿里开元的数据源,相较于c3p0,dbcp等数据源具有强大的后台监控功能,刚好最近在学习springboot,涉及到Druid的知识,所以记录一下。
springboot实现后台监控主要分为三个步骤:
- 配置pom文件与application.yaml文件;
- 绑定yaml文件,连接Druid;
- 自定义后台监控配置。
1.配置pom文件与application.yaml文件
(1)配置pom文件
pom文件需要引入Druid的依赖,如下:
<!-- druid -->
<dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.2.10</version>
</dependency>
也可直接去Maven库中直接查找最新的依赖,链接如下:
https://mvnrepository.com/artifact/com.alibaba/druid
(2)配置application.yaml文件
spring:datasource:username: name #数据库用户名password: psw #数据库密码url: jdbc:mysql://localhost:3306/?user=namedriver-class-name: com.mysql.cj.jdbc.Driver#引入Druid数据源type: com.alibaba.druid.pool.DruidDataSource#SpringBoot默认是不注入这些的,需要自己绑定#druid数据源专有配置initialSize: 5minIdle: 5maxActive: 20maxWait: 60000timeBetweenEvictionRunsMillis: 60000minEvictableIdleTimeMillis: 300000validationQuery: SELECT 1 FROM DUALtestWhileIdle: truetestOnBorrow: falsetestOnReturn: falsepoolPreparedStatements: true#配置监控统计拦截的filters,stat:监控统计、log4j:日志记录、wall:防御sql注入#如果允许报错,java.lang.ClassNotFoundException: org.apache.Log4j.Properity#则导入log4j 依赖就行filters: stat,wall,log4jmaxPoolPreparedStatementPerConnectionSize: 20useGlobalDataSourceStat: trueconnectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500
2.绑定yaml文件,连接Druid
创建Config文件之后, 在自定义后台监控之前需要先绑定yaml文件,连接Druid:
@ConfigurationProperties(prefix = "spring.datasource") //绑定yaml文件中定义的数据源
@Bean
public DataSource druidDataSource(){return new DruidDataSource();
}
3.自定义后台监控配置
后台监控类ServletRegistrationBean继承自DynamicRegistrationBean,进行配置的方法可以DynamicRegistrationBean中查看,这里做的工作只是将其重写。
//后台监控:web.xml, ServletRegistrationBean
//因为SpringBoot内置了servlet容器,所以没有web.xml,替代方法:ServletRegistrationBean
@Bean
public ServletRegistrationBean monitor(){ServletRegistrationBean<StatViewServlet> bean = new ServletRegistrationBean<>(new StatViewServlet(), "/druid/*");//查看后台控制需要登录,下文进行账号密码设置HashMap<String, String> initParameters = new HashMap<>();//增加配置initParameters.put("loginUsername","admin"); //登录的key是固定的initParameters.put("loginPassword", "123456"); //密码的key是固定的//允许谁能访问initParameters.put("allow", ""); //为空时,所有人都可访问//禁止谁能访问 initParameters.put("zhangsan", "IP地址")bean.setInitParameters(initParameters);return bean;}
4.后台监控效果
可通过localhost:8080/druid/进入后台控制的登录界面
通过自定义的用户名密码登录后台控制界面
可在Druid Monitor中查看数据源,监控SQL,URL等,功能还是非常强大的。
Druid后台监控与过滤器相关推荐
- 德鲁伊(Druid)后台监控配置详细操作。生产环境定位问题方法
前言 从写System.out.println("hello world!")开始,到现在我一直认为,一个项目的系统上线,完成CURD(增删改查)的代码远远不够.为便于项目快速定位 ...
- 配置Druid数据源监控
Druid 数据源具有监控的功能,并提供了一个 web 界面方便用户查看. 所以第一步需要设置 Druid 的后台管理页面,比如 登录账号.密码 等:配置后台管理: //配置 Druid 监控管理后台 ...
- druid的后台监控
Druid是一个关系型数据库连接池,它是阿里巴巴的一个开源项目.Druid支持所有JDBC兼容的数据库,包括Oracle.MySQL.Derby.PostgreSQL.SQL Server.H2等.D ...
- 数据库连接池 ( 五 ) Druid 数据监控
4.Druid 数据监控 4.0.Druid 监控参数 参数 值 含义 ActiveCount 0 当前连接池中活跃连接数 ActivePeak 1 连接池中活跃连接数峰值 ActivePeakTim ...
- 阿里开源mysql监控_Alibaba-技术专区-开源项目之Druid数据库监控平台
一. 介绍: DRUID是阿里巴巴开源平台上一个数据库连接池实现,它结合了C3P0.DBCP.PROXOOL等DB池的优点,同时加入了日志监控,可以很好的监控DB池连接和SQL的执行情况,可以说是针对 ...
- Delphi编写后台监控软件
Delphi编写后台监控软件 文章来源:Delphi程序员之家 后台监控软件,为了达到隐蔽监控的目的,应该满足正常运行时,不显示在任务栏上,在按Ctrl+Alt+Del出现的任务列表中也不显示,管 ...
- druid dubbo 生产者_dubbo项目扩展druid sql监控
最近在项目中采用dubbo来管理服务,但是数据库连接池这一块采用druid,网上配置druid sql监控的都是基于web.xml配置,需要servlet容器支持,但是dubbo项目服务端这边一般不 ...
- Druid Monitor监控Java Web和Java SE项目
Druid Monitor 对于数据源,大家已经接触了不少了.比如c3p0.dhcp.proxool等,之后又发现使用tomcat-jdbc可以大大的提高性能.但是针对于我们的高并发的系统来说,总希望 ...
- 简单的实现app界面劫持和后台监控
如今越来越多的手机玩家都为了折腾一些稀奇古怪的东西,或出于好奇,或出于贪心,往往会root手机去尝试安装一些外挂,刷分,刷粉,修改版等等乱七八糟的东西 正因为此类用户的存在,一些小人就盯上了这方面的市 ...
最新文章
- 微众WeCross 跨链平台(7)跨链路由
- optee中的密码学算法注册模型
- axios封装_VUE.JS请求工具Axios的封装
- 单调队列优化和决策单调性优化
- win10装python3.6_win10+python3.6,安装tensorflow
- 【ES】CURL 操作 ES命令集合
- 杭电 4907 Task schedule ·
- ArcGIS GDB中要素类不可编辑
- 利用阿里云提供的镜像快速更换本地的yum源
- arcgis导出地图分辨率多少合适_地图册制作:ArcGIS分幅制图——以深圳地铁线路图为例...
- oracle mysql认证考试流程_报考oraclemysql认证考试流程
- 条码打印工具-Bartender的使用
- c语言工程师专业分析,一个资深c语言工程师说如何学习c语言.pdf
- 溯源项目(全套源码)
- woj 1567 - D - Sloth's Angry(贪心)
- 关于阿里云OOS文件上传的一些问题
- Markdown实用快捷键
- VScode启动流程
- linux重装xorg,菜鸟恢复xorg.conf的菜方法
- mac 使用的小技巧