私はPrometheus
を使用してメトリックデータを収集したスプリングブートアプリケーションを持っています。 Prometheusには、何か起こった回数を数えるのに適したCounter
などのメトリクスがありますが、カウントも維持しますが、減らすことができるGauge
などです。何かの要求期間を追跡できるメトリックはありますか?たとえば、api呼び出しが行われてからapiが応答を返すまでの時間を記録したいとします。呼び出しが行われてからapiの応答が受信されるまでの時間をどのように追跡しますか?次に、Y
の座標に、応答が取った時間の長さ(秒またはミリ秒)をリストすることができるグラフを作成することができます。 X
軸で、タイムスタンプ(メトリックが収集された時刻)を表示させますか?Prometheusを使用して経過時間を記録する方法はありますか
2
A
答えて
2
タイミングイベントサイズ(APIレイテンシなど)には、おそらくSummary
が必要です。あなたは、その後でaggregate average latencyを計算することができ
:あなたはspring-bootに言及したよう
sum without (instance)(rate(my_summary_latency_seconds_sum[5m]))
/
sum without (instance)(rate(my_summary_latency_seconds_count[5m])
2
、あなたは本当にMicrometerプロジェクトをご覧ください。 Prometheusをサポートするベンダー中立メトリックAPIを提供します。あなたがmicrometer-spring-legacy
依存関係を使用したい春ブーツ1.5プロジェクトのために
Timer
.builder("my.timer")
.tags("uri", "/api/endpoint")
.register(registry)
.record(() -> {
/* do something */
});
// or
registry.timer("my.timer", "uri", "api/endpoint").record(() -> {
/* do something */
});
:マイクロメータは、タイマーのための原始的な特定のメーターを持っています。 Spring-Boot 2(この執筆時点では2.0.0.M7)には、マイクロメータのサポートが含まれており、OOTBにはspring-boot-starter-actuator
が含まれています。
タイミングAPIリクエストについて言及しましたが、私はあなたがSpring MVCを使用していると仮定します。これらのタイミングを自動的にサポートしています。 (あなたが時間窓の間ローリング最大を追跡するための各URIについてcount
、リクエスト期間のsum
と余分として、max
を得る。)
あなたはさらに、サーバー側の要求の待ち時間を計算するためにwan't場合ヒストグラムバケットの生成も可能にすることができます。
documentationをご覧ください。
関連する問題
- 1. 経過時間を記録するC#/ Unity
- 2. Prometheusで過去24時間に最大メモリを使用する
- 3. アプリがバックグラウンドにある経過時間を無視する経過時間を測定する方法はありますか?
- 4. 上記のレコードを使用したアクセスの経過時間
- 5. Javaアップデート特定の時間が経過してから100時間を超えるレコードが記録される
- 6. ロギング活動:PHPアプリケーションを使用して時間を記録する方法は?
- 7. Djangoモデルのデータを時間の経過とともに記録する
- 8. 24時間が経過してからjavaを使用しているかどうかを確認する方法はありますか?
- 9. Javascriptで経過した時間を測定する方法は?
- 10. Prometheusを使用してリクエストの異なる時間を測定する方法
- 11. 記事の閲覧時間を記録する方法は?
- 12. parLapplyを使用した経過時間/ユーザー時間の短縮
- 13. IISスレッドプールスレッドの使用状況を記録する方法はありますか?
- 14. これを記録する方法はありますか?
- 15. Javaのサードパーティ製API「LibGDX」で経過時間を記録するにはどうすればよいですか?
- 16. 時間の経過後にイメージを表示する方法は?
- 17. tkinter python.afterでfps(経過時間)を測定する方法は?
- 18. 関数の経過時間を計算する方法は?
- 19. 経過時間
- 20. Perlで経過時間を判断する良い方法はありますか?
- 21. MatlabでTimer関数の経過時間を減算/合計する方法はありますか?
- 22. Obj-C、メソッドに要する時間を秒単位でファイルに記録する方法はありますか?
- 23. 携帯電話の使用中に経過時間を測定する方法
- 24. ユニットテストでアサーションとして経過時間を使用
- 25. DATEDIFF()を使用して、追加されてから24時間以上経過した行を返す方法
- 26. Jacocoはユニットのテスト時間を記録していますか?
- 27. ユーティリティクラスを持つメソッドの経過時間をカウントする方法
- 28. Prometheus HistogramをJavaクライアントから正しく使用して、待ち時間ではなくサイズを追跡する方法はありますか?
- 29. NSLogを使用して現在の行をCocoa/Objective Cに記録する方法はありますか?
- 30. AVAudioRecorderを使用してオーディオの最後の10秒のみを記録する方法はありますか?
...要約#startTimer()を使用してタイマーを取得し、Summary.Timer#observeDuration()を使用して経過時間を取得する – Joel