demo例子:
- type: log
paths:
- /home/testlog/*.log
multiline:
pattern: ^.*
negate: true
match: after
close_eof: false
encoding: plain
exclude_files: ['(?:.gz|.err|err(?:or)?.log)$', 'example']
scan_frequency: 1s
fields:
ip: 127.0.0.1
kfk-topic: kfk_demo
extra:
extratag:
service: demo
group: demo
tail_files: true
symlinks: false
ignore_older: 36h
clean_inactive: 48h
include_lines优先于exclude_lines执行;
encoding,采集中文字符,则需填gbk;默认plain;支持utf8
harvester_buffer_size:单个采集器每次读取文件所占用的buffer大小,默认16kb(16384);
max_bytes:单条日志信息最大的字节数限制,默认10M(10485760),超过部分会被丢弃;
multiline:多行合并;
exclude_files:排除某些文件;默认无文件排除;
ignore_older:文件修改时间比当前时间 间隔超过该值,文件就会被忽略。ignore_older>close_inactive
注意:ignore_older需要大于close_inactive,确保一个正在采集的文件不会被忽略;被忽略之前,文件一定是closed的状态。
如果文件正在被采集,却也falls under ignore_older,即由于设置ingored_older不合理,导致满足了ingored_older的条件,采集器也会先继续采集完,等close之后才会忽略此文件。
close_*
用来关闭采集器的。队列满了或者是其他输出下游问题阻塞,本应该closed的文件将会仍保持open。
close_inactive