use*_*502 0 python docker kubernetes google-kubernetes-engine google-cloud-logging
我的标准输出日志未显示在Google Logs Viewer中或使用时kubectl logs <pod>。集群已启用云日志记录,并且流利的容器在每个节点上运行。
示例Python代码:
logger = logging.getLogger()
logger.setLevel(logging.INFO)
handler = logging.StreamHandler(sys.stdout)
handler.setLevel(logging.INFO)
logger.addHandler(handler)
logger.info("test log")
Run Code Online (Sandbox Code Playgroud)
他们的文档中的“ counter-pod”示例确实可以在我的集群上运行,因此流利的容器将拾取stdout并将其发送到Logs Viewer。
对我应该尝试的事情有什么建议吗?提前致谢。
日志肯定要输出,它们只是在运行时不显示kubectl logs <pod_name>。它们也不会显示在Google Logs Viewer中。
这是因为发送到stdout的日志只有在它们来自Docker容器入口点的过程中时才会被捕获。在shell中或通过cron作业完成的事情不会显示。
在我的情况下,我有一份计划工作,正在调用脚本。通过将脚本作为容器的入口点运行,日志可以正常显示。
| 归档时间: |
|
| 查看次数: |
968 次 |
| 最近记录: |