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.
kubernetes
google-kubernetes-engine
kubectl
Radio Nationale Publique
la source
la source
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.la source
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ù se100
trouve le nombre de lignes récentes à afficher.la source
attendez que les kubes lancent la capsule puis continuez ...
k8s_pod=some_pod kubectl get pods -w $k8s_pod | while read LOGLINE do [[ "${LOGLINE}" == *"Running"* ]] && pkill -P $$ kubectl done
journaux de queue
for line in $(kubectl get pods | grep $k8s_pod | awk '{print $1}'); do kubectl logs -f $line | tee logfile done
rechercher un indicateur de succès
tail logfile | grep successful! RESULT=$? exit $RESULT
la source
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
la source
Essaye ça,
journaux de queue des pods
kubectl --tail <"no of lines"> logs <"pod_name">
Exemple :
kubectl --tail 100 journaux app_pod
la source
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.
la source
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>
la source