kubectl logs <pod-id>
배포에서 최신 로그를 가져옵니다.-버그에 대해 작업 중이며 런타임에 로그를 알고 싶습니다. 어떻게 연속 로그 스트림을 얻을 수 있습니까?
편집 : 마지막에 수정 된 질문.
답변:
kubectl logs -f <pod-id>
다음 -f
플래그 를 사용할 수 있습니다 .
-f, --follow=false: Specify if the logs should be streamed.
https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands#logs
kubectl logs --help
당신을 안내 할 것입니다 :
예:
# Begin streaming the logs of the ruby container in pod web-1
kubectl logs -f -c ruby web-1
플래그 :
-f, --follow[=false]: Specify if the logs should be streamed.
--since=10m
상대적인 시간 전부터 추가 하거나 시작할 수도 있습니다 .
k8s_pod=some_pod
kubectl get pods -w $k8s_pod | while read LOGLINE
do
[[ "${LOGLINE}" == *"Running"* ]] && pkill -P $$ kubectl
done
for line in $(kubectl get pods | grep $k8s_pod | awk '{print $1}'); do
kubectl logs -f $line | tee logfile
done
tail logfile | grep successful!
RESULT=$?
exit $RESULT
-f로 로그를 추적 할 수 있습니다.
kubectl logs -f <pod_name>
로그가 중지 된 경우 포드가 충돌하는 것 같습니다. 포드가 실제로 실행 중인지 확인할 수 있습니까? 나이를 확인하거나 :
kubectl describe deploy/ds <deploy_or_ds_name>?
또는 여러 컨테이너가있는 포드 내부의 컨테이너에 대한 로그를 확인할 수도 있습니다.
kubectl logs -f <pod_name> -c <container_name>
이 시도,
포드의 테일 로그
kubectl --tail < "no of lines"> 로그 < "pod_name">
예 :
kubectl --tail 100 개의 로그 app_pod