Pendoのデータ同期機能を使用すると、Pendoのデータ(Pendo Feedbackのデータを除く)をMicrosoft Azure Storageのアカウントにエクスポートできます。この記事では、Microsoft Azure Storageとのデータ同期を設定する方法について説明します。
前提条件
- データ同期は有料の機能です。この機能を利用するには、Pendoの担当者にお問い合わせください。
- この作業においてクラウドストレージの保存先を設定するには、Pendoのサブスクリプション管理者であるか、データ同期の設定権限を持っている必要があります。
- ユーザーはAzureでBLOBの書き込みおよびBLOBの追加コンテンツの権限を取得している必要があります。
設定の概要
Microsoft Azure Storageとのデータ同期の設定には、Pendo側での設定と、Microsoft Azure環境での構成が必要になります。具体的には、以下の手順で実施します。
- ストレージアカウントにアクセスするためのクライアントIDとクライアントシークレットを作成します。
- Azure Storageのアカウントを作成します。
- 権限を設定します。
- ストレージアカウント内にAzureコンテナを作成します。
- Pendoでプロバイダーを選択します。
- Pendoにストレージアカウントの保存先を設定します。
ステップ1. クライアントキーを生成する
Azureで認証するには、Microsoft Azure StorageアカウントにPendoをアプリケーションとして登録し、クライアントシークレット(キー)を作成する必要があります。このキーを生成するには、Microsoft Entra ID(旧Azure Active Directory)に移動して次の操作を行います。
- 左側のメニューの[管理(Manage)] の下にある [アプリの登録(App registrations)] を選択します。
- ページ上部の[+新規登録(+ New registration)]を選択して、新しいアプリケーションの登録プロセスを開始します。
- フォームに記入し、下部にある[登録(Register)]を選択してアプリケーションを作成します。すると、アプリケーションの詳細ページに移動します。移動しない場合は、左側のメニューの[管理(Manage)]の下にある[アプリの登録(App registrations)]に戻り、追加したアプリケーションを開きます。
- アプリケーションの詳細ページで、[概要(Essentials)] セクションの [アプリケーション(クライアント)ID(Application (client) ID)]と [ディレクトリ(テナント)ID(Directory (tenant) ID)] の値をメモします。これらのIDは、この記事のステップ6で、Pendo側で必要になります。
- アプリケーションの詳細ページの左側のメニューから[証明書とシークレット(Certificates & secrets)]を選択し、[クライアント シークレット(Client secrets)]タブを開き、[+新しいクライアントシークレット(+ New client secret)]を選択します。
- Pendoデータ同期での用途を要約した説明を入力し、社内ポリシーと一致する有効期限ポリシーを選択します。
- フォームの下部にある[追加(Add)]を選択します。
- [値(Value)]列の文字列をメモします。これは、この記事のステップ6 で、Pendo側で必要になります。値は限られた時間内のみ表示されます。
ステップ2. Azure Storageアカウントを作成する
Pendoのデータは、BLOBとしてAzure Storageアカウントにコピーされます。Azure Storageアカウントを作成するには、Microsoft Azureの[ストレージアカウント(Storage accounts)] に移動して、次の操作を行います。
- ページの左上にある[+作成(+ Create)]を選択します。
- [基本(Basics)]タブから、ワークフローに従ってストレージアカウントの適切な設定を行います。
- [確認(Review)]を選択し、フォームの下部にある[作成(Create)]を選択します。
ステップ3. 権限を設定する
ステップ2で作成したストレージアカウントで以下の手順を実施します。
- 左側のメニューから[アクセスコントロール(IAM)(Access Control (IAM))]を選択します。
- [+追加(+ Add)]を選択し、[役割の割り当てを追加(Add role assignment)]を選択します。
- [役割(Role)]タブで[ストレージBLOBデータ投稿者(Storage Blob Data Contributor)]を探して選択します。
- [メンバー(Members)]タブを開きます。
- [アクセス権の割り当て先(Assign access to)]の横にある[ユーザー、グループ、またはサービスプリンシパル(User, group, or service principal)]を選択します。
- [+メンバーを選択(+ Select members)]を選択し、クライアントを探します。
設定内容は[役割の割り当て(Role assignments)]タブで確認できます。
ステップ4. Azureコンテナを作成する
ステップ2で作成したストレージアカウントで以下の手順を実施します。
- 左側のメニューの[データストレージ(Data storage)]の下にある[コンテナ(Containers)]を選択します。
- ページの右上から[+コンテナ(+ Container)]を選択します。
- コンテナにわかりやすい名前をつけます。
- ドロップダウンメニューから匿名アクセスレベル([プライベート(Private)]、[BLOB]、[コンテナ(Container)])を選択します。
- フォームの下部にある [作成(Create)]を選択します。
ステップ5:Pendoでプロバイダーを選択する
Azureコンテナにデータを送信する前に、Pendoでターゲットとなる送信先を設定する必要があります。
- Pendoで、[設定(Settings)]>[データ同期(Data Sync)]の順に進みます。
- [宛先に接続(Connect to destination)]を選択します。
- 右側にスライドアウトするパネルで[Microsoft Azure Storage] タイルにカーソルを合わせます。
- [宛先を選択(Choose Destination)]を選択します。パネルには、次のステップがまとめられています。
ステップ6. Pendoでストレージアカウントの宛先を設定する
最後のステップとして、PendoでMicrosoft Azure Storageの保存先を設定します。
- ステップ2で作成したストレージアカウント名を入力します。
- ステップ4で作成したストレージアカウントのコンテナ名を入力します。
- 必要に応じて、ストレージパス(サブディレクトリ)を入力します。ファイルをエクスポートする場所としてメインディレクトリ、つまりコンテナで十分な場合は、このフィールドを空白のままにしておきます。
- ステップ1でメモしたテナントIDとクライアントIDを入力します。
- ステップ1で作成したシークレット(クライアントキー)を入力します。
- 入力した認証情報をテストするには、[宛先を検証(Validate destination)]を選択します。検証結果はボタンの下に表示されます。検証に失敗した場合は、表示されたメッセージを確認するか、利用可能な場合は[エラーを表示(View error)]を選択し、宛先情報を修正してから再試行してください。
- 正常に検証されたら、[宛先を作成(Create Destination)]を選択します。
認証情報をローテーションする
Pendoで宛先を構成した後に認証情報を更新するには、以下の2つの方法があります。
- Pendo UIを使って手動で更新する。
- 公開APIを使って自動で更新する。
公開APIのエンドポイントを使用してデータ同期の認証情報を更新するには、書き込み権限のあるインテグレーションキーが必要です。
Pendo UIを使う
- Pendoで、[設定(Settings)]>[データ同期(Data Sync)]の順に進みます。
- 複数の宛先がある場合はページ上部にあるこのAzure Storageの宛先を選択します。
- ページの右上にある[宛先を管理(Manage destination)]を選択します。
- 新しい認証情報を入力します。
公開APIを使う
- Pendoのインテグレーションキーの記事で説明されている手順に従って、新しいPendoインテグレーションキーを生成します。
- Pendoの公開API資料で、[データ同期(Data Sync)]に移動します。
- クラウドストレージの宛先に対応する
PUTエンドポイントを選択します。 - 公開APIのエンドポイントを使用してクラウドストレージの認証情報を更新する手順に従います。
クラウドストレージの宛先を更新する
クラウドストレージの宛先を、あるAzureコンテナから別のコンテナに移動したり、クラウドストレージサービスをGoogle Cloud Storage(GCS)やAmazon S3などの別のプロバイダーに変更するオプションがあります。
Azureコンテナを更新する
あるAzureコンテナから別の既存のAzureコンテナに変更する場合は、Pendoでコンテナの名前を更新します。サブスクリプションごとに設定できるAzure Storageの保存先は1つのみのため、2つ目を追加するのではなく、既存の保存先を更新してください。
- Pendoで、[設定(Settings)]>[データ同期(Data Sync)]の順に進みます。
- 複数の宛先がある場合はページ上部にあるこのAzure Storageの宛先を選択します。
- ページの右上にある[宛先を管理(Manage destination)]を選択します。
- コンテナ名フィールドのエントリを、データ同期に使用する新しいAzureコンテナの名前で置き換えます。
- [宛先を更新(Update destination)]を選択します。
クラウドストレージプロバイダーを変更する
Azure StorageからGoogle Cloud Storage、Amazon S3、またはデータウェアハウスの保存先など、別の種類の保存先に移行するには、このAzure Storageの保存先が引き続き稼働している間に、新しい保存先を追加します。最初にAzure Storageの保存先を削除しないでください。
- 該当する宛先タイプの設定方法に関する記事の手順に従って、新しい宛先を設定してください。
- 新しい宛先に必要なエクスポートを作成します。設定と定期エクスポートは、Azure Storageの保存先からコピーされません。
- 新しい宛先にエクスポートが届いていることを確認します。
- Azure Storageの保存先を削除します。
- Pendoで、[設定(Settings)]>[データ同期(Data Sync)]の順に進みます。
- ページ上部にあるこのAzure Storageの保存先を選択します。
- ページの右上にある[宛先を管理(Manage destination)]を選択します。
- 宛先を削除(Delete destination)を選択します。
- 宛先を削除することを確定します。
宛先を削除すると、その宛先の定期的なエクスポートと継続的なメタデータの更新は自動的にオフになり、進行中のエクスポートはすべてキャンセルされます。その他の設定済み宛先は引き続き同期されます。
次のステップ
宛先が作成されたら、エクスポートを作成し、それらをロードするパイプラインを構築します。
- イベントのエクスポートを作成および読み込むにはデータ同期イベントのエクスポート処理を参照してください。
- アカウントと訪問者のエクスポートを作成して読み込むにはデータ同期アカウントと訪問者のエクスポート処理を参照してください。
- エクスポートファイルごとのフィールドについてはデータ同期スキーマの定義を参照してください。