Amazon CloudWatch Metric Streams 输入插件
此插件监听 Cloudwatch 指标流通过 HTTP 发送的指标,并实现所需的 响应规范。
使用此插件可能会产生费用,请参阅 CloudWatch 定价中的指标流示例。
引入于: Telegraf v1.24.0 标签: cloud 操作系统支持: all
服务输入
此插件是服务输入。普通插件收集由 interval 设置确定的指标。服务插件启动一个服务来监听并等待指标或事件发生。服务插件与普通插件的两个主要区别是:
- 全局或插件特定的
interval设置可能不适用 --test、--test-wait和--once的 CLI 选项可能不会为此插件生成输出
全局配置选项
插件支持其他全局和插件配置设置,用于修改指标、标签和字段,创建别名以及配置插件顺序等任务。更多详情请参阅 CONFIGURATION.md。
配置
# AWS Metric Streams listener
[[inputs.cloudwatch_metric_streams]]
## Address and port to host HTTP listener on
service_address = ":443"
## Paths to listen to.
# paths = ["/telegraf"]
## maximum duration before timing out read of the request
# read_timeout = "10s"
## maximum duration before timing out write of the response
# write_timeout = "10s"
## Maximum allowed http request body size in bytes.
## 0 means to use the default of 524,288,000 bytes (500 mebibytes)
# max_body_size = "500MB"
## Optional access key for Firehose security.
# access_key = "test-key"
## An optional flag to keep Metric Streams metrics compatible with
## CloudWatch's API naming
# api_compatability = false
## Set one or more allowed client CA certificate file names to
## enable mutually authenticated TLS connections
# tls_allowed_cacerts = ["/etc/telegraf/clientca.pem"]
## Add service certificate and key
# tls_cert = "/etc/telegraf/cert.pem"
# tls_key = "/etc/telegraf/key.pem"故障排除
插件有自己的内部指标用于故障排除
- 请求已收到
- 监听器收到的请求数量。
- 写入已处理
- 监听器处理的写入数量。
- 无效请求
- 无效请求的数量,按错误代码作为标签进行分隔。
- 请求时间
- 以 ns 为单位测量的请求持续时间。
- 最大年龄
- 在此间隔内指标的最大年龄。这对于抵消基于时间戳的指标管道中的任何滞后或延迟测量非常有用。
- 最小年龄
- 此间隔内指标的最小年龄。
特定的错误将被记录,并且错误将返回给 AWS。
有关更多帮助,请查看 Firehose 故障排除页面。
Metrics
AWS 发送的指标是 Base64 编码的 JSON 数据块。下面的 JSON 块是 record 的 data 字段中的 Base64 解码数据。每个 record 的每个 data 字段可以包含多个 JSON 块,并且每个 record 可以包含多个 record 字段。
解码后的指标可能如下所示
{
"metric_stream_name": "sandbox-dev-cloudwatch-metric-stream",
"account_id": "541737779709",
"region": "us-west-2",
"namespace": "AWS/EC2",
"metric_name": "CPUUtilization",
"dimensions": {
"InstanceId": "i-0efc7ghy09c123428"
},
"timestamp": 1651679580000,
"value": {
"max": 10.011666666666667,
"min": 10.011666666666667,
"sum": 10.011666666666667,
"count": 1
},
"unit": "Percent"
}标签
dimensions 列表中的所有标签都将作为标签添加到指标中。
account_id 和 region 标签也会添加到每个指标中。
测量和字段
指标名称是 namespace 和 metric_name 的组合,用 _ 分隔并小写。
字段是 value 列表中的每个聚合。
这些字段可选地重命名,以匹配 CloudWatch API,从而更容易从 API 过渡到 Metric Streams。这依赖于在配置中设置 api_compatability 标志。
应用的戳是指标中的戳,由于 CloudWatch 延迟,通常比处理时间晚 3-5 分钟。
示例输出
基于上述 JSON 和兼容性标志的示例输出是
标准 Metric Streams 格式
aws_ec2_cpuutilization,accountId=541737779709,region=us-west-2,InstanceId=i-0efc7ghy09c123428 max=10.011666666666667,min=10.011666666666667,sum=10.011666666666667,count=1 1651679580000API 兼容格式
aws_ec2_cpuutilization,accountId=541737779709,region=us-west-2,InstanceId=i-0efc7ghy09c123428 maximum=10.011666666666667,minimum=10.011666666666667,sum=10.011666666666667,samplecount=1 1651679580000此页面是否有帮助?
感谢您的反馈!
支持和反馈
感谢您成为我们社区的一员!我们欢迎并鼓励您对 Telegraf 和本文档提出反馈和 bug 报告。要获取支持,请使用以下资源
具有年度合同或支持合同的客户可以 联系 InfluxData 支持。