BigQuery で Gmail ログを設定する

この機能は、G Suite EnterpriseG Suite Enterprise for Education でのみご利用いただけます。これらのいずれかのライセンスをお持ちのユーザーのみがこの機能を使用できます。ライセンスは、個々のユーザー、組織部門内のすべてのユーザー、または G Suite アカウントのすべてのユーザーに割り当てることができます。詳しくは、ライセンス割り当ての仕組みをご覧ください。

始める前に

BigQuery で Gmail ログを設定する前に、Google Cloud で以下の手順を行います。

  1. 使用するアクティブな BigQuery プロジェクトを探すか、BigQuery プロジェクトを作成します。

    注: BigQuery アカウントをお持ちでない場合は、無料トライアルを設定して BigQuery をお試しいただけます。

  2. プロジェクトの [IAM と管理] ページにアクセスします。
  3. プロジェクトにプロジェクト編集者を追加します。プロジェクト編集者は、G Suite 管理コンソールで BigQuery プロジェクトを設定します。
    • ページの上部にある [ADD] をクリックします。
    • [新しいメンバー] に、プロジェクト編集者のユーザー ID を入力します。
    • [役割を選択] で、[Project]、[編集者] の順に選択します。
    • 必要に応じて、同じユーザーをプロジェクトのオーナーとして追加するには、[別の役割を追加] をクリックして [Project]、[オーナー] の順に選択します。
    • [保存] をクリックします。

注: BigQuery にデータを書き出すには、Gmail の BigQuery プロジェクトで VPC サービス コントロールを無効にする必要があります。デフォルトの設定では、無効になっています。

Gmail ログを BigQuery のデータセットに割り当てる

Gmail ログには、Gmail のメール配信プロセスにおける各段階の記録が保存されます。

配信プロセスを通る Gmail のフローを分析するには、Gmail ログを BigQuery プロジェクトのデータセットに割り当てます。Gmail ログを割り当てると、レポートを表示できるようになります。

注: [BigQuery のメールログ] を設定する前に作成されたメールログは、BigQuery に書き出せません。

  1. Google 管理コンソールログインします。

    管理者アカウント(末尾が @gmail.com でないアカウント)でログインしてください。

  2. 管理コンソールのホームページから、[アプリ] 右矢印 [G Suite] 右矢印 [Gmail] 右矢印 [詳細設定] にアクセスします。

    ヒント: [詳細設定] を表示するには、Gmail ページを最下部までスクロールします。

  3. [全般設定] 右矢印 [セットアップ] の [BigQuery のメールログ] に移動して、[設定] をクリックします。
  4. [設定を追加] ウィンドウで説明を入力します。
  5. Gmail ログに使用する BigQuery プロジェクトを選択します。書き込みアクセスが可能なプロジェクトを選択してください。
  6. Gmail ログを保存するデータセット名を入力します。
  7. [設定を追加] をクリックして設定ページに戻り、[保存] をクリックします。

    : エラーが発生した場合は、[設定を追加] をもう一度クリックしてください。場合によっては、BigQuery コンソールに移動して、以前に作成したデータセットを削除する必要があります。

  8. 設定を保存したら、BigQuery プロジェクトに戻ります。次の情報を含むデータセットがプロジェクトに追加されます。 
    • 通常の役割: プロジェクト オーナー、プロジェクト編集者、プロジェクト閲覧者
    • データセットの編集者として指定された 4 つのサービス アカウント:
      gmail-for-work-logs-writer1@system.gserviceaccount.com: ログを書き込みます。
      gmail-for-work-logs-writer2@system.gserviceaccount.com: ログを書き込みます。
      gmail-for-work-logs-recoverer@system.gserviceaccount.com: テンプレート テーブルが誤って削除された場合に自動的に復元します。
      gmail-for-work-logs-schema-updater@system.gserviceaccount.com: 今後のスキーマの更新を行います。

      注: これらのサービス アカウントを削除したり、役割を変更したりしないでください。これらは必須アカウントです。
  9. サービス アカウントが追加されたことを確認するには、新しいデータセットにカーソルを合わせて、データセット名の横にある下矢印をクリックします。
  10. [共有データセット] をクリックします。これで、毎日のメールログが BigQuery に書き出されます。変更が反映されるまでには、最長で 1 時間ほどかかることがあります。

daily_ テーブル

BigQuery のメールログを有効にすると、daily_ という名前の新しいテーブルがデータセットに追加されます。このテーブルは、毎日作成されるテーブルのスキーマを提供するテンプレートです。daily_ テンプレートが作成されると、データセットに毎日自動的にテーブルが作成されるようになります。これでログを使用できるようになります。

daily_ テーブルについて、次の点にご注意ください。

  • テーブルは常に空であり、期限切れになることはありません。
  • このテーブルを削除、変更したり、テーブル名を変更したり、テーブルにデータを追加したりしないでください。
  • GMT 時間を使用して日付変更線を決定します。

Gmail ログのクエリ

クエリの例

Gmail のログに対する BigQuery のクエリ例をいくつかお試しください。これらは、Gmail ログの一般的な使用例です。

カスタムクエリ

BigQuery での Gmail ログのスキーマを使用し、カスタムクエリを作成します。

クエリ用の SQL 言語

BigQuery では、次の 2 つのクエリ用の SQL 言語がサポートされています。

サンドボックスの有効期限

次の BigQuery サンドボックス オブジェクトの有効期限は 60 日です。

  • テーブル
  • パーティション
  • パーティション テーブル内のパーティション
  • ビュー

テーブルのデフォルトの有効期限は変更できます。

テーブルの有効期限が切れたり、テーブルが削除されたりしても、2 日以内であれば復元可能です。

この情報は役に立ちましたか?
改善できる点がありましたらお聞かせください。