druid Filter 配置WebStatFilter

3 篇文章 0 订阅

来源URL:https://github.com/alibaba/druid/wiki/%E9%85%8D%E7%BD%AE_%E9%85%8D%E7%BD%AEWebStatFilter


WebStatFilter用于采集web-jdbc关联监控的数据。

web.xml配置

  <filter>
    <filter-name>DruidWebStatFilter</filter-name>
    <filter-class>com.alibaba.druid.support.http.WebStatFilter</filter-class>
    <init-param>
        <param-name>exclusions</param-name>
        <param-value>*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*</param-value>
    </init-param>
  </filter>
  <filter-mapping>
    <filter-name>DruidWebStatFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

exlusions配置

经常需要排除一些不必要的url,比如.js,/jslib/等等。配置在init-param中。比如:

    <init-param>
        <param-name>exclusions</param-name>
        <param-value>*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*</param-value>
    </init-param>

sessionStatMaxCount配置

缺省sessionStatMaxCount是1000个。你可以按需要进行配置,比如:

    <init-param>
        <param-name>sessionStatMaxCount</param-name>
        <param-value>1000</param-value>
    </init-param>

sessionStatEnable配置

你可以关闭session统计功能,比如:

    <init-param>
        <param-name>sessionStatEnable</param-name>
        <param-value>false</param-value>
    </init-param>

principalSessionName配置

你可以配置principalSessionName,使得druid能够知道当前的session的用户是谁。比如:

    <init-param>
        <param-name>principalSessionName</param-name>
        <param-value>xxx.user</param-value>
    </init-param>

根据需要,把其中的xxx.user修改为你user信息保存在session中的sessionName。

注意:如果你session中保存的是非string类型的对象,需要重载toString方法。

principalCookieName

如果你的user信息保存在cookie中,你可以配置principalCookieName,使得druid知道当前的user是谁

    <init-param>
        <param-name>principalCookieName</param-name>
        <param-value>xxx.user</param-value>
    </init-param>

根据需要,把其中的xxx.user修改为你user信息保存在cookie中的cookieName

profileEnable

druid 0.2.7版本开始支持profile,配置profileEnable能够监控单个url调用的sql列表。

<init-param>
    <param-name>profileEnable</param-name>
    <param-value>true</param-value>
</init-param>

结果展示

Demo


在项目中使用Spring Boot时配置Druid连接池需要以下步骤: 1. 在pom.xml文件中添加Druid的依赖: ``` <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.1.22</version> </dependency> ``` 2. 在application.properties或application.yml文件中配置Druid连接池的相关属性,如url、username、password等。 ``` spring.datasource.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8 spring.datasource.username=root spring.datasource.password=root spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.datasource.type=com.alibaba.druid.pool.DruidDataSource ``` 3. 在启动类中添加@ServletComponentScan注解,开启DruidStatViewServlet和WebStatFilter: ``` @ServletComponentScan @SpringBootApplication public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } } ``` 4. 在application.properties或application.yml中配置DruidStatViewServlet和WebStatFilter: ``` # Druid配置 spring.datasource.druid.stat-view-servlet.enabled=true spring.datasource.druid.stat-view-servlet.url-pattern=/druid/* spring.datasource.druid.web-stat-filter.enabled=true spring.datasource.druid.web-stat-filter.url-pattern=/druid/* ``` 5. 启动项目后,访问http://localhost:端口/druid/index.html即可看到Druid的监控页面。 需要注意的是,上面只是最基本的配置Druid还有很多高级功能,可以根据需要进行配置
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值