私は乗算する必要があり、かなり具体的なユースケースを持っている:Graphite/Grafana - メトリックを取得し、集計し、新しいメトリックとして保存します。
- メトリックBによってメトリックA、のは にCD ので、それを呼びましょう、のは、メトリックDによってメトリックC
- AB それを呼びましょう
は、その後、私は結果をうまくするために一緒にAB
、CD
... YZ
を使用する必要がある、のはそれABYZ
を呼びましょう。実際の変換はもっと複雑ですが、それほど重要でないのでスキップしてみましょう。
AB
とCD
をあらかじめ計算しておけばGrafanaのテンプレート変数を使用してクエリを実行できるため、人生が楽になります。 変数$include
をペアのリストに指定すると、AB
,CD
など ABYZ
の結果を簡単に制御することができます。
私の現在のスキーマでは、メトリックがあらかじめ計算されていないため、テンプレート変数を使用することはできません。この段階では、どのメトリックをどのメトリックで掛けるべきですか。
のは、私はこのグラファイトクエリの結果を取得したいとしましょう:。。。 エイリアス(diffSeries(maxSeries(multiplySeries(maxSeries(stats.gauges.stock {stock1、stock2} .offers EUR .BIDを)、averageSeries(stats.gauges.stock.currency.fidor。 .EUR.PLN))、maxSeries(stats.gauges.stock。{株価1、株2} .offers。PLN .bid。*))、minSeries( minSeries(stats.gauges.stock。{stock1、stock2} .offers。EUR .ask。)、averageSeries(stats.gauges.stock.currency.fidor。 .EUR.PLN))、minSeries(stats .gauges.stock。{stock1、stock2} .offers。PLN .ask *)))、「差分」)
と、このメトリックに格納します。stats.gauges.stock.diff
既存のものから新しいメトリックを作成することができます任意の解決策はありますか?私はスキップStatsD層をしたいとgraphite
/carbon
層を直接(可能であれば)をタッチします。
完璧、よろしくお願いいたします。当初、私は信頼性の高い方法を確信できませんでしたが、今ではカーボンを直接テストした結果、過去のポイントを記入することも可能です。あなたと同様のスクリプトは、(すべての履歴データを計算するために)最初の実行からオフと定期的に実行され、私はうまくいくはずです。ではごきげんよう ! – NeverEndingQueue
それを聞いてうれしい! – AussieDan