Closed loveu5522 closed 4 months ago
不太理解,按 docker 的官方文档所述:
By default, docker logs shows the command's STDOUT and STDERR.
也就是我只要把日志打到标准输出就理应能正常被 docker logs 捕获,是群晖 NAS 有做什么额外魔改,导致我必须要在程序侧做修改才能适配它的 log?
具体我也不懂,就是群辉NAS 7.2系统,docker里看不到日志,所以可否设置输出日志为文件,这样后期可以排查和维护
如果要把日志输出到文件,直接重定向 stdout 和 stderr 到文件应该就可以了。 目前 docker 容器默认的 entry point 是:
ENTRYPOINT [ "/app/bili-sync-rs" ]
基本逻辑是在启动命令后追加 > /path/to/log 2>&1
来将 stdout 和 stderr 重定向到文件,使用命令行执行是可以自定义 entrypoint 和 cmd 的,群晖具体要怎么设置需要你自己看一下。
我个人不推荐这么搞,这样直接打到文件会缺失 docker logs 的很多功能(比如限制日志总大小之类的)。我还是认为应该是容器启动配置的问题,没理由打到 stdout 就捕获不到..
让朋友试了试,去掉 compose 文件中的:
logging:
driver: "local"
应该就可以了。
群辉NAS 日志不显示,如何设置日志输出到文件,这样后期可以查看