论坛首页 Java企业应用论坛

用jamon来监控你的sql执行效率

浏览 19408 次
该帖已经被评为良好帖
作者 正文
   发表时间:2008-02-26  
ahuaxuan 写道
leadyu 写道


它不仅仅可以监控j2ee工程(包括EJB以及WebModule)的所有的jdbc调用,包括调用的堆栈(什么程序打开的连接),还可以监控方法的调用,以及http的请求,所有的这一切,只需要部署一个jar,以及配置一个配置文件。



你提供的功能jamon都有,但是你的界面看起来更好看,更耐看一点,赞一个。
jamon的界面太差劲了



看了下jamon,应该说jwebap在部署方面真的简单太多了。

首先,jwebap对于jdbc的监控,根本不需要代理数据源,也不需要实现特定的代理驱动。而且jamon这种方式应该是没法监控jndi数据源的(从我初步从它的配置文档了解到的,我只能说应该:-) )

另外,对于EJB的监控,Jwebap也根本不需要配EJB的代理,只要在method plugin的'detect-class'参数里,配置想监控的包名即可,如"test.ejb.*;com.ejb.*;"

jwebap的部署,只需要丢个jar包,配下jwebap.xml 和对应的web.xml即可。


我觉得可以这么归结:


第一代prfiling tools:基于代理,代理,又代理的思想,实现monitor。缺点是,部署麻烦,甚至是还需要修改项目代码才能部署,功能也不强。比如jamon和P6SQL

第二代prfiling tools:基于专属平台JVMPI,缺点:给系统带来了10-20倍的性能负担,同时部署复杂,但是,功能强大,如jprofiler

第三代prfiling tools:出现了BCEL,后更有ASM等字解码指令操作框架,介于jdk14-15之间。基于字解码操作,profiling实现了真正意义的动态monitor。这种profiling部署简单,性能高,但是功能不算非常强大。

第四代prfiling tools:出现jdk instrument。更有aspectJ。这时profiling功能得到增强,但是丢失了大量停留在jdk14的用户,同时部署也不简单。


Jwebap从这种划分,应该说,处于第三代和第四代之间,Jwebap-core采用第三代技术,plugin则很任意,介于第四代技术。
0 请登录后投票
   发表时间:2008-03-02  
spring中已经集成了jamon
0 请登录后投票
   发表时间:2008-07-16  
如果我里头的配置文件是这样的,怎么来做呢!


  <transactionManager type="JDBC">
    <dataSource type="SIMPLE">
      <property name="JDBC.Driver" value="${driver}"/>
      <property name="JDBC.ConnectionURL" value="${url}"/>
      <property name="JDBC.Username" value="${username}"/>
      <property name="JDBC.Password" value="${password}"/>
      <property name="JDBC.DefaultAutoCommit" value="true"/>

      <property name="Pool.MaximumActiveConnections" value="40"/>
      <property name="Pool.MaximumIdleConnections" value="5"/>
      <property name="Pool.MaximumCheckoutTime" value="12000"/>
      <property name="Pool.TimeToWait" value="2000"/>
      <property name="Pool.PingQuery" value="select 1 from dual"/>
      <property name="Pool.PingEnabled" value="false"/>
      <property name="Pool.PingConnectionsOlderThan" value="0"/>
      <property name="Pool.PingConnectionsNotUsedFor" value="0"/>
     
    </dataSource>
  </transactionManager>
0 请登录后投票
   发表时间:2008-07-16  
正在想对现在的项目进行监控,但项目配置跟楼主不一样,不知道如何下手,请楼主指点一下啊!谢谢
0 请登录后投票
   发表时间:2008-12-01  
jamon怎样查看监视结果????????好像好没有人说下.
0 请登录后投票
   发表时间:2008-12-16  
org.jwebap.config.ConfigException: 配置工厂未初始化,请调用 configure(String path) 进行初始。
org.jwebap.config.ConfigurationCacher.getConfiguration(ConfigurationCacher.java:47)
org.jwebap.ui.controler.DispatcherFactory.createDispatcherChain(DispatcherFactory.java:34)
org.jwebap.ui.controler.JwebapServlet.doGet(JwebapServlet.java:41)
javax.servlet.http.HttpServlet.service(HttpServlet.java:697)
0 请登录后投票
   发表时间:2008-12-16  
大哥,你的错是jwebap抛出来的呀,你没有用jamon,是不是贴错地方了
0 请登录后投票
   发表时间:2008-12-16  
目前我们在遇到性能问题时也会使用JAmon进行监控,效果哦很好

配置也很简单
在web.xml中增加filter,在applicationContext增加性能拦截器和代理数据源即可

分析内容还是很充分的,推荐使用
0 请登录后投票
   发表时间:2008-12-18   最后修改:2008-12-18
当然要我们的应用能够显示这个页面,我们需要把jamon的一组页面拷到我们的应用中,这一组页面包含在我提供下载的包中


-----------------------------------------------------------------
老大,你提供的在哪里?怎么配置页面显示?


搞定了,老大你给的包里没有,要去下载个最新的版本里,里面有war包,将需要页面sql.jsp拷贝进去就可以了
http://jamonapi.sourceforge.net

0 请登录后投票
   发表时间:2009-01-05  
我写了个MonitorDataSource的类override之前的DataSource,并在applicationContext.xml配置完,运行sql.jsp报错,发现里面有句sql:select * from array,这是什么意思呢?不是说sql.jsp不用改就能看到效果吗?
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics