kubectl logs <pod-id>
obtient les derniers journaux de mon déploiement - Je travaille sur un bogue et je souhaite connaître les journaux à l'exécution - Comment puis-je obtenir un flux continu de journaux?
edit: question corrigée à la fin.
kubectl logs <pod-id>
obtient les derniers journaux de mon déploiement - Je travaille sur un bogue et je souhaite connaître les journaux à l'exécution - Comment puis-je obtenir un flux continu de journaux?
edit: question corrigée à la fin.
Réponses:
kubectl logs -f <pod-id>
Vous pouvez utiliser le -f
drapeau:
-f, --follow=false: Specify if the logs should be streamed.
https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands#logs
kubectl logs --help
vous guidera:
Exemple:
# Begin streaming the logs of the ruby container in pod web-1
kubectl logs -f -c ruby web-1
Drapeaux:
-f, --follow[=false]: Specify if the logs should be streamed.
Vous pouvez également ajouter --since=10m
ou ainsi commencer à partir de cette heure relative.
J'avais besoin d'accéder aux journaux d'un pod de longue durée et j'ai -f
commencé à diffuser des journaux d'il y a quelques jours, ce qui aurait pris des heures pour arriver à l'endroit où je devais voir (juste les dernières minutes environ).
Il y a un --since=10m
drapeau, mais cela n'a pas semblé fonctionner pour moi.
Ce qui a fait des merveilles --tail=100
, c'est où se 100
trouve le nombre de lignes récentes à afficher.
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
Si vous souhaitez obtenir le flux de journaux à partir d'une application multi-pod, vous pouvez utiliser kubetail , par exemple:
kubectl get pods
NAME READY STATUS RESTARTS AGE
app2-v31-9pbpn 1/1 Running 0 1d
app2-v31-q74wg 1/1 Running 0 1d
kubetail app2
Avec cette commande, kubetail est tailing les journaux à partir pod App2-v31-9pbpn et App2-V31-q74wg
Essaye ça,
journaux de queue des pods
kubectl --tail <"no of lines"> logs <"pod_name">
Exemple :
kubectl --tail 100 journaux app_pod
kubctl logs -f = true [nom-pod] -c [nom-conteneur]
Si vous n'avez qu'un seul conteneur sur le pod, le nom du conteneur n'est pas nécessaire, sinon utilisez le nom du conteneur avec l'option -c. -f ie follow est faux par défaut. Si vous ne le définissez pas sur true, vous obtiendrez un instantané de vos journaux de conteneur.
Vous pouvez suivre les journaux avec -f
kubectl logs -f <pod_name>
Si les journaux sont arrêtés, il est fort probable que le pod plante, pouvez-vous vérifier si le pod fonctionne réellement ou non? Vérifiez peut-être l'âge ou:
kubectl describe deploy/ds <deploy_or_ds_name>?
Ou vous pouvez également vérifier les journaux pour le conteneur à l'intérieur du pod car il y a plusieurs conteneurs
kubectl -f <pod_name> -c <container_name>