解决druid监控页面SQL不显示的问题

druid监控页面SQL不显示

如果可以正常访问界面,系统与数据库有交互,但是druid页面SQL监控却没数据

第一步查看【数据源】

检查filter是否没数据

第二步若没有数据,则查看自己的配置类

可以程序编写filterRegistrationBean,并通过@Bean自动加载

@Configurationpublic class DruidConfig {    @Value("${druid.login.user_name}")    private String userName;    @Value("${druid.login.password}")    private String password;    @Bean(name = "default_datadatasource")    @ConfigurationProperties(prefix = "spring.datasource")    public DataSource druidDataSource(){        return new DruidDataSource();    }    @Bean    public ServletRegistrationBean druidServlet() {        ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean();        servletRegistrationBean.setServlet(new StatViewServlet());        servletRegistrationBean.addUrlMappings("/druid/*");        Map<String, String> initParameters = new HashMap<>();        initParameters.put("loginUsername", userName);// 用户名        initParameters.put("loginPassword", password);// 密码        initParameters.put("resetEnable", "false");// 禁用HTML页面上的“Reset All”功能        servletRegistrationBean.setInitParameters(initParameters);        return servletRegistrationBean;    }    @Bean    public FilterRegistrationBean filterRegistrationBean() {        FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean();        filterRegistrationBean.setFilter(new WebStatFilter());        filterRegistrationBean.addUrlPatterns("/*");        filterRegistrationBean.addInitParameter("exclusions", "*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*");        return filterRegistrationBean;    } }

或是编写配置类

  #状态监控  filter:    stat:      # 慢SQL记录      log-slow-sql: true      slow-sql-millis: 1000      merge-sql: true      enabled: true    wall:      config:        multi-statement-allow: true  # 监控过滤器  web-stat-filter:    enabled: true    exclusions:      - "*.js"      - "*.gif"      - "*.jpg"      - "*.png"      - "*.css"      - "*.ico"      - "/monitor/druid/*"

这里需要注意的是filter->stat-> enabled: true,这个一定不能遗漏,否则后面的所有配置都不起作用

springboot druid SQL监控无数据

碰到这个问题的在网上查了下,大部分的解决办法都是在配置Servlet时再声明一个 dataSource 和在配置中加上监控统计拦截的filters;如下:

那么问题就简单了,因为我的项目使用了多数据源,所以只需要找到创建数据源的地方,加上监控统计拦截的filters就可以了

关于Servlet的配置可以直接放到配置中处理,其他缺少的配置可以自行添加:

重启之后配置生效:

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

头脑心灵再加上双脚的才是推销员。

解决druid监控页面SQL不显示的问题

相关文章:

你感兴趣的文章:

标签云: