EasyRRD - BBS
By Lily
at 2005-01-27T19:12
at 2005-01-27T19:12
Table of Contents
* 改版記錄
2005/01/27
* first release
* Author & License
in2 _AT_ in2home.org (in2)
The license of this document is:
GNU Free Documentation License
Version 1.2, November 2002
http://www.gnu.org/licenses/fdl.txt
* 前言
mrtg 除了應用於網路流量的監測外,因為它方便的設定以及簡明易懂的
輸出,同時被廣泛應用在統計許多不同的地方 (像統計自動販賣機?) 。
但是 mrtg 也有一些問題,包括最多一個統計項只能包含兩個數值,以及
它暴力繪圖方式會吃掉一卡車的 cpu。
所以我們有了 rrdtool。 rrdtool解決了上面提到的兩個問題 (以及其他)
,但是, rrdtool有一個很大的問題在於,它的設定十分複雜 (也因此功
能強大) ,而且 rrdtool基本上只是一個工具,你還需要自己再寫一個前
端的程式用來餵資料給它,以及把圖畫出來。在你每次使用它之前,你需
要(再)去看一次它的文件-因為你會忘記每個參數的意義。
可是我只是要統計一些簡單的東西!為什麼我要一天到晚看 rrdtool的說
明!以及還要自己寫程式做輸出!像 mrtg 這樣子什麼東西幫我做好好,
直接把東西丟給它它畫面就出來不是很好嗎?
於是就有了 EasyRRD。
* 安裝
您需要先有下面這些東西才能正常執行 EasyRRD :
perl /usr/ports/lang/perl5.8
rrdtool /usr/ports/net/rrdtool
IO::All /usr/ports/devel/p5-IO-All
YAML /usr/ports/textproc/p5-YAML
接著請到 http://www.in2home.org/download/easyrrd 下載,直接解開
到您要的地方 (例如說, /usr/local/www/cgi-bin) 就完成了。
* 設定
請參考 example1.easyrrd.conf 以及 example2.easyrrd.conf ,建議您
可以直接將其改成 easyrrd.conf 再改來使用即可。其中 example1 算是
最簡化的設定檔,您只需要改 Target (後文述) ,而 example2 這個檔
案中包括了所有的 EasyRRD提供的功能。
EasyRRD 的想法是,您只需要將您要統計的資料寫到一個檔案裡面,如果
有多筆資料的話用空白隔開,每五分鐘更新一次,EasyRRD 會直接從那個
檔裡面讀出資料來。所以,您會需要將到底資料放在哪個檔裡面設定給
EasyRRD 知道,也就是 Target 這一項。
至於要怎麼產生這個資料檔呢?如果您要的資料十分複雜的話,或許您要
自行撰寫程式,不過如果您要的資料十分簡單的話,有的時候直接透過一
堆 pipe 就可以達成。例如說我想要統計 vm.kvm_size 和 vm.kvm_free
就直接每五分鐘跑
sysctl vm.kvm_size vm.kvm_free | awk '{print $2}' > MyTarget
再把 MyTarget 設到 EasyRRD設定檔的 Target 就好了。
另外,您需要讓 web server 可以執行 easyrrd.pl 這個程式。您可以直
接用 CGI的方式跑它,透過 Speedy 來執行,或是透過 ModPerl的
ModPerl::RegistryPrefork 都是可以的。
* 執行
請直接切到放置 EasyRRD的目錄下,執行 easyrrdup.pl ,如果有設定
RunAsDaemon (預設) ,則它會每五分鐘自動起來讀一次資料;否則您就
需要每五分鐘執行它一次。
接著您可以開啟 http://yourhost/yourpath/easyrrd.pl,即可看到輸出。
* 範例
twbbs 透過 EasyRRD來統計 dns query 的數量。
設定檔在 http://www.in2home.org/easyrrd/easyrrd.conf
輸出結果 http://www.in2home.org/easyrrd/easyrrd.pl
--
2005/01/27
* first release
* Author & License
in2 _AT_ in2home.org (in2)
The license of this document is:
GNU Free Documentation License
Version 1.2, November 2002
http://www.gnu.org/licenses/fdl.txt
* 前言
mrtg 除了應用於網路流量的監測外,因為它方便的設定以及簡明易懂的
輸出,同時被廣泛應用在統計許多不同的地方 (像統計自動販賣機?) 。
但是 mrtg 也有一些問題,包括最多一個統計項只能包含兩個數值,以及
它暴力繪圖方式會吃掉一卡車的 cpu。
所以我們有了 rrdtool。 rrdtool解決了上面提到的兩個問題 (以及其他)
,但是, rrdtool有一個很大的問題在於,它的設定十分複雜 (也因此功
能強大) ,而且 rrdtool基本上只是一個工具,你還需要自己再寫一個前
端的程式用來餵資料給它,以及把圖畫出來。在你每次使用它之前,你需
要(再)去看一次它的文件-因為你會忘記每個參數的意義。
可是我只是要統計一些簡單的東西!為什麼我要一天到晚看 rrdtool的說
明!以及還要自己寫程式做輸出!像 mrtg 這樣子什麼東西幫我做好好,
直接把東西丟給它它畫面就出來不是很好嗎?
於是就有了 EasyRRD。
* 安裝
您需要先有下面這些東西才能正常執行 EasyRRD :
perl /usr/ports/lang/perl5.8
rrdtool /usr/ports/net/rrdtool
IO::All /usr/ports/devel/p5-IO-All
YAML /usr/ports/textproc/p5-YAML
接著請到 http://www.in2home.org/download/easyrrd 下載,直接解開
到您要的地方 (例如說, /usr/local/www/cgi-bin) 就完成了。
* 設定
請參考 example1.easyrrd.conf 以及 example2.easyrrd.conf ,建議您
可以直接將其改成 easyrrd.conf 再改來使用即可。其中 example1 算是
最簡化的設定檔,您只需要改 Target (後文述) ,而 example2 這個檔
案中包括了所有的 EasyRRD提供的功能。
EasyRRD 的想法是,您只需要將您要統計的資料寫到一個檔案裡面,如果
有多筆資料的話用空白隔開,每五分鐘更新一次,EasyRRD 會直接從那個
檔裡面讀出資料來。所以,您會需要將到底資料放在哪個檔裡面設定給
EasyRRD 知道,也就是 Target 這一項。
至於要怎麼產生這個資料檔呢?如果您要的資料十分複雜的話,或許您要
自行撰寫程式,不過如果您要的資料十分簡單的話,有的時候直接透過一
堆 pipe 就可以達成。例如說我想要統計 vm.kvm_size 和 vm.kvm_free
就直接每五分鐘跑
sysctl vm.kvm_size vm.kvm_free | awk '{print $2}' > MyTarget
再把 MyTarget 設到 EasyRRD設定檔的 Target 就好了。
另外,您需要讓 web server 可以執行 easyrrd.pl 這個程式。您可以直
接用 CGI的方式跑它,透過 Speedy 來執行,或是透過 ModPerl的
ModPerl::RegistryPrefork 都是可以的。
* 執行
請直接切到放置 EasyRRD的目錄下,執行 easyrrdup.pl ,如果有設定
RunAsDaemon (預設) ,則它會每五分鐘自動起來讀一次資料;否則您就
需要每五分鐘執行它一次。
接著您可以開啟 http://yourhost/yourpath/easyrrd.pl,即可看到輸出。
* 範例
twbbs 透過 EasyRRD來統計 dns query 的數量。
設定檔在 http://www.in2home.org/easyrrd/easyrrd.conf
輸出結果 http://www.in2home.org/easyrrd/easyrrd.pl
--
Tags:
BBS
All Comments
Related Posts
關於XDMCP...
By Christine
at 2005-01-23T21:53
at 2005-01-23T21:53
apache有關cgi目錄的問題
By Harry
at 2005-01-23T18:14
at 2005-01-23T18:14
關於網路設定
By Sandy
at 2005-01-23T12:29
at 2005-01-23T12:29
請問bbs的分割區 要加什麼參數呢?
By Joseph
at 2005-01-23T09:58
at 2005-01-23T09:58
請問bbs的分割區 要加什麼參數呢?
By Skylar DavisLinda
at 2005-01-23T07:29
at 2005-01-23T07:29