4

我是 Docker 和 Graylog 的新手。谁能告诉我如何将日志数据发送到 Graylog 服务器的示例?

4

2 回答 2

9

实际上,这很容易!Graylog 的首选日志格式 - GELF - 由 Docker 原生支持。因此,如果您已经在使用 Docker 日志(Docker 的内部日志记录功能),您可以只使用 Docker 的内置支持,它将所有日志从您的容器转发到指定的 GELF 端点。您必须在 Graylog 服务器上创建 GELF UDP 输入。

https://docs.docker.com/engine/admin/logging/overview/

要从命令行运行容器,通过 GELF 将所有日志发送到 Graylog,只需使用选项log-drivergelf-address

docker run -dit \
--log-driver=gelf \
--log-opt gelf-address=udp://192.168.0.42:12201 \
alpine sh
于 2016-08-04T12:12:45.170 回答
3

如果 Graylog 公开了一个 syslog 监听器,您可以使用 Docker syslog 日志记录驱动程序发送它们。但是,既然您说您是 Graylog 的新手,请查看https://github.com/sematext/sematext-agent-docker,它应该可以为您轻松工作,并且还能够捕获 Docker 指标和事件,而不是只是日志,这很方便。

于 2016-08-04T04:12:20.970 回答