关于我的Docker日志,我遇到了the observer effect的感觉。我正在运行docker-compose logs -f containerName
,日志开始打印到我的控制台。我碰巧在JavaScript应用程序中使用了热重载,因此修改文件然后保存将触发热重载,该重载将记录在我关注的日志中。热重装通过在browserSync上调用的gulp任务控制。
如果仅运行几次,则热重装似乎会按预期出现在日志中。如果我等待较长的时间(分钟),则触发热重载不再出现在日志中。如果我退出跟踪日志,然后立即开始再次跟踪日志,则可以看到记录了最新的热重装,但以前没有显示。这使我相信,可能与进程和文件描述符有关的某种原因导致了此现象。
几乎就像是正在运行其后的日志的进程不再从日志中接收输出。这似乎也不一致,因为每次运行docker logging命令时,在停止记录之前,都会记录不同数量的热重载。关于如何确保我的日志始终打印新日志信息的任何建议,将不胜感激。另外,对导致此基本行为的原因进行解释将是额外的好处。
运行“ Docker桌面”(以前称为Docker for Mac?)
版本2.0.0.0-mac78(28905)
引擎:18.09.0