K8s 通过标签选择器查询日志

1、查询node节点、pod及选择器的日志.

kubectl get nodes --show-labels

# kubectl -n kube-system get pod --show-labels

kubectl -n kube-system  -l name=doctron-deploy logs -f

场景
当pod处于crash状态的时候,容器不断重启,此时用 kubelet logs 可能出现一直捕捉不到日志。

解决方法:
kubectl previous 参数作用:如果为true,则打印pod中容器的上一个实例的日志(如果存在)

单容器pod:
kubectl logs pod-name --previous

多容器pod:
kubectl logs pod-name --previous -c container-name

结论:
kubelet读的是 /var/log/pods/ 下的日志文件,–previous 读的也是 /var/log/pods/ 下的日志文件,且专门有个链接文件来指向上一个退出容器的日志文件,以此来获取容器崩溃前的日志。

posted @ 2026-08-14 16:13  梦徒  阅读(1)  评论(0)    收藏  举报