Filebeat6.3文档—Log input配置

paths

日志加载的路径.例如加载某一子目录级别下面路径的日志:/var/log/*/*.log.这表示会去加载以.log结尾的/var/log下面的所有子目录,注意:这不包括/var/log这一级目录.可在paths前面加(-),指定多个目录路径

recursive_glob.enabled

这个特性可以在路径后面跟随**,表示加载这个路径下所有的文件,例如:/foo/**,表示加载/foo,/foo/*,/foo/*/*.这项特性默认是打开的,要关闭可以设置recursive_glob.enabled=false

encoding

encdoing根据输入的文本设置

  • 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, and so on
exclude_lines

用一个数组匹配FIlebeat排除的行

如果使用了multiline这个设置的话,每一个multiline信息在被exclude_lines过滤之前都会被合并成一个简单行

下面这个例子表示,Filebeat会过滤掉所有的以DBG开头的行

filebeat.inputs:
- type: log
...
exclude_lines: ['^DBG']
include_lines

和exclude_lines相反,Filebeat只会接受符合正则表达式的行

下面这个例子表示Filebeat将导出以ERR或WARN开头的所有行

filebeat.inputs:
- type: log
...
include_lines: ['^ERR', '^WARN']

如果exclude_lines和include_lines都被定义了,那么Filebeat将先执行include_lines,然后再执行exclude_lines,两者没有顺序关系

下面这个例子表示Filebeat将导出所有包含sometext的列,但是除了以DBG开头的行

filebeat.inputs:
- type: log
...
include_lines: ['sometext']
exclude_lines: ['^DBG']
harvester_buffer_size

每个harvester的缓存大小,默认是16384

max_bytes

单个日志消息可以发送的最大字节,这个设置对multiline特别管用,默认是10MB

json

设置实例

json.keys_under_root: true
json.add_error_key: true
json.message_key: log
keys_under_root

默认情况下,解析的JSON位于输出文档中的“json”键下。如果启用此设置,则会在输出文档中将键复制到顶层。

overwriter_keys

如果启用了keys_under_root和此设置,则解码的JSON对象中的值将覆盖Filebeat通常添加的字段(类型,源,偏移等)以防发生冲突。

add_error_key

如果启用此设置,则Filebeat会在JSON解析错误或在配置中定义message_key但无法使用时添加“error.message”和“error.type:json”键

message_key

指定被过滤的行和multiline的key,如果指定了key,那么这个key必须在顶层,并且value必须是string类型, 要不然将不能被过滤或聚合分析

ignore_decoding_error

指定如果json解析错误是否应该被记日志,默认是false

multiline

将多行日志合并成一行

exclude_files

用正则表达式来匹配你想要Filebeat过滤的文件

下面这个例子表示,Filebeat会过滤以gz为扩展名的文件

filebeat.inputs:
- type: log
...
exclude_files: ['\.gz$']
ignore_older

Filebeat将忽略在指定的时间跨度之前修改的所有文件.例如,如果你想要在启动Filebeat的时候只发送最新的files和上周的文件,你就可以用这个设置

你可以使用string类型的字符串表示例如2h(2 hours) and 5m(5 minutes),默认是0,

设置0和注释掉这个配置具有一样的效果

注意:你必须设置ignore_older大于close_inactive

两类文件会受此设置的影响

1.文件未被harvest

2.文件被harvest但是没有更新的时间超过ignore_older设置的时间

close_*

用来关闭harvester在设置某个标准或时间之后.如果某个文件在被harvester关闭后更新,那么这个文件会在scan_frequency过去之后将再次被handler.

close_inactive

启用此选项后,如果文件尚未在指定的持续时间内harvested,那么会关闭文件handler.定义期间的计时器从harvester读最后一个文件开始.如果这个被关闭的文件内容再次改变,那么在scal_frequency之后会再次被pick up

我们推荐你设置这个值大于你频繁更新文件的时间,如果你更新log文件每几秒一次,那么你可以放心的设置close_inactive为1m,

close_renamed

如果设置这个值,Filebeat将会关闭文件处理当一个文件被改名了

close_timeout

给每个harvester设定一个生命周期,如果超过这个设定的时间,那么Filebeat将会停止读取这个文件,如果这个文件依然在更新, 那么会开始一个新的harvester,并重新计时.设置close_timeout可以使操作系统定期释放资源

如果你设置了close_timeout和ignore_older相等的时间,如果当harvester关闭后,这个文件被修改了,那么它也不会被pick up了.这通常会导致数据丢失. 如果正在处理multiline的时候close_timeout时间到了,那么可能只发送了部分文件.

clean_inactive

Filebeat将在设定的时间过后移除掉文件的读取状态,如果在移除文件的读取状态后,文件再次被更新,那么这个文件将再次被读取

这个设置可以有效的减少文件注册表的大小,特别是在每天有大量新的文件生成的系统中

clean_removed

Filebeat将会从注册表中移除这些文件,如果这些文件不能再磁盘中被找到.如果某个文件消失了,然后再次出现,那么这个文件将会被从头开始读.默认开启

scan_frequency

Filebeat检查指定用于读取的路径下的新文件的频率.我们推荐不要设置这个值小于1s,避免Filebeat过于频繁的扫描.默认是10s

如果想要近实时发送日志文件,请不要使用非常小的scan_frequency,使用close_inactive可以使文件持续的保持打开并不断的被轮询

tail_files

如果设置了这个值为true,那么Filebeat将会从尾读取这个文件

backoff

定义了Filebeat在达到EOF后再次检查文件之前等待的时间,默认值已经符合大多数的场景,默认1s.

harvester_limit

