数据采集 采集源配置 阿里云对象采集
阿里云对象采集
简介
调用阿里云ECS/OSS/RDS/SLB 列表API 采集阿里云对象相关数据上报报到 DataFlux 中
前置条件
- 已安装 DataKit(DataKit 安装文档)
- 需要有阿里云帐号只读权限的 Access Key ID 和 Access Key Secret(为了保证你的数据安全,建议使用子用户授权,请不要使用超过只读权限的 Access Key ID 和 Access Key Secret)
配置
打开 DataKit 采集源配置文件夹(默认路径为 DataKit 安装目录的 conf.d
文件夹),进入 DataKit 安装目录下的 conf.d/aliyun 目录,复制 aliyunobject.conf.sample 并命名为 aliyunobject.conf。示例如下:
设置:
#[[inputs.aliyunobject]]
# ## @param - aliyun authorization informations - string - required
# region_id = ''
# access_key_id = ''
# access_key_secret = ''
# ## @param - collection interval - string - optional - default: 5m
# interval = '5m'
# ##(optional)
#[inputs.aliyunobject.ecs]
# ##(optional) ignore this object, default is false
#disable = false
# ##(optional) pipeline script path
#pipeline = "aliyun_ecs.p"
# ##(optional) list of ecs instanceid
#instanceids = ['']
# ##(optional) list of excluded ecs instanceid
#exclude_instanceids = ['']
# ##(optional)
#[inputs.aliyunobject.slb]
# ##(optional) ignore this object, default is false
#disable = false
# ##(optional) pipeline script path
#pipeline = "aliyun_slb.p"
# ##(optional) list of slb instanceid
#instanceids = ['']
# ##(optional) list of excluded slb instanceid
#exclude_instanceids = ['']
# ##(optional)
#[inputs.aliyunobject.oss]
# ##(optional) ignore this object, default is false
#disable = false
# ##(optional) pipeline script path
#pipeline = "aliyun_oss.p"
# ##(optional) list of oss buckets
#buckets = []
# ##(optional) list of excluded oss instanceid
#exclude_buckets = []
# ##(optional)
#[inputs.aliyunobject.rds]
# ##(optional) ignore this object, default is false
#disable = false
# ##(optional) pipeline script path
#pipeline = "aliyun_rds.p"
# ##(optional) list of rds instanceid
#db_instanceids = []
# ##(optional) list of excluded rds instanceid
#exclude_db_instanceids = []
# ##(optional)
#[inputs.aliyunobject.redis]
# ##(optional) ignore this object, default is false
#disable = false
# ##(optional) pipeline script path
#pipeline = "aliyun_redis.p"
# ##(optional) list of redis instanceid
#instanceids = []
# ##(optional) list of excluded redis instanceid
#exclude_instanceids = []
# ## @param - custom tags for redis object - [list of key:value element] - optional
# ##(optional)
#[inputs.aliyunobject.cdn]
# ##(optional) ignore this object, default is false
#disable = false
# ##(optional) pipeline script path
#pipeline = "aliyun_cdn.p"
# ##(optional) list of cdn DomainName
#domainNames = []
# ##(optional) list of excluded cdn exclude_domainNames
#exclude_domainNames = []
# ##(optional)
#[inputs.aliyunobject.waf]
# ##(optional) ignore this object, default is false
#disable = false
# ##(optional) pipeline script path
#pipeline = "aliyun_waf.p"
# ## @param - custom tags for waf object - [list of key:value element] - optional
# ##(optional)
#[inputs.aliyunobject.elasticsearch]
# ##(optional) ignore this object, default is false
#disable = false
# ##(optional) pipeline script path
#pipeline = "aliyun_elasticsearch.p"
# ##(optional) list of elasticsearch instanceid
#instanceids = []
# ##(optional) list of excluded elasticsearch instanceid
#exclude_instanceids = []
# ##(optional)
#[inputs.aliyunobject.influxdb]
# ##(optional) ignore this object, default is false
#disable = false
# ##(optional) pipeline script path
#pipeline = "aliyun_influxdb.p"
# ##(optional) list of influxdb instanceid
#instanceids = []
# ##(optional) list of excluded influxdb instanceid
#exclude_instanceids = []
# ##(optional)
#[inputs.aliyunobject.rocketmq]
# ##(optional) ignore this object, default is false
#disable = false
# ##(optional) pipeline script path
#pipeline = "aliyun_rocketmq.p"
# ##(optional) list of rocketmq instanceid
#instanceids = []
# ##(optional) list of excluded rocketmq instanceid
#exclude_instanceids = []
# ##(optional)
#[inputs.aliyunobject.domain]
# ##(optional) ignore this object, default is false
#disable = false
# ##(optional) pipeline script path
#pipeline = "aliyun_domain.p"
# ##(optional) list of Domain instanceid
#instanceids = []
# ##(optional) list of excluded Domain instanceid
#exclude_instanceids = []
# ##(optional)
#[inputs.aliyunobject.mongodb]
# ##(optional) ignore this object, default is false
#disable = false
# ##(optional) pipeline script path
#pipeline = "aliyun_mongodb.p"
# ##(optional) list of mongodb instanceid
#db_instanceids = []
# ##(optional) list of excluded mongodb instanceid
#exclude_db_instanceids = []
注意:数据采集的间隔不宜过小,采集请求过于频繁会导致触发阿里云 API 请求的流控限制。采集频率如果设置为 0 表示不采集该类型的费用数据
由于对象可以通过pipeline提取对应需求的字段,此文档中只介绍官方必有字段值
配置好后,重启 DataKit 即可生效
对象分类--ECS
api: DescribeInstances
字段
FieldKey | 描述 | 类型 |
---|---|---|
name | instName(instID) | string |
class | 分类: aliyun_ecs | string |
message | 每个实例对象的详细信息 | json string |
对象分类--RDS
api: DescribeDBInstances
字段
FieldKey | 描述 | 类型 |
---|---|---|
name | dbinstDespt_dbinstID | string |
class | 分类: aliyun_rds | string |
message | 每个实例对象的详细信息 | json string |
对象分类--OSS
api: GetBucket (ListObjects)
字段
FieldKey | 描述 | 类型 |
---|---|---|
name | oss bucket 名称,如 OSS_xxx | string |
class | 分类: aliyun_oss | string |
message | 每个bucket的详细信息 | json string |
对象分类--SLB
api: DescribeLoadBalancers
字段
FieldKey | 描述 | 类型 |
---|---|---|
name | LoadBalancerName_LoadBalancerId | string |
class | 分类: aliyun_slb | string |
message | 每个实例对象的详细信息 | json string |
对象分类--阿里云 REDIS
api: DescribeLoadBalancers
字段
FieldKey | 描述 | 类型 |
---|---|---|
name | InstanceName_InstanceId | string |
class | 分类: aliyun_redis | string |
message | 每个实例对象的详细信息 | json string |
对象分类--阿里云 WAF
api: DescribeInstanceInfo
字段
FieldKey | 描述 | 类型 |
---|---|---|
name | InstanceId | string |
class | 分类: aliyun_waf | string |
message | 每个实例对象的详细信息 | json string |
对象分类--阿里云 CDN
api: DescribeUserDomains
字段
FieldKey | 描述 | 类型 |
---|---|---|
name | DomainName | string |
class | 分类: aliyun_cdn | string |
message | 每个实例对象的详细信息 | json string |
对象分类--阿里云 Elasticsearch
api: ListInstance
字段
FieldKey | 描述 | 类型 |
---|---|---|
name | Description_InstanceId | string |
class | 分类: aliyun_elasticsearch | string |
message | 每个实例对象的详细信息 | json string |
对象分类--阿里云 InfluxDB
api: DescribeHiTSDBInstanceList
字段
FieldKey | 描述 | 类型 |
---|---|---|
name | InstanceAlias_InstanceId | string |
class | 分类: aliyun_influxdb | string |
message | 每个实例对象的详细信息 | json string |
对象分类--阿里云 RocketMQ
api: OnsInstanceInServiceList
字段
FieldKey | 描述 | 类型 |
---|---|---|
name | Description_InstanceId | string |
class | 分类: aliyun_rocketmq | string |
message | 每个实例对象的详细信息 | json string |
对象分类--阿里云域名
api: QueryDomainList
字段
FieldKey | 描述 | 类型 |
---|---|---|
name | Domain_InstanceId | string |
class | 分类: aliyun_domain | string |
message | 每个实例对象的详细信息 | json string |
对象分类--阿里云 MongoDB
api: DescribeDBInstances
字段
FieldKey | 描述 | 类型 |
---|---|---|
name | DBInstanceDescription_DBInstanceId | string |
class | 分类: aliyun_mongodb | string |
message | 每个实例对象的详细信息 | json string |