本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
範例:使用自訂 Amazon CloudWatch 指標
本主題提供組態範例,該範例將 Elastic Beanstalk 指標與 Amazon CloudWatch 代理程式整合,適用於以 Amazon Linux 2 及更新版本為基礎的平台。組態範例使用.ebextensions
組態檔案中的檔案和命令。
Amazon CloudWatch 是一種 Web 服務,可讓您監控、管理和發佈各種指標,以及根據指標中的資料設定警示動作。您可以自行定義自訂指標,Elastic Beanstalk 會將這些指標推送至 Amazon CloudWatch。一旦 Amazon CloudWatch 包含您的自訂指標,您可以在 Amazon CloudWatch 主控台中檢視這些指標。
重要
Amazon CloudWatch 監控指令碼已棄用。 CloudWatch 客服人員現在已取代 CloudWatch 監控指令碼來收集指標和日誌。
如果您仍在從已棄用監控指令碼遷移至代理程式,並需要監控指令碼的相關資訊,請參閱 Amazon EC2使用者指南 中的已棄用:使用 CloudWatch 監控指令碼收集指標。
Amazon CloudWatch 代理程式
Amazon CloudWatch 代理程式可啟用跨作業系統的 Amazon EC2執行個體和內部部署伺服器的 CloudWatch 指標和日誌收集。此代理程式支援在系統層級收集的指標,也支援從您的應用程式或服務收集自訂日誌和指標。如需 Amazon CloudWatch 代理程式的詳細資訊,請參閱 Amazon CloudWatch 使用者指南 中的向 CloudWatch 代理程式收集指標和日誌。
注意
Elastic Beanstalk Enhanced Health Reporting 原生支援將各種執行個體和環境指標發佈至 CloudWatch。如需詳細資訊,請參閱 發佈環境的 Amazon CloudWatch 自訂指標。
.Ebextensions 組態檔案
此範例使用 .ebextensions 組態檔案中的檔案和命令,在 Amazon Linux 2 平台上設定和執行 Amazon CloudWatch 代理程式。此代理程式會與 Amazon Linux 2 預先封裝。如果您使用的是其他作業系統,則可能需要執行額外步驟來安裝代理程式。如需詳細資訊,請參閱 Amazon CloudWatch 使用者指南 中的安裝 CloudWatch 代理程式。
若要使用此範例,請將其儲存到名為 .ebextensions
的目錄檔案,cloudwatch.config
該目錄中名為 ,然後使用 Elastic Beanstalk 主控台 (包含來源套件 中的 .ebextensions 目錄) 或 EB 部署CLI應用程式。
如需關於組態檔案的詳細資訊,請參閱 使用組態檔案 (.ebextensions) 來進行進階的環境自訂。
.ebextensions/cloudwatch.config
files:
"/opt/aws/amazon-cloudwatch-agent/bin/config.json":
mode: "000600"
owner: root
group: root
content: |
{
"agent": {
"metrics_collection_interval": 60,
"run_as_user": "root"
},
"metrics": {
"namespace": "System/Linux",
"append_dimensions": {
"AutoScalingGroupName": "${aws:AutoScalingGroupName}"
},
"metrics_collected": {
"mem": {
"measurement": [
"mem_used_percent"
]
}
}
}
}
container_commands:
start_cloudwatch_agent:
command: /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a append-config -m ec2 -s -c file:/opt/aws/amazon-cloudwatch-agent/bin/config.json
此檔案包含兩個區段:
-
files
— 此區段會新增代理程式組態檔案。它指出客服人員應該傳送至 Amazon 的指標和日誌 CloudWatch。在此範例中,我們僅傳送 mem_used_percent 指標。如需 Amazon CloudWatch 代理程式支援之系統層級指標的完整清單,請參閱 Amazon CloudWatch 使用者指南 中的 CloudWatch 代理程式收集的指標。 -
container_commands
— 此區段包含以參數形式傳遞組態檔案來啟動代理程式的命令。如需container_commands
的詳細資訊,請參閱 容器命令。
許可
環境中的執行個體需要適當的IAM許可,才能使用 Amazon CloudWatch 代理程式發佈自訂 Amazon CloudWatch 指標。您可以將許可加入環境的執行個體描述檔中,來授予您環境的執行個體。您可以在部署應用程式之前或之後,將權限加入執行個體描述檔。
授予發佈 CloudWatch 指標的許可
在 開啟IAM主控台https://console.aws.amazon.com/iam/
。 -
在導覽窗格中,選擇角色。
-
選擇您的環境的執行個體描述檔角色。根據預設,當您使用 Elastic Beanstalk 主控台或 EB CLI建立環境時,這是
aws-elasticbeanstalk-ec2-role
。 -
選擇許可索引標籤標籤。
-
在 Permissions Policies (許可政策) 下的 Permissions (許可) 區段中,選擇 Attach policies (連接政策)。
-
在連接許可 下,選擇 AWS 受管政策 CloudWatchAgentServerPolicy。然後,按一下 Attach Policy (連接政策)。
如需管理政策的詳細資訊,請參閱 IAM 使用者指南 中的使用政策。
在 CloudWatch 主控台中檢視指標
將 CloudWatch 組態檔案部署到您的環境之後,請檢查 Amazon CloudWatch 主控台
如需詳細資訊,請參閱 Amazon CloudWatch 使用者指南 中的檢視可用的指標。