翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
イベントストリーミングのセットアップ
Amazon Kinesis ストリームまたは Amazon Data Firehose 配信ストリームにイベントデータを送信するように Amazon Pinpoint を設定できます。 Amazon Kinesis Amazon Pinpoint は、キャンペーン、ジャーニー、トランザクション用の Eメールや SMS メッセージのイベントデータを送信することができます。
このセクションには、プログラムによるイベントストリーミングのセットアップに関する情報が含まれています。Amazon Pinpoint コンソールを使用して、イベントストリーミングをセットアップすることもできます。Amazon Pinpoint コンソールを使用したイベントストリーミングのセットアップの詳細については、『Amazon Pinpoint ユーザーガイド』の「イベントストリーム設定」を参照してください。
前提条件
このセクションの例には、次の入力が必要です。
-
Amazon Pinpoint およびレポートイベントと統合されているアプリケーションのアプリケーション ID。統合する方法については、「Amazon Pinpoint とアプリケーションの統合」を参照してください。
-
AWS アカウントの Kinesis ストリームまたは Firehose 配信ストリームの Amazon リソースネーム (ARN)。これらのリソースの作成の詳細については、「Amazon Kinesis Data Streams デベロッパーガイド」の「ストリームの作成と管理」または「Amazon Data Firehose デベロッパーガイド」の Amazon Kinesis「Amazon Data Firehose 配信ストリームの作成」を参照してください。
-
Amazon Pinpoint がストリームにデータを送信することを許可する AWS Identity and Access Management (IAM) ロールの ARN。ロールの作成の詳細については、「Kinesis にイベントをストリーミングするための IAM ロール」を参照してください。
AWS CLI
次の AWS CLI 例では、 put-event-stream コマンドを使用します。このコマンドは、イベントを Kinesis ストリームに送信するように Amazon Pinpoint を設定します。
aws pinpoint put-event-stream \ --application-id
projectId
\ --write-event-stream DestinationStreamArn=streamArn
,RoleArn=roleArn
AWS SDK for Java
次の Java の例では、イベントを Kinesis ストリームに送信するように Amazon Pinpoint を設定します。
public PutEventStreamResult createEventStream(AmazonPinpoint pinClient, String appId, String streamArn, String roleArn) { WriteEventStream stream = new WriteEventStream() .withDestinationStreamArn(streamArn) .withRoleArn(roleArn); PutEventStreamRequest request = new PutEventStreamRequest() .withApplicationId(appId) .withWriteEventStream(stream); return pinClient.putEventStream(request); }
この例では、Kinesis ストリームの ARN と IAM ロールを保存する WriteEventStream
オブジェクトを構築します。WriteEventStream
オブジェクトは、PutEventStreamRequest
オブジェクトに渡され、特定のアプリケーションのためにイベントをストリームするように Amazon Pinpoint を設定します。PutEventStreamRequest
オブジェクトは Amazon Pinpoint クライアントの putEventStream
メソッドに渡されます。
Kinesis ストリームは複数のアプリケーションに割り当てることができます。これを行うと、Amazon Pinpoint は各アプリケーションからストリームに base64 でエンコードされたイベントデータを送信するので、データをコレクションとして分析できます。以下の例のメソッドでは、アプリケーション (アプリ) ID のリストを受け取り、前の例のメソッドである createEventStream
を使用して各アプリにストリームを割り当てます。
public List<PutEventStreamResult> createEventStreamFromAppList( AmazonPinpoint pinClient, List<String> appIDs, String streamArn, String roleArn) { return appIDs.stream() .map(appId -> createEventStream(pinClient, appId, streamArn, roleArn)) .collect(Collectors.toList()); }
1 つのストリームを複数のアプリケーションに割り当てることができますが、複数のストリームを 1 つのアプリケーションに割り当てることはできません。
イベントストリーミングの無効化
Kinesis ストリームをアプリケーションに割り当てた場合、そのアプリケーションのイベントストリーミングを無効にできます。Amazon Pinpoint は Kinesis へのイベントのストリーミングを停止しますが、Amazon Pinpoint コンソールを使用することでイベント分析を表示することができます。
AWS CLI
delete-event-streamコマンドを使用します。
aws pinpoint delete-event-stream --application-id
application-id
AWS SDK for Java
Amazon Pinpoint クライアントの deleteEventStream メソッドを使用します。
pinClient.deleteEventStream(new DeleteEventStreamRequest().withApplicationId(appId));