docker-compose syslog驱动程序无法正常工作

时间:2018-09-03 01:45:37

标签: docker-compose syslog loggly

我正在尝试为多个微服务docker容器实施集中式日志记录。

为此,我尝试使用推荐的syslog日志记录驱动程序方法,将日志传递到loggly。

https://www.loggly.com/docs/docker-logging-driver/

我已经完成了以下工作...

在远程docker-machine上...

$ curl -O https://www.loggly.com/install/configure-linux.sh
$ sudo bash configure-linux.sh -a SUBDOMAIN -u USERNAME

它验证了一切正常,并且我可以看到主机事件现在正在进入Loggly控制台。

然后我在docker-compose中配置了服务,就像这样...

  nginx_proxy:
    build: nginx_proxy
    logging:
      driver: "syslog"
      options:
        tag: "{{.ImageName}}/{{.Name}}/{{.ID}}"

然后我用...重建并重新启动了容器。

$ docker-compose up --build -d

但是我没有从要进行日志处理的容器中获取任何日志。

我可以通过执行以下操作来验证syslog驱动程序更新已生效...

$ docker-compose logs nginx_proxy

此报告...

nginx_proxy_1             | WARNING: no logs are available with the 'syslog' log driver

这是我希望看到的,因为此日志驱动程序不适用于本地查看日志。

我还需要做其他事情才能使它正常工作吗?

1 个答案:

答案 0 :(得分:0)

可以在nginx_proxy目录中共享Dockerfile吗?您确认它正在生成日志吗?

要进行测试,是否可以将nginx换成基本的ubuntu,其回声类似于在loggly文档中显示的内容:https://www.loggly.com/docs/docker-logging-driver/

运行:

sudo docker run -d --log-driver=syslog --log-opt tag="{{.ImageName}}\{{.Name}}\{{.ID}}" ubuntu echo "Test Log"

检查:

$ tail /var/log/syslog