search
数据采集 采集源配置 阿里云日志服务(SLS)数据采集

阿里云日志服务(SLS)数据采集

简介

采集器通过消费组消费日志数据, 将日志数据上报报到 DataFlux 中.

前置条件

  • 已安装 DataKit(DataKit 安装文档
  • 需要有阿里云权限 AliyunLogFullAccess 的 Access Key ID 和 Access Key Secret(为了保证你的数据安全,建议使用子用户授权,请不要使用超过只读权限的 Access Key ID 和 Access Key Secret)
  • 阿里云账号开通了日志服务,以及创建了相应的LogProject和LogStore

配置

进入 DataKit 安装目录下的 conf.d/aliyun 目录,复制 aliyunlog.conf.sample 并命名为 aliyunlog.conf。示例如下:

[[inputs.aliyunlog]]
# ##(required)
endpoint = ''
access_key_id = ''
access_key_secret = ''

[[inputs.aliyunlog.projects]]
# ##(required) 日志服务项目名称 
name = ''

[[inputs.aliyunlog.projects.stores]]
# ##(required) 日志库名称
name = ''

# ##(optional) 指标集名称, 默认使用 'aliyunlog_{store-name}' 
#metric_name = ''

# ##(optional) 指定当前日志库的消费组名称以及消费数据客户端名称.
# ## consumer_group_name 默认使用 'datakit'
# ## consumer_name 默认使用 'datakit_{datakit-uuid}'
# ## 关于消费组的更多概念: https://help.aliyun.com/document_detail/28998.html
consumer_group_name = ''
consumer_name = ''

# ##(optional) 日志内容是一系列键值对,默认都作为field. 通过 tags 指定哪些作为tag, 格式: key[:[*][:{alias}]]
# ##指定 status_code 和 protocol 作为tag: tags = ["status_code","protocol"]
# ##status_code同时作为tag和field: tags = ["status_code:*", "protocol"]
# ##status_code同时为tag和field, 作为tag时设置别名为status: tags = ["status_code:*:status"]
#tags = []

# # ##(optional) 设置field的类型, 支持float和int.
# # ##eg., fields = ["int:status,request_length", "float:cpuUsage"]
#fields = []

配置好后,重启 DataKit 即可生效

采集日志

阿里云日志服务中的每条日志内容部分由一个或多个内容项组成,每一个内容项为一个 Key-Value 对,这些 K-V 对将转化为每条指标的 fields 或 tags,在配置文件中可以指定哪些作为 fields 或 tags。