Агент Filebeat сохраняет все свое состояние в файле реестра. Расположение файла реестра должно быть установлено внутри вашего файла конфигурации с помощью файла filebeat.registry_file параметр конфигурации.
Я рекомендую указывать абсолютный путь в этом параметре, чтобы вы точно знали, где будет находиться файл. Если вы используете относительный путь, значение интерпретируется относительно ${path.data} каталог. В установках Linux при запуске в качестве службы или при запуске с использованием оболочки filebeat.sh для path.data устанавливается значение /var/lib/filebeat.
После удаления этого файла реестра Filebeat начнет читать все файлы с самого начала (если только вы не настроили разработчик с tail_files: true.
Если у вас по-прежнему возникают проблемы, я рекомендую просмотреть файл журнала Filebeat, который будет содержать строку, указывающую, где находится файл реестра. Например:
2017/01/18 18:51:31.418587 registrar.go:85: INFO Registry file set to: /var/lib/filebeat/registry
personA Jschedule18.01.2017
comment
остановите сервер filebeat, затем удалите файл '/var/lib/filebeat/registry'. и это работа. это моя проблема, спасибо за ответ.
- person周宏成; 15.02.2017
Как уже упоминалось здесь, остановка службы filebeat, удаление файла(ов) реестра и перезапуск службы являются правильными действиями.
Я просто хотел добавить для пользователей Windows, что если вы не указали уникальное местоположение для filebeat.registry_file, по умолчанию он, скорее всего, будет ${path.data}/registry, который несколько сбивает с толку каталогом C:\ProgramData\filebeat, как упоминалось людьми из Elastic.