

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

# 將增強型運作狀態報告與 Elastic Beanstalk API 搭配使用
<a name="health-enhanced-api"></a>

由於 AWS Elastic Beanstalk 增強型運作狀態報告具有角色和解決方案堆疊需求，因此您必須先更新在增強型運作狀態報告發行之前使用的指令碼和程式碼，才能使用它。為了保持回溯相容性，在您使用 Elastic Beanstalk API 來建立環境時，增強型運作狀態報告預設不會啟用。

請為您的環境設定服務角色、執行個體描述檔和 Amazon CloudWatch 組態選項，以設定增強型運作狀態報告。您可以透過三種方式來進行設定：設定 `.ebextensions` 資料夾中的組態選項、使用儲存的組態，或是在 `create-environment` 呼叫的 `option-settings` 參數中直接設定這些項目。

若要使用 API、SDKs或 AWS 命令列界面 (CLI) 來建立支援增強型運作狀態的環境，您必須：
+ 使用適當的[權限](concepts-roles.md)來建立服務角色和執行個體描述檔
+ 使用新的[平台版本](concepts.platforms.md)建立新的環境
+ 設定運作狀態系統類型、執行個體描述檔和服務角色[組態選項](command-options.md)

請使用 `aws:elasticbeanstalk:healthreporting:system`、`aws:autoscaling:launchconfiguration` 和 `aws:elasticbeanstalk:environment` 命名空間中的下列組態選項，來設定您環境的增強型運作狀態報告。

## 增強型運作狀態組態選項
<a name="health-enhanced-api-options"></a>

**SystemType**

命名空間：`aws:elasticbeanstalk:healthreporting:system`

若要啟用增強型運作狀態報告，請設定為 **enhanced**。

**IamInstanceProfile**

命名空間：`aws:autoscaling:launchconfiguration`

設定為執行個體描述檔的名稱，此設定檔已設定為搭配 Elastic Beanstalk 使用。

**ServiceRole**

命名空間：`aws:elasticbeanstalk:environment`

設定為服務角色的名稱，此服務角色已設定為搭配 Elastic Beanstalk 使用。

**ConfigDocument** (選用)

命名空間：`aws:elasticbeanstalk:healthreporting:system`

JSON 文件，其中定義了要發佈到 CloudWatch 的執行個體和環境指標。例如：

```
{
  "CloudWatchMetrics":
    {
    "Environment":
      {
      "{{ApplicationLatencyP99.9}}":60,
      "{{InstancesSevere}}":60
      }
    "Instance":
      {
      "{{ApplicationLatencyP85}}":60,
      "{{CPUUser}}": 60
      }
    }
  "Version":1
}
```

**注意**  
取決於您提供給 Elastic Beanstalk 的格式，組態文件可能需要使用特別的格式，例如逸出引號。如需範例，請參閱 [提供自訂指標設定文件](health-enhanced-cloudwatch.md#health-enhanced-cloudwatch-configdocument)。