S3エクスポート

概要

MoEngageによって受信または生成されたすべてのユーザーイベントとキャンペーンイベントは、S3エクスポートを使用してエクスポートできます。 エクスポートされたデータは、ユーザーの行動、好み、その他についての洞察を得るためにさらに分析することができます。

情報

情報

  • S3へのエクスポートは、Streamsアドオンの一部です。専任のMoEngage CSM(カスタマーサクセスマネージャー)に連絡して、アカウントを有効にしてください。
  • システムがIPホワイトリスト登録を必要とする場合は、データエクスポート用のS3統合を設定する前に、 こちら を参照してください。

データエクスポートのためのS3統合

S3 は、Amazon Web Services が提供する非常にスケーラブルなストレージシステムです。S3 バケットとの統合により、MoEngage は必要なデータを JSON 形式で定期的にエクスポートして共有することができます。S3 統合を開始するには、以下の手順に従ってください。

ステップ1: S3バケットを作成

たとえ既にS3バケットを持っていても、MoEngage専用の新しいバケットを作成することをお勧めします。これにより、権限を制限することができます。

  1. アプリ用のバケットを作成するには、 S3 コンソール を開き、AWS でサインインまたはアカウントを作成する手順に従ってください。
  2. サインインしたら、「Storage Content Delivery」カテゴリから「S3」を選択します。
  3. 次の画面で「バケットを作成」を選択すると、バケットの作成とリージョンの選択を求められます。

ステップ2: ポリシーを作成する

ナビゲーションバーのポリシータブに移動し、「Get Started」を選択してから「Create Policy」を選択します。これにより、ユーザーに権限を追加できるようになります。「独自のポリシーを作成」を選択します。これにより、指定したバケットにのみアクセスできるように、限定された権限が付与されます。

22EE2E21-3009-4956-A7CF-8C1917267887_1_201_a.jpeg

独自のポリシーを作成する際に、以下のコードを入力してください。お好きな「ポリシー名」を指定し、「ポリシードキュメント」セクションに以下のコードを入力してください。必ず INSERTSID をあなたのSidに、 INSERTPOLICYID をあなたのポリシーIDに、そしてバケット名に置き換えてください。
JSON
{
    "Version": "2012-10-17",
    "Id": <INSERTPOLCIYID>,
    "Statement": [
        {
            "Sid": <INSERTSID >,
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::612427630422:role/service-role/core_s3_export-role-e1qw8ulf"
            },
            "Action": "s3:PutObject",
            "Resource": "arn:aws:s3:::<INSERTBUCKETNAME>/*"
            }
        ]
}

ステップ 3: MoEngage アプリ マーケットプレイスで S3 エクスポートを有効にする

