博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
一个Web报表项目的性能分析和优化实践(七):性能监测工具JavaMelody
阅读量:4609 次
发布时间:2019-06-09

本文共 1739 字,大约阅读时间需要 5 分钟。

简介

JavaMelody 能够监测Java或Java EE应用程序服务器,并以图表的方式显示:

Java内存和Java CPU使用情况,用户Session数量,JDBC连接数,
和http请求、sql请求、jsp页面与业务接口方法(EJB3、Spring、 Guice)的执行数量,平均执行时间,错误百分比等。

图表可以按天,周,月,年或自定义时间段查看。

使用步骤

1.下载JavaMelody。

下载地址:
javamelody-1.16.0.jar,jrobin-1.5.9.1.jar
(版本号可能会不同)

2.将Jar包拷贝到项目的WEB-INF的lib目录。

3.在web.xml下增加配置。

 

monitoring
net.bull.javamelody.MonitoringFilter
monitoring
/*
net.bull.javamelody.SessionListener
  
4.重新启动项目,访问 即可看到监控图表。

安全问题
按照上述的配置,不需要登录就可以访问JavaMelody的页面。
实际项目中,常见需求是“登录用户,才可以查看”。
定制方法如下:
web.xml的Filter配置
<filter-class>packageName.ProjectMonitoringFilter</filter-class></filter>

自定义的Filter  

public class ProjectMonitoringFilter extends net.bull.javamelody.MonitoringFilter{ @Override public void doFilter(ServletRequest req, ServletResponse response,   FilterChain chain) throws IOException, ServletException {  HttpServletRequest request = (HttpServletRequest) req;  HttpSession session = request.getSession();  User user = (User) session.getAttribute(Constant.LOGIN_USER);  String uri = ((HttpServletRequest) request).getRequestURI();  if(user == null && uri.indexOf("/monitoring") != -1){   return;  }  super.doFilter(request, response, chain); } }

实践出真知

 本来想自己总结的,发现别人总结的比我好,所以就借鉴了许多别人写的。

 
 我觉得“借鉴”和“复制”别人的并不可耻,因为绝大部分技术都是别人开发的,我们只是用。
那些技术的优点、正确的使用方法,基本是固定的了,我们只有学习的份。

    这类工具的使用方法,网上一大堆。

 不过,自己总结下,加深下理解,今后也有自己的参考。
 看自己总结的,更亲切,更可读,出错的可能性更小。

参考资料
1.百度百科 JavaMelody
2.http://zhumeng8337797.blog.163.com/blog/static/10076891420123270148914/

原文参见(小雷网-FansUnion.cn)

转载于:https://www.cnblogs.com/qitian1/p/6463409.html

你可能感兴趣的文章
lsof命令详解
查看>>
常用模块,异常处理
查看>>
父窗口与子窗口之间的传值
查看>>
eclipse 找不到 tomcat 的解决方案
查看>>
HDU 1890--Robotic Sort(Splay Tree)
查看>>
connection string for Excel/Access 2010
查看>>
【转】【Python】Python中的__init__.py与模块导入(from import 找不到模块的问题)
查看>>
学习wavenet_vocoder之环境配置
查看>>
常用Maven命令
查看>>
Docker启动mysql的坑2
查看>>
JS中的对象数组
查看>>
j2ee爬坑行之二 servlet
查看>>
JAVA基础入门(JDK、eclipse下载安装)
查看>>
最基础的applet运用--在applet上画线
查看>>
布局大全
查看>>
eclipse中安装tomcat插件
查看>>
常见设计模式C++代码实现
查看>>
C++线程同步的四种方式(Windows)
查看>>
前端面试集锦(1)
查看>>
What are Upgrade, Product and Package Codes used for? By pusu
查看>>