Почему Logstash не потребляет логи от gelf? - PullRequest
0 голосов
/ 10 апреля 2019

Я пытаюсь настроить взаимодействие между запущенными журналами контейнера Docker и Logstash.

Я запускаю свой Docker-контейнер с помощью следующей команды:

docker run --log-driver gelf --log-opt gelf-address=udp://127.0.0.1:12201 nfrankel/simplelog:1

и Logstash config.json:

input {
  gelf {}
}

output {
  elasticsearch {
    hosts => ["http://localhost:9200"]
  }
  stdout {}
}

Logstash журналы в порядке, я вижу

New Elasticsearch output {:class=>"LogStash::Outputs::ElasticSearch", :hosts=>["http://localhost:9200"]}
Starting gelf listener (udp) ... {:address=>"0.0.0.0:12201"}
Successfully started Logstash API endpoint {:port=>9600}

Тем не менее, это не работает. Я не вижу ни журналов в консоли Logstash, ни создания индекса Elasticsearch.

Не могли бы вы помочь мне решить мою проблему?

Стоит отметить, что работающий контейнер Docker создает журналы, и я вижу их в Cygwin, откуда я их запустил.

1 Ответ

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

Возможно, попробуйте настроить входные данные gelf для приема udp через порт 12201, например,

input {
   gelf {
      use_udp => true
      port_udp => 12201
   }
}
...