新しい S3 Buckets 接続を作成するには、次の手順を実行します。

  1. MoEngageダッシュボードの左ナビゲーションメニューで、 アプリマーケットプレイス をクリックします。
  2. アプリマーケットプレースページで、検索バーに Amazon S3 と入力します。
  3. Amazon S3 タイルをクリックします。
  4. Amazon S3 ページで、 統合 タブをクリックし、 + 接続を追加 をクリックします。
    AddIntegration.png
  5. S3 バケット接続の詳細を入力してください。
    Screenshot 2024-12-12 at 2.56.55 PM.png
    フィールド 説明
    接続名 これは接続の名前です。一意で識別できる名前を入力してください。

    My S3 Export

    バケット名

    これはあなたの S3 バケットの名前です。

    バケット名はどのように確認できますか?

    AWS コンソールで S3 に移動し、リストからバケットを選択してください。バケット名は上部に表示されます。

    また、バケットの プロパティ タブでも確認できます。 S3 ARN arn:aws:s3::: の後の部分がバケット名です:
    S3BucketName2.png

    test-bucket

    フォルダパス

    これはファイルを出力するフォルダのパスです。スラッシュで開始または終了しないでください。最終的な出力パスは以下の形式です:

    s3://<your-bucket-name>/[<folder_path>_]<connection_name>/export_day=<DD-MM-YYYY>/event_exports_<export_timestamp>.json.gz

    export_timestamp は UTC タイムゾーンでのファイル生成時の EPOCH タイムスタンプです。最終パスは UI 上で確認できます。

    フォルダパスはどのように確認できますか?

    S3 バケット内のオブジェクト一覧から、ファイルを出力したいフォルダを開きます。 プロパティ タブでフォルダの S3 URI を確認してください。フォルダパスは s3://[your-bucket-name]/ の後の部分(末尾のスラッシュを除く)です。

    上記の例では、フォルダパスは my-dump/to_import です。

    • my_folder
    • my_folder/sub_folder

    バケットリージョン

    これはあなたの S3 バケットのリージョンです。

    バケットリージョンはどのように確認できますか?

    AWS コンソールで S3 に移動し、リストからバケットを選択してください。リージョンは上部に表示されます。

    また、バケットの プロパティ タブでも確認できます。 S3 ARN arn:aws:s3::: の後の部分がバケット名です:

    S3BucketName2.png

    Asia Pacific (Mumbai)

    (ap-south-1)

    イベント選択

    S3 バケットにエクスポートするイベントを選択してください。 すべてのイベント (既存および将来 MoEngage に入る新しいイベント)をエクスポートするか、手動で選択したイベントのみをエクスポートできます。

    ユーザー属性

    イベントと一緒にエクスポートするユーザー属性(ユーザー属性およびデバイス属性)を選択できます。

    頻度

    イベントのエクスポート頻度を選択してください。MoEngage は以下の 3 種類の頻度を提供しています:

    • 15 分ごと: 15 分間隔でファイルを出力します。
    • 毎日: 毎日 00:00 UTC にファイルを出力します。
    • 毎週: 毎週月曜日 00:00 UTC にファイルを出力します。

    警告 : エクスポート頻度を頻繁に変更すると、データの損失や重複が発生する可能性があります。

    ファイル暗号化

    MoEngage は暗号化ファイルのエクスポートをサポートしています。現在は PGP 暗号化のみ対応しています。暗号化ファイルをエクスポートする場合は、 ファイル暗号化 のトグルをオンにしてください。MoEngage は提供された公開鍵で GZIPPED ファイルを暗号化し、.gpg 拡張子を付与します。

    ファイルを復号した後、解凍してエクスポート内容を確認できます。

    例: event-exports_1735198203.json.gz.gpg

    暗号化キー

    ファイル暗号化 がオンの場合、PGP 公開鍵を 暗号化キー 欄に入力してください。MoEngage はこのキーを使用してすべてのエクスポートファイルを暗号化しますが、復号はご自身で行う必要があります。

    例:

    -----BEGIN PGP PUBLIC KEY BLOCK-----

    xqq74BCADKpWRLSAdcTtD45nl24KpT+LCUCqDoZQ2dlgeBiXNovBVyTPlAOPQSqX bnNGs+U4RpHebjvTxaWCLDBGYOvtZbtv6WvPIF7lzXrIv+DcgLMBQp2b3t+ohRBi 41Ch8CZ04F2lxboksCwnl31laEuQkk8MERlcthB9AiKvSEf6jihLcPSVVanrQUQN77UZf sFCynJXweqijZxtmUl9V1838sUVOoTzfmGwu7PzV99tAiOlxBjYF9SXIYY/GOoJN Zuz8uOaXWtFPmV536uQT

    -----END PGP PUBLIC KEY BLOCK-----

  6. 詳細をテストするには、 Test Connect をクリックしてください。

テスト接続 をクリックすると、MoEngageは資格情報を確認しようとします。また、直接 接続 をクリックして続行することもできます。セットアップが完了すると、ファイルは選択したエクスポート頻度に基づいて指定されたフォルダパスにダンプされます。

イベントと属性

