filebeat 选项
Filebeat Options
input_type: log|stdin
- 指定输入类型
paths
- 支持基本的正则,所有golang glob都支持,支持/var/log/*/*.log
encoding
- 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
- 支持正则 排除匹配的行,如果有多行,合并成一个单一行来进行过滤
include_lines
- 支持正则 include_lines执行完毕之后会执行exclude_lines。
exclude_files
- 支持正则 排除匹配的文件
- exclude_files: ['.gz$']
tags
列表中添加标签,用过过滤
filebeat.prospectors:
- paths: ["/var/log/app/*.json"]
tags: ["json"]
fields
- 可选字段,选择额外的字段进行输出
- 可以是标量值,元组,字典等嵌套类型
默认在sub-dictionary 位置
filebeat.prospectors:
- paths: ["/var/log/app/*.log"]
fields:
app_id: query_engine_12
fields_under_root
- 如果值为ture,那么fields存储在输出文档的顶级位置
如果与filebeat中字段冲突,自定义字段会覆盖其他字段
fields_under_root: true
fields:
instance_id: i-10a64379
region: us-east-1
ignore_older
- 可以指定Filebeat忽略指定时间段以外修改的日志内容
- 文件被忽略之前,确保文件不在被读取,必须设置ignore older时间范围大于close_inactive
- 如果一个文件正在读取时候被设置忽略,它会取得到close_inactive后关闭文件,然后文件被忽略
close_*
close_ *配置选项用于在特定标准或时间之后关闭harvester。 关闭harvester意味着关闭文件处理程序。 如果在harvester关闭后文件被更新,则在scan_frequency过后,文件将被重新拾取。 但是,如果在harvester关闭时移动或删除文件,Filebeat将无法再次接收文件,并且harvester未读取的任何数据都将丢失。
close_inactive
- 启动选项时,如果在制定时间没有被读取,将关闭文件句柄
- 读取的最后一条日志定义为下一次读取的起始点,而不是基于文件的修改时间
- 如果关闭的文件发生变化,一个新的harverster将在scan_frequency运行后被启动
- 建议至少设置一个大于读取日志频率的值,配置多个prospector来实现针对不同更新速度的日志文件
- 使用内部时间戳机制,来反映记录日志的读取,每次读取到最后一行日志时开始倒计时
- 使用2h 5m 来表示
close_rename
- 当选项启动,如果文件被重命名和移动,filebeat关闭文件的处理读取
close_removed
- 当选项启动,文件被删除时,filebeat关闭文件的处理读取
- 这个选项启动后,必须启动clean_removed
close_eof
- 适合只写一次日志的文件,然后filebeat关闭文件的处理读取
close_timeout
- 当选项启动时,filebeat会给每个harvester设置预定义时间,不管这个文件是否被读取,达到设定时间后,将被关闭
- close_timeout 不能等于ignore_older,会导致文件更新时,不会被读取
- 如果output一直没有输出日志事件,这个timeout是不会被启动的,至少要要有一个事件发送,然后haverter将被关闭
- 设置0 表示不启动
clean_inactived
- 从注册表文件中删除先前收获的文件的状态
- 设置必须大于ignore_older+scan_frequency,以确保在文件仍在收集时没有删除任何状态
- 配置选项有助于减小注册表文件的大小,特别是如果每天都生成大量的新文件
- 此配置选项也可用于防止在Linux上重用inode的Filebeat问题
clean_removed
- 启动选项后,如果文件在磁盘上找不到,将从注册表中清除filebeat
- 如果关闭close removed 必须关闭clean removed
scan_frequency
- prospector检查指定用于收获的路径中的新文件的频率,默认10s
document_type
- 类型事件,被用于设置输出文档的type字段,默认是log
harvester_buffer_size
- 每次harvester读取文件缓冲字节数,默认是16384
max_bytes
- 对于多行日志信息,很有用,最大字节数
json
这些选项使Filebeat解码日志结构化为JSON消息
逐行进行解码json
- keys_under_root
- 设置key为输出文档的顶级目录
- overwrite_keys
- 覆盖其他字段
- add_error_key
- 定一个json_error
- message_key
- 指定json 关键建作为过滤和多行设置,与之关联的值必须是string
multiline
控制filebeat如何处理跨多行日志的选项,多行日志通常发生在java堆栈中
multiline.pattern: '^\['multiline.negate: truemultiline.match: after
上面匹配是将多行日志所有不是以[符号开头的行合并成一行它可以将下面的多行日志进行合并成一行
[beat-logstash-some-name-832-2015.11.28] IndexNotFoundException[no such index]
at org.elasticsearch.cluster.metadata.IndexNameExpressionResolver$WildcardExpressionResolver.resolve(IndexNameExpressionResolver.java:566)
at org.elasticsearch.cluster.metadata.IndexNameExpressionResolver.concreteIndices(IndexNameExpressionResolver.java:133)
at org.elasticsearch.cluster.metadata.IndexNameExpressionResolver.concreteIndices(IndexNameExpressionResolver.java:77)
at org.elasticsearch.action.admin.indices.delete.TransportDeleteIndexAction.checkBlock(TransportDeleteIndexAction.java:75)
multiline.pattern
- 指定匹配的正则表达式,filebeat支持的regexp模式与logstash支持的模式有所不同
pattern regexp
multiline.negate
- 定义上面的模式匹配条件的动作是 否定的,默认是false
- 假如模式匹配条件'^b',默认是false模式,表示讲按照模式匹配进行匹配 将不是以b开头的日志行进行合并
- 如果是true,表示将不以b开头的日志行进行合并
multiline.match
- 指定Filebeat如何将匹配行组合成事件,在之前或者之后,取决于上面所指定的negate
multiline.max_lines
- 可以组合成一个事件的最大行数,超过将丢弃,默认500
multiline.timeout
- 定义超时时间,如果开始一个新的事件在超时时间内没有发现匹配,也将发送日志,默认是5s
tail_files
- 如果此选项设置为true,Filebeat将在每个文件的末尾开始读取新文件,而不是开头
- 此选项适用于Filebeat尚未处理的文件
symlinks
- 符号链接选项允许Filebeat除常规文件外,可以收集符号链接。收集符号链接时,即使报告了符号链接的路径,Filebeat也会打开并读取原始文件。
backoff
- backoff选项指定Filebeat如何积极地抓取新文件进行更新。默认1s
- backoff选项定义Filebeat在达到EOF之后再次检查文件之间等待的时间。
max_backoff
- 在达到EOF之后再次检查文件之前Filebeat等待的最长时间
backoff_factor
- 指定backoff尝试等待时间几次,默认是2
harvester_limit
- harvester_limit选项限制一个prospector并行启动的harvester数量,直接影响文件打开数
enabled
- 控制prospector的启动和关闭
filebeat global
spool_size
事件发送的阀值,超过阀值,强制刷新网络连接
filebeat.spool_size: 2048
publish_async
- 异步发送事件,实验性功能
idle_timeout
事件发送的超时时间,即使没有超过阀值,也会强制刷新网络连接
filebeat.idle_timeout: 5s
registry_file
- 注册表文件的名称,如果使用相对路径,则被认为是相对于数据路径
有关详细信息,请参阅目录布局部分 默认值为${path.data}/registry
filebeat.registry_file: registry
config_dir
- 包含额外的prospector配置文件的目录的完整路径
- 每个配置文件必须以.yml结尾
- 每个配置文件也必须指定完整的Filebeat配置层次结构,即使只处理文件的prospector部分。
- 所有全局选项(如spool_size)将被忽略
必须是绝对路径
filebeat.config_dir: path/to/configs
shutdown_timeout
- Filebeat等待发布者在Filebeat关闭之前完成发送事件的时间。
Filebeat General
name
设置名字,如果配置为空,则用该服务器的主机名
name: "my-shipper"
queue_size
- 单个事件内部队列的长度 默认1000
bulk_queue_size
- 批量事件内部队列的长度
max_procs
- 设置最大使用cpu数量
geoip.paths
- 此配置选项目前仅由Packetbeat使用,它将在6.0版中删除
要使GeoIP支持功能正常,GeoLite City数据库是必需的。
geoip:
paths:
- "/usr/share/GeoIP/GeoLiteCity.dat"
- "/usr/local/var/GeoIP/GeoLiteCity.dat"
Filebeat reload
属于测试功能
path
- 定义要检查的配置路径
reload.enabled
- 设置为true时,启用动态配置重新加载。
reload.period
- 定义要检查的间隔时间
filebeat.config.prospectors:
path: configs/*.yml
reload.enabled: true
reload.period: 10s
filebeat 选项的更多相关文章
- Filebeat中文指南
Filebeat中文指南 翻译自:https://www.elastic.co/guide/en/beats/filebeat/current/index.html 译者:kerwin 鸣谢:tory ...
- Elastic 技术栈之 Filebeat
Elastic 技术栈之 Filebeat 简介 Beats 是安装在服务器上的数据中转代理. Beats 可以将数据直接传输到 Elasticsearch 或传输到 Logstash . Beats ...
- filebeat.yml(中文配置详解)
################### Filebeat Configuration Example ######################### ####################### ...
- Filebeat 日志收集器 安装和配置
Filebeat的配置文件是/etc/filebeat/filebeat.yml,遵循YAML语法.具体可以配置如下几个项目: Filebeat Output Shipper Logging(可选) ...
- 2-4、配置Filebeat使用logstash
配置filebeat使用logstash 重要:要将事件发送到Logstash,还需要创建一个Logstash配置管道,该管道监听传入的Beats连接并将收到的事件编入索引到Elasticsearch ...
- 2-3、配置Filebeat
配置Filebeat 提示:Filebeat modules为常见的日志格式提供了最快的入门操作. 如果要使用Filebeat模块,请跳过本节,包括剩余的入门步骤,并直接转到快速入门:Quick st ...
- 2-2、安装Filebeat
安装filebeat 第1步:安装Filebeat 开始之前:如果尚未安装Elastic Stack,请立即执行此操作. 请参阅Getting started with the Elastic Sta ...
- Filebeat 模块与配置
续 • <开始使用Filebeat> 1. 关于Filebeat 当你要面对成百上千.甚至成千上万的服务器.虚拟机和容器生成的日志时,请告别 SSH 吧!Filebeat 将为你提供一种 ...
- 开始使用Filebeat
认识Beats Beats是用于单用途数据托运人的平台.它们以轻量级代理的形式安装,并将来自成百上千台机器的数据发送到Logstash或Elasticsearch. (画外音:通俗地理解,就是采集数据 ...
随机推荐
- Python爬链接
# -*- coding: utf-8 -*- """ Created on Wed Jan 11 17:21:54 2017 @author: PE-Monitor & ...
- 模板—数据结构—LCT
模板—数据结构—LCT Code: #include <cstdio> #include <algorithm> using namespace std; #define N ...
- hibernate中session的线程安全问题
Hibernate的基本特征是完成面向对象的程序设计语言到关系数据库的映射,在Hibernate中使用持久化对象PO(Persistent Object)完成持久化操作,对PO的操作必须在Sessio ...
- [POJ 1739] Tony's Tour
Link: POJ 1739 传送门 Solution: 这题除了一开始的预处理,基本上就是插头$dp$的模板题了 由于插头$dp$求的是$Hamilton$回路,而此题有起点和终点的限制 于是可以构 ...
- Swift中结合使用枚举与Switch
定义: 用法:
- [Bug]CS0016: 未能写入输出文件“c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temp
win7中安装asp.net的问题 编译器错误信息: CS0016: 未能写入输出文件问题解决办法 编译错误 说明: 在编译向该请求提供服务所需资源的过程中出现错误.请检查下列特定错误详细信息并适当地 ...
- [JQuery]用InsertAfter实现图片走马灯展示效果
写在前面 最近一个搞美工的朋友让我给他写一个图片轮播的特效. 需求: 图片向左循环滚动. 图片滚动到中间高亮显示,并在下方显示照片人物对应的信息. 鼠标悬停止滚动. 鼠标离开开始滚动. 单击图片,图片 ...
- Java 图片添加水印效果
package com.xiaowu.drawwater.demo; import java.awt.AlphaComposite; import java.awt.Graphics2D; impor ...
- vue中的组件,Component元素,自定义路由,异步数据获取
组件是Vue最强大的功能之一.组件是一组可被复用的具有一定功能,独立的完整的代码片段,这个代码片段可以渲染一个完整视图结构组件开发如何注册组件?第一步,在页面HTML标签中使用这个组件名称,像使用DO ...
- Android ViewStub的使用方法
大家写项目的时候肯定会有一些东西提前写好,可是不到一定条件是不想让它显示出来的.我们可能的做法就是让它View.GONE 或View.INVISIBLE等到一定条件了在代码里面这设置View.VISI ...