FileBeatyml配置文件-常用参数详解
FileBeatyml配置⽂件-常⽤参数详解
#filebeat 5.2.2
#prospector(input)段配置
filebeat.prospectors: #每⼀个prospectors,起始于⼀个破折号"-"
- input_type: log #默认log,从⽇志⽂件读取每⼀⾏。stdin,从标准输⼊读取
paths: #⽇志⽂件路径列表,可⽤通配符,不递归
- /var/log/*.log
encoding: plain #编码,默认⽆,plain(不验证或者改变任何输⼊), latin1, utf-8, utf-16be-bom, utf-16be, utf-16le, big5, gb18030, gbk, hz-gb-2312, euc-kr, euc-jp, iso-2022-jp, shift-jis include_lines: ['^ERR', '^WARN'] #匹配⾏,后接⼀个正则表达式列表,默认⽆,如果启⽤,则filebeat只输出匹配⾏,如果同时指定了多⾏匹配,仍会按照include_lines做过滤exclude_lines: ["^DBG"] #排除⾏,后接⼀个正则表达式的列表,默认⽆
exclude_files: [".gz$"] #排除⽂件,后接⼀个正则表达式的列表,默认⽆
ignore_older: 0 #排除更改时间超过定义的⽂件,时间字符串可以⽤2h表⽰2⼩时,5m表⽰5分钟,默认0
document_type: log #该type会被添加到type字段,对于输出到ES来说,这个输⼊时的type字段会被存储,默认log
scan_frequency: 10s #prospector扫描新⽂件的时间间隔,默认10秒
max_bytes: 10485760 #单⽂件最⼤收集的字节数,单⽂件超过此字节数后的字节将被丢弃,默认10MB,需要增⼤,保持与⽇志输出配置的单⽂件最⼤值⼀致即可
multiline.pattern: ^\[ #多⾏匹配模式,后接正则表达式,默认⽆
multiline.match: after #定义多⾏内容被添加到模式匹配⾏之后还是之前,默认⽆,可以被设置为after或者before
multiline.max_lines: 500 #单⼀多⾏匹配聚合的最⼤⾏数,超过定义⾏数后的⾏会被丢弃,默认500
multiline.timeout: 5s #多⾏匹配超时时间,超过超时时间后的当前多⾏匹配事件将停⽌并发送,然后开始⼀个新的多⾏匹配事件,默认5秒
tail_files: false #可以配置为true和false。配置为true时,filebeat将从新⽂件的最后位置开始读取,如果配合⽇志轮循使⽤,新⽂件的第⼀⾏将被跳过
close_renamed: false #当⽂件被重命名或被轮询时关闭重命名的⽂件处理。注意:潜在的数据丢失。请务必阅读并理解此选项的⽂档。默认false小学生的菜谱
close_removed: true #如果⽂件不存在,⽴即关闭⽂件处理。如果后⾯⽂件⼜出现了,会在scan_frequency之后继续从最后⼀个已知position处开始收集,默认true
enabled: true #每个prospectors的开关,默认true
#filebeat全局配置
filebeat.spool_size: 2048 #后台事件计数阈值,超过后强制发送,默认2048
filebeat.idle_timeout: 5s #后台刷新超时时间,超过定义时间后强制发送,不管spool_size是否达到,默认5秒
#通⽤配置段
name: #配置发送者名称,如果不配置则使⽤hostname
tags: ["service-X", "web-tier"] #标记tag,可⽤于分组
fields: #添加附件字段,可以使values,arrays,dictionaries或者任何嵌套数据
env: staging
queue_size: 1000 #处理管道中单个事件内的队列⼤⼩,默认1000
max_procs: #设置最⼤CPU数,默认为CPU核数
#processors配置段
#Outputs配置段
output.elasticsearch: #elasticsearch输出模块
enabled: true #启⽤模块
hosts: ["localhost:9200"] #ES地址
compression_level: 0 #gzip压缩级别,默认0,不压缩,压缩耗CPU
worker: 1 #每个ES的worker数,默认1
index: "filebeat-%{+yyyy.MM.dd}" #可选配置,ES索引名称,默认filebeat-%{+yyyy.MM.dd}
pipeline: "" #可选配置,输出到ES接收节点的pipeline,默认⽆
path: "/elasticsearch" #可选的,HTTP路径,默认⽆
proxy_url: proxy:3128 #http代理服务器地址,默认⽆
max_retries: 3 #ES重试次数,默认3次,超过3次后,当前事件将被丢弃
bulk_max_size: 50 #对⼀个单独的ES批量API索引请求的最⼤事件数默认50
timeout: 90 #到ES的http请求超时时间默认90秒
output.logstash: #logstash输出模块
enabled: true #启⽤模块
hosts: ["localhost:5044"] #logstash地址
worker: 1 #每个logstash的worker数,默认1
compression_level: 3 #压缩级别,默认3
loadbalance: true #负载均衡开关,在不同的logstash间负载
少数民族风俗pipelining: 0 #在处理新的批量期间,异步发送⾄logstash的批量次数
index: 'filebeat' #可选配置,索引名称,默认为filebeat
proxy_url: socks5://user:password@socks5-server:2233 #socks5代理服务器地址
proxy_use_local_resolver: false #使⽤代理时是否使⽤本地解析,默认false
output.kafka: #kafka输出模块
enabled: true #启⽤模块
hosts: ["localhost:6379"] #redis地址,地址为⼀个列表,如果loadbalance开启,则负载到⾥表中的服务器,当⼀个redis服务器不可达,事件将被分发到可到达的redis服务器
port: 6379 #redis端⼝,如果hosts内未包含端⼝信息,默认6379
key: filebeat #事件发布到redis的list或channel,默认filebeat
password: #redis密码,默认⽆
db: 0 #redis的db值,默认0
datatype: list #发布事件使⽤的redis数据类型,如果为list,使⽤RPUSH命令(⽣产消费模式)。如果为channel,使⽤PUBLISH命令{发布订阅模式}。默认为list
worker: 1 #为每个redis服务器启动的⼯作进程数,会根据负载均衡配置递增
loadbalance: true #负载均衡,默认开启
timeout: 5s #redis连接超时时间,默认5s
max_retries: 3 #filebeat会忽略此设置,并⼀直重试到全部发送为⽌,其他beat设置为0即忽略,默认3次
bulk_max_size: 2048 ##对⼀个redis请求或管道批量的最⼤事件数,默认2048
proxy_url: #socks5代理地址,必须使⽤
proxy_use_local_resolver: false #使⽤代理时是否使⽤本地解析,默认false
#Paths配置段
path.home: #主⽬录,filebeat安装⽬录,为其他所有path配置的默认基本路径,默认为filebeat⼆进制⽂件的本地⽬录
家⽬录
path.data: ${path.home}/data #filebeat数据存储路径,默认在filebeat家⽬录下
path.logs: ${path.home}/logs #filebeat⽇志存储路径,默认在filebeat家⽬录下
#logging配置段
#有3个可配置的filebeat⽇志输出选项:syslog,file,stderr
#windows默认输出到file
logging.level: info #设定⽇志级别,可设置级别有critical, error, warning, info, debug
logging.selectors: [ ] #开启debug输出的选择组件,开启所有选择使⽤["*"],其他可⽤选择为"beat","publish","service"
端午节手抄报内容文字
<_syslog: true #输出所有⽇志到syslog,默认为false
<_files: true #输出所有⽇志到file,默认true
logging.files: #⽇志输出的⽂件配置
path: /var/log/filebeat #配置⽇志输出路径,默认在家⽬录的logs⽬录证券资格考试报名
name: filebeat #⽇志⽂件名
rotateeverybytes: 10485760 #⽇志轮循⼤⼩,默认10MB
keepfiles: 7 #⽇志轮循⽂件保存数量,默认7
#harvester收割者
#负责读取每个⽂件的内容,收割者⼀⾏⼀⾏的读取每个⽂件并发送内容到output,收割者负责打开和关闭⽂件
国家建造师#prospector勘探者
#负责管理收割者和查所有读取源。⽬前勘探者⽀持两个勘探类型,log和stdin,每个勘探类型可以被定义多次。龙勘探者检查每个⽂件来看是否需要打开⼀个收割者或收割者是否在运⾏,诱惑是否忽
略这个⽂件
#filebeat如何保持⽂件状态?
#filebeat保持每个⽂件的状态并频繁刷新状态到磁盘上的注册⽂件
#状态⽤于记忆收割者读取的最后⼀个偏移量并确保所有的⽇志⾏被发送
#如果⼀个es或logstash的输出不可达时,filebeat将持续追踪发送的最后⼀样并继续读取⽂件,尽快可以变为可⽤的输出
#当filebeat运⾏时,状态信息将被每个勘探者保存在内存中
#当filebeat被重启,会使⽤注册⽂件读取数据重建状态,并且让每个收割者从⼀直的最后位置开始
#每个勘探者为他发现的每个⽂件保持⼀个状态,因为⽂件可能被删除或移动,⽂件名和路径不⾜以确定⼀个⽂件
#registry记录内容如下
[root@jenkins data]# cat registry
[{"source":"/var/log/messages","offset":5912,"FileStateOS":{"inode":38382035,"device":64768},"timestamp":"2017-03-13T18:17:54.39159179+08:00","ttl":-1}]
[root@jenkins data]# stat /var/log/messages
File: ‘/var/log/messages’
Size: 5912 Blocks: 16 IO Block: 4096 regular file
Device: fd00h/64768d Inode: 38382035 Links: 1
Access: (0600/-rw-------) Uid: ( 0/ root) Gid: ( 0/ root)
Context: system_u:object_r:var_log_t:s0
Access: 2017-03-13 18:17:49.355444251 +0800
Modify: 2017-03-13 18:15:22.452429796 +0800
Change: 2017-03-13 18:15:22.452429796 +0800
Birth: -
#ate和match组合
negate match
false after 连续匹配的⾏将被添加到前⼀个不匹配的⾏
false before 连续匹配的⾏将被预合并到后⼀个不匹配的⾏
true after 连续不匹配的⾏将被添加到前⼀个匹配的⾏
true before 连续不匹配的⾏将被预合并到后⼀个匹配的⾏
#注意:istry_file,由于此配置是filebeat的全局配置,所以如果需要分开存储registry_file则必须拆分filebeat配置⽂件和进程。
#⽽logstash的sincedb配置是input.file段配置,每个input可以单独指定sincedb
#注意:如果如果dis的datatype使⽤list,redis在没有阻塞的情况下是看不到该list的
伊季高

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。