Amazon CloudWatch
用户指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

使用 collectd 检索自定义指标

您可以将 CloudWatch 代理和 collectd 协议结合使用从应用程序或服务中检索自定义指标。collectd 仅在 Linux 服务器上受支持。您可以使用 collectd 软件将指标发送到 CloudWatch 代理。对于 collectd 指标,CloudWatch 代理充当服务器,而 collectd 插件充当客户端。

collectd 软件不会自动安装在每个服务器上。有关更多信息,请参阅 collectd 的下载页

要收集这些自定义指标,请将 "collectd": {} 行添加到代理配置文件的 metrics_collected 部分。您可以手动添加此行。如果您使用向导创建配置文件,向导会为您完成此操作。有关更多信息,请参阅创建 CloudWatch 代理配置文件

还将提供可选参数。如果您使用的是 collectd 并且未将 /etc/collectd/auth_file 用作 collectd_auth_file,则必须设置其中一些选项。

  • service_address:CloudWatch 代理应该侦听的服务地址。格式为 "udp://ip:port。默认为 udp://127.0.0.1:25826

  • name_prefix:附加到每个 collectd 指标名称开头的前缀。默认为 collectd_。最大长度为 255 个字符。

  • collectd_security_level:设置网络通信的安全级别。默认值为 encrypt (加密)

    encrypt (加密) 指定只接受加密的数据。sign (签名) 指定只接受已签名且加密的数据。none (无) 指定接受所有数据。如果为 collectd_auth_file 指定值,则会尽可能解密加密数据。

    有关更多信息,请参阅 collectd Wiki 中的客户端设置可能的交互

  • collectd_auth_file 设置用户名映射到密码的文件。这些密码用于验证签名和解密已加密的网络数据包。如果给定,则会验证签名的数据并解密加密的数据包。否则,会接受签名的数据而不检查签名,并且加密的数据不能被解密。

    默认为 /etc/collectd/auth_file

    如果 collectd_security_level 设置为 none (无),则这是可选的。如果将 collectd_security_level 设置为 encryptsign (签名),则必须指定 collectd_auth_file

    对于身份验证文件的格式,每行是一个用户名,后跟一个冒号和任意数量的空格,再后跟密码。例如:

    user1: user1_password

    user2: user2_password

  • collectd_typesdb:包含数据集描述的一个或多个文件的列表。即使列表中只有一个条目,列表也必须用括号括起来。列表中的每个条目都必须用双引号括起来。如果有多个条目,请用逗号分隔。默认为 ["/usr/share/collectd/types.db"]。有关更多信息,请参阅https://collectd.org/documentation/manpages/types.db.5.shtml

  • metrics_aggregation_interval: CloudWatch 将指标聚合为单个数据点的频率(秒)。默认值为 60 秒。范围为 0 至 172,000。将它设置为 0 会禁用 collectd 指标的聚合。

下面是代理配置文件的 collectd 部分的示例。

{ "metrics":{ "metrics_collected":{ "collectd":{ "name_prefix":"My_collectd_metrics_", "metrics_aggregation_interval":120 } } } }