druid 添加监控

本贴最后更新于 2407 天前,其中的信息可能已经时过境迁

步骤

修改 web.xml

<!--druid监控页面 --> <servlet> <servlet-name>DruidStatView</servlet-name> <servlet-class>com.alibaba.druid.support.http.StatViewServlet</servlet-class> <init-param> <!-- 不允许清空统计数据 --> <param-name>resetEnable</param-name> <param-value>false</param-value> </init-param> <init-param> <!-- 用户名 --> <param-name>loginUsername</param-name> <param-value>123456</param-value> </init-param> <init-param> <!-- 密码 --> <param-name>loginPassword</param-name> <param-value>yourpassword</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>DruidStatView</servlet-name> <url-pattern>/druid/*</url-pattern> </servlet-mapping> <!--druid监控页面 -->

打开登录页面

http://127.0.0.1:9999/test/druid/index.html
用户名和密码在上面 web.xml 文件中有配置。

显示 sql 监控

在 spring 的数据源配置中添加这个属性。
<property name="filters" value="wall,stat"/>

添加了这句配置之后就能在 druid 的 sql 监控下看到 sql。

配置图 1.png

存储慢 sql

把慢 sql 存储到日志,并在 sql 监控页面显示每个 sql 的最长处理时间。

在 spring 的数据源配置中添加这个属性。

<property name="proxyFilters"> <list> <ref bean="stat-filter"/> <ref bean="log-filter"/> </list> </property>

配置 stat-filter 和 log-filter

<!-- 慢SQL记录 --> <bean id="stat-filter" class="com.alibaba.druid.filter.stat.StatFilter"> <!-- 慢sql时间设置,即执行时间大于200毫秒的都是慢sql --> <property name="slowSqlMillis" value="200"/> <property name="logSlowSql" value="true"/> </bean> <bean id="log-filter" class="com.alibaba.druid.filter.logging.Log4jFilter"> <property name="dataSourceLogEnabled" value="true" /> <property name="statementExecutableSqlLogEnable" value="true" /> </bean>

配置 log4j,把慢 sql 插入到日志中

修改 log4j.properties

log4j.logger.com.alibaba.druid=WARN,druid log4j.additivity.com.alibaba.druid=false log4j.logger.druid.sql.DataSource=WARN,druid log4j.logger.druid.sql.Connection=WARN,druid log4j.logger.druid.sql.Statement=WARN,druid log4j.appender.druid=org.apache.log4j.DailyRollingFileAppender log4j.appender.druid.layout=org.apache.log4j.PatternLayout log4j.appender.druid.layout.ConversionPattern= [%p][%d{yyyy-MM-dd HH\:mm\:ss,SSS}][%t][%c][%L]%m%n log4j.appender.druid.datePattern='.'yyyy-MM-dd log4j.appender.druid.Threshold = WARN log4j.appender.druid.append=true log4j.appender.druid.File=../logs/test/druid-slow-sql.log

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...