2017-06-20 5 views
0

私はsumSeriesWithWardsと似たようなものを探していますが、最大/最小のものを探しています。つまり、必要なフィールドに集計された合計を計算する代わりに、minまたはmaxを計算する必要があります。私はGraphiteライブラリでmaxSeriesWithWardscards呼び出しを見つけられないことに驚いていました。 存在しない場合、どのようにシミュレーションできますか?ワイルドカード付きシリーズの黒鉛最大

おかげで、 挨拶、 ソリン

答えて

1

あなたがgroupByNodeを使用することができます。指定されたノードでグループ化したいメトリックのリストを指定された関数で取得します。どの関数も使用できます。例えば

test.region-1.server-1 
test.region-1.server-2 
test.region-1.server-3 
test.region-1.server-4 
test.region-1.server-5 

test.region-2.server-1 
test.region-2.server-2 
test.region-2.server-3 
test.region-2.server-4 
test.region-2.server-5 

test.region-3.server-1 
test.region-3.server-2 
test.region-3.server-3 
test.region-3.server-4 
test.region-3.server-5 

あなたが使用することになり、地域ごとの合計を取得する:あなたがgroupByNode *で行うことができます

sumSeriesWithWildcards(test.*.*, 2) 

同じことを:

groupByNode(test.*.*, 1, 'sumSeries') 

sumSeriesWithWildcardsのノード番号は合計したいノード番号ですが、 groupByNodeグループ化するノードを指定する必要があります。また、ラベルはgroupByNodeの方が短くなります。グループ化ノードだけです。だから、

...ポイントへ:

  • 分:groupByNode(test.*.*, 1, 'minSeries')
  • 最大:groupByNode(test.*.*, 1, 'maxSeries')
  • 平均:groupByNode(test.*.*, 1, 'averageSeries')

groupByNodesあなたは、より多くのノードを提供することができ、もあります重要です。

+0

ありがとう、私は実際にgroupByNodeで実験していました。 1つの問題は、結果がクエリの一部を削除していることです。つまり、上記の例では、1を除いてすべてのフィールドが削除されます(集計する「地域-X」)。したがって、必要に応じて元のクエリを再構築する必要があります。 ありがとう、 –

+0

は、保持したいノード数のgroupsByNodesだけを使用します。 'groupByNodes(test。*。 '、minSeries'、0,1)' – kwarunek

+0

ドキュメントにgroupByNodesが見つかりません:https://graphite.readthedocs.io/en/0.9.10/functions.html;あなたはどこからそれを得ましたか? –

0

ワイルドカードシリーズリストを取得する機能がありませんでした。理由はわかりません。maxSeries

関連する問題