通过采集器YML配置,您可以根据需求修改对应的配置,并启用该配置,完成数据采集任务。本文介绍采集器YML文件的配置方法和配置参数详情。
前提条件
创建阿里云Elasticsearch实例,并开启实例的自动创建索引功能。创建实例的具体步骤请参见创建阿里云Elasticsearch实例。
出于安全考虑,阿里云Elasticsearch默认不允许自动创建索引。但是Beats目前依赖该功能,因此如果采集器Output选择为Elasticsearch,需要开启自动创建索引功能,详情请参见配置YML参数。
metricbeat.modules:
- module: system
metricsets: ["diskio","network"]
diskio.include_devices: []
period: 1s
Filebeat配置
filebeat.inputs
,来决定如何查找或处理输入数据源。简单的input配置如下。filebeat.inputs:
- type: log
enabled: true
paths:
- /opt/test/logs/t1.log
- /opt/test/logs/t2/*
fields:
alilogtype: usercenter_serverlog
- 如果在采集ECS服务日志时,指定了采集器Output,那么不需要再在采集器YML配置中单独设置Output,否则会提示ECS采集器安装错误。
- 每个输入源都以
-
开头,可以指定多个-
,代表多个输入源。
配置 | 说明 |
---|---|
type |
输入类型。默认是log类型,同时还支持stdin 、redis 、tcp 和syslog 等类型。
|
paths |
指定要监控的日志。可以指定具体的文件或者目录,例如/log/nginx.log 或者log/* 。指定的文件或目录会被映射进Docker目录中。
注意 指定目录需要指定为
/* 这种模糊匹配,且确保目录下的文件类型和采集的类型一致。
|
enabled |
设置配置是否生效:
|
fields |
指定可选字段。在该字段下,空格缩进两格填写需要添加的字段。例如,设置为alilogtype: usercenter_serverlog ,表示在输出的每条日志中加入该字段,用于标识该日志源的类别,在传输到下一层Logstash时,可以根据该字段类别对日志进行分类处理。
|
更多配置详情请参见官方Log input文档。
Metricbeat配置
metricbeat.modules
,来指定module
配置。metricbeat.modules:
- module: system
metricsets: ["diskio","network"]
enabled: true
hosts: ["http://XX.XX.XX.XX/"]
period: 10s
fields:
dc: west
tags: ["tag"]
配置 | 说明 |
---|---|
module |
要运行的模块的名称。支持的模块及相关说明请参见Modules。 |
metricsets |
指定要执行的metricsets列表。更多metricsets列表请参见Modules。 |
enabled |
设置配置是否生效。true 表示生效,false 表示不生效。
|
period |
metricsets执行的频率。如果无法访问系统,metricbeat将为每个时间段返回一个错误信息。 |
hosts |
可选,获取主机列表信息。 |
fields |
指定可选字段。与metricset事件一起发送的字段。 |
tags |
可选,与metricset一起发送的tag列表。 |
更多配置详情请参见官方Metricbeat配置文档。
Heartbeat配置
Heartbeat能够以一种轻量型的方式,安装在远程服务器,定期检查服务的状态并确定是否可用。与Metricbeat不同,Metricbeat检测服务是启动还是关闭状态,Heartbeat检测服务是否可访问。
heartbeat.monitors
,来指定监控的服务。
heartbeat.monitors:
- type: http
name: ecs_monitor
enabled: true
urls: ["http://localhost:9200"]
schedule: '@every 5s'
fields:
dc: west
配置 | 说明 |
---|---|
type |
monitor类型。支持icmp 、tcp 、http 。
|
name |
monitor名称。该值显示在monitor字段下的Exported fields中,作为job name,type 字段作为job type。
|
enabled |
设置配置是否生效。true 表示生效,false 表示不生效。
|
urls |
可选,用来连通的服务器列表。 |
schedule |
指定任务计划。设置为@every 5s ,表示从启动Heartbeat开始,每5秒运行一次任务;设置为*/5 * * * * * * ,表示每5秒运行一次任务。
|
fields |
指定可选字段。将该字段添加到output中,作为附加信息。 |
更多配置详情请参见官方Heartbeat配置文档。
Auditbeat配置
service auditd status
命令查看)。
通过在auditbeat.yml中指定auditbeat.modules
,来配置Auditbeat采集器。auditbeat.yml主要分为两部分,一部分为模块,另一部分为输出。 启用特定模块,需要在auditbeat.yml中添加特定参数,如下示例展示auditd
和file_integrity
配置。
auditbeat.modules:
- module: auditd
audit_rules: |
-w /etc/passwd -p wa -k identity
-a always,exit -F arch=b32 -S open,create,truncate,ftruncate,openat,open_by_handle_at -F exit=-EPERM -k access
- module: file_integrity
paths:
- /bin
- /usr/bin
- /sbin
- /usr/sbin
- /etc
更多auditbeat.yml配置说明请参见官方Auditbeat配置文档;配置模块(module
)详情请参见Modules。