

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

# AWS AppConfig エージェント Lambda 拡張機能の設定
<a name="appconfig-integration-lambda-extensions-config"></a>

拡張機能を設定するには、次の AWS Lambda 環境変数を変更します。詳細については、「 *AWS Lambda デベロッパーガイド*」の[AWS Lambda 「環境変数の使用](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html)」を参照してください。

**設定データのプリフェッチ**

環境変数 `AWS_APPCONFIG_EXTENSION_PREFETCH_LIST` は、関数の起動時間を大幅に改善できます。 AWS AppConfig エージェント Lambda 拡張機能が初期化されると、Lambda が関数の初期化を開始し、ハンドラーを呼び出す AWS AppConfig 前に、 から指定された設定を取得します。場合によっては、関数が要求する前に、設定データがローカルキャッシュで既に利用可能になっていることがあります。

プリフェッチ機能を使用するには、設定データに対応するパスに、環境変数の値を設定します。例えば、設定がそれぞれ「my\_application」、「my\_environment」、「my\_configuration\_data」という名前のアプリケーション、環境、および設定プロファイルに対応している場合、パスは `/applications/my_application/environments/my_environment/configurations/my_configuration_data` のようになります。設定項目をカンマ区切りのリストとして列挙することで、複数の設定項目を指定できます (カンマを含むリソース名がある場合は、リソースの名前ではなく ID 値を使用します)。

**別のアカウントから設定データへアクセスします**

 AWS AppConfig エージェント Lambda 拡張機能は、データにアクセス[許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_permissions-to-switch.html)を付与する IAM ロールを指定することで、別のアカウントから設定データを取得できます。これを設定するには、次の手順に従います。

1.  AWS AppConfig が設定データを管理するために使用されるアカウントで、Lambda 関数を実行しているアカウントに `appconfig:StartConfigurationSession` および `appconfig:GetLatestConfiguration`アクションへのアクセス権と、 AWS AppConfig 設定リソースに対応する部分的または完全な ARNs を付与する信頼ポリシーを持つロールを作成します。

1. Lambda 関数を実行するアカウントで、ステップ 1 で作成したロールの ARN `AWS_APPCONFIG_EXTENSION_ROLE_ARN` を含む環境変数を Lambda 関数に追加します。

1. （オプショナル） 必要に応じて、[`AWS_APPCONFIG_EXTENSION_ROLE_EXTERNAL_ID` 環境変数を使用して外部 ID](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html) を指定できます。同様に、 `AWS_APPCONFIG_EXTENSION_ROLE_SESSION_NAME` セッション名は環境変数を使用して設定できます。

**注記**  
以下の情報に注意してください。  
 AWS AppConfig エージェント Lambda 拡張機能は、1 つのアカウントからのみデータを取得できます。IAM ロールを指定した場合、拡張子は Lambda 関数が実行されているアカウントから設定データを取得できません。
AWS Lambda は、Amazon CloudWatch Logs を使用して AWS AppConfig Agent Lambda 拡張機能と Lambda 関数に関する情報をログに記録します。
次のテーブルに、**[サンプル値]** の列を示します。モニターの解像度によっては、テーブルの下部までスクロールし、右にスクロールして列を表示する必要がある場合があります。


****  

