

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 設定 AWS AppConfig Agent 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 Agent Lambda 延伸模組時，它會在 Lambda 開始初始化函數並叫用處理常式 AWS AppConfig 之前，從 擷取指定的組態。在某些情況下，在函數請求組態資料之前，組態資料已在本機快取中可用。

若要使用預先擷取功能，請將環境變數的值設定為與您的組態資料對應的路徑。例如，如果您的組態對應至分別名為 "my\$1application"、"my\$1environment" 和 "my\$1configuration\$1data" 的應用程式、環境和組態設定檔，則路徑將為 `/applications/my_application/environments/my_environment/configurations/my_configuration_data`。您可以將多個組態項目列為逗號分隔清單 （如果您的資源名稱包含逗號，請使用資源的 ID 值，而非其名稱）。

**從另一個帳戶存取組態資料**

 AWS AppConfig Agent 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 Agent Lambda 延伸模組只能從一個帳戶擷取資料。如果您指定 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`、`fatal`、 `error`和 `none`。`trace` 日誌包含有關代理程式的詳細資訊，包括時間資訊。  |  info  | 追蹤 偵錯 info 警告 error 嚴重 無 | 
|  `AWS_APPCONFIG_EXTENSION_MAX_CONNECTIONS`  |  此環境變數會設定延伸模組用來從中擷取組態的連線數目上限 AWS AppConfig。  | 3 | 3 | 
|  `AWS_APPCONFIG_EXTENSION_POLL_INTERVAL_SECONDS`  |  此環境變數控制代理程式輪詢 AWS AppConfig 更新組態資料的頻率。您可以指定間隔的秒數。您也可以指定具有時間單位的數字：秒為 s，分鐘為 m，小時為 h。如果未指定單位，代理程式預設為秒。例如，60、60 和 1 公尺會產生相同的輪詢間隔。  | 45 | 4545 秒5m1h | 
|  `AWS_APPCONFIG_EXTENSION_POLL_TIMEOUT_MILLIS`  |  此環境變數控制在重新整理快取中的資料 AWS AppConfig 時，延伸模組等待回應的時間上限，以毫秒為單位。如果 AWS AppConfig 未在指定的時間內回應，延伸項目會略過此輪詢間隔，並傳回先前更新的快取資料。  | 3000 毫秒 | 3000300 毫秒5 秒 | 
|  `AWS_APPCONFIG_EXTENSION_PREFETCH_LIST`  |  此環境變數會在代理程式啟動 AWS AppConfig 時指定代理程式請求的組態資料。逗號分隔清單中可能會提供多個組態識別符。從 預先擷取組態資料 AWS AppConfig 可大幅縮短函數的冷啟動時間。  | 無 | MyApp：MyEnv：MyConfigabcd123：efgh456：ijkl789MyApp：MyEnv：Config1，MyApp：MyEnv：Config2 | 
| AWS\$1APPCONFIG\$1EXTENSION\$1PROXY\$1HEADERS | 此環境變數指定AWS\$1APPCONFIG\$1EXTENSION\$1PROXY\$1URL環境變數中參考的代理所需的標頭。值是以逗號分隔的標頭清單。 | 無 | 標頭：值h1：v1、h2：v2 | 
| AWS\$1APPCONFIG\$1EXTENSION\$1PROXY\$1URL | 此環境變數會指定要用於延伸 AWS AppConfig 模組連線的代理 URL AWS 服務。支援 HTTPS和 HTTP URL。 URLs  | 無 | http：//localhost：7474https://my-proxy.example.com | 
| AWS\$1APPCONFIG\$1EXTENSION\$1ROLE\$1ARN | 此環境變數會指定對應至 角色的 IAM 角色 ARN，該角色應由 AWS AppConfig 延伸模組擔任以擷取組態。 | 無 | arn：aws：iam：：123456789012：role/MyRole | 
| AWS\$1APPCONFIG\$1EXTENSION\$1ROLE\$1EXTERNAL\$1ID | 此環境變數會指定要與擔任的角色 ARN 搭配使用的外部 ID。 | 無 | MyExternalId | 
| AWS\$1APPCONFIG\$1EXTENSION\$1ROLE\$1SESSION\$1NAME | 此環境變數會指定要與擔任 IAM 角色的登入資料建立關聯的工作階段名稱。 | 無 | AWSAppConfigAgentSession | 
| AWS\$1APPCONFIG\$1EXTENSION\$1SERVICE\$1REGION | 此環境變數指定擴充功能應該用來呼叫 AWS AppConfig 服務的替代區域。未定義時，延伸模組會使用目前區域中的端點。 | 無 | us-east-1eu-west-1 | 
|  `AWS_APPCONFIG_EXTENSION_MANIFEST`  |  此環境變數會設定 AWS AppConfig 代理程式，以利用其他每個組態的功能，例如多帳戶擷取，並將組態儲存至磁碟。如需這些功能的詳細資訊，請參閱[使用資訊清單來啟用其他擷取功能](appconfig-agent-how-to-use-additional-features.md)。  | 無 | 使用 AWS AppConfig 組態做為資訊清單時：`MyApp:MyEnv:MyManifestConfig`。從磁碟載入資訊清單時： `file:/path/to/manifest.json` | 
|  `AWS_APPCONFIG_EXTENSION_WAIT_ON_MANIFEST`  |  此環境變數會將 AWS AppConfig 代理程式設定為等到資訊清單處理完畢再完成啟動。  | true | truefalse | 