<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    perf4j使用四(log4j集成圖表查看)

     

    在使用二這編文章中提到,可以以匯總形式查看日志,也可以通過圖表來查看。Perf4jlog4j集成后,其實也可以以圖表的形式來查看性能狀況。

     

    我們這篇文章還是使用前一篇文章中提到log4j.xml的配置,其他都一樣,只是在配置中加入了圖表的配置:

    <!-- 生成firstBlock,secondBlock的平均值的圖表 -->

        <appender name="graphExecutionTimes"

                  class="org.perf4j.log4j.GraphingStatisticsAppender">

            <!-- GraphType:Mean(平均值), Min(最小值), Max(最大值), TPS(每秒事務數(shù)) -->

            <param name="GraphType" value="Mean"/>

            <param name="TagNamesToGraph" value="firstBlock,secondBlock"/>

            <appender-ref ref="graphsFileAppender"/>

        </appender>

     

        <!-- 生成firstBlock,secondBlocktps的圖表 -->

        <appender name="graphExecutionTPS"

                  class="org.perf4j.log4j.GraphingStatisticsAppender">

            <param name="GraphType" value="TPS"/>

            <param name="TagNamesToGraph" value="firstBlock,secondBlock"/>

            <appender-ref ref="graphsFileAppender"/>

        </appender>

       

        <!-- 記錄圖表生成urllog文件 -->

        <appender name="graphsFileAppender" class="org.apache.log4j.FileAppender">

            <param name="File" value="/home/perfGraphs.log"/>

            <layout class="org.apache.log4j.PatternLayout">

                <param name="ConversionPattern" value="%m%n"/>

            </layout>

    </appender>

    另外還需要改一個地方,就是CoalescingStatistics的配置:

    <appender name="CoalescingStatistics"

                  class="org.perf4j.log4j.AsyncCoalescingStatisticsAppender">

            <!--

                 TimeSlice配置多少時間間隔去做一次匯總寫入文件中

                 默認值是 30000 ms

            -->

            <param name="TimeSlice" value="10000"/>

            <appender-ref ref="fileAppender"/>

           

            <appender-ref ref="graphExecutionTimes"/>

            <appender-ref ref="graphExecutionTPS"/>

        </appender>

    黃色那段配置的意思就是把日志寫入到圖表日志去。

    運行代碼Perf4JAppenderExample,我們在perfGraphs.log文件中生成了圖表的url

    http://chart.apis.google.com/chart?cht=lxy&chtt=Mean&chs=750x400&chxt=x,x,y&chd=t:0.0,100.0|45.2,78.1|0.0,100.0|98.1,100.0&chco=ff0000,00ff00&chm=d,ff0000,0,-1,5.0|d,00ff00,1,-1,5.0&chdl=firstBlock|secondBlock&chxr=2,0,828.6&chxl=0:|13:23:50|13:24:00|1:|Time&chxp=0,0.0,100.0|1,50&chg=50.0,10

     

    http://chart.apis.google.com/chart?cht=lxy&chtt=TPS&chs=750x400&chxt=x,x,y&chd=t:0.0,100.0|100.0,100.0|0.0,100.0|100.0,100.0&chco=ff0000,00ff00&chm=d,ff0000,0,-1,5.0|d,00ff00,1,-1,5.0&chdl=firstBlock|secondBlock&chxr=2,0,0.5&chxl=0:|13:23:50|13:24:00|1:|Time&chxp=0,0.0,100.0|1,50&chg=50.0,10

    大家可以把url放到瀏覽器訪問下。

     

    上面這種方式呢,需要自己登錄到服務器上,找到log文件,在放到瀏覽器中查看,總的過程還是比較麻煩。如果大家需要監(jiān)控的工程是一個web工程的話,那就更方便了,直接配置一個servlet來查看。Web.xml的配置如下:

    <!DOCTYPE web-app PUBLIC

     "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"

     "http://java.sun.com/dtd/web-app_2_3.dtd" >

     

    <web-app>

        <display-name>Archetype Created Web Application</display-name>

     

        <servlet>

           <servlet-name>perf4j</servlet-name>

           <servlet-class>org.perf4j.log4j.servlet.GraphingServlet</servlet-class>

           <!-- graphExecutionTimesgraphExecutionTPS就是我們在log4j中配置的名稱 -->

           <init-param>

               <param-name>graphNames</param-name>

               <param-value>graphExecutionTimes,graphExecutionTPS</param-value>

           </init-param>

        </servlet>

     

        <servlet-mapping>

           <servlet-name>perf4j</servlet-name>

           <url-pattern>/perf4j</url-pattern>

        </servlet-mapping>

    </web-app>

    大家可以打包工程,并放到web服務器下啟動,然后訪問下/perf4j這個uri

    Maven有一個jetty插件,可以方便啟動web工程,只要大家在pom.xml文件中加入如下配置:

    <plugins>

               <!-- jetty插件, 設定端口與context path-->

               <plugin>

                  <groupId>org.mortbay.jetty</groupId>

                  <artifactId>jetty-maven-plugin</artifactId>

               </plugin>    

    </plugins>

    在控制臺中輸入:mvn jetty:run,即可。省去了打包發(fā)布,很省心喔。

    第一次用http://localhost:8080/perf4j訪問查看圖表的時候沒有生成任何東西,那是因為內(nèi)存中沒有收集到最新的性能數(shù)據(jù)。所以我在index.jsp里調用下以便產(chǎn)生性能數(shù)據(jù)。然后重新訪問,這個時候就有圖表生成了。


    下載工程

    posted on 2012-04-19 14:12 yangpingyu 閱讀(1743) 評論(1)  編輯  收藏 所屬分類: java基礎

    評論

    # re: perf4j使用四(log4j集成圖表查看)[未登錄] 2015-12-18 12:01 peter

    xiedezhenhao,  回復  更多評論   

    <2015年12月>
    293012345
    6789101112
    13141516171819
    20212223242526
    272829303112
    3456789

    導航

    統(tǒng)計

    常用鏈接

    留言簿

    隨筆分類

    隨筆檔案

    收藏夾

    linux

    產(chǎn)品交互

    分析,設計,架構

    安全

    技術牛人

    數(shù)據(jù)庫

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 涩涩色中文综合亚洲| 亚洲天堂中文字幕在线观看| 亚洲av无码一区二区三区人妖| 国产电影午夜成年免费视频| 亚洲国产韩国一区二区| 毛片免费观看视频| 中文有码亚洲制服av片| 在线观看人成网站深夜免费| 亚洲国产精品无码观看久久| 国产一区二区三区免费在线观看| 国产亚洲欧美日韩亚洲中文色| 亚洲av日韩av欧v在线天堂| 在线播放免费人成视频网站| 国产亚洲精久久久久久无码77777 国产亚洲精品成人AA片新蒲金 | 亚洲一区二区三区免费| kk4kk免费视频毛片| 亚洲Av永久无码精品三区在线| 777成影片免费观看| 中文字幕乱码亚洲精品一区| 天堂亚洲免费视频| 久久成人免费电影| 中文字幕无码精品亚洲资源网久久 | 亚洲国产精品日韩| 免费一级毛片无毒不卡| 亚洲精品熟女国产| 四虎国产精品免费久久影院| 天黑黑影院在线观看视频高清免费 | 免费高清资源黄网站在线观看| 成人精品综合免费视频| 婷婷精品国产亚洲AV麻豆不片| 成人午夜免费福利视频| 日日摸日日碰夜夜爽亚洲| 好看的电影网站亚洲一区| 在线v片免费观看视频| 四虎一区二区成人免费影院网址| 亚洲午夜精品一区二区| 在线日韩av永久免费观看| 国产在线观a免费观看| 亚洲一卡2卡三卡4卡无卡下载| 在线观看亚洲天天一三视| 成人免费视频网站www|