Google Home デベロッパー センターにようこそ。スマートホーム アクションの開発方法を学ぶことができます。注: アクションの作成は、引き続き Actions Console で行います。

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 projects support the following events in 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 , go to the Projects page.

    Actions on Google コンソールに移動

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

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

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

ログの除外

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

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

ログベースの指標

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

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

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

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