paths:指定要监控的日志,目前按照Go语言的glob函数处理。
encoding:指定被监控的文件的编码类型,使用plain和utf-8都是可以处理中文日志的。
input_type:指定文件的输入类型log(默认)或者stdin。 exclude_lines:在输入中排除符合正则表达式列表的那些行。
include_lines:包含输入中符合正则表达式列表的那些行(默认包含所有行),include_lines执行完毕之后会执行exclude_lines。 exclude_files:忽略掉符合正则表达式列表的文件(默认为每一个符合paths定义的文件都创建一个harvester)。
fields:向输出的每一条日志添加额外的信息,比如“level:debug”,方便后续对日志进行分组统计。默认情况下,会在输出信息的fields子目录下以指定的新增fields建立子目录,例如fields.level。
配置文件
input
filebeat.prospectors:
input_type: log 文件的输入类型
path:
-/home/work/… 要获取日志的路径
include_lines: [ ‘log’ ] 输入包含正则的行
exclude_lines: [ ‘log’ ] 输入不包含正则的行
fields:
targetTopic: “名字” 定义topic 名字
scan_frequency: 5s
output
output.kafka:
enabled: true 开启
hosts: [ “172.17.50.123:12345” ] 区分ip获取集群元数据的 Kafka 代理地址列表
topic: ‘%{[fileds.target.Topic]}’ 用之前定义的topic
compression: gzip . 打包类型设置输出压缩编解码器
必须是 none, snappy 和 gzip 中的一个
#默认是 gzip
compression_level: 0 默认值由压缩算法选择
max_message_bytes: 1000000 消息的最大允许大小, 更大的消息将被删除。默认值是 1000000 ( 字节 )