Иногда logstash воспроизводит все логи - PullRequest
0 голосов
/ 10 января 2019

Для отправки своих служебных журналов на kafka я использую logstash (6.5.3). Но сервер перезагружается и при запуске logstash иногда отправляет все прошлые журналы на kafka. Я не знаю, зачем это сделал.

(ex)

журнал 1 -> выполнено
Журнал 2 -> завершено
Журнал 3 -> завершено
журнал 4
журнал 5

перезапуск сервера и иногда перезапуск logstash

log 1 -> replay
Журнал 2 -> повтор
Журнал 3 -> повтор
журнал 4 -> отправить
журнал 5 -> отправить

но я ожидал:

Журнал 4 -> отправить
журнал 5 -> отправить

Это мой logstash conf:

input {
   file {
       type => "log"
       path => [...]
       sincedb_write_interval => 1
       start_position => "beginning"
   }
   .
   .
}

1 Ответ

0 голосов
/ 10 января 2019

Попробуйте ниже конфигурации

input {
  file {
    path => "*.log"
    type => "log"
    start_position => "beginning"
    ignore_older => 0
    sincedb_path => "/usr/share/log/sincedb/log.sincedb"
    sincedb_write_interval => 1
  }
}

, где sincedb_path должен быть файлом, в котором logstash имеет разрешение на запись в реестр. Записывает последние прочитанные данные в этот файл

sincedb_write_interval определяет, как часто logstash должен записывать реестр sincedb. Чем больше значение, тем выше риск того, что в logstash произойдет сбой.

Ссылка: Ввод файла журнала: sincedb_path

https://discuss.elastic.co/t/how-does-sincedb-work-for-a-logstash-reading-multiple-files-from-a-single-directory/99456/4

...