2016-12-01 57 views
0

我無法理解我在循環數據庫中保存的值。我做了一個轉儲rrdtool dump mydatabase,我得到了數據的轉儲。我發現最近的更新,並匹配到我rrd update命令:數據庫轉儲中的RRD值如何轉換爲輸入值?

$rrdupdate --template=var1:var2:var3:var4:var5 N:15834740:839964:247212:156320:13493356 

在我的匹配時間戳轉儲,我發現這些值:

<!-- 2016-12-01 10:30:00 CST/1480609800 --> <row><v>9.0950245287e+04</v><v>4.8264158237e+03</v><v>1.4182428703e+03</v><v>8.9785764359e+02</v><v>7.7501969607e+04</v></row> 

的第一個值應該是var1 。出於科學記數法,這是90,950.245287,根本與我的輸入值不匹配。 (它們都不是十進制)。

是否有什麼特別的我必須要做的就是能夠從我的轉儲中轉換值以獲得我輸入的標準值?存儲在數據庫中的RRDTool

回答

2

我不能給你具體的你的情況,你有沒有看到您的RRD文件(內部,DS定義等)的完整定義,但是......

值受限於數據標準化,然後轉換爲費率(除非DS是Gauge類型,在這種情況下,它們被假定爲費率)。

標準化是指在線性基礎上調整值以使其完全適合間隔(通常爲300秒)定義的時間順序。

如果您想查看與您寫入時完全相同的值,則需要將DS類型設置爲「標準」,並將「標準化」設置爲空步。完成後者的唯一方法是將值精確地存儲在時間邊界上。因此,如果時間間隔爲300秒,則在12:00:00,12:05:00等存儲 - 否則值將被調整。

關於標準化 - 它是什麼以及爲什麼它已完成 - Alex van den Bogaerdt's tutorial

相關問題