星期五, 8月 04, 2006

JAMon(Java Application Monitor)備忘記

JAMon (JAva Application Monitor) 為一套開源, 以 J2EE 為主的性能監視工具.
其以 簡單易用 及 性能高 的優點, 取得眾多 J2EE 開發員的愛戴.
可以用來監視性能的瓶頸, 用戶及應用程式間互動, 並能測試應用程式的擴展性.
JAMon 主要用來監測 點擊數, 執行時間 及 同步應用程式訪問數.
並以報表形式顯示.


開始備忘記:
[1] 第一個 JAMon 例子
[2] 下載及安裝工具
[3] 簡單的 J2EE 測試


[1] 第一個 JAMon 例子:
將 jamon-2.1.jar 加入 CLASSPATH 中 [ 後面有說明如何下載jamon-2.1.jar ].
/*----------------- JAMonitorTest.java -----------------*/
package jamon.joeyta.test;
import com.jamonapi.Monitor;
import com.jamonapi.MonitorFactory;
public class JAMonitorTest {
    public static void main(String[] args) throws Exception {
        Monitor mon=null;
        for (int i=1; i<=10; i++) {
            mon = MonitorFactory.start("joeytaTryJAMon");
            Thread.sleep(100+i);
            mon.stop();
        }
        System.out.println(mon);
    }
}
/*----------------- JAMonitorTest.java -----------------*/


執行後輸出為:
JAMon Label=joeytaTryJAMon, Units=ms.: (Hits=10.0, Avg=104.7, Total=1047.0,
Min=94.0, Max=110.0, Active=0.0, Avg Active=1.0, Max Active=1.0,
First Access=Fri Aug 04 14:07:50 GMT+08:00 2006, Last Access=Fri Aug 04 14:07:51 GMT+08:00 2006)


Hits=10.0 : joeytaTryJAMon JAMon Label 的執行次數.
Avg=104.7 : 總執行時間除以執行次數 (i.e., Total/Hits).
Total=1047.0 : 總執行時間.
Min=94.0 : 執行次數裡最短的執行時間.
Max=110.0 : 執行次數裡最長的執行時間.
Active=0.0 : 這數量表示在多執行緒裡同時執行的數目.
Avg Active=1.0 : 在多執行緒裡平均執行的數目.
Max Active=1.0 : 在多執行緒裡最大的執行數目.
First Access : 第一次執行的時間.
Last Access : 最後一次執行的時間.


如下圖所示:



[2] 下載及安裝工具:
安裝 JBoss:
可參考 JBoss EJB3(HelloWorld)備忘記
http://blog.matrix.org.cn/page/joeyta?entry=jboss_ejb3_helloworld_%E5%82%99%E5%BF%98%E8%A8%98


下載 JAMonAll_071606.zip
http://sourceforge.net/project/showfiles.php?group_id=96550&package_id=103162&release_id=432512
http://superb-east.dl.sourceforge.net/sourceforge/jamonapi/JAMonAll_071606.zip


解壓後顯示 jamon-2.1.jar 及 jamon.war 兩個檔案
使用 winzip 或 winrar 打開 jamon.war
將 jamon-2.1.jar 拖放進 jamon.war -> WEB-INF -> lib 裡. 按確定.


[3] 簡單的 J2EE 測試:
將 jamon.war 放進 D:\jboss\server\default\deploy
點擊 D:\jboss\bin\run.bat 啟動 JBoss
進入 http://localhost:8080/jamon/menu.jsp
如下圖所示:


按 "Enable Monitoring!" 啟動 Monitor
點擊 JAMon Admin Page 連結,
就會顯示 "/jamon/jamonadmin.jsp, ms." 的 Hits 為 0
如下圖所示


再按重新整理兩下
"/jamon/jamonadmin.jsp, ms." 的 Hits 為 2
如下圖所示


進入 http://localhost:8080/jamon/query.jsp , 啟動 資料庫 query monitoring
[ 這裡使用了 HSQL DB ]
按 "Generate Data!"
如下圖所示


進入 http://localhost:8080/jamon/jamonadmin.jsp
就可以看到 "MonProxy-SQL-Match: SYSTEM_TABLES, ms." 的 Hits 為 1
如下圖所示



sourceforge JAMon:
http://sourceforge.net/projects/jamonapi/


JAMon 官方網:
http://jamonapi.sourceforge.net/


javaperformancetuning.com:
http://www.javaperformancetuning.com/tools/jamon/index.shtml


gerald loeffler 連結:
http://www.gerald-loeffler.net/links.html


 

沒有留言: