Filebeat не создает индекс в Elasticsearch - PullRequest
0 голосов
/ 29 августа 2018

Я настраиваю Filebeat для отправки логов в Elasticsearch. Это мой filebeat.yml:

filebeat.prospectors:
- type: log
  paths:
  - '/var/log/project/*.log'
  json.message_key: message

output.elasticsearch:
  hosts: ["localhost:9200"]

У меня есть этот файл /var/log/project/test.log с таким содержанием:

{ "message": "This is a test" }

и я ожидал, что этот журнал будет отправлен в Elasticsearch. Elasticsearch работает в контейнере Docker на localhost на 9200.

Когда я запускаю filebeat (Docker), в Elasticsearch не создается индекс. Так что в Кибане я не вижу никаких данных.

Почему это? Разве не предполагается, что Filebeat создает индекс автоматически?

Ответы [ 2 ]

0 голосов
/ 29 августа 2018

Решено! Я не разделял каталог журналов между хостом и контейнером Filebeat, поэтому журналы для отправки отсутствовали.

Я добавил том при запуске Filebeat:

docker run -it -v $(pwd)/filebeat.yml:/usr/share/filebeat/filebeat.yml -v /var/log/project/:/var/log/project/ docker.elastic.co/beats/filebeat:6.4.0
0 голосов
/ 29 августа 2018

вы можете создать индекс, как показано ниже

output.elasticsearch:
hosts: ["localhost:9200"]
index: "test-%{+yyyy.MM.dd}"
...