This article mainly introduces how to solve the problem that there is no data in sql monitoring after SpringBoot integrates Druid.
If necessary, you can refer to it
. If it is helpful, don’t forget to like it❥
First we need to integrate Druid
-
Introduce dependencies in pom.xml
<!--设置数据源 默认是使用springboot中的jdbc连接池--> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.1.16</version> </dependency>
-
Configuration parameters
#指定连接池类型 spring.datasource.type=com.alibaba.druid.pool.DruidDataSource #连接池的配置信息 #初始化大小,最小,最大 spring.datasource.initalSize=5 spring.datasource.maxActive=20 spring.datasource.minIdle=5 #配置获取连接等待超时的时间 spring.datasource.maxWait=60000 # 配置一个连接在池中最小生存的时间,单位是毫秒 spring.datasource.minEvictableIdleTimeMillis=300000 spring.datasource.validationQuery=SELECT 1 FROM DUAL spring.datasource.testWhileIdle=true spring.datasource.testOnBorrow=false spring.datasource.testOnReturn=false
-
Create a Druid configuration class
//这个注解用来声明跟这个类是配置类 @Configuration public class DruidConfig { @ConfigurationProperties(prefix = "spring.datasource") // 用来扫描配置文件中前缀为spring.datasource的配置信息 @Bean //用来注册到配置容器中 public DataSource druid() { return new DruidDataSource(); } //配置Druid的监控 //配置一个管理后台的Servlet @Bean public ServletRegistrationBean statViewServlet() { ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean(new StatViewServlet(), "/druid/*"); Map<String,String> initParam = new HashMap<>(); initParam.put("loginUsername","admin"); initParam.put("loginPassword","123456"); initParam.put("allow",""); //默认就是允许所有访问 initParam.put("deny",""); //默认访问 servletRegistrationBean.setInitParameters(initParam); return servletRegistrationBean; } //注册一个filters @Bean public FilterRegistrationBean druidStatFilter(){ FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean(new WebStatFilter()); //添加过滤规则. filterRegistrationBean.addUrlPatterns("/*"); //添加不需要忽略的格式信息. filterRegistrationBean.addInitParameter("exclusions","*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*"); return filterRegistrationBean; } }
In this way we have configured Druid
-
Start the project, visit localhost:port number/druid, jump to the login page, and log in using the configured admin and 123456
-
The problem comes at this time. We don’t see the data in the SQL monitoring in the druid management page.
-
solution
- Add to configuration parameters
#配置监控统计拦截的filters,去掉后监控界面sql将无法统计 spring.datasource.filters : stat
- Then start the project and visit the druid management page again. At this time, you can see that there is data in the sql monitoring.
- In this way, the problem of no sql monitoring can be successfully solved. If there are still problems, check the dependencies in the pom file.
- Add to configuration parameters