Log Serviceは、すべてのデータをMetricstoreに時系列として保存します。 Log Serviceは、Prometheusによって定義された時系列データのモデルを使用します。 モデルの詳細については、Prometheusドキュメントの「データモデル」をご参照ください。 各時系列は、同じメトリック識別子を有するサンプルからなる。
メトリック識別子
各時系列には、メトリック名とラベルで構成される一意のメトリック識別子があります。
メトリック名は文字列であり、[a-zA-Z_:][a-zA-Z0-9_:]* の正規表現と一致する必要があります。 ほとんどの場合、メトリック名は時系列の説明を示します。 たとえば、http_request_totalは、時系列の各サンプルが受信したHTTPリクエストの総数を表すことを示します。
ラベルはキーと値のペアです。 Labelキーと一致する必要が [a-zA-Z_][a-zA-Z0-9_]* 正規表現。 ラベル値には、縦棒 (|) を除くすべての文字を含めることができます。 Inほとんどの場合、ラベル時間属性示しているシリーズ。 For例、値の方法キーかもしれPOST、値のURLキーかもしれ /api/v1 /取得。
例
サンプルは、ある時点でのメトリックの値を示します。 各サンプルは、タイムスタンプと値で構成されます。 タイムスタンプはナノ秒まで正確で、値はDOUBLE型です。
エンコード形式
時系列データをLog Serviceに書き込む場合は、プロトコルバッファ (Protobuf) 形式を使用する必要があります。 This形式も記述するログデータ。 詳細については、「データ符号化」をご参照ください。 Theメトリック識別子とサンプル含まれているコンテンツフィールド。 次の表に、関連するサブフィールドを示します。
キー | 制限 | 例: |
---|---|---|
__name__ | 時系列のメトリック名。 | nginx_ingress_controller_response_size |
__ラベル__ | 時系列のラベル。 形式: {key }#$#{ value }|{ key }#$#{ value }|{ key }#$#{ value} 。 説明 ラベルは、アルファベット順にキーでソートする必要があります。 | app #$# ingress-nginx | controller_class #$# nginx | controller_namespace #$# kube-system | controller_pod #$# nginx-ingress-controller-589877c6b7-hw9cj |
__time_nano__ | サンプルのタイムスタンプ。 それはナノ秒に正確です。 | 1585727297293000000 |
__value__ | サンプルの値。 | 36.0 |