获取日志
本文介绍如何通过3种方案获取 ONES 日志,root登录服务器后操作,如下命令在宿主机上执行即可、无需进入容器内操作;当无法快速恢复业务时,需采集日志给ONES工程师进一步分析。
1. 获取运行时日志
本节介绍如何使用 kubectl logs 获取 Pod 的实时日志与历史日志,如下命令默认将日志保存到服务器的/tmp目录下。
1.1 获取当前运行日志
kubectl logs -n ones -l app=project-api -c project-api > /tmp/project-api.log
1.2 获取pod上一次重启前的日志
kubectl logs -n ones -l app=project-api -c project-api --previous --timestamps > /tmp/project-api-previous.log
1.3 不确定 Pod 名称或 Label 时
kubectl get pod -n ones |grep -i project
kubectl logs -n ones project-api-**** -c project-api > /tmp/project-api.log
2. 获取临时日志文件
在 K3S 中,部分组件的容器日志会通过 symlink 映射在 /var/log/pods 目录下,第一个方法找不到所需的日志,可参考该方法。
2.1 进入日志目录
cd /var/log/pods