以下是 rrdtool create 中的參數,決定要存的筆數
我的 step 是 300 秒,所以
"RRA:AVERAGE:0.5:1:600", # 5 分鐘存 600 筆 "RRA:AVERAGE:0.5:6:700", # 30 分鐘存 700 筆 "RRA:AVERAGE:0.5:24:775", # 兩小時存 775 筆 "RRA:AVERAGE:0.5:288:797", # 一天的存 797 筆
# 0.5 代表 50% 的 consolidated points 可能為 UNKNOWN
# 1 代表 1 * 300s / 60s = 5 minutes
# 6 代表 6 * 300s / 60s = 30 minutes
# 600 代表存 600 筆
這是讓 rrd 檔裡會有四大區塊存我要的資料, keyword 就是 <pdp_per_row>1</pdp_per_row> <!– 300 seconds –>,這是 5分鐘,30 分鐘就是 1800 seconds,依此類推
我拿一個 rrd 檔來看它的內容 (用 rrdtool dump xxx.rrd 查看)
Daily (5 Minute Average) 就是日報表,每 5 分鐘一行資料,時間是從 2013-08-09 10:50:00 到 2013-08-11 12:45:00,約兩天的份量 Weekly (30 Minute Average) 是週,每 30 分鐘一行資料,時間從 2013-07-27 23:00:00 到 2013-08-11 12:30:00,約兩個禮拜的量 Monthly (2 Hour Average) 是月,每 2 小時一行資料,時間從 2013-06-08 00:00:00 到 2013-08-11 12:00:00,約兩個月的量 Yearly (1 Day Average) 是年,每 1 天一行資料,時間從 2011-06-07 08:00:00 到 2013-08-11 08:00:00,約兩年的量
也就是說,今天假如我要看兩天以前的資料,其實就不再是每 5 分鐘的了,可能是每 30 分鐘,而兩個禮拜以前的就是每兩個小時的平均,完全取決於那個時間點已是什麼的平均,下圖就是差別
所以我就想這麼作
"RRA:AVERAGE:0.5:1:105120", "RRA:MAX:0.5:1:105120",
沒錯,RRA 就這兩行而已,這樣子我取任何時間點都是 5 分鐘的平均值了,105120是 一天 288 筆 x 365 天
但這會有兩種情況
- rrd 裡的筆數超多
- rrd 檔存在 1 年份 每 5 分鐘時,大小為 3.3 Mbytes,原本的存法就只有 93Kbytes
效能方面,除了一開始產生 rrd 檔時慢了點,update 及 graph 其實不會很慢
還有呢 rrd 裡的數值 1.1509575283e+06,怎麼換算
1.1509575283e+06 = 1.1509575283 * 10 的六次方,再 *8,再 / 1000 就是 Kbps 了
留言
Yearly (1 Day Average) 是年,每 1 天一行資料,時間從 2011-06-07 08:00:00 Why is 08:00 can I change it ?
訂正 >>> 數值 1.1509575283e+06,怎麼換算
版大你好: 看了您這篇文章後,我有幾個問題想請問: 1.請問您是用cacti下去畫的嗎!? 2.如果是的話,cacti下它預設用的幾塊根據rrdtool而來的資料的部份,您是直接產生一個新的RRD檔來進行的嗎!? 3.如果已經產生存有的rrd檔,我是否能夠更改舊的rrd檔來達成您所寫的這樣的目的,因為小弟看update的指令好像沒有辦法改到pdp_per_row這個參數。 謝謝版大!!
不是咧,我不是用 cacti 畫,因為 cacti 不符我的需求 sory,幫不到你,你說的我不是很熟