メトリックの種類
Prometheusクライアントライブラリは、4つのコアメトリックタイプを提供します。これらは現在、クライアントライブラリ(特定のタイプに合わせてAPIを有効にするため)とワイヤプロトコルでのみ区別されています。Prometheusサーバーはまだタイプ情報を使用しておらず、すべてのデータを型なしの時系列にフラット化しています。これは将来変更される可能性があります。
カウンター
カウンターは、単一の単調増加カウンターを表す累積メトリックであり、その値は再起動時にのみ増加するかゼロにリセットされます。例えば、処理されたリクエスト数、完了したタスク数、エラー数などを表現するためにカウンターを使用できます。
減少する可能性のある値を公開するためにカウンターを使用しないでください。例えば、現在実行中のプロセス数にカウンターを使用しないでください。代わりにゲージを使用してください。
カウンターのクライアントライブラリの使用方法に関するドキュメント
ゲージ
ゲージは、任意に増減する単一の数値を示すメトリックです。
ゲージは通常、温度や現在のメモリ使用量のような測定値に使用されますが、同時リクエスト数のように増減する「カウント」にも使用されます。
ゲージのクライアントライブラリの使用方法に関するドキュメント
ヒストグラム
ヒストグラムは、観測値(通常はリクエスト期間や応答サイズなど)をサンプリングし、設定可能なバケットにカウントします。また、すべての観測値の合計も提供します。
ベースメトリック名が<basename>
のヒストグラムは、スクレイプ中に複数の時系列を公開します。
- 観測バケットの累積カウンター。
<basename>_bucket{le="<upper inclusive bound>"}
として公開されます。 - 観測されたすべての値の合計値。
<basename>_sum
として公開されます。 - 観測されたイベントの数。
<basename>_count
として公開されます(上記の<basename>_bucket{le="+Inf"}
と同じです)。
histogram_quantile()
関数を使用して、ヒストグラムまたはヒストグラムの集計から分位数を計算します。ヒストグラムはApdexスコアの計算にも適しています。バケットを操作する際は、ヒストグラムが累積的であることを覚えておいてください。ヒストグラムの使用方法とサマリーとの違いの詳細については、ヒストグラムとサマリーを参照してください。
注Prometheus v2.40以降、ネイティブヒストグラムの実験的なサポートがあります。ネイティブヒストグラムは、観測値の合計とカウントに加えて、動的な数のバケットを含む1つの時系列のみを必要とします。ネイティブヒストグラムは、はるかに高い解像度をわずかなコストで実現できます。ネイティブヒストグラムが安定した機能に近づいたら、詳細なドキュメントが提供されます。
注Prometheus v3.0以降、従来のヒストグラムのle
ラベルの値は、OpenMetricsの正規数値の形式に従うように取り込み中に正規化されます。OpenMetrics Canonical Numbers。
ヒストグラムのクライアントライブラリの使用方法に関するドキュメント
サマリー
ヒストグラムと同様に、サマリーは観測値(通常はリクエスト期間や応答サイズなど)をサンプリングします。観測値の合計数と観測されたすべての値の合計も提供しますが、スライディング時間ウィンドウで設定可能な分位数を計算します。
ベースメトリック名が<basename>
のサマリーは、スクレイプ中に複数の時系列を公開します。
- 観測されたイベントのストリーミングφ分位数(0 ≤ φ ≤ 1)。
<basename>{quantile="<φ>"}
として公開されます。 - 観測されたすべての値の合計値。
<basename>_sum
として公開されます。 - 観測されたイベントの数。
<basename>_count
として公開されます。
φ分位数、サマリーの使用方法、およびヒストグラムとの違いの詳細については、ヒストグラムとサマリーを参照してください。
注Prometheus v3.0以降、quantile
ラベルの値は、OpenMetricsの正規数値の形式に従うように取り込み中に正規化されます。OpenMetrics Canonical Numbers。
サマリーのクライアントライブラリの使用方法に関するドキュメント