4.1 Notions de base de la commande docker logs
La commande docker logs
— un outil pratique pour surveiller et déboguer les conteneurs. Elle permet aux développeurs et administrateurs système de consulter les logs des conteneurs, ce qui aide à diagnostiquer les problèmes et analyser le fonctionnement des applications. Dans cette conférence, nous examinerons en détail comment utiliser la commande docker logs
, quels paramètres sont disponibles et comment gérer efficacement les logs.
La commande docker logs
affiche les logs d'un conteneur spécifié. Ces logs incluent tous les messages enregistrés par les processus à l'intérieur du conteneur dans les flux standards de sortie (stdout)
et d'erreur (stderr)
.
Synthaxe
docker logs [OPTIONS] CONTAINER
Où :
-
CONTAINER
: nom ou identifiant du conteneur pour lequel vous souhaitez voir les logs. -
OPTIONS
: paramètres supplémentaires pour configurer l'affichage des logs.
Exemple d'utilisation de base
Cette commande affichera tous les logs accumulés du conteneur my_container
.
docker logs my_container
4.2 Les paramètres de la commande docker logs
La commande docker logs
supporte plusieurs options qui permettent de personnaliser l'affichage des logs selon les besoins spécifiques.
1. Affichage des logs en temps réel
Pour afficher les logs en temps réel, on utilise le paramètre -f (follow)
. Ce paramètre permet de suivre les mises à jour des logs au fur et à mesure qu'elles arrivent, comme avec la commande tail -f
.
docker logs -f my_container
2. Limitation du nombre de lignes affichées
Vous pouvez limiter le nombre de lignes affichées par la commande docker logs
à l'aide du paramètre --tail
. Cela est utile si vous avez besoin uniquement des dernières lignes des logs, et non du journal complet.
docker logs --tail 100 my_container
Cet exemple affichera uniquement les 100 dernières lignes des logs du conteneur my_container
.
3. Affichage des logs depuis un certain moment
Le paramètre --since
permet d'afficher les logs depuis un moment précis. Vous pouvez spécifier le temps sous forme de timestamp (par exemple, 2023-07-20T15:00:00) ou sous forme relative (par exemple, 1h pour afficher les logs de la dernière heure).
docker logs --since "2023-07-20T15:00:00" my_container
Ou
docker logs --since 1h my_container
4. Affichage des logs jusqu'à un certain moment
Le paramètre --until
permet d'afficher les logs jusqu'à un moment précis. Le format du temps est similaire à celui du paramètre --since
.
docker logs --until "2023-07-20T16:00:00" my_container
Ou
docker logs --until 10m my_container
5. Fusion de stdout
et stderr
Par défaut, la commande docker logs
affiche à la fois le flux de sortie standard (stdout)
et le flux d'erreurs standard (stderr)
. Vous pouvez spécifier quels flux afficher en utilisant les paramètres --stdout
et --stderr
.
docker logs --stdout my_container
Cet exemple affichera uniquement les messages du flux de sortie standard.
4.3 Exemples d'utilisation
Exemple 1 : afficher les dernières lignes des logs et suivre les mises à jour
Cet exemple affiche les 50 dernières lignes des logs du container my_container et suit les nouvelles entrées en temps réel.
docker logs -f --tail 50 my_container
Exemple 2 : afficher les logs des dernières 24 heures
Cet exemple affiche tous les logs accumulés au cours des dernières 24 heures pour le container my_container
.
docker logs --since 24h my_container
Exemple 3 : afficher les logs pour une période spécifique
Cet exemple affiche les logs enregistrés entre 15h00 et 16h00 le 20 juillet 2023 pour le container my_container
.
docker logs --since "2023-07-20T15:00:00" --until "2023-07-20T16:00:00" my_container
4.4 Scénarios pratiques
1. Débogage de l'application
Si ton application ne fonctionne pas correctement ou « crashe », consulter les logs peut t'aider à diagnostiquer le problème. Utilise la commande docker logs pour trouver des erreurs et avertissements dans les logs.
docker logs my_app_container
2. Surveillance du serveur
Pour surveiller le fonctionnement du serveur en temps réel, tu peux utiliser la commande docker logs
avec l'option -f
.
docker logs -f web_server_container
Cela permet de suivre les requêtes et réponses du serveur en temps réel.
3. Analyse des performances
Si tu veux analyser les performances de ton application sur une période donnée, utilise les paramètres --since
et --until
.
docker logs --since "2023-07-20T00:00:00" --until "2023-07-20T23:59:59" my_app_container
GO TO FULL VERSION