20180315更新 druid-spring监控
原理,利用spring-aop特性,拦截指定包的方法,分析每个方法的执行时间等参数特性。
spring-servlet.xml添加如下代码:
<bean id="druid-stat-interceptor"
class="com.alibaba.druid.support.spring.stat.DruidStatInterceptor">
</bean>
<bean id="druid-stat-pointcut" class="org.springframework.aop.support.JdkRegexpMethodPointcut"
scope="prototype">
<property name="patterns">
<list>
<value>com.wlt.*</value>//代表拦截分析com.wlt下面的所有方法
</list>
</property>
</bean>
<aop:config>
<aop:advisor advice-ref="druid-stat-interceptor" pointcut-ref="druid-stat-pointcut"/>
</aop:config>
在druid-monitor界面,查看spring-monitor:
20180314初稿 简单druid-monitor
经常做项目的时候,如果因为某个sql写的不好,就会被怼,被狠狠的怼。
自己又一筹莫展,没办法解决。
druid监控的出现,解决了很多人的这个困扰。
功能很强大,可以实时的更新已经访问的sql,包括访问的时间,用时,参数。
下面分享下,如何使用:
1、想要用druid监控,自然就要用druid数据源了。可以参考:Spring基于aop多数据源切换
2、druid的监控使用是非常的简单的:
在web.xml里头增加如下配置:
<!-- druid监控配置 -->
<servlet>
<servlet-name>DruidStatView</servlet-name>
<servlet-class>com.alibaba.druid.support.http.StatViewServlet</servlet-class>
<init-param>
<!-- 用户名 -->
<param-name>loginUsername</param-name>
<param-value>admin</param-value>
</init-param>
<init-param>
<!-- 密码 -->
<param-name>loginPassword</param-name>
<param-value>123456</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>DruidStatView</servlet-name>
<url-pattern>/druid/*</url-pattern>
</servlet-mapping>
<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>
启动你的项目,确保项目已经起来了,这个时候访问:http://ip:port/applicationname/druid/,其中ip,port,applicationname根据项目做更改,druid是固定写法。
效果如下:
重点使用这个页面: