Filebeat и Logstash иногда читают старые файлы - PullRequest
1 голос
/ 06 марта 2019

У меня есть папка с файлами журналов с 2016 года по настоящее время и установочным файлом с "ignore_older: 48h". Все файлы вращаются, так что «log» всегда новый, «log.1» следующий и т. Д. Журналы находятся в разделе Linux NFS, смонтированном на хосте logstash.

Я ожидаю, что filebeat получит только те файлы журнала, которые были изменены за последние 24 часа, и проигнорирует старые.

Вышеперечисленное происходит за исключением того, что время от времени он также получает старые файлы в произвольном порядке.

Я запустил команду «stat» на одном из старых файлов с 2018 года и вижу следующее:

Access: 2019-03-02 03:15:32.254460960 +0000
Modify: 2018-09-06 13:12:00.331460890 +0000
Change: 2019-02-28 03:34:33.946462475 +0000

Я запускаю filebeat версии 6.4.2

Эти данные сбивают с толку Logstash? На что это действительно смотрит, проверяя, изменился ли файл. Как я могу остановить его от старых файлов.

UPDATE:

Моя конфигурация filebeat выглядит следующим образом:

- type: log
  enabled: true
  paths:
    - /path/to/my/log/file/log*
  fields:
    logname: "log.name"
  include_lines: ["SOME_TEXT"]
  ignore_older: 48h

Журналы в формате CSV.

На другом хосте я делаю то же самое, но с logstash, входная конфигурация выглядит следующим образом:

input {
  file {
    path => "/path/to/my/log/file/log*"
    mode => "tail"
    start_position => "beginning"
    close_older => "24h"
    ignore_older => "2w"
  }
}

У меня здесь та же проблема.

1 Ответ

1 голос
/ 22 марта 2019

Вы можете попытаться сделать две вещи, одна из них - удалить * после входа в путь, как это

    - /path/to/my/log/file/log

Поскольку filebeat будет читать повернутый файл журнала даже после его перемещения до достижения определенного возраста.

Или для logstash параметр path является массивом, и вы создаете список файлов для чтения, если знаете, как часто файлы вращаются:

    path => [ "path/to/my/log/file.log", "/path/to/my/log/file1.log", "path/to/my/log/file2.log"]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...