search
数据采集 采集源配置 华为云云监控指标采集

华为云云监控指标采集

简介

使用华为云 Cloud Eye Service 提供的API采集华为云产品监控项数据.

前置条件

  • 已安装 DataKit(DataKit 安装文档
  • 需要有"只读访问云监控"权限的 Access Key ID 和 Access Key Secret(为了保证你的数据安全请不要使用超过只读权限的 Access Key ID 和 Access Key Secret)

配置

进入 DataKit 安装目录下的 conf.d/huaweiyun 目录,复制 huaweiyunces.conf.sample 并命名为 huaweiyunces.conf。示例如下: 配置好后,重启 DataKit 即可生效.

华为云各服务支持的监控指标请查阅 支持监控的服务列表

默认地,只需要配置 AK 和 SK 就可以进行采集,此时会采集所有项目下的所有可用指标,采集器会每隔 15 分钟重新获取可用指标,所以当你在华为云添加了新的资源时(比如添加了一台云服务器),不需要重新启动 DataKit。

[[inputs.huaweiyunces]]
# ##(required) 访问凭证
access_key_id = ''
access_key_secret = ''

# ##(optional) 采集间隔,默认5分钟
#interval = '5m'

# ##(optional) 云监控项数据可能在当前采集时间点之后才可用,配置此项用于获取该延迟时间段的数据,如果设置为0可能导致数据不完整。  
# ## 不同的指标可能有不同的延迟时间,默认为1分钟,该值应当小于采集间隔,可以根据使用中的实际采集情况调整该值。
#delay = '1m'

# ##(optional) 设置要采集的项目,如果不配置或为空,则会采集当前AK凭证下所有的项目。数组的每一项代表一个项目ID。
#projectids = [
#    '614439cb10ad4bdc9f3b0bc8xxx',
#    '214439cb10ad4bdc9f3b0bc8xxx'
#]

# ##(optional) 设置指标白名单,即需要采集的指标,如果不配置或为空,则会采集所有可用指标(通过 ListMetrics 接口返回的所有指标)。
# ##数组的每项为一个字符串,指定一个 namespace 以及该 namespace 下的各个指标名,以 ":" 分隔,左侧为 namespace,右侧为该 namespace 下的指标名,如果不指定指标名(此时可省略分隔符 ":"),则采集该 namespace 下的所有指标。
# metrics = [
#'SYS.ECS',    #采集 SYS.ECS 下的所有指标
#'SYS.OBS:download_bytes,upload_bytes', #只采集 SYS.OBS 下的 download_bytes 和 upload_bytes 这两个指标
# ]

# ##(optional) 指标黑名单,即排除不需要的指标,配置方式同上。
# exclude_metrics = [
#'SYS.ECS',    
#'SYS.OBS:download_bytes,upload_bytes',
# ]

# ##(optional) 自定义tags
#[inputs.huaweiyunces.tags]
#name1 = 'val1'
#name2 = 'val2'


# ##(optional) 如果想对特定指标设置特定的采集行为,可以使用 property 配置块,允许配置多个 property。
#[[inputs.huaweiyunces.property]]

# ##指定设置哪些指标的采集行为,指定一个 namespace 以及该 namespace 下的一个或多个指标名,以 ":" 分隔,左侧为 namespace,右侧为该 namespace 下的指标名,如果不指定指标名(此时可省略分隔符 ":"),则采集该 namespace 下的所有指标。
# ## 例1:metric = 'SYS.ECS' 表示对 SYS.ECS 下的所有指标使用当前采集行为
# ## 例2:metric = 'SYS.ECS:cpu_util' 表示仅对 SYS.ECS 下的 cpu_util 指标使用当前采集行为
#metric = 'SYS.ECS'

# ##(optional) 指定采集间隔
#interval = '10m'

# ##(optional) 不配置则使用全局的 delay 设置
#delay = '5m'

# ##(optional) 设置监控数据粒度
# ##支持: 1,实时数据; 300,5分钟粒度; 1200,20分钟粒度; 3600,1小时粒度; 14400,4小时粒度; 86400,1天粒度
# ##不同的指标有不同的采集粒度,请查阅华为云相关文档进行设置。
#period = 300

# ##(optional) 数据聚合方式: average, max, min, sum, variance(方差)
#filter = 'average'

# ##(optional) 设置指标维度
# ##默认地,对于一个指标会采集所有维度,比如对于 SYS.ECS 中的指标: cpu_util,默认会采集所有实例的指标数据,如果只想采集某个或若干个实例的指标数据,则可以 dimension 来配置。
# ##每项为一个字符串,代表一个维度,格式为 key,value。例如: instance_id,6f3c6f91-4b24-4e1b-b7d1-a94ac1cbxxx
# ##各服务资源的指标维度名称可查看: https://support.huaweicloud.com/usermanual-ces/zh-cn_topic_0202622212.html
#dimension = [
#     'instance_id,694244a4-659e-4931-8e72-9e90993xxxx'
#     'instance_id,23534b91-659e-a304-7189-70a2311xxxx'
#]

注意:如果采集的指标过多或频率过大, 导致对华为云的 API 请求过于频繁, 会触发流控限制(DataKit 日志文件中会记录这种接口调用错误), 此时可以向华为云提交工单以适当提高 API 流控阈值。

采集指标

指标集名称:"huaweiyunces + {namespace}",如 huaweiyunces_sys.ecs

fields:

field名采用"指标+指标值聚合方法"的命名规则,如果采集 cpu_util 指标时使用的聚合方式为 min, 则会有如下的指标: cpu_util_min=3.14

tags:

名称 描述
project_id 项目ID
region 区域
unit 指标值的单位
指标数据对应的维度 不同服务有不同的指标维度,对于弹性云服务器(SYS.ECS),会有以下形式的tag值: instance_id=3e8a9726-c1db-4422-9494-e3bxxxx
custom tags 配置文件中的自定义tag

采集结果示例:

huaweiyunces_sys.ecs,instance_id=b5d7b7a3-681d-4c08-8e32-xxxx,project_id=62e4e22d25f844fd9a71fe4862exxxx,region=cn-north-4,unit=% cpu_util_min=0.41 1598431258094416900