- チームは、Enterprise プランでのみ使用できます。
- チームのルートまたは管理者のみが、BigQuery にチーム監査ログをエクスポートできます。
チームアプリの最近のアクティビティをモニタリングする場合は、Audit History を使用してチームアプリのアクティビティをモニタリングするで説明されているとおり、AppSheet の監査履歴を使用します。
または、チームの Audit History ログを BigQuery にエクスポートして、データを管理、分析することもできます。
BigQuery を使用する利点として、以下が挙げられます。
- 複数のチームアプリにわたり最近のアクティビティをモニタリングできる
- 既存のモニタリング ツールを使用してデータを分析できる
- Audit History ログを照会し、チームアプリをまたいで特定のデータを検索できる
- AppSheet 監査ログの保持期間を延長できる
次のセクションで説明されているとおり、チームの監査ログを BigQuery にエクスポートできます。
チームの監査ログの BigQuery へのエクスポートを構成する
チームの監査ログの BigQuery へのエクスポートを構成するには、以下の手順を実施します。
- ステップ 1: Google Cloud プロジェクトで BigQuery データセットを作成する
- ステップ 2: AppSheet チームから BigQuery データセットに接続する
- ステップ 3: Google Cloud コンソールで BigQuery データセットの権限を更新する
- ステップ 4: BigQuery データセットへの接続をテストする
ステップ 1: Google Cloud プロジェクトで BigQuery データセットを作成する
Google Cloud プロジェクトで BigQuery データセットを作成するには:
- Google Cloud コンソールのプロジェクト セレクタ ページで、Google Cloud プロジェクトを選択または作成します。
Google Cloud コンソールに移動
- コンソールで [BigQuery] ページを開きます。
BigQuery ページに移動
- データセットの作成で説明のとおり、AppSheet データのための新しいデータセットを作成します。
次に例を示します。
ステップ 2: AppSheet チームから BigQuery データセットに接続する
AppSheet チームから BigQuery データセットに接続するには:
- AppSheet にログインします。
- アカウント プロファイルのプルダウンで [My team] を選択します。
- [Settings] タブをクリックします。
- [Configure Audit Log Export] の下の [Add a new export] をクリックします。
- 次のフィールドに値を入力します。
フィールド
説明
GCP Project ID
Google Cloud プロジェクトの ID。
BigQuery Dataset Name
接続先の BigQuery データセットの名前。例: appsheet_logs
Table Name
テーブルの名前。デフォルト値は audit_log_export です。
- [Save] をクリックします。
AppSheet 所有の Google Cloud プロジェクトに新しいサービス アカウントが生成されます。このサービス アカウントは、AppSheet のチーム アカウントに関連付けられます。 - [Copy] をクリックして、サービス アカウント名をコピーします。これは、次のステップで必要となります。
ステップ 3: Google Cloud コンソールで BigQuery データセットの権限を更新する
Google Cloud コンソールで BigQuery データセットの権限を更新するには:
- コンソールで [BigQuery] ページを開きます。
BigQuery ページに移動
- [エクスプローラー] パネルで新しい BigQuery データセットを選択します。
- [共有] > [権限] を選択します。
- [プリンシパルを追加] をクリックします。
- [新しいプリンシパル] フィールドに、前のステップでコピーしたサービス アカウント名を貼り付けます。
- [ロール] プルダウンで、[BigQuery データ編集者] を選択します。
[フィルタの種類] フィールドにロール名を入力することで、ロールのリストからロールを簡単に見つけられます。 - [保存] をクリックします。
ステップ 4: BigQuery データセットへの接続をテストする
BigQuery データセットへの接続をテストするには:
- AppSheet にログインします。
- アカウント プロファイルのプルダウンで [My team] を選択します。
- [Settings] タブをクリックします。
- [Configure Audit Log Export] で、テストしたい構成済みエクスポートに関連付けられた [Test] をクリックします。
接続が成功すると、Connection successful
というメッセージが表示されます。
エラーが返された場合は、BigQuery データセットが作成されており、適切な権限が設定されているかを確認します。
エクスポートしたデータに対しクエリを実行する
チームの監査ログの BigQuery へのエクスポートを構成したら、データセットに対してインタラクティブ クエリまたはバッチクエリを実行できます。
_PARTITIONTIME
は null です。BigQuery により設定されるデフォルト クエリを使用する場合、結果は返ってきません。インタラクティブ クエリを実行するには:
- コンソールで [BigQuery] ページを開きます。
BigQuery ページに移動
- [エクスプローラー] パネルで BigQuery データセットの audit_log_export テーブルを選択します。
- [クエリ] > [新しいタブ] または [クエリ] > [分割タブ] をクリックします。
- クエリの詳細を更新します(下のクエリの例をご覧ください)。
- [実行] をクリックします。
クエリの例
以下は、クエリの例です。
_PARTITIONTIME
(新しいログ)がない、または現在の日付より前に記録されたproject-id
プロジェクトのdataset-id
データセットの audit_log_export テーブルで、すべての列を選択します。project-id.dataset_id
にデータを入力するには、BigQuery のエクスプローラー パネルのデータセットについて [More] > [Copy ID] を選択して、文字列をコピーします。結果には、両方の値が適切な書式で含まれます。- 最近のイベントが最初に来るよう、イベントを並べます。
- 結果を 1,000 件のイベントに制限します。
SELECT
*
FROM
`project-id.dataset-id.audit_log_export`
WHERE
_PARTITIONTIME IS NULL OR DATE(_PARTITIONTIME) <= CURRENT_DATE()
ORDER BY OperationTimestamp DESC
LIMIT 1000;
クエリの例の結果
以下は、クエリの結果です。
チームの監査ログ エクスポートの構成を確認、編集する
チームの監査ログ エクスポートの構成を確認、編集するには:
- AppSheet にログインします。
- アカウント プロファイルのプルダウンで [My team] を選択します。
- [Settings] タブをクリックします。
- [Configure Audit Log Export] で、編集したい構成済みエクスポートをクリックします。
[Edit audit log export] ダイアログが表示されます。 - 構成済みエクスポートの詳細を編集します。
- [Save] をクリックします。
チームの監査ログ エクスポートの構成を削除する
チームの監査ログ エクスポートの構成を削除するには:
- AppSheet にログインします。
- アカウント プロファイルのプルダウンで [My team] を選択します。
- [Settings] タブをクリックします。
- [Configure Audit Log Export] で、削除したい構成済みエクスポートに関連付けられた [Delete] をクリックします。
- プロンプトが表示されたら、処理を確定させます。