转自

JavaMelody 可以实现对内存、CPU、线程、JDBC 连接数、HTTP 请求执行时间、SQL 执行时间(分析 Top SQL)、方法执行时间(分析系统方法性能瓶颈)等等的监控。

配置方式

1. pom.xml(加入依赖包)

1
2
3
4
5
<dependency>
    <groupId>net.bull.javamelody</groupId>
    <artifactId>javamelody-core</artifactId>
    <version>1.53.0</version>
</dependency>

2. web.xml

2.1. 配置过滤器,也可以配置不需要监控的 HTTP 请求。

注意:一定要放在所有过滤器的最上面,不然会被 action 拦截。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<filter>
    <filter-name>monitoring</filter-name>
    <filter-class>net.bull.javamelody.MonitoringFilter</filter-class>
    <init-param>
        <!-- 配置不需要拦截的路径
            <param-name>url-exclude-pattern</param-name>
            <param-value>/static/.*</param-value>
        -->
        <!-- 配置登录用户名密码。shop端配置,man端不需要 -->
        <param-name>authorized-users</param-name>
        <param-value>用户名:密码</param-value>
    </init-param>
</filter>
<filter-mapping>
    <filter-name>monitoring</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

2.2 配置 JDBC 监控统计(必须作为第一个配置文件)

1
2
3
4
5
6
7
<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>
        classpath:net/bull/javamelody/monitoring-spring.xml; <!-- 和 Spring 集成时添加 -->
        classpath:spring-config.xml;classpath:spring-config-struts.xml
    </param-value>
</context-param>

3 struts.xml 配置 Struts 监控(将 'monitoring' interceptor 配置到被继承的 package 下)

1
2
3
4
5
6
7
8
9
10
11
12
<package name="default" extends="struts-default">
    <interceptors>
        <!-- javamelody -->  
        <interceptor name="monitoring" class="net.bull.javamelody.StrutsInterceptor"/>
        <interceptor-stack name="myStack">
            <interceptor-ref name="monitoring"/>
            <!-- struts 默认的拦截器 -->
            <interceptor-ref name="defaultStack"/>
        </interceptor-stack>
    </interceptors>
    <default-interceptor-ref name="myStack"/>
</package>

4. 配置 Quartz 监控

全文搜索 org.springframework.scheduling.quartz.SchedulerFactoryBean,在 xml 的每个 bean 中加入 propetry。

1
2
3
<bean id="quartzScheduler" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
    <property name="exposeSchedulerInRepository" value="true"/>
</bean>

访问链接:域名/monitoring,如:http://localhost/monitoring

JavaMelody 缓存文件的清除:默认路径一般在 tomcat_home/temp/javamelody 中。

最新文章

  1. Mysql加锁过程详解
  2. DVWA安装,ALMP环境搭建以及php版本转换
  3. app的同源和域的问题
  4. 在Java中直接调用js代码(转载)
  5. Relative 定位与Absolute 定位实例
  6. C++最后课程项目总结
  7. [POJ 2774] Long Long Message 【后缀数组】
  8. excel==&gt;csv==via phpmyadmin (edit php.ini &amp; my.ini)==&gt; MySQL Database
  9. java.sql.SQLException:Invalid value for getInt()-&#39;zhangsan&#39;
  10. knockoutjs data-bind 声明式绑定整理
  11. android studio发布项目到github
  12. Python requests--初识接口自动化
  13. [C#]将数据写入已存在的excel文件
  14. Quartz使用记录总结
  15. css利用padding百分比实现图片自适应高度
  16. jetty 插件启动指定端口号
  17. foreachPartition来写数据库
  18. tensorflow(深度学习框架)详细讲解及实战
  19. springboot 前后端分离开发 从零到整(二、邮箱注册)
  20. 18华南理工校赛 K 小马哥的超级盐水

热门文章

  1. HDU 5288 OO&rsquo;s Sequence
  2. Linux命令之查看文件夹、文件数量及其所占磁盘空间
  3. (转)dubbo远程调用细节
  4. 洛谷P4859 已经没有什么好害怕的了 [DP,容斥]
  5. 解决 安装或卸载软件时报错Error 1001 的问题
  6. Socket通讯成功案例
  7. 团队开发工具git常用命令
  8. svn上check下来的项目,用idea打开,菜单栏没有svn工具解决办法
  9. 在前台根据传过来的XX级别的数字转XX的名字
  10. eclipse的安装及使用