このページでは、ログベースの指標の概要を説明します。
ログベースの指標は、Google Cloud プロジェクトで発生したログエントリまたは Google Cloud プロジェクトにルーティングされたログエントリから指標データを取得します。たとえば、ログベースの指標を使用して、特定のメッセージを含むログエントリの数をカウントできます。または、ログエントリに記録されたレイテンシ情報を抽出することもできます。Cloud Monitoring のグラフおよびアラート ポリシーで、ログベースの指標を使用できます。
ログベースの指標のソース
Cloud Logging で定義された指標を使用して一般的な使用状況情報を収集し、独自のログベースの指標を定義してアプリケーションまたはビジネスに固有の情報を取得できます。
ログベースの指標は、単一の Google Cloud プロジェクト内またはログバケット内で適用できます。Cloud 請求先アカウントや組織などの他の Google Cloud リソースには、ログベースの指標を作成できません。
プロジェクト ベースのログベースの指標とバケットベースのログベースの指標の違いについては、バケット スコープのログベースの指標をご覧ください。
システム定義の指標
Logging には、プロジェクト内のログバケットに保存されているログエントリの数やエクスポートしたバイト数など、使用量の値の一連の指標が用意されています。システム定義指標の一覧については、Google Cloud 指標: ロギングをご覧ください。
ユーザー定義の指標
ユーザー定義のログベースの指標を作成して、プロジェクトで重要な他の指標を追跡できます。たとえば、特定のフィルタに一致するログエントリの数をカウントするログベースの指標を作成できます。
デフォルトではユーザー定義のログベースの指標は、Google Cloud プロジェクトに適用されている可能性がある包含フィルタまたは除外フィルタにかかわらず、Google Cloud プロジェクトの Logging API によって受信されたすべてのログから計算されます。
Google Cloud プロジェクトの特定のログバケットに対して、ユーザー定義のログベースの指標を作成することもできます。バケットスコープのログベースの指標は、送信元に関係なく、バケット宛てのすべてのログから計算されます。詳しくは、ログバケットのログベースの指標をご覧ください。
ログベースの指標のデータ型
ログベースの指標は、ログからデータを抽出して、次のタイプの指標を作成できます。
- カウンタ: これらの指標は、特定の期間内に指定されたフィルタに一致するログエントリの数をカウントします。ログに出現する値または文字列の回数を追跡する場合は、カウンタを使用します。
- 分布: これらの指標は値もカウントしますが、カウントを値の範囲(ヒストグラム バケット)に収集します。レイテンシなどの値を抽出する場合は、分布を使用します。
- ブール値: これらの指標は、指定されたフィルタに一致するログエントリかどうかを取得します。
ユーザー定義のログベースの指標では、カウンタ指標タイプか分布指標タイプを指定できます。システム定義のログベースの指標のほとんどはカウンタですが、一部がブール型です。カウンタと分布の特性については、以降のセクションで詳しく説明します。
ユーザー定義のログベースの指標のデータは、指標の作成後に受け取ったログエントリのみから取得されます。指標が Logging にすでに存在するログエントリのデータにさかのぼって入力されることはありません。
システムログ ベースの指標は、含まれるログからのみ計算されます。ユーザー定義のログベースの指標は、含まれるログと除外されたログの両方から計算されます。
Logging は、一致するログエントリを受信するたびに、ログベースの指標の情報を蓄積します。ログには、新しいデータポイントを 1 分あたり 1 データポイントの速さで指標の時系列に書き込まれ、Cloud Monitoring がそのデータを利用できるようにします。
ログベースの指標の時系列の各データポイントは、前のデータポイント以降に受信した追加情報(差分)のみを表します。
以下のセクションでは、カウンタタイプと分布タイプの指標の特性について説明します。
カウンタ指標
カウンタ指標は、特定のフィルタに一致するログエントリの数をカウントします。たとえば、次の操作が可能です。
- 特定のエラー メッセージを含むログエントリをカウントします。
各ユーザーがオペレーションを呼び出す回数をカウントするには、このパターンに一致するログメッセージを検索します。
... user USERNAME called OPERATION ...
USERNAME と OPERATION を抽出してラベルの値として使用すると、「
sally
がupdate
オペレーションを実行した回数」、「read
オペレーションを実行したユーザーの数」、「george
がオペレーションを実行した回数」などを確認できます。
詳細については、カウンタ指標を構成するをご覧ください。
分布指標
分布指標は、フィルタに一致するログエントリからの数値データを累積します。この指標には、時系列の Distribution オブジェクトが含まれ、各オブジェクトには次のものが含まれます。
- 分布内の値の数のカウント
- 値の平均
- 偏差平方和: Sumi=1..n(xi–mean)2
- 各バケット内の値のカウントを持つヒストグラム バケットのセット。デフォルトのバケット レイアウトを使用することも、独自のバケット レイアウトを選択することもできます。
分布指標の一般的な用途は、レイテンシを追跡することです。各ログエントリを受信すると、ログエントリからレイテンシ値が抽出されて、分布に追加されます。定期的に、蓄積された分布が Cloud Monitoring に書き込まれます。
時系列内の形式や可視化の形式など、分布指標の詳細については、分布指標のグラフ化をご覧ください。
ログベースの分布指標の作成については、分布指標の構成をご覧ください。
リソースタイプ
ログベースの指標では、単一のリソースタイプを指定することをおすすめします。この仕様により、ログベースの指標用に生成された時系列データが、Cloud Monitoring によって想定されるデータモデルと一致することが保証されます。 また、どの時系列データがグラフ化またはモニタリングされるかが明らかになるため、グラフとアラート ポリシーの作成プロセスも簡素化されます。
次のフィルタを含むログベースの指標について考えてみましょう。
severity>="ERROR"
resource.type="gce_instance"
Cloud Monitoring は、このデータが Compute Engine VM インスタンス用であることを認識します。そのため、VM インスタンスのグラフを作成すると、ログベースの指標がメニューのオプションとして表示されます。別のリソースタイプのグラフを作成した場合、ログベースの指標はオプションとしてリストされません。
リソースタイプを指定せずにログベースの指標を作成すると、Monitoring は、これらのリソースからのエントリをカウントしない場合でも、ログベースの指標を複数のリソースタイプのオプションとしてリストします。
ラベル
ログベースの指標にはラベルを付けることができます。これにより、指標に対して複数の時系列を収集できます。ラベルの値は、一致するログエントリのフィールドから抽出されます。Logging では、ラベル値の組み合わせごとに時系列を記録します。
すべてのログベースの指標には、デフォルトの log
ラベルが付いています。
このラベルは、たとえば cloudresourcemanager.googleapis.com%2Factivity
など、ログエントリの logName
フィールドの LOG_ID 位置の値を保持します。
システム ログベースの指標には、変更できない事前定義ラベルがあります。ただし、ユーザー定義指標のラベルはカスタマイズできます。たとえば、フォルダまたは組織に対してバケット スコープのログベースの指標を作成できない場合でも、ログベースの指標に含まれるラベルを使用して、ログエントリの発生元のフォルダまたは組織を記録できます。詳細については、ログベースの指標ラベルをご覧ください。
Cloud Monitoring のグラフとアラート ポリシー
Cloud Monitoring では、システム ログベースの指標とユーザー定義のログベースの指標の両方を使用して、グラフとアラート ポリシーを作成できます。詳細については、ログベースの指標の一覧表示とグラフ化とログベースの指標に関するアラートをご覧ください。
Cloud Monitoring では、ログベースの指標の命名パターンは以下が使用されます。
- システム:
logging.googleapis.com/SYSTEM_METRIC_NAME
- User-defined:
logging.googleapis.com/user/USER_METRIC_NAME
ユーザー定義のログベースの指標には、文字列 user
が含まれます。
Monitoring の指標スコープの可視性
ログベースの指標は Cloud Monitoring によって取り込まれ、Google Cloud プロジェクトに対する指標データの表示については、指標スコープによって決定されます。指標スコープは、指標スコープをホストするプロジェクトによってモニタリングされるプロジェクトのリストです。ホスティング プロジェクトはスコーピング プロジェクトと呼ばれます。
デフォルトでは、各プロジェクトは自身のみを含む指標スコープをホストするため、プロジェクトはそれ自体のスコーピング プロジェクトです。したがって、指標(ログベースの指標など)は、Google Cloud プロジェクトにのみ表示されます。
スコーピング プロジェクトに対してマルチプロジェクトの指標スコープを作成することもできます。マルチプロジェクトの指標スコープを使用すると、スコーピング プロジェクトは指標スコープ内のすべてのプロジェクトの指標を表示できます。マルチプロジェクトの指標スコープの個々のプロジェクトに表示される内容は、それらの各プロジェクトでホストされている指標スコープによって決まります。2 つのプロジェクトがマルチプロジェクトの指標スコープにあるからといって、各プロジェクトがもう一方のプロジェクトの指標または構成データにアクセスできるわけではありません。
1 つのプロジェクトが複数の指標スコープに表示されることもあります。このようなプロジェクトの指標は、各指標スコープのスコーピング プロジェクトに表示されます。
ログベースの指標を含む、特定のプロジェクト内で指標が定義されます。 そのプロジェクトが複数の指標スコープに表示されている場合、指標は、定義されているプロジェクト以外のプロジェクトに表示されます。指標スコープとバケットスコープ ログベースの指標の相互作用については、プロジェクトと指標スコープをご覧ください。
マルチ プロジェクト指標のスコープを含む指標のスコープとスコーピング プロジェクトの詳細については、以下をご覧ください。
料金
ユーザー定義のログベースの指標はすべて、Cloud Monitoring のカスタム指標のクラスであり、課金対象です。料金について詳しくは、Cloud Logging の料金: ログベースの指標をご覧ください。
割り当て
ユーザー定義のログベースの指標に関連する割り当てと上限については、割り当てと上限をご覧ください。
トラブルシューティング
ログベースの指標を使用する際に問題が発生した場合は、ログベースの指標のトラブルシューティングをご覧ください。