指標モデルの説明では、指標タイプと呼ばれるセクションにおいて、指標タイプを記述する属性に関する一般的な説明をします。このセクションでは、それらの属性のうちの 2 つについてより詳しく説明します。
- 値の型
- 指標の種類
値の型
値の型は、測定のデータ型です。各時系列は、そのデータポイントの値の型(ValueType
型)を記録します。
ブール値や数値データなど、一度に 1 つの値で構成される測定の場合、値の型によってデータの格納方法がわかります。
BOOL
: ブール型INT64
: 64 ビット整数型DOUBLE
: 倍精度浮動小数点数型STRING
: 文字列型
分布の測定の場合、値は単一の値ではなく、値のグループです。分布測定の値の型は
DISTRIBUTION
です。分布には、値のグループを要約した統計が含まれています。 分布内の値には、値のグループに対して計算された平均、カウント、最大値などの統計が含まれます。分布には、一連の範囲にわたる値の分布を表すヒストグラムを含めることもできます。
通常、レイテンシ指標は分布としてデータを取得します。分布の詳細については、
Distribution
リファレンス ページをご覧ください。 これらの指標のグラフの作成については、分布指標をご覧ください。
指標の種類
各時系列には、そのデータポイントの指標の種類(MetricKind
型)が含まれます。指標データの種類によって、値の相互関係がわかります。Cloud Monitoring の指標は次の 3 種類のいずれかになります。
ゲージ指標。これは特定の時刻を測定するための値です。たとえば、CPU 使用率を測定する指標はゲージ指標で、測定時にポイントごとに CPU 使用率が記録されます。ゲージ指標のもう 1 つの例は、現在の温度です。
デルタ指標。これは時間間隔の変化を測定します。読み取りの場合、時間間隔は半開です。開始時間は除外されますが、終了時間は含まれます(
(startTime, endTime]
)。たとえば、リクエスト数を測定する指標はデルタ指標です。各値には、開始時間から終了時間までに受信されたリクエストの数が記録されます(期間には終了時間が含まれます)。累積指標。値は時間とともに増加します。たとえば、「送信済みバイト数」の指標は累積指標です。各値は、その時点でサービスによって送信された合計バイト数を記録します。
サポートされている組み合わせ
指標の種類と値の型のすべての組み合わせが適切でない場合もあります。たとえば、ブール値のデータのデルタ指標は表示されません。組み合わせが適切なものもあります。
次の表に、サポートされている指標の種類と値の型を示します。
値の型 | GAUGE | DELTA | CUMULATIVE4 |
---|---|---|---|
BOOL | ○ | × | × |
INT64 | ○ | ○1 | ○ |
DOUBLE | ○ | ○1 | ○ |
STRING | ○1 | × | × |
DISTRIBUTION | ○2 | ○1、3 | ○ |
1 この組み合わせはカスタム指標 custom.googleapis.com
では許容されていません。
2 この組み合わせは、ログベースの指標では許容されていません。詳細については、分布タイプのログベースの指標を構成するをご覧ください。
3 値のタイプが DISTRIBUTION
であるログベースの指標 logging.googleapis.com/user
で許容される唯一の組み合わせです。詳細については、Logging API LogMetric
リファレンスの metricDescriptor
フィールドをご覧ください。
4 累積指標は、Monitoring のグラフやアラートに直接使用することはできませんが、これらの方法で使用できる非累積指標に集約できます。詳しくは、種類、タイプ、変換をご覧ください。
さらに、独自の指標を作成する場合は、値の型と指標の種類の有効な組み合わせのみを使用する必要があります。
文字列値のカスタム指標をエミュレートする
カスタム指標の文字列値はサポートされていませんが、次の方法で文字列値の指標の機能を複製できます。
- 文字列値にマッピングされる列挙型として INT64 値を使用して、GAUGE 指標を作成します。指標をクエリするときに、列挙型を文字列値に外部から変換します。
- BOOL 値と、モニタリングする文字列の 1 つのラベルを持つ GAUGE 指標を作成します。値がアクティブな値であるかどうかを示すために、ブール値を使用します。
たとえば、「status」という文字列値の指標を作成し、OK、OFFLINE、PENDING というオプションを指定するとします。status_value
というラベルを使用して GAUGE 指標を作成できます。各更新は、status_value
(OK、OFFLINE、PENDING)ごとに 1 つずつ、3 つの時系列を書き込みます。「true」の場合は 1、「false」 の場合は 0 になります。