使用 CloudWatch 代理采集指标、日志和跟踪数据 - Amazon CloudWatch
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

使用 CloudWatch 代理采集指标、日志和跟踪数据

CloudWatch 代理属于软件组件,可从 Amazon EC2 实例、本地服务器和容器化应用程序中采集指标、日志和跟踪数据。与默认提供的基本监控相比,该软件可以更全面地监控基础设施和应用程序。

主要优势

  • 采集系统级指标(CPU、内存、磁盘、网络)

  • 从应用程序中采集自定义指标

  • 从多源采集日志并集中处理

  • 使用单一工具监控 Amazon 环境和本地环境

  • 根据采集的数据设置警报和通知

您可以通过 CloudWatch 代理执行以下操作:

  • 跨操作系统从 Amazon EC2 实例中收集内部系统级指标。除了 EC2 实例的指标之外,这些指标还可以包括来宾中的指标。可以收集的其他指标列在CloudWatch 代理收集的指标中。

  • 从本地服务器中收集系统级别指标。这些服务器可能包括混合环境中的服务器以及不是由 Amazon 管理的服务器。

  • 使用 StatsDcollectd 协议从应用程序或服务中检索自定义指标。StatsD 在 Linux 服务器和运行 Windows Server 的服务器上都受支持。collectd 仅在 Linux 服务器上受支持。

  • 从运行 Linux 或 Windows Server 的 Amazon EC2 实例和本地部署服务器收集日志。

    注意

    CloudWatch 代理不支持从 FIFO 管道收集日志。

  • 将指标发送到 CloudWatch 或 Amazon Managed Service for Prometheus,或者同时发送到两者。CloudWatch 代理配置文件在 metrics 部分中包含一个 metrics_destinations 参数。您可以在此参数中指定 cloudwatchamp 或同时指定两者。

  • 版本 1.300031.0 及更高版本可用于启用 CloudWatch Application Signals。有关更多信息,请参阅 Application Signals

  • 版本 1.300025.0 及更高版本可以从 OpenTelemetryX-Ray 客户端开发工具包中收集跟踪数据,并将这些跟踪数据发送到 X-Ray。

    使用 CloudWatch 代理,您可以轻松收集跟踪,而无需运行单独的跟踪收集进程守护程序,这有助于减少运行和管理的代理数量。

发送到 CloudWatch 的指标可以像任何其他 CloudWatch 指标一样在 CloudWatch 中查看。CloudWatch 代理收集的指标的默认 CloudWatch 命名空间为 CWAgent,不过您可以在配置该代理时指定其他命名空间。

CloudWatch 代理采集的日志将在 Amazon CloudWatch Logs 中进行处理与存储,方式与旧版 CloudWatch Logs 代理一致。有关 CloudWatch Logs 定价的信息,请参阅 Amazon CloudWatch 定价

CloudWatch 代理收集的指标按自定义指标计费。有关 CloudWatch 指标定价的信息,请参阅 Amazon CloudWatch 定价

CloudWatch 代理是 MIT 许可证下的开源代理,并且托管在 GitHub 上。如果您想要构建、自定义或贡献 CloudWatch 代理,请参阅 GitHub 存储库以获取最新说明。如果您认为您发现了潜在的安全问题,请勿将其发布到 GitHub 或任何公共论坛上。请按照漏洞报告中的说明进行操作,或者直接向 Amazon 安全发送电子邮件

您可以使用命令行手动下载并安装 CloudWatch 代理,也可以将其与 Amazon Systems Manager 集成。安装 CloudWatch 代理的一般流程如下所示:

  1. 创建能使代理从服务器中采集指标且可选择与 Amazon Systems Manager 集成的 IAM 角色或用户。

  2. 下载代理软件包。

  3. 修改 CloudWatch 代理配置文件并指定要收集的指标。

  4. 在服务器上安装并启动代理。