仅将filebeat配置为读取最近5天的日志文件

时间:2019-10-22 15:34:05

标签: elasticsearch logging filebeat

我在“ logs”文件夹中有以下目录格式的几个日志文件

2019-10-22
2019-10-21
2019-10-20
2019-10-19

每个文件夹上方都有Error.log文件。我想从文件拍子中从2019-10-20到以上读取那些Error.log文件,并推送到弹性服务。我该如何使用filebeat.yml

这是我的filebaet.yml部分

filebeat.inputs:
- type: log
  enabled: true
  paths:
    - d:\sites\*\logs\*\Error.log

  fields:
    level: error
    application: cms

  ### Multiline options
  multiline.pattern: '^([0-9]{4}-[0-9]{2}-[0-9]{2})'
  multiline.negate: true
  multiline.match: after
  pipeline: logpipeline

2 个答案:

答案 0 :(得分:1)

我认为这不是一个完美的答案。但是对于这种情况,您可以在filebeat中使用功能exclude_lines。在您的 filebeat.yml 文件中,如下配置,然后尝试。

 filebeat.inputs:

- type: log
  enabled: true
  paths:
     - /var/log/*.log

  exclude_lines: ['^2019-10-1']

这将排除以“ 2019-10-1”开头的行

答案 1 :(得分:0)

终于找到了。文件节拍配置允许按时间忽略文件。您可以将其用作分钟(24s),24小时(24h),24天(24d)

- type: log
  enabled: true
  paths:
    - d:\annywhere\logs\*\Error.log

  ignore_older: 24h