docker-compose 日志记录不适用于 syslog 选项

Posted

技术标签:

【中文标题】docker-compose 日志记录不适用于 syslog 选项【英文标题】:docker-compose logging is not working with syslog option 【发布时间】:2019-04-24 15:46:20 【问题描述】:

我有以下 docker-compose 配置:

version: '3'
services:
  worker:
    image: // image
    logging:
      driver: syslog
      options:
        syslog-address: "udp://XXX.papertrailapp.com:XXXX"
        tag: ".Name/.ID"

当我在 Ubuntu 下将它部署到 DigitalOcean 时,我可以成功运行 docker-compose up 命令,如下所示:

docker-compose -f docker-compose.yml up

当该命令运行时,我可以看到以下输出:

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

似乎系统日志已正确配置为运行docker-compose up 命令,但系统日志驱动程序可能不可用?

我能找到的关于在 docker 中使用 syslog 的所有说明都参考了docker run 命令。但是如何让 syslog 与 docker-compose 一起使用?

【问题讨论】:

我相信该消息只是告诉您,您不会在控制台上看到任何日志,因为您已选择将它们发送到 syslog。您是否真的检查过 papertrail 是否成功接收了您的日志? 由于 docker compose up 在前台运行,它会查找容器的 STDOUT 日志。您已将日志记录驱动程序更改为 syslog,这意味着容器的所有 STDOUT 都将发送到 syslog。使用 docker-compose -f docker-compose.yml up -d 并在 syslog 中查找日志。 @larsks 我确实检查了papertrail!不幸的是没有看到那里的日志:(... @larsks,我的 papertrail 详细信息配置错误!这实际上是在记录到 papertrail,谢谢! 【参考方案1】:

这确实有效。我错误地错误配置了 papertrail 详细信息,因此我没有看到日志。

【讨论】:

...我错误地错误配置了文件记录的详细信息...“ – @dylanjha — |你有没有机会记得正确配置应该的细节?请问可以分享一下吗? TIA。 我的系统日志地址是错误的

以上是关于docker-compose 日志记录不适用于 syslog 选项的主要内容,如果未能解决你的问题,请参考以下文章

Spring Security 3 日志记录不适用于 Eclipse 中的 GAE

控制台目标日志记录不适用于 NUnit 测试用例源提供程序中调用的方法

日志模块不适用于 Python3

log4net managedcoloredconsole 不适用于动态创建

Elmah 适用于 localhost,但不适用于生产?

XMLHttpRequest 替换元素不适用于 LocalStorage