プラットフォームのログを使用する

このページでは、SaaS Runtime によって生成されたプラットフォーム ログを表示する方法について説明します。 Google Cloud のプラットフォーム ログはサービス固有のログです。これを使用すると、問題のデバッグやトラブルシューティングを行うことができ、使用している Google Cloudサービスをより深く理解できます。

サポートされている SaaS ランタイム プラットフォーム ログの詳細については、Google Cloud プラットフォーム ログをご覧ください。プラットフォーム ログテーブルのデータを理解する方法については、ログエントリの構造をご覧ください。

始める前に

  1. Google Cloud コンソールのプロジェクト選択ページで、 Google Cloud プロジェクトを選択または作成します。
  2. Google Cloud プロジェクトで課金が有効になっていることを確認します。
  3. SaaS ランタイム API を有効にします。
  4. ログの表示とアラートの作成に必要な権限を取得するには、プロジェクトに対する次の Identity and Access Management(IAM)ロールを付与するよう管理者に依頼してください。
    • ログビューア(roles/logging.viewer
    • モニタリング編集者(roles/monitoring.editor

ログベースのアラートを作成する

ログベースのアラートを作成するには、アラートを受け取るログエントリを返すクエリをログ エクスプローラで作成し、アラート ポリシーを構成します。

  1. Google Cloud コンソールで、[ログ エクスプローラ] ページに移動します。

    [ログ エクスプローラ] に移動

  2. クエリエディタで、選択したログエントリをフィルタするクエリを入力します。クエリの例については、以下のセクションをご覧ください。

  3. [アラートを作成] をクリックします。

  4. アラート ポリシーの名前と説明を入力します。

  5. 通知チャネルなどのアラートの詳細を構成します。

  6. [アラートを保存] をクリックします。

詳細な手順については、ログベースのアラートを作成するをご覧ください。

プラットフォーム ログのクエリの例

このセクションでは、SaaS Runtime プラットフォーム ログに基づく一般的なアラート シナリオのクエリの例を示します。

SaaS 運用アラート

ユニット プロビジョニング オペレーションが失敗したときにアラートを作成するには、次のクエリを使用します。

protoPayload.methodName="google.cloud.saasplatform.saasservicemgmt.v1beta1.SaasDeployments.CreateUnitOperation"
protoPayload.response.state="UNIT_OPERATION_STATE_FAILED"

ユニット プロビジョニング オペレーションが最終状態(成功、失敗、キャンセル)に達したときにアラートを作成するには、次のクエリを使用します。

jsonPayload.@type="type.googleapis.com/google.cloud.saasservicemgmt.logging.v1.UnitOperationLog"
AND (jsonPayload.unit_operation_state="UNIT_OPERATION_STATE_SUCCEEDED" OR jsonPayload.unit_operation_state="UNIT_OPERATION_STATE_FAILED" OR jsonPayload.unit_operation_state="UNIT_OPERATION_STATE_CANCELLED")
AND jsonPayload.unit_operation_type="PROVISION"

ロールアウト アラート

リージョン ロールアウトがユーザー操作以外の理由で PAUSED 状態または FAILED 状態になった場合にアラートを作成するには、次のクエリを使用します。

jsonPayload.@type="type.googleapis.com/google.cloud.saasservicemgmt.logging.v1.RolloutLog"
AND (jsonPayload.current_state="PAUSED" OR jsonPayload.current_state="FAILED")
AND jsonPayload.reason!="USER_PAUSE"
AND jsonPayload.root_rollout_id != resource.labels.rollout_id

グローバル ロールアウトが PAUSED 状態または FAILED 状態になった場合にアラートを作成するには、次のクエリを使用します。

jsonPayload.@type="type.googleapis.com/google.cloud.saasservicemgmt.logging.v1.RolloutLog"
AND (jsonPayload.current_state="PAUSED" OR jsonPayload.current_state="FAILED")
AND jsonPayload.root_rollout_id == resource.labels.rollout_id

ロールアウトが PAUSED 状態(SaaS Runtime がロールアウトを異常と識別したため)または FAILED 状態になったときにログアラートを作成するには、次のクエリを使用します。

logName:"rollout_events" 
(jsonPayload.currentState="PAUSED" jsonPayload.reason="SYSTEM_PAUSE")
OR 
jsonPayload.currentState="FAILED

ロールアウトが PAUSED 状態(SaaS Runtime がロールアウトを異常と判断したため)または FAILED 状態になったときに、ロールアウト状態指標のログアラートを作成するには、次のクエリを使用します。

saasservicemgmt_googleapis_com:rollout_state
{state_name="PAUSED", reason="SYSTEM_PAUSE"}
OR
saasservicemgmt_googleapis_com:rollout_state{state_name="FAILED"}

次のステップ