2016-06-27 19 views
0

rrdtoolをリングバッファとして使用して、新しい値が到着してRRAが一杯になった場合に最も古い値を単に忘れてしまいます。 これも可能ですか?連結機能を使用しないRRDtoolの使用

例:最も古い値が置き換えられます

rrdtool create database.rrd --step 1 DS:data1:GAUGE:5:U:U RRA:<CF>:0.5:1:1200 

20分後。

はあなたの例のように、1ステップRRA AVGの種類を使用してconsolodation関数はnullをレンダリングすることができ、

ピーター

答えて

0

をあなたと挨拶をお願いします。

しかし、できないことは、単に時系列とデータの正規化を無効にすることです。

データはステップの境界線に正確に到達する必要があります。または、値が変更されて1に合わせて調整されます。あなたの例は1秒のステップを使用しています。しかし、それは次の問題を引き起こします...

RRDToolは、それぞれの独立したステップで常にRRAに値を格納します。利用可能なデータがない場合は、Unknownを取得するか、以前のデータに基づいて値を外挿します。あなたの設定では、XFF = 0.5となります。これは、データが保存されていないときに不明を得ることを意味します。

これも可能ですが、RRAには常に1200個の値があります。サンプルが特定の秒間に到着しなかった場合は、不明が保存されます。サンプルは、その時間ウィンドウで収集されたサンプルの数に関係なく、20分後にすぐに削除されます。 RRAを照会すると、その間に何も収集されなかった場合、「不明」となります。

この動作がご使用のケースの要件と一致するかどうかは、あなたの責任です。

+0

大丈夫です。そこで、私は次のように選択しました: "rrdtool create database.rrd - DS:data1:GAUGE:20:U:U RRA:AVERAGE:0.99:1:1200"長いハートビートと大きなxff 99% - >保存される。問題は次のとおりです。RRDに整数を代入すると、浮動小数点数が発生します。 "rrdtool fetch database.rrd AVERAGE"でデータベースをフェッチし、4に3,8084940000e + 00を返します。何か問題がありましたか? rrdtoolはまだ値をconsolodatingしているようです。私は毎秒「正確に」データをプッシュします。 rrdは、 "nan"を含むrrd内のすべての値(ステップイン)のすべての値を計算/関連付けることができますか?しかし、ありがとう^^ – PeterFox

+0

あなたのRRAには1pdp = 1cdpしか含まれていないので、大きなxffは無駄になりません。したがって、未知の成分の割合は必ず0%か100%です。 データをプッシュするときは、 'rrdtool update $ file.rrd $ value:\' date +%s \ ''を使用して、データの正規化を避けるために整数時間に格納します。 –

関連する問題