

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

# 在 Amazon ECS 上啟用您的應用程式
<a name="CloudWatch-Application-Signals-Enable-ECSMain"></a>

依本節所述的自訂設定步驟，在 Amazon ECS 上啟用 CloudWatch Application Signals。

對於在 Amazon ECS 上執行的應用程式，您可以自行安裝和設定 CloudWatch 代理程式和 AWS Distro for OpenTelemetry。在使用自訂 Application Signals 設定啟用的這些架構上，Application Signals 不會自動探索您的服務或其執行所在的叢集或主機的名稱。您必須在自訂設定期間指定這些名稱，而您指定的名稱是顯示在 Application Signals 儀表板中的名稱。

## 使用自訂設定在 Amazon ECS 上啟用 Application Signals
<a name="CloudWatch-Application-Signals-Enable-ECS"></a>

使用這些自訂設定指示，將 Amazon ECS 上的應用程式加載到 CloudWatch Application Signals。您可以自行安裝和設定 CloudWatch 代理程式和 AWS Distro for OpenTelemetry。

在 Amazon ECS 上部署 Application Signals 的方法有兩種。請選擇最適合您的環境的方法。
+ [使用附屬程式策略部署](CloudWatch-Application-Signals-ECS-Sidecar.md) – 將 CloudWatch 代理程式附屬程式容器新增至叢集中的每個任務定義。

  優點：
  + 同時支援 `ec2` 和 `Fargate` 啟動類型。
  + 當您設定環境變數時，一律可以使用 `localhost` 作為 IP 位址。

  缺點：
  + 必須為叢集中執行的每個服務任務設定 CloudWatch 代理程式附屬容器。
  + 僅支援 `awsvpc` 網路模式。
+ [使用常駐程式策略部署](CloudWatch-Application-Signals-ECS-Daemon.md) – 只需在叢集中新增 CloudWatch 代理程式任務一次，[Amazon ECS 常駐程式排程策略](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_services.html#service_scheduler_daemon)會視需要進行部署。如此可確保每個執行個體能持續接收追蹤與指標，提供集中的可見性，無需代理程式以附屬程式的模式與每個應用程式任務定義並行執行。

  優點：
  + 只需要在叢集中為 CloudWatch 代理程式設定常駐程式服務一次。

  缺點：
  + 不支援 Fargate 啟動類型。
  + 如果使用 `awsvpc` 或 `bridge` 網路模式，必須在環境變數中手動指定每個容器執行個體的私有 IP 位址。

無論採用哪種方法，在 Amazon ECS 叢集上，Application Signals 皆不會自動偵測您服務的名稱。必須在自訂設定期間指定服務名稱，且指定的名稱將顯示在 Application Signals 儀表板中。

## 使用模型內容通訊協定 (MCP) 在 Amazon ECS 上啟用應用程式訊號
<a name="CloudWatch-Application-Signals-ECS-MCP"></a>

您可以使用 CloudWatch Application Signals Model Context Protocol (MCP) 伺服器，透過對話式 AI 互動在 Amazon ECS 叢集上啟用 Application Signals。這提供用於設定 Application Signals 監控的自然語言界面。

MCP 伺服器會了解您的需求並產生適當的組態，以自動化啟用程序。您可以直接描述要啟用的內容，而不是手動遵循主控台步驟或撰寫 CDK 程式碼。

### 先決條件
<a name="CloudWatch-Application-Signals-ECS-MCP-Prerequisites"></a>

使用 MCP 伺服器啟用 Application Signals 之前，請確定您已：
+ 支援 MCP 的開發環境 （例如 Kiro、Claude Desktop、VSCode 搭配 MCP 延伸模組或其他 MCP 相容工具）
+ IDE 中設定的 CloudWatch Application Signals MCP 伺服器。如需詳細設定說明，請參閱 [CloudWatch Application Signals MCP Server 文件](https://awslabs.github.io/mcp/servers/cloudwatch-applicationsignals-mcp-server)。

### 使用 MCP 伺服器
<a name="CloudWatch-Application-Signals-ECS-MCP-Usage"></a>

在 IDE 中設定 CloudWatch Application Signals MCP 伺服器後，您可以使用自然語言提示請求啟用指引。雖然編碼助理可以從專案結構推斷內容，但在提示中提供特定詳細資訊有助於確保更準確和相關的指導。包含您的應用程式語言、Amazon ECS 叢集名稱、部署策略 （附屬或協助程式），以及基礎設施和應用程式程式碼的絕對路徑等資訊。

**最佳實務提示 （特定且完整）：**

```
"Enable Application Signals for my Python service running on ECS.
My app code is in /home/user/flask-api and IaC is in /home/user/flask-api/terraform"

"I want to add observability to my Node.js application on ECS cluster 'production-cluster' using sidecar deployment.
The application code is at /Users/dev/checkout-service and
the task definitions are at /Users/dev/checkout-service/ecs"

"Help me instrument my Java Spring Boot application on ECS with Application Signals using daemon strategy.
Application directory: /opt/apps/payment-api
CDK infrastructure: /opt/apps/payment-api/cdk"
```

**效率較低的提示：**

```
"Enable monitoring for my app"
→ Missing: platform, language, paths

"Enable Application Signals. My code is in ./src and IaC is in ./infrastructure"
→ Problem: Relative paths instead of absolute paths

"Enable Application Signals for my ECS service at /home/user/myapp"
→ Missing: programming language, deployment strategy
```

**快速範本：**

```
"Enable Application Signals for my [LANGUAGE] service on ECS.
Deployment strategy: [sidecar/daemon]
App code: [ABSOLUTE_PATH_TO_APP]
IaC code: [ABSOLUTE_PATH_TO_IAC]"
```

### 使用 MCP 伺服器的優點
<a name="CloudWatch-Application-Signals-ECS-MCP-Benefits"></a>

使用 CloudWatch Application Signals MCP 伺服器有幾個優點：
+ **自然語言界面：**描述您想要啟用的內容，而不記住命令或組態語法
+ **內容感知指引：**MCP 伺服器了解您的特定環境，並提供量身打造的建議
+ **減少錯誤：**自動化組態產生可將手動輸入錯誤降至最低
+ **更快速的設定：**更快速地從意圖到實作
+ **學習工具：**查看產生的組態並了解 Application Signals 的運作方式

### 其他資源
<a name="CloudWatch-Application-Signals-ECS-MCP-MoreInfo"></a>

如需有關設定和使用 CloudWatch Application Signals MCP 伺服器的詳細資訊，請參閱 [MCP 伺服器文件](https://awslabs.github.io/mcp/servers/cloudwatch-applicationsignals-mcp-server)。