| 環境変数 | 詳細 | デフォルトの値 | サンプル値: | 
| --- | --- | --- | --- | 
| `AWS_APPCONFIG_EXTENSION_HTTP_PORT` | この環境変数は、拡張機能をホストするローカル HTTP サーバーが実行されるポートを指定します。 | 2772 | 2772 | 
| `AWS_APPCONFIG_EXTENSION_LOG_LEVEL` | この環境変数は、エージェントがログに記録する詳細レベルを指定します。各レベルには、現在レベルとそれより上位のすべてのレベルが含まれます。値は大文字小文字を区別しません。ログレベルは、詳細度が高い順に次のとおりです。`trace`、`debug`、`info`、`warn`、`error`、`fatal`、`none`。`trace` ログには、タイミング情報など、エージェントに関する詳細情報が含まれます。 | 情報 | trace<br />デバッグ<br />情報<br />warn<br />エラー<br />fatal<br />なし | 
| `AWS_APPCONFIG_EXTENSION_MAX_CONNECTIONS` | この環境変数は、拡張機能が AWS AppConfigから設定を取得するために使用する最大接続数を設定します。 | 3 | 3 | 
| `AWS_APPCONFIG_EXTENSION_POLL_INTERVAL_SECONDS` | この環境変数は、エージェントが AWS AppConfig 更新された設定データをポーリングする頻度を制御します。間隔の秒数を指定できます。時間単位で数値を指定することもできます。s は秒、m は分、h は時間です。単位が指定されなかった場合、エージェントはデフォルトで秒になります。たとえば、60 、60 秒、1m の場合、ポーリング間隔は同じになります。 | 45 | 45<br />45 秒<br />5m<br />1 時間 | 
| `AWS_APPCONFIG_EXTENSION_POLL_TIMEOUT_MILLIS` | この環境変数は、キャッシュ内のデータを更新する AWS AppConfig ときに、拡張機能が からのレスポンスを待機する最大時間をミリ秒単位で制御します。 AWS AppConfig が指定された時間内に応答しない場合、拡張機能はこのポーリング間隔をスキップし、以前に更新されたキャッシュデータを返します。 | 3000 ミリ秒 | 3000<br />300 ミリ秒<br />5 秒 | 
| `AWS_APPCONFIG_EXTENSION_PREFETCH_LIST` | この環境変数は、エージェントが起動すると AWS AppConfig すぐにリクエストする設定データを指定します。複数の設定識別子は、カンマ区切りのリストとして指定できます。 AWS AppConfig から設定データをプリフェッチすると、関数のコールドスタート時間を大幅に短縮できます。 | なし | MyApp:MyEnv:MyConfig<br />abcd123:efgh456:ijkl789<br />MyApp:MyEnv:Config1、MyApp:MyEnv:Config2 | 
| AWS\_APPCONFIG\_EXTENSION\_PROXY\_HEADERS | この環境変数は、AWS\_APPCONFIG\_EXTENSION\_PROXY\_URL 環境変数で参照されるプロキシに必要なヘッダーを指定します。値は、コンマで区切られたヘッダーの一覧です。 | なし | ヘッダー: 値<br />h1: v1、h2: v2 | 
| AWS\_APPCONFIG\_EXTENSION\_PROXY\_URL | この環境変数は、 AWS AppConfig 拡張機能から への接続に使用するプロキシ URL を指定します AWS のサービス。 HTTPSおよび HTTP URLsがサポートされています。 | なし | http://localhost:7474<br />https://my-proxy.example.com | 
| AWS\_APPCONFIG\_EXTENSION\_ROLE\_ARN | この環境変数は、設定を取得するために AWS AppConfig 拡張機能が引き受ける必要があるロールに対応する IAM ロール ARN を指定します。 | なし | arn:aws:iam::123456789012:role/MyRole | 
| AWS\_APPCONFIG\_EXTENSION\_ROLE\_EXTERNAL\_ID | この環境変数は、想定されるロール ARN と組み合わせて使用する外部 ID を指定します。 | なし | MyExternalId | 
| AWS\_APPCONFIG\_EXTENSION\_ROLE\_SESSION\_NAME | この環境変数は、引き受ける IAM ロールの認証情報に関連付けるセッション名を指定します。 | なし | AWSAppConfigAgentSession | 
| AWS\_APPCONFIG\_EXTENSION\_SERVICE\_REGION | この環境変数は、拡張機能が AWS AppConfig サービスを呼び出すために使用する代替リージョンを指定します。未定義の場合、拡張機能は現在のリージョンのエンドポイントを使用します。 | なし | us-east-1<br />eu-west-1 | 
| `AWS_APPCONFIG_EXTENSION_MANIFEST` | この環境変数は、マルチアカウントの取得やディスクへの設定の保存など、設定ごとに追加の機能を利用するように AWS AppConfig エージェントを設定します。これらの機能の詳細については、「[マニフェストを使用して追加の取得機能を有効にする](appconfig-agent-how-to-use-additional-features.md)」を参照してください。 | なし | マニフェストとして AWS AppConfig 設定を使用する場合: `MyApp:MyEnv:MyManifestConfig`。<br />ディスクからマニフェストをロードする場合: `file:/path/to/manifest.json` | 
| `AWS_APPCONFIG_EXTENSION_WAIT_ON_MANIFEST` | この環境変数は、起動が完了する前にマニフェストが処理されるまで待機するように AWS AppConfig エージェントを設定します。 | true | true<br />false | 