MoEngageとS3の統合により、MoEngageに入ってくるすべてのイベントをS3バケットにエクスポートできます。デフォルトでは、MoEngageはそのSDKを通じていくつかの標準イベントとユーザー属性を追跡します。私たちの 標準イベントと属性についてはこちらをご覧ください 。MoEngageでトラッキングしたカスタムユーザー定義イベントもエクスポートできます。

データエクスポート形式

ファイル形式: JSON

圧縮タイプ: GZip

エクスポート頻度: 15分ごと / 毎日 / 毎週

サンプルフォルダパス:

s3:// /[ _] /export_day= /event_exports_ .json.gz

<export_timestamp> は、ファイルがUTCタイムゾーンで生成されたときのEPOCHタイムスタンプです。

サンプルエクスポートデータ

JSON

    {
        "app_name": "App Name",
        "export_hour": "10",
        "db_name": "MoEngage App Name",
        "event": {
            "uid": "user id",
            "event_type": "USER_ACTION_EVENT",
            "event_code": "VIEW_RADAR",
            "event_name": "VIEW_RADAR",
            "user_attributes": {
                "moengage_user_id": "userid1",
                "user_attr1": "value1",
                "user_attr2": "value2"
            },
            "event_source": "MOENGAGE",
            "event_attributes": {
                "event_attr1": "value1",
                "event_attr2": "value2"
            },
            "event_uuid": "62045d15-8d5e-4cfd-ac49-5919bffb401d",
            "event_time": 1652820710,
            "device_attributes": {
                "moengage_device_id": "device id"
            }
        },
    		"export_day": "2022-05-20"
    }
    

    {
    "app_name": "App Name",
    "export_hour": "6",
    "db_name": "MoEngage App Name",
    "event": {
        "uid": "user id",
        "event_type": "CAMPAIGN_EVENT",
        "event_code": "MOE_EMAIL_SENT",
        "event_name": "Email Sent",
        "user_attributes": {
            "moengage_user_id": "userid1",
            "user_attr1": "value1",
            "user_attr2": "value2"
        },
        "event_source": "MOENGAGE",
        "email_id": "test@xyz.com",
        "event_attributes": {
            "campaign_name": "Campaign name",
            "moe_campaign_tags": [
                "Tag1",
                "Tag2"
            ],
            "campaign_type": "GENERAL",
            "moe_campaign_channel": "Email",
            "moe_delivery_type": "One Time",
            "campaign_id": "moengage campaign id",
            "campaign_channel": "EMAIL"
        },
        "event_uuid": "3b918064-08dc-47ae-b674-c23797475a8d",
        "event_time": 1653022310,
        "device_attributes": {
            "moengage_device_id": "device id if applicable"
        }
    },
    "export_day": "2022-05-20"
}

サンプルファイルは こちら からダウンロードできます。これはGZIPPEDファイルであり、ファイルを表示する前に解凍する必要があります。

AWS Key Management Service を Amazon S3 と統合する

  1. AWS マネジメントコンソール、AWS CLI、または AWS SDK を使用して AWS キーマネジメントサービス (KMS) カスタマーマスターキー (CMK) を作成します。AWS KMS がすでに生成されている場合は、このステップをスキップできます。
  2. AWS KMSキーをS3で使用できるようにするには、AWS KMSキーのポリシーに権限を追加します。以下は、キーをS3の暗号化に使用できるようにするキー ポリシーの例です:
    Code
    {
    "Version": "2012-10-17",
    "Id": "key-policy",
    "Statement": [
    {
    "Sid": "Allow use of the key for S3 encryption",
    "Effect": "Allow",
    "Principal": {
    "AWS": "arn:aws:iam::612427630422:role/service-role/core_s3_export-role-e1qw8ulf"
    },
    "Action": [
    "kms:Encrypt",
    "kms:Decrypt",
    "kms:ReEncrypt*",
    "kms:GenerateDataKey*",
    "kms:DescribeKey"
    ],
    "Resource": [
    "arn:aws:s3:::your-bucket",
    "arn:aws:s3:::your-bucket/*"
    ]
    }
    ]
    }
  3. S3バケットをAWS KMSキーを使用して暗号化するように設定する。バケットを作成する際やバケットのプロパティを変更する際にこれを行うことができます。
  4. S3管理コンソールで、サーバーサイド暗号化を有効にしたいバケットに移動します。
  5. プロパティ タブをクリックし、 デフォルト暗号化 セクションまでスクロールダウンします。
  6. "暗号化"のオプションとして AWS Key Management Serviceキーによるサーバーサイド暗号化 (SSE-KMS) を選択し、ドロップダウンメニューから作成したAWS KMSキーを選択します。AWS KMS ARN のみを使用してください。
  7. バケットに暗号化設定を適用するには、 保存 をクリックします。あなたのS3オブジェクトは、統合したAWS KMSキーを使用して自動的に暗号化されます。
  8. AWS KMSキーARNが必要ですので、提供してください。MoEngageのエンドからホワイトリストに登録する必要があります。
