`

filebeat_config介绍

阅读更多

http://blog.csdn.net/xiongzhichao/article/details/51783704 (Filebeat的高级配置-Filebeat部分)

http://blog.csdn.net/chengxuyuanyonghu/article/details/54378778 (filebeat 配置文件详解)

 

filebeat.prospectors:

- input_type: log

  paths:

    - /var/log/apache/httpd-*.log

  document_type: apache

 

- input_type: log

  paths:

    - /var/log/messages

    - /var/log/*.log

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: true

multiline.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

 

==================

processors:

- drop_fields:

    fields: ["beat.name","beat.hostname","input_type"]  表示我要删除 filebeat 自己添加的input_type对象和beat对象中的name和hostname属性,

分享到:
评论

相关推荐

    elk_config.zip

    elasticsearsh 、kibana 、logstash 、filebeat 四个软件的配置文件

    filebeat-ansible-role:在任何Debian或RedHat系统上使用Ansible部署Filebeat

    建于 入门ansible-playbook -i {{your_inventory_file}} filebeat.yml tags = debian,config先决条件Ansible版本2.9.0 +路线图有关建议的功能(和已知问题)列表,请参阅未解决的问题。 贡献贡献使开源社区成为了一...

    salt-filebeat-formula:安装和管理Filebeat代理

    盐文件节拍公式笔记请参阅完整的。可用状态 运行状态以安装filebeat和配置公用文件。 安装filebeat filebeat.config 管理filebeat配置文件。 filebeat.service 管理filebeat的启动和运行状态。

    filebeat-formula:用于[filebeat](https的SaltStack公式

    文件拍式 执照 版本控制 建造 SaltStack公式 。 可用状态 状态 内容描述 filebeat.config 配置Filebeat。 filebeat.service 启动Filebeat窗格。

    puppet-filebeat

    file文件拍目录参考公开课私人班公开定义限制-操作系统兼容性等1.9.1之前的Ruby 使用config_file 开发-贡献模块指南 描述filebeat模块安装并配置由Elastic维护的filebeat日志filebeat程序。 设置 什么文件拍会影响...

    ansible-role-beats:安装和配置Elastic Beats

    配置通过yaml dict( beats_config )进行,因此可以通过在beats_config定义适当的键来覆盖此角色执行的每个默认配置。 要求 没有任何 依存关系 当然,Elasticsearch服务器应该已启动并正在运行。 您将需要生成供...

    logstash-scalyr-filebeat

    这是上扩展版本,带有Filebeat和Scalyr插件。 Filebeat将记录Nginx访问日志。 通过Filebeat将它们发送到Logstash,Logstash将主体发送到scalyr。 这将用作模板,以模板化scalyr logstash插件的使用。 里面有什么 ├...

    insec_containers:我需要测试的每个应用程序的config和Dockerfile的集合

    测试环境使用虚拟机运行gitlab,filebeat发货方也在其中运行。 要建立从该vm到logstash容器的网络连接,需要侦听以下路由。 路由添加-net 172.17.0.0网络掩码255.255.0.0 gw 1​​92.168.1.45 172.17个网络是容器 ...

    ELK:搭建ELK日志分析平台

    ELK 环境: Vagrant 1.8.1 CentOS 7.2 192.168.0.228 Elasticsearch 2.3.2 logstash 2.2.4 Kibana 4.4.2 filebeat 1.2.2 topbeat 1.2.2 搭建ELK日志分析平台。... -f, --config CONFIG_PATH Load the log

    graylogrpm.tar

    filebeat-7.15.0-x86_64.rpm graylog-enterprise-integrations-plugins-4.0.13-1.noarch.rpm graylog-enterprise-plugins-4.0.13-1.noarch.rpm graylog-integrations-plugins-4.0.13-1.noarch.rpm GraylogRPM ...

    带ELK堆栈的云网络部署:Azure Cloud用于创建带有ELK堆栈服务器的虚拟网络,该服务器可远程监视两个正在运行的服务器和DVWA实例

    带ELK堆栈的云网络部署和DVWA Azure云用于创建带有... ansible.cfgansible_setup.ymlinstall_elk.ymlfilebeat-config.ymlfilebeat-playbook.ymlmetricbeat-config.ymlmetricbeat-playbook.yml本文档包含以下详细信息:

    Project_1_Cloud_Security:云端安全

    或者,可以使用Ansible配置文件的选定部分来仅安装其中的某些部分,例如Filebeat。 Ansible剧本文件 名称:具有Docker主机的Config Web VM:Web服务器成为:真正的任务: 名称:docker.io apt:update_cache:是...

    麋鹿项目

    或者,可以使用yml和config文件的select部分来仅安装其中的某些部分,例如Filebeat。 待办事项:输入剧本文件。 本文档包含以下详细信息: Topologu的描述 访问政策 ELK配置 节拍使用 被监视的机器 如何使用...

    elk-config:ELK堆栈配置文件

    在应用程序主机上,转到beats目录,并使用Docker Compose启动Filebeat: $ cd beats $ docker-compose up -d 在ELK主机上,转到elk目录,并使用Docker compose启动ELK堆栈: $ cd elk $ docker-compose up -d

    wazuh-docker:Wazuh-Docker容器

    用于Docker的Wazuh容器 ... 这些变量在文件config_cluster.sh用于设置他们elasticsearch.yml配置文件中你可以看到节点变量的含义和其他群集设置。 文献资料 设置SSL证书和基本身份验证 在启动环境之前

    elk-stack-project:我的第一个网络安全新手训练营项目

    名称:具有Docker主机的Config Web VM:Web服务器成为:真正的任务: 名称:卸载apache2 apt:名称:apache2状态:不存在名称:docker.io apt:update_cache:是名称:docker.io状态:存在名称:安装pip3 apt:名称...

    elk-server:创建ELK服务器以监视Azure上的Web服务器

    ---- name : Config Web VM with Docker hosts : webservers become : true tasks : - name : docker.io apt : update_cache : yes name : docker.io state : present - name : Install pip3 apt : name : python3-...

    Monash-Cybersecurity

    或者,可以使用剧本文件的选定部分来仅安装其中的某些片段,例如Filebeat。 剧本1:pentest.yml --- - name: Config Web VM with Docker hosts: webservers become: true tasks: - name: docker.io apt: ...

    kubernetes-training

    kubernetes培训 版本 kubernetes:1.15 头盔:3.2.1 特拉菲克:2.2 ... helm install -n eck elasticsearch elastic/elasticsearch -f helm/es-config.yaml 安装Kibana helm install -n eck kibana elastic

    Project-1:自动化ELK堆栈部署

    或者,可以使用yml和config文件的部分选择来仅安装其中的某些部分,例如Filebeat。本文档包含以下详细信息: 拓扑描述访问政策ELK配置使用中的节拍被监视的机器如何使用Ansible构建拓扑描述该网络的主要目的是公开...

Global site tag (gtag.js) - Google Analytics