使用syslog将docker容器日志发送到logstash

tyr*_*l_c 2 syslog rsyslog logstash docker

可以在docker容器中登录...说位于/ var/log/syslog中的日志是否运送到logstash而不使用任何其他组件,如伐木工人和logspout?

只是想知道,因为我设置了一个环境,并试图使它与syslog一起工作(所以syslog将日志从docker容器发送到logstash)但是现在它不起作用..只是想知道我的逻辑是否有问题.

Ben*_*ley 6

如果没有配置为转发消息的东西,/ var/log/syslog中的消息就无法神奇地路由到logstash.有些东西必须将日志发送到logstash.你有几个选择:

  1. 配置应用程序以将日志消息发送到stdout而不是发送到/ var/log/syslog,并运行logspout以从所有正在运行的容器中收集stdout并将消息发送到logstash端点.
  2. 在容器内运行rsyslog并配置syslog守护程序(如rsyslog)以将消息发送到logstash端点
  3. 将mount/dev/log从主机绑定到容器,方法-v /dev/log:/dev/logdocker run 在启动容器时将其绑定到容器.在主机上,配置syslog守护程序以将消息发送到logstash.