2016-12-01 7 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です。これは入力値とまったく一致しません。 (どれも小数ではありません)

私が入力した標準値を得るために、ダンプから値を変換するために何か特別なことがありますか?

答えて

2

あなたのRRDファイル(内部、DSの定義など)の完全な定義を示していないように私は...しかし、あなたはRRDtoolのデータベースに格納されている

値をあなたのケースのための詳細を与えることはできませんデータ正規化の対象となり、DSがレートゲージである場合を除いてレートに変換されます(この場合、それらはすでにレートであるとみなされます)。

正規化は、間隔(通常は300秒)で定義されている時間シーケンスに正確に適合するように、値が線形ベースで調整される場合です。

書き込み時の値を正確に表示するには、DSタイプを「ゲージ」に設定し、正規化をNULLステップにする必要があります。後者を実行する唯一の方法は、値を正確に時間の境界に格納することです。したがって、Intervalが300sの場合は、12:00:00、12:05:00などに格納します。そうでない場合は、値が調整されます。

ノーマライゼーションについての詳細 - それは何ですか、なぜそれが行われるのですか - Alex van den Bogaerdt's tutorial

関連する問題