Cloud Logging を使用してイベントログにアクセスする

統合のイベントログには Google Cloud Logging からアクセスできます。Cloud Logging を使用してログの調査、指標とアラートの作成、Google Cloud Pub/Sub を使用して他のアプリケーションへのログのエクスポートを行います。

アクセスのロギング

Google Cloud Console から Cloud Logging にアクセスするには、[すべての商品を表示] をクリックし、[オペレーション] > [ロギング] に移動します。

Cloud Logging に移動

ロギングデータへのアクセスは、Actions プロジェクトの Identity and Access Management(IAM)で管理されます。データのロギングのロールと権限の詳細については、Cloud Logging のアクセス制御をご覧ください。

ログエントリは Cloud Logging の保持ポリシーに従って 30 日間保持され、その後削除するようにスケジュールされます。ログ エクスプローラ インターフェースを使用して、必要に応じてエントリを削除することもできます。

ログを効果的に使用する方法について詳しくは、トラブルシューティング ガイドの「ログを検索する」をご覧ください。

Cloud Logging は次のリソースタイプを提供します。

リソースの種類 表示名 説明 ラベル
assistant_action_project Google アシスタント アクション プロジェクト アシスタント アクションに関連付けられた Google Cloud プロジェクトのコンテナ。
  • project_id: このリソースに関連付けられている現在のプロジェクトの ID(例: my-project)。

イベントログ

Cloud-to-cloud プロジェクトは、Cloud Logging の次のイベントをサポートしています。

Cloud Logging リソース イベント
Google アシスタント アクション プロジェクト SYNC インテント エラー
QUERY インテント エラー
EXECUTE インテント エラー
通知エラー
アカウントのリンクエラー
Local Home SDK HandlerError

ログを同期する

次の表に、syncLog エントリのスキーマを示します。

プロパティ 説明
requestId スマートホーム インテントのリクエスト ID。
httpLatencyMsec レスポンスを受信するまでにかかった時間。
status インテント レスポンスのステータス。

実行ログ

次の表に、executionLog エントリのスキーマを示します。

プロパティ 説明
requestId 一意のリクエスト ID(例: 5325511189174727525)。
latencyMsec レスポンスを受信するまでの経過時間(例: 6000)。
executionType リクエストに使用されるトランスポート(統合に応じて CLOUDMATTER など)。
actionType ユーザーが行った操作を示す任意のインジケーター(例: QUERYEXECUTE)。EXECUTE アクションの場合は、サポートされているトレイトのフルフィルメントに発行されたコマンドが含まれます(例: ONOFF_OFF)。
trait (省略可)このユーザー アクションに関連付けられたトレイト。
deviceTypes イベントの影響を受けるデバイスタイプのリスト(例: LIGHT)。
isSuccess リクエストが正常なレスポンスを受け取ったかどうか。
fallbackToCloud ローカル フルフィルメントからのエラーの後にリクエストがクラウド フルフィルメントにルーティングされたかどうか。
statusType インテント レスポンスのステータスを示します(SUCCESSPENDINGOFFLINE など)。ERROR レスポンスの場合、このプロパティには、フルフィルメントから提供される errorCode が含まれます。
externalDebugString このユーザー アクションに関連付けられた詳細なデバッグ メッセージ(省略可)。
locale リクエストに関連付けられた言語コード。

通知ログ

次の表に、notificationLog エントリのスキーマを示します。

プロパティ 説明
requestId 通知リクエスト ID。
structName 通知構造体の名前(「ObjectDetection」など)。
status 通知のステータスを示します。

ログレベルの設定

Cloud-to-cloud プロジェクトは、デフォルトでエラーログを受け取るように設定されています。デベロッパーは成功ログの受け取りを有効にすることもできます。これは、開発フェーズで少数のエージェントからすべてのログをキャプチャする予定がある場合に特に便利です。ロギングの割り当てを超えると、プロジェクトに追加料金が発生する場合があります。

プロジェクトのログレベルは、次の方法で制御できます。

  1. Actions on Google Console でプロジェクト ページに移動します。

    Actions on Google コンソールに移動

  2. スマートホーム プロジェクトを選択します。

  3. [Develop](開発)タブを選択し、サイドバーの [Actions](アクション)をクリックします。

  4. [Log control ingestion](ログ制御の取り込み)プルダウン リストで [All](すべて)を選択します。

ログの除外

デベロッパーは、Logging のクエリ言語を使用してログの除外を作成し、より柔軟にログをさらにカスタマイズできます。Logging のクエリ言語はログ エクスプローラでも使用されるため、ログ エクスプローラを使用してクエリを作成できます。

除外フィルタを作成する手順については、こちらのガイドをご覧ください(_Default シンクの除外フィルタを構成します)。

ログベースの指標

デベロッパーは、ログベースの指標を使用して、ログ内のパターンを追跡して分析できます。カスタムグラフを作成し、ログベースの指標にアラートを設定することもできます。

スマートホームのログベースの指標を初めて使用する際は、カウンタ指標の作成でログベースの指標の作成方法を参照してください。

プロジェクトでの Cloud Logging の使用方法について詳しくは、次のドキュメントをご覧ください。

  • 料金: 割り当てと超過料金の詳細。
  • 割り当てと上限: ロギングの使用量に関する制限と保持ポリシーについて説明しています。
  • 高度なログクエリ: ログデータのクエリと分析を、高度な式を使用して行う方法について説明しています。