この記事は役立ちます:
|
実験を作成する最初のステップは、それを構成することです。構成は簡単で、2ステップのプロセスです: 最初に環境を作成し、その後、使用するSDKをインストールします。
デプロイメントを作成する
Amplitude Experimentでは、コード実行の複数のフラグまたは実験に役立つ環境があります。デプロイメントを作成したら、Experimentはアクセスキーを生成します。これを使用してフラグと実験を適切にルーティングすることができます。
Amplitude Analyticsプロジェクトの下でデプロイメントが生存します。 プロジェクトには複数のデプロイメントがありますが、各デプロイメントは1つのプロジェクトにのみ追加できます。
デプロイメントを作成するには、次のステップに従ってください:
- Experiment内から、左側のレールで[デプロイメント]をクリックします次に、[+環境を追加]をクリックします。
- 環境を関連付けたいAmplitude Analyticsプロジェクトを選択します。複数のプロジェクトで一度にデプロイメントを作成する場合は、ドロップダウンリストから、関連するすべてのプロジェクトを選択します
- 次に、デプロイの名前を選択し、そのタイプを指定します:
- クライアント側: これらのデプロイメントは、ウェブブラウザーまたはモバイルアプリなどのクライアントデバイスで実行します。クライアントのデプロイメントに関連付けられたAPIキーは、公に表示され、クライアント側のSDKで使用する必要があります。
- サーバー側: これらのデプロイメントは、Webサーバーまたはバッチ処理システムなどの、コントロールするサーバーで実行されますサーバー環境に関連付けられたAPIキーは、秘密に保持され、サーバー側のSDKで使用する必要があります。サーバー側のキーは、フラグ評価のREST APIにアクセスできます。本格的な実験を行うのではなく、REST APIを使用してフラグを評価するだけの場合は、サーバー側の環境を作成する必要があります。
- シークレット: これらのデプロイメントは、コントロールするサーバーで実行されます。シークレートデプロイメントに関連付けられたAPIキーは、秘密に保持する必要があります。シークレットキーには、完全なREST APIへのアクセスがあります。フラグ評価だけではなく、REST APIを使用する必要がある場合は、シークレット環境を作成する必要があります。
- [環境を追加]をクリックします。Amplitude Experimentは、デプロイメントを作成し、コピーおよび使用するキーを自動的に生成します。
SDKをインストールする
REST APIを使用する予定がない場合は、次のステップは、SDKをインストールすることになります。各SDKには、異なるインストール手順があります。次のリンクをクリックして確認してください:
すべてのSDKは、Amplitude Experimentにリクエストを送信し、特定のユーザーにどのフラグ構成を行うかを決定します。とはいえ、クライアント側とサーバー側のSDKには、注意すべき重要な違いがあります。
クライアント側のSDKは、エンドユーザーアプリケーションデプロイメントで実行するものです。クライアント側とサーバー側の間で選択する場合、クライアント側のSDKでは次のことに留意してください:
- 1つのユーザーのデプロイメントを想定する
- クライアント側のAPIキーを使用する。これは公開鍵で、エンドユーザーに表示されます
- 特定のユーザーの前でバリアントをフェッチする
- オフラインモードでクライアントにバリアントをローカルで保存する
一方、サーバー側のSDKは、サーバーデプロイメントで実行するものです。サーバー側のSDKでは次のことに留意してください:
- マルチユーザーのデプロイメントを想定する
- サーバー側のAPIキーを使用する。これは秘密鍵になります
- 各リクエストでバリアントをフェッチする
ユーザーコンテキスト
バリアントを割り当てるとき、評価エンジンは、ユーザーコンテキストオブジェクトにターゲティングルールを適用します。このオブジェクトは、個々のユーザーのアイデンティティを表します。クライアント側のSDKでは、このオブジェクトユーザー関係は初期化に設定され、バリアントのすべてのリクエストでサーバーに渡されます。サーバー側のSDKでは、ユーザーが変更される可能性があり、すべてのリクエストで設定する必要があります。
個々のユーザーをターゲットにバリアントを割り当てる場合、Experimentは、リストされたユーザーID(user_id
)またはデバイスID(device_id
)でマッチングします。ルールベースのユーザーセグメントを使用すると、定義済みのプロパティ (国、プラットフォームなど)、またはuser_propertyオブジェクトで指定されたカスタムプロパティでマッチングします。
JSON:
{
"user_id": "Amplitude User ID",
"device_id": "Amplitude Device ID",
"country": "Country",
"region": "Region",
"city": "City",
"dma": "DMA"
"language": "Language",
"platform": "Platform",
"version": "Version",
"device_family": "Device Family",
"device_type": "Device Type",
"carrier": "Carrier",
"user_properties": {
// you can attach custom user properties here
}
}
注意: Amplitude Analyticsにデータを送信するために使用するAmplitude Experimentには、同じユーザー識別子(デバイスIDとユーザーID)を使用する必要があります。この方法で、アイデンティティが正しく解決され、生成されたデータはAnalyticsで同じユーザーと正しく関連付けられます。