我有一个包含JVM进程的Docker容器。当进程结束时,容器将完成并停止。
尽管很少见,但我的JVM可能会突然发生硬故障,例如OutOfMemoryError
。当这种情况发生时,我的容器就像正常的JVM退出一样停止运行。
我可以为普通的JVM日志记录设置分布式日志等机制,但在这种硬故障情况下,我想知道JVM的最后话语,这些话通常会在stderr上被输出。
是否有一种方式可以了解为什么我的容器停止运行,查看日志、stderr或类似的内容?
我有一个包含JVM进程的Docker容器。当进程结束时,容器将完成并停止。
尽管很少见,但我的JVM可能会突然发生硬故障,例如OutOfMemoryError
。当这种情况发生时,我的容器就像正常的JVM退出一样停止运行。
我可以为普通的JVM日志记录设置分布式日志等机制,但在这种硬故障情况下,我想知道JVM的最后话语,这些话通常会在stderr上被输出。
是否有一种方式可以了解为什么我的容器停止运行,查看日志、stderr或类似的内容?
docker logs [ContainerName]
或docker logs [ContainerID]
命令。 您可以使用docker ps -a
查看它们。docker logs [ContainerName]
没有返回任何内容怎么办? - Max Wong
docker logs
中会显示什么?您尝试订阅事件了吗?docker
守护程序公开了一个API:https://docs.docker.com/reference/api/docker_remote_api_v1.16/ - Andy