设置harvesters的并发量.默认设置为0,意思是没有做限制.如果设定了这个值, 意味着如果文件很多的话,并不会全部被托管,建议和close_*一起使用,这样能使新的文件被托管

tags

使用标签能够在Filebeat输出的每个事件中加入这个tags字段,这样能够被Kibana或Logstash轻松过滤

filebeat.inputs:
- type: log
. . .
tags: ["json"]
fields

可以向输出添加其他信息,例如可以加入一些字段过滤log数据

fields_under_root

如果设定为true,那么自定义字段将存储为输出文档中的顶级字段,而不是在子字段下的分组.如果自定义的字段与其他字段冲突了,那么自定义的字段会覆盖其他字段

Filebeat6.3文档—Log input配置的更多相关文章

  1. nginx配置 的话注意几点 1.错误时注意看log 2.天威证书的话,有文档按照其文档一步步配置即可;3每句话的结尾注意千万别丢掉分号

    nginx配置 的话注意几点 1.错误时注意看log  2.天威证书的话,有文档按照其文档一步步配置即可:3每句话的结尾注意千万别丢掉分号:4.配置https时 其转发可以转发到http上 pass_ ...

  2. zabbix文档3.4-7配置

    zabbix文档3.4-7配置 1 主机和主机组 典型的Zabbix主机是您希望监视的设备(服务器,工作站,交换机等). 创建主机是Zabbix中首个监控任务之一.例如,如果要监视服务器"x ...

  3. 安装部署VMware vSphere 5.5文档 (6-3) 安装配置AD域控制器

    部署VMware vSphere 5.5 实施文档 ########################################################################## ...

  4. 安装部署VMware vSphere 5.5文档 (6-4) 安装配置DB数据库

    部署VMware vSphere 5.5 实施文档 ########################################################################## ...

  5. 安装部署VMware vSphere 5.5文档 (6-5) 安装配置vCenter

    部署VMware vSphere 5.5 实施文档 ########################################################################## ...

  6. Python实现读取Excel文档中的配置并下载软件包

    问题:现在遇到这样一个问题,服务器存储了很多软件包,这些包输入不同的产品,每个产品都有自己的配置,互相交叉,那么到底某一产品所有配置的软件包下载后,占用多大空间呢? 分析:从这个问题入手,了解到:软件 ...

  7. Haproxy安装部署文档及多配置文件管理方案

    一.部署安装 二.软件配置 三.系统服务 四.日志配置 五.小结 文章目录 最近我在负责一个统一接入层的建设项目,涉及到 Haproxy 和 ospf 的运维部署,本文分享一下我在部署 Haproxy ...

  8. pytest文档40-pytest.ini配置用例查找规则(面试题)

    前言 面试题:pytest如何执行不是test开头的用例?如执行 xxx_*.py这种文件的用例. pytest.ini 配置文件可以修改用例的匹配规则. pytest命令行参数 cmd打开输入pyt ...

  9. tomcat字符,文档,数据库配置

    修改tomcat目录下conf目录下的server.xml tomcat容器的解码配置 URIEncoding="UTF-8" <Connector port="8 ...

随机推荐

  1. kubernetes实战篇之helm安装

    系列目录 Helm是kubernetes的应用包管理工具,是CNCF孵化器下的一个项目,主要用来管理 Charts.类似于 Ubuntu 中的 APT 或 CentOS 中的 YUM.它提供了一种简单 ...

  2. CentOS 7 时区设置 timedatectl

    [root@testandy ~]# timedatectl --help timedatectl [OPTIONS...] COMMAND ... Query or change system ti ...

  3. scrapy基础知识之 处理Redis里的数据:

    数据爬回来了,但是放在Redis里没有处理.之前我们配置文件里面没有定制自己的ITEM_PIPELINES,而是使用了RedisPipeline,所以现在这些数据都被保存在redis的xx:items ...

  4. Kafka Eagle V1.3.4更新预览

    1.概述 Kafka Eagle是一款开源的Kafka集群监控系统,源代码托管在Github.目前Kafka Eagle已更新到V1.3.4版本,域名已经统一更新为http://www.kafka-e ...

  5. Dom4J的基本使用

    初始化数据 <?xml version="1.0" encoding="UTF-8"?> <RESULT> <VALUE> ...

  6. Redis原子性写入HASH结构数据并设置过期时间

    Redis中提供了原子性命令SETEX或SET来写入STRING类型数据并设置Key的过期时间: > SET key value EX NX ok > SETEX key value ok ...

  7. micropython TPYBoard v201 简易的web服务器的实现过程

    转载请注明文章来源,更多教程可自助参考docs.tpyboard.com,QQ技术交流群:157816561,公众号:MicroPython玩家汇 前言 TPYBoard v201开发板上搭载了以太网 ...

  8. 蓝牙Beacon广播数据包格式以及解析

    目录 1. 获取原始蓝牙广播包 2. 安装WireShark软件 3. 分析Beacon广播包数据 3.1 第一个数据包格式 3.2 第二个数据包格式 3.3 Android程序开发中的蓝牙广播包 4 ...

  9. 微信小程序踩坑日记2——实时访问数据库并渲染UI

    0. 引言 主要讲讲对于实时访问数据库并渲染UI我的解决方法. 一开始查到了随让小程序是单线程的,但是有一个基本上是封装的worker线程,相当于可以自己自定义(类似于Android开发里的handl ...

  10. Java程序员注意——审查Java代码的六种常见错误

    代码审查是消灭Bug最重要的方法之一,这些审查在大多数时候都特别奏效.由于代码审查本身所针对的对象,就是俯瞰整个代码在测试过程中的问题和Bug.并且,代码审查对消除一些特别细节的错误大有裨益,尤其是那 ...