'How to send logs to Graylog (Docker)?
I'm new to both Docker and Graylog. Can anyone show me an example of how to send log data to the Graylog server?
Solution 1:[1]
Actually, it is pretty easy! Graylog's preferred Log Format - GELF - is supported by Docker natively. So if you are using Docker logs already (Docker's internal logging functionality) you can just use Docker's built-in support, that will forward all logs from your container to the specified GELF endpoint. You will have to create a GELF UDP input on the Graylog server.
https://docs.docker.com/engine/admin/logging/overview/
For running a container from command line that sends all logs to Graylog via GELF just use the options log-driver and gelf-address:
docker run -dit \
--log-driver=gelf \
--log-opt gelf-address=udp://192.168.0.42:12201 \
alpine sh
Solution 2:[2]
If Graylog exposes a syslog listener you could send them with Docker syslog logging driver. But since you say you are new to Graylog, have a look at https://github.com/sematext/sematext-agent-docker which should work for you with minimal effort and will be able to also capture Docker metrics and events, not just logs, which is handy.
Solution 3:[3]
Hi you can use log collectors for send logs and traffic to graylog stack Elastic, beats Fluentd, Syslog TCP/udp GELF and ets
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | Matthias Braun |
| Solution 2 | user3148164 |
| Solution 3 | jamall |
