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
これを試して、
ポッドからのテールログ
kubectl --tail <"no oflines">ログ<"pod_name">
例:
kubectl --tail100ログapp_pod