情報

情報

なぜKMSキーARNのホワイトリスト化が必要なのか?

  • AWS Key Management Service (KMS) キー ARN (Amazon Resource Name) は、アクセスを許可したい KMS キーを一意に識別するため、ホワイトリストに登録する際に必要です。
  • KMSキーARNをホワイトリストに登録するということは、その特定のKMSキーにアクセス権を持つ認可されたエンティティやサービスのみが、そのキーを使用して暗号化または復号化操作を実行できるように指定することを意味します。
  • KMSキーARNをホワイトリストに登録することで、認可されたリソースのみがキーとやり取りできるようにして、追加のセキュリティを提供します。キーへの不正アクセスや使用を防ぎ、データ侵害や悪意のある活動のリスクを軽減します。
  • ホワイトリストにKMSキーARNを指定することで、どのリソースがKMSキーにアクセスして使用できるかを詳細に制御でき、キー管理と暗号化プロセスの全体的なセキュリティが向上します。

よくある質問

arrow_drop_down S3バケットにデータが届き始めるのはどのくらい早いですか?

通常、アカウントの自動データエクスポートが設定され、データが表示され始めるまでに最大30分かかります。

arrow_drop_down 追加のイベントを後でエクスポートできますか?

はい、後で新しいイベントをエクスポートする必要がある場合は、App Marketplaceで設定を編集して、新しいイベントをエクスポートに追加することができます。

arrow_drop_down 古いS3エクスポートの頻度も変更できますか?

すでにS3エクスポートを使用していて、頻度を変更したい場合は、App MarketplaceにアクセスしてS3エクスポートの設定を編集できます。 頻度を毎日または毎週に変更すると、ファイルパスが永久に変更されることに注意してください。 新しいファイルパスは、確認のためにUIに表示されます。変更を行った後は、以前のファイルパスに戻すことはできません。

arrow_drop_down エクスポート頻度を変更するとどうなりますか?

より頻繁なエクスポートからあまり頻繁でないエクスポートに移行する場合、最初にこの変更を行うと一時的にデータが重複します。エクスポートの頻度を低いものから高いものに変更した場合、大量のデータがある場合にデータが失われる可能性が稀にあります。

arrow_drop_down 自動データエクスポートを使用して履歴データをエクスポートできますか?

現時点では、自動データエクスポートを設定する前にデータをエクスポートすることはできません。設定が完了すると、エクスポートを有効にした時点から各イベントのデータが表示され始めます。

arrow_drop_down 自動データエクスポートに料金はかかりますか?

お客様の請求プランがこれを既にカバーしておらず、後でこれを有効にする必要がある場合は、お客様のカスタマーサクセスマネージャーと協力して、請求プランにこれを含める必要があります。MoEngageが毎月あなたのS3バケットに配置するデータ量に基づいて、追加料金が発生する可能性があります。

この記事は役に立ちましたか?
12人中7人がこの記事が役に立ったと言っています

How can we improve this article?