• spring-boot 配置Druid监控


    介绍

    在开发过程中,当我们调试一个程序,我们可能希望查看一个SQL语句的执行时间,我们也可能想去看一个请求的请求响应时间。如果你使用的数据库连接池是Druid。那么你就不需要在代码中,嵌入大量的System.out.print(System.currentTimeMillis())或者logger.debug()了,而是直接配置使用Druid提供的监控平台。

    POM依赖

    <!-- Druid连接池 -->
    <dependency>
    	<groupId>com.alibaba</groupId>
    	<artifactId>druid-spring-boot-starter</artifactId>
    	<version>1.1.9</version>
    </dependency>
    

    配置类

    
    import com.alibaba.druid.pool.DruidDataSource;
    import com.alibaba.druid.support.http.StatViewServlet;
    import com.alibaba.druid.support.http.WebStatFilter;
    import org.springframework.boot.context.properties.ConfigurationProperties;
    import org.springframework.boot.web.servlet.FilterRegistrationBean;
    import org.springframework.boot.web.servlet.ServletRegistrationBean;
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Configuration;
    
    import javax.sql.DataSource;
    
    @Configuration
    public class DruidConfig {
        @Bean
        public ServletRegistrationBean druidServlet() {// 主要实现web监控的配置处理
            ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean(
                    new StatViewServlet(), "/druid/*");//表示进行druid监控的配置处理操作
            //servletRegistrationBean.addInitParameter("allow", "127.0.0.1,192.168.202.233");//白名单
            //servletRegistrationBean.addInitParameter("deny", "192.168.202.234");//黑名单
            servletRegistrationBean.addInitParameter("loginUsername", "admin");//用户名
            servletRegistrationBean.addInitParameter("loginPassword", "123456");//密码
            servletRegistrationBean.addInitParameter("resetEnable", "false");//是否可以重置数据源
            return servletRegistrationBean;
        }
     
        @Bean    //监控
        public FilterRegistrationBean filterRegistrationBean() {
            FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean();
            filterRegistrationBean.setFilter(new WebStatFilter());
            filterRegistrationBean.addUrlPatterns("/*");//所有请求进行监控处理
            filterRegistrationBean.addInitParameter("exclusions", "/static/*,*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*");//排除静态资源访问以及德鲁伊本身接口
            return filterRegistrationBean;
        }
     
        @Bean
        @ConfigurationProperties(prefix = "spring.datasource.druid")
        public DataSource druidDataSource() {
            return new DruidDataSource();
        }
    }
    

    访问监控页面

    监控页面

  • 相关阅读:
    Asp中返回到前一页面
    vs2008 简单ajax 功能的实现。
    Arcgis Server的唯一值渲染
    ArcGIS Server中缓冲区分析的实现(点)
    用两个Calendar控件来控制数据库记录的读入
    把十进制转化为二进制的一种方法
    Segmentation fault (core dumped)
    libc glibc glib 的关系
    使用异或加密数据
    宏定义一些内容
  • 原文地址:https://www.cnblogs.com/yiweiblog/p/12692916.html
Copyright © 2020-2023  润新知