Stern - Afficher les logs de plusieurs pods kubernetes
Publié le : 17 octobre 2019 | Mis à jour le : 27 juin 2023A l’image de multitail qui permet d’afficher un ou plusieurs fichiers, stern va vous permettre de concaténer les logs de plusieurs containers en un seul flux.
Découverte de Stern
- Pour permettre de déboguer rapidement stern va afficher les logs dans un code couleur.
- Stern va prendre en argument un simple paramètre qui peut-être un mot-clé commun de vos pods. Par exemple si vous avez les pods suivants :
drone-drone-server-6569df48f8-s4vf5 1/1 Running 1 8d
nfs-client-provisioner-865d85667d-zpw2z 1/1 Running 1 8d
gogs-88d668695-696s7 1/1 Running 1 8d
local-docker-registry-7fdbcc5648-6j6sv 1/1 Running 1 8d
blog-deployment-766bf75767-v9654 1/1 Running 0 11h
blog-deployment-766bf75767-x9p7w 1/1 Running 0 11h
blog-deployment-766bf75767-6rsqd 1/1 Running 0 11h
Et bien en tapant la commande suivante :
stern blog
Vous obtiendrez les logs de tous les pods contenant le mot blog. De même si un pod vient à mourir et à être remplacé par un nouveau, stern ajoute automatiquement ce nouveau flux de logs.
Options importantes
Option | Description |
---|---|
–exclude-container | Permet d’exclude des containers d’un pod contenant des sidecars |
–container-state | Permet de filter en fonction de l’état du pod : running, waiting or terminated. Par défaut running. |
–since | N’affiche que les dernières logs depuis le temps indiqué : 52, 2m, or 3h. |
–exclude | Permet d’excludre certaines lignes. Vous pouvez en ajouter plusieurs. |
–namespace | Change de namespace |
–kubeconfig | Le fichier de config à prendre en compte |
–all-namespaces | Affiche les logs de tous les namespaces |
–tail n | N’affiche que les n lignes |
–color | Force le jeu de couleur ou pas. auto, always, never |
–output | Format de sortie : default, raw, json |
Installation de stern
wget https://github.com/wercker/stern/releases/download/1.11.0/stern_linux_amd64 -o stern
sudo install stern /usr/local/bin
Plus d’infos sur le repo de stern