Я использую последнюю версию стека ELK, и у меня установлен Filebeat на разных серверах. Я использую различные модули filebeat для отправки журналов. Учитывая, что каждый модуль обрабатывает конфигурацию пути к файлам журнала. Как сделать в соответствии с типом журнала или источником журнала, который я хочу добавить, или пользовательскими полями или тегами в качестве метаданных, чтобы затем фильтровать их с помощью kibana?
В случае доступа к серверу приложений в glassfish он создал входные данные, которые включают конфигурацию: путь, поля, теги из /etc/filebeat/filebeat.yml и все работает. Я понимаю, что при включении модулей нет необходимости указывать путь к журналам во входных файлах filebeat.yml
Но если я использую другой модуль (system, mysql, postgres, apache, nginx, и т. д.) для отправки записей в logstash с помощью filebeat: как вставить настраиваемые поля или теги так же, как в filebeat.yml при настройке? Записи в пути записи? Поскольку каждый модуль обрабатывает свою собственную конфигурацию по умолчанию, где он указывает, что он даже указывает путь к файлам журнала. Для этого мне нужно как-то условно определить реестр (apache, system, mysql, access.log, error.log, ip / hostname, application), к которому я обращаюсь, чтобы вставить настраиваемые поля, которые я могу использовать для фильтрации позже в kibana.
Имел ту же проблему, разрешил, что она при помощи модулей поглощает конвейер с входом журнала.
filebeat.inputs:
- type: log
paths:
- "/var/log/nginx/access.log*"
fields:
level: "INFO"
application: "nginx"
fields_under_root: true
pipeline: "filebeat-7.3.0-nginx-access-default"
Необходимо загрузить поглощать конвейер из модуля, конечно,
Также вы можете изменить настройки модуля nginx.
У меня были такие же потребности, поэтому я изменил config модуля nginx.
он находится в этой папке (пример для 7.3.1 filebeat)
журнал доступа
./filebeat/module/nginx/access/config/nginx-access.yml
журнал ошибок
./filebeat/module/nginx/error/config/nginx-access.yml
добавить теги в конфигурационный файл yml
type: log
paths:
{{ range $i, $path := .paths }}
- {{$path}}
{{ end }}
exclude_files: [".gz$"]
#### TAGS HERE!!!!
tags: ["nginx", "anythinguwant"]
processors:
- add_locale: ~