基本およびマルチバリアント機能フラグの取得 - AWS AppConfig

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

基本およびマルチバリアント機能フラグの取得

機能フラグ設定 (タイプ の設定AWS.AppConfig.FeatureFlags) の場合、 AWS AppConfig エージェントは設定内の単一のフラグまたはフラグのサブセットを取得できます。1 つまたは 2 つのフラグを取得するのは、ユースケースで設定プロファイルからいくつかのフラグを使用するだけでよい場合に役立ちます。次の例では Python を使用しています。

注記

設定で単一の機能フラグまたはフラグのサブセットを呼び出す機能は、 AWS AppConfig エージェントバージョン 2.0.45 以降でのみ使用できます。

ローカルHTTPエンドポイントから AWS AppConfig 設定データを取得できます。特定のフラグまたはフラグのリストにアクセスするには、?flag=flag_name 設定プロファイルの AWS AppConfig クエリパラメータを使用します。

1 つのフラグとその属性を取得するには

curl "http://localhost:2772/applications/APPLICATION_NAME/environments/ENVIRONMENT_NAME/configurations/CONFIGURATION_NAME?flag=FLAG_NAME"

複数のフラグとその属性を取得するには

curl "http://localhost:2772/applications/APPLICATION_NAME/environments/ENVIRONMENT_NAME/configurations/CONFIGURATION_NAME?flag=FLAG_NAME_ONE&flag=FLAG_NAME_TWO"

発信者コンテキストに基づいて機能フラグバリアントを取得するには

次の Python の例は、発信者コンテキストに基づいて機能フラグバリアントを取得する方法を示しています。これらの呼び出しを行う方法を最もよく示すために、このセクションでは、顧客が次のバリアントを作成したシナリオに基づくサンプル呼び出しを使用します。

バリアントを含む機能フラグのスクリーンショット例。
注記

フラグバリアントを取得するには、コンピューティング環境で最新バージョンの AWS AppConfig エージェントを使用する必要があります。詳細については、次の各コンピューティング環境のエージェントを更新、インストール、または追加する方法について説明します。

jane_doe@example.org (ベータプログラムにオプトインしていないユーザー) の発信者コンテキストを使用してフラグデータを取得するには:

curl http://localhost:2772/applications/UIRefresh/environments/Production/configurations/Features \ -H "Context: email=jane_doe@example.org" \ -H "Context: opted_in_to_beta=false" { "ui_refresh": {"_variant":"QA","dark_mode_support":true,"enabled":true} }

jane_doe@example.org (ベータプログラムにオプトインしたユーザー) の発信者コンテキストを使用してフラグデータを取得するには:

curl http://localhost:2772/applications/UIRefresh/environments/Production/configurations/Features \ -H "Context: email=jane_doe@example.org" \ -H "Context: opted_in_to_beta=true" { "ui_refresh": {"_variant":"QA","dark_mode_support":true,"enabled":true} }

jane_doe@qa-testers.example.org (Example Organization の品質保証テスター) の発信者コンテキストを使用してフラグデータを取得するには:

curl http://localhost:2772/applications/UIRefresh/environments/Production/configurations/Features \ -H "Context: email=jane_doe@qa-testers.example.org" { "ui_refresh": {"_variant":"QA","dark_mode_support":true,"enabled":true} }

発信者コンテキストなしでフラグデータを取得するには (デフォルトバリアントを返します)

curl http://localhost:2772/applications/UIRefresh/environments/Production/configurations/Features { "ui_refresh": {"_variant":"Default Variant","enabled":false} }

トラフィック分割シナリオのフラグデータを取得して、10 人中 1 人のランダムな発信者が「サンプル母集団」バリアントを受け取ったかどうかを判断するには

for i in {0..9} do ; \ curl http://localhost:2772/applications/UIRefresh/environments/Production/configurations/Features \ -H "Context: email=$i@example.org" { "ui_refresh": {"_variant":"Default Variant","enabled":false} } { "ui_refresh": {"_variant":"Default Variant","enabled":false} } { "ui_refresh": {"_variant":"Default Variant","enabled":false} } { "ui_refresh": {"_variant":"Default Variant","enabled":false} } { "ui_refresh": {"_variant":"Sample Population","dark_mode_support":false,"enabled":true} } { "ui_refresh": {"_variant":"Default Variant","enabled":false} } { "ui_refresh": {"_variant":"Default Variant","enabled":false} } { "ui_refresh": {"_variant":"Default Variant","enabled":false} } { "ui_refresh": {"_variant":"Default Variant","enabled":false} } { "ui_refresh": {"_variant":"Default Variant","enabled":false} } { "ui_refresh": {"_variant":"Default Variant","enabled":false} }