Cloudwatch 输入插件
编辑Cloudwatch 输入插件
编辑对于其他版本,请参阅 版本化插件文档。
获取帮助
编辑有关插件的问题,请在 Discuss 论坛中发起主题。对于错误或功能请求,请在 Github 中提交问题。有关 Elastic 支持的插件列表,请参阅 Elastic 支持矩阵。
描述
编辑从 Amazon Web Services CloudWatch API 获取事件。
要使用此插件,您必须拥有一个 AWS 账户,以及以下策略
通常,您应该设置 IAM 策略,创建用户并将 IAM 策略应用于用户。EC2 指标的示例策略如下
{ "Version": "2012-10-17", "Statement": [ { "Sid": "Stmt1444715676000", "Effect": "Allow", "Action": [ "cloudwatch:GetMetricStatistics", "cloudwatch:ListMetrics" ], "Resource": "*" }, { "Sid": "Stmt1444716576170", "Effect": "Allow", "Action": [ "ec2:DescribeInstances" ], "Resource": "*" } ] }
有关设置 AWS 身份的更多详细信息,请参阅 http://aws.amazon.com/iam/。
配置示例
编辑input { cloudwatch { namespace => "AWS/EC2" metrics => [ "CPUUtilization" ] filters => { "tag:Group" => "API-Production" } region => "us-east-1" } }
input { cloudwatch { namespace => "AWS/EBS" metrics => ["VolumeQueueLength"] filters => { "tag:Monitoring" => "Yes" } region => "us-east-1" } }
input { cloudwatch { namespace => "AWS/RDS" metrics => ["CPUUtilization", "CPUCreditUsage"] filters => { "EngineName" => "mysql" } # Only supports EngineName, DatabaseClass and DBInstanceIdentifier region => "us-east-1" } }
input { cloudwatch { namespace => "sqlserver_test2" metrics => [ "Memory Available Bytes"] filters => { InstanceId => "i-xxxxxxxxxxx" objectname => "Memory" } combined => true interval => 600 period => 300 } }
Cloudwatch 输入配置选项
编辑此插件支持以下配置选项以及稍后描述的 常用选项。
设置 | 输入类型 | 必需 |
---|---|---|
否 |
||
否 |
||
否 |
||
否 |
||
请参阅 说明 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
另请参阅 常用选项,了解所有输入插件支持的选项列表。
access_key_id
编辑- 值类型为 字符串
- 此设置没有默认值。
此插件使用 AWS SDK 并支持多种获取凭据的方式,这些方式将按以下顺序尝试
- 静态配置,使用 logstash 插件配置中的
access_key_id
和secret_access_key
参数 - 由
aws_credentials_file
指定的外部凭据文件 - 环境变量
AWS_ACCESS_KEY_ID
和AWS_SECRET_ACCESS_KEY
- 环境变量
AMAZON_ACCESS_KEY_ID
和AMAZON_SECRET_ACCESS_KEY
- IAM 实例配置文件(在 EC2 内部运行时可用)
aws_credentials_file
编辑- 值类型为 字符串
- 此设置没有默认值。
包含 AWS 凭据哈希的 YAML 文件的路径。仅当未设置 access_key_id
和 secret_access_key
时才会加载此文件。文件内容应如下所示
:access_key_id: "12345" :secret_access_key: "54321"
endpoint
编辑- 值类型为 字符串
- 此设置没有默认值。
要连接到的端点。默认情况下,它是使用 region
的值构建的。这在连接到与 S3 兼容的服务时很有用,但请注意,这些服务不能保证与 AWS SDK 正确配合使用。
filters
编辑- 此设置可以是必需的或可选的。请参阅下面的说明。
- 值类型为 数组
- 此设置没有默认值。
当命名空间为 AWS/EC2
时,此设置是可选的。否则,此字段是必需的。
指定在获取资源时要应用的过滤器。遵循 AWS 约定
- 实例:{ instance-id ⇒ i-12344321 }
- 标签:{ "tag:Environment" ⇒ "Production" }
- 卷:{ attachment.status ⇒ attached }
每个命名空间都唯一支持某些维度。请查阅文档以确保您使用的是有效的过滤器。
interval
编辑- 值类型为 数字
- 默认值为
900
设置应查询 CloudWatch 的频率
默认值 900
表示每 15 分钟检查一次。将此值设置得太低(通常小于 300)会导致 CloudWatch 不返回任何指标。
metrics
编辑- 值类型为 数组
- 默认值为
["CPUUtilization", "DiskReadOps", "DiskWriteOps", "NetworkIn", "NetworkOut"]
指定要为命名空间获取的指标。默认值是 AWS/EC2 特定的。有关其他命名空间的可用指标,请参阅 http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/aws-namespaces.html。
namespace
编辑- 值类型为 字符串
- 默认值为
"AWS/EC2"
如果未定义,即使编解码器未使用,LogStash 也会报错。要获取的指标的服务命名空间。
默认值为 EC2 服务。有关有效值,请参阅 http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/aws-namespaces.html。
role_arn
编辑- 值类型为 字符串
- 此设置没有默认值。
要假设的 AWS IAM 角色(如果有)。这用于生成临时凭据,通常用于跨账户访问。有关更多信息,请参阅 AssumeRole API 文档。