javamelody使用体验

        最近,做有关服务监控的项目,所以在使用javamelody这个插件;对其做了一个大概了解,记下来,以后有的看..

        首先,到google的code下,下载javamelody的zip包,下面有三个jar包:javamelody.jar,jrobin.jar,jira-javamelody.jar

其中:javamelody有监控的主要类,jrobin是一个导出图表的插件,里面机制不了解;另一个包还没用呢;下面还有一个war

包:javamelody.war,这个war包放到tomcat下,启动tomcat就可以访问了,地址为:http:localhost:8080/javamelody;进去可

以添加应用;但是,一般普通的应用添加进去不管用;会报找不到javamelody文件的错;这是你需要将javamelody集成到你的应用

中去;集成的方法是将javamelody.jar和jrobin.jar的包导入到你应用的lib中,然后,在web.xml中配置过滤器就可以了.添加应用就可以了.

        下面讲讲javamelody应用和单个应用的关系;javamelody中是有一个核心servlet叫CollectorServlet,处理发送过来的请求,

处理过程中创建一个CollectorController的对象,对象里传入一个ConllectorServer对象(CollectorController collectorController =

new CollectorController(collectorServer));而CollectorServer中封装了采集到的数据,这个collectorServer是在启动tomcat容器

时,实例化servlet的时候在其int方法中创建的,在collectorServer的构造方法中启动了一个定时器,定时器中添加一个

timertask任务,任务中执行collectWithoutErrors()方法收集数据;collectWithoutErrors中通collectForApplication(application,

urls)对每个应用收集数据,这个方法中有一个remoteCollector得类给添加的应用发送请求收集相关数据.最后将收集的数据

交给jrobin报表插件显示.

    而对应每个添加的应用添加的jar包中也有一个定时器,在不断的收集应用的数据,而这个定时器是通过添加的核心过滤器

MonitoringFilter的init方法中启动.他的作用就是收集项目spring,EJB,struts,guice等的数据.可以通过http:localhost:8080/项

目路径/monitoring来访问单个项目的监控台.

    我的理解是:一端是开启定时器不断的发送请求,另一端是开启定时器不断的收集数据;但是,这个过程中数据不知道使用

缓存还是存储在数据库呢?还有就是相关spring等信息 的MBean是如何写的?先到这,明天再写啦~~


转载于:https://my.oschina.net/KangL/blog/95256

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值