docker 事件存储在哪里?它们可以重定向到系统日志服务器吗?

docker 事件存储在哪里?它们可以重定向到系统日志服务器吗?

我有一台正在运行 docker 的服务器。我可以使用该命令docker events来监视发生的事件。但我也可以使用命令选项--since <timestamp>列出以前发生的事件。

# docker events --since '2022-03-20'
2022-03-22T23:56:47.734684472Z network connect daee956f7a48538470209a02318f9312)
2022-03-22T23:56:47.975103504Z container start 8245dab2d81075a856594bb164be34ac)
2022-03-25T06:25:07.473690045Z container pause 8245dab2d81075a856594bb164be34ac)
2022-03-25T06:25:18.728654844Z container unpause 8245dab2d81075a856594bb164be34)
2022-03-25T06:25:26.919184476Z container exec_create: /bin/sh  8245dab2d81075a8)
2022-03-25T06:25:29.068042340Z container exec_start: /bin/sh  8245dab2d81075a85)

所以事件必须存储在某个地方。它们存储在哪里?我看到有一个<contaniner-id>-json.log但它是空的。

作为后续问题。我可以将这些事件日志重定向/复制到系统日志服务器吗?

答案1

据我所知,由于我有同样的需求,Docker 团队对此进行了讨论,并决定这将导致大量的日志文件,并且对任何人都没有什么用处。然后门票是关闭

我看不出对此的态度有任何改变。有很多方法可以将事件流输入到其他日志记录/监控/仪表板工具中,因此也许 Docker 世界已经学会了接受它。

就我个人而言,我将编写一个systemd服务来观看流、修剪数据并将其写入日志并让其logrotate处理:)

相关内容