2017-06-15 3 views
0

メトリックをプッシュしたいと思います。 HTTPリクエストまたは現在のヒープサイズの処理時間を、Spring BootアプリケーションのPushgatewayを介してPrometheusに送信します。スプリングブートでPrometheus Pushgatewayにメトリックをプッシュ

私は、Spring MetricsやPrometheusのドキュメントがたくさんありますが、私の特定の問題に対処できないので、苦労しています。

最も簡単な方法は、ここで説明するように、RestControllerクラスに@Timedアノテーションを使用することです:http://projects.spring.io/spring-metrics/ しかし、私は私がpushgatewayのためのURLを設定し、ちょうど@Timed注釈場合は、自分自身を求めることができる場合は、表示されませんメトリックを取り除くべきエンドポイント/prometheusにメトリックをエクスポートします。

プロメテウスガイド、しかし、simpleclient_pushgatewayライブラリを使用するように教えてください:https://github.com/prometheus/client_java#exporting-to-a-pushgateway

最後に、春ブーツにプロメテウスを統合する第三の方法だろうsimpleclient_spring_bootと呼ばれる別のsimpleclientは、あります。

あなたは)HTTPが

Bを要求するために、私はできれ、アノテーションベースのアプローチからのメトリックを押す)

Aを達成することができますどのように、JVMメトリックx秒ごとに

Cのためのいくつかのアプローチを私に教えてもらえます)pushgateway)application.ymlファイル内(設定可能に

はどうもありがとうございました

答えて

0

これは物事にアプローチする間違った方法ですが、pushgatewayは、ヒープサイズや要求タイミング(https://prometheus.io/docs/practices/pushing/)のようなインスタンスごとのメトリックではありません。

プロンプトが直接スクレーピングするエンドポイント/metricsを公開するには、simpleclient_spring_bootを使用します。

+0

なぜ私はpushgatewayが必要なのかを述べるべきでした:-) 私たちのアプリはCloud Foundryに配備されています。 Prometheusでポーリングすると、現在のリクエストに応じた異なる値が返されます。だからこそ、インスタンスごとのメトリックをプッシュゲートウェイにプッシュし、Grafanaでそれらを区別したいのです。 – user3105453

+0

それはまだ物事に近づくための推奨された方法ではありません。クラウドファウンドリのアプローチは、サービスの発見をしてから、正しいインスタンスに話すためにHTTPヘッダーを追加することです。 –

関連する問題