在docker主机操作系统上运行filebeat并从容器中收集日志

时间:2017-08-31 23:16:56

标签: docker logstash syslog filebeat

我有一台服务器,它是多个docker容器的主机操作系统。每个容器都包含一个创建日志的应用程序。我希望使用syslog守护程序将这些日志发送到一个地方,然后我希望filebeat将此数据传输到另一台服务器。是否可以在HOST OS上安装filebeat(不为filebeat创建另一个容器),并使syslog守护程序收集容器应用程序的日志数据,然后在主机操作系统上的/ var / log中进行整合?感谢。

1 个答案:

答案 0 :(得分:2)

您需要与每个容器共享一个卷,以便将您的日志存入主机文件系统。

然后,您可以在主机上安装filebeat并将日志转发到您想要的位置,因为它们是“标准”日志文件。

请注意,通常docker容器不会将日志写入真实的日志文件,而是写入stdout。这意味着您可能需要自定义图像才能解决此日志记录问题。