web-dev-qa-db-ja.com

グラファイト/グラファナで「1つを除くすべて」を照会する方法

私はgrafanaで遊んでおり、1つのアプリケーションサーバーからのデータを、それを除く他のすべてのサーバーの平均と比較するパネルを作成したいと考えています。何かのようなもの:

apps.machine1.someMetric
averageSeries(apps.*.not(machine1).someMetric)

それはできますか?どうやって?

17
sprugman

SeriesListをフィルタリングしたいようですが、「grep」関数を包括的に使用するか、「exclude」関数のみを使用して行います。

exclude(apps.machine*.someMetric,"machine1")

そしてそれをaverageSeriesに渡します

averageSeries(exclude(apps.machine*.someMetric,"machine1"))

これらの関数の詳細については、こちらをご覧ください。 http://graphite.readthedocs.io/en/latest/functions.html#graphite.render.functions.exclude

40
Scott

ワイルドカードパスに関する Graphite URL APIのドキュメントセクションを読んだ後 「1つを除くすべて」のターゲットクエリはないと思います。ただし、マシン数が少ない場合は、除外したマシンを除くすべてのマシンをクエリで一覧表示できます。

apps.machine1.someMetric
averageSeries(apps.{machine2,machine3,machine4,machine5}.someMetric)

または、文字範囲を使用します。

apps.machine1.someMetric
averageSeries(apps.machine[2-5].someMetric)
4
dukebody