热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Filebeat6.3文档—Loginput配置

Filebeat6.3文档—Loginput配置paths日志加载的路径.例如加载某一子目录级别下面路径的日志:.这表示会去加载以.log结尾的varlog下面的所有子目录,注意:

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配置


推荐阅读
  • MySQL的查询执行流程涉及多个关键组件,包括连接器、查询缓存、分析器和优化器。在服务层,连接器负责建立与客户端的连接,查询缓存用于存储和检索常用查询结果,以提高性能。分析器则解析SQL语句,生成语法树,而优化器负责选择最优的查询执行计划。这一流程确保了MySQL能够高效地处理各种复杂的查询请求。 ... [详细]
  • 阿里云 Aliplayer高级功能介绍(八):安全播放
    如何保障视频内容的安全,不被盗链、非法下载和传播,阿里云视频点播已经有一套完善的机 ... [详细]
  • 小程序的授权和登陆
    小程序的授权和登陆 ... [详细]
  • Python多线程详解与示例
    本文介绍了Python中的多线程编程,包括僵尸进程和孤儿进程的概念,并提供了具体的代码示例。同时,详细解释了0号进程和1号进程在系统中的作用。 ... [详细]
  • 本文详细介绍了如何解决DNS服务器配置转发无法解析的问题,包括编辑主配置文件和重启域名服务的具体步骤。 ... [详细]
  • 网站访问全流程解析
    本文详细介绍了从用户在浏览器中输入一个域名(如www.yy.com)到页面完全展示的整个过程,包括DNS解析、TCP连接、请求响应等多个步骤。 ... [详细]
  • Framework7:构建跨平台移动应用的高效框架
    Framework7 是一个开源免费的框架,适用于开发混合移动应用(原生与HTML混合)或iOS&Android风格的Web应用。此外,它还可以作为原型开发工具,帮助开发者快速创建应用原型。 ... [详细]
  • 在 Axublog 1.1.0 版本的 `c_login.php` 文件中发现了一个严重的 SQL 注入漏洞。该漏洞允许攻击者通过操纵登录请求中的参数,注入恶意 SQL 代码,从而可能获取敏感信息或对数据库进行未授权操作。建议用户尽快更新到最新版本并采取相应的安全措施以防止潜在的风险。 ... [详细]
  • 近期遇到了一个系统中在线文本编辑器上传本地图片时报服务器异常的问题。经过初步调试和排查,最终找到了解决方案。 ... [详细]
  • Bootstrap 插件使用指南
    本文详细介绍了如何在 Web 前端开发中使用 Bootstrap 插件,包括自动触发插件的方法、插件的引用方式以及具体的实例。 ... [详细]
  • 如何配置VisualSVN以确保提交时必须填写日志信息
    在软件开发团队中,成员们有时会忘记在提交代码时添加必要的备注信息。为了规范这一流程,可以通过配置VisualSVN来强制要求团队成员在提交文件时填写日志信息。本文将详细介绍如何设置这一功能。 ... [详细]
  • PHP 5.5.31 和 PHP 5.6.17 安全更新发布
    PHP 5.5.31 和 PHP 5.6.17 已正式发布,主要包含多个安全修复。强烈建议所有用户尽快升级至最新版本以确保系统安全。 ... [详细]
  • HTTP(HyperTextTransferProtocol)是超文本传输协议的缩写,它用于传送www方式的数据。HTTP协议采用了请求响应模型。客服端向服务器发送一 ... [详细]
  • 如何优化MySQL数据库性能以提升查询效率和系统稳定性 ... [详细]
  • 使用Maven JAR插件将单个或多个文件及其依赖项合并为一个可引用的JAR包
    本文介绍了如何利用Maven中的maven-assembly-plugin插件将单个或多个Java文件及其依赖项打包成一个可引用的JAR文件。首先,需要创建一个新的Maven项目,并将待打包的Java文件复制到该项目中。通过配置maven-assembly-plugin,可以实现将所有文件及其依赖项合并为一个独立的JAR包,方便在其他项目中引用和使用。此外,该方法还支持自定义装配描述符,以满足不同场景下的需求。 ... [详细]
author-avatar
手机用户2602921613
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有