
Naviguer dans les logs d'un serveur avec journalctl et grep finit vite par
lasser, surtout quand les sources se multiplient : services systemd, fichiers,
conteneurs. Ce guide installe lazyjournal, une interface terminal
(TUI) qui rassemble toutes ces sources dans une seule vue, avec recherche
fuzzy, expressions régulières et coloration des lignes. Vous allez le
déployer proprement, comprendre son interface et maîtriser les raccourcis qui le
rendent rapide. Public visé : administrateurs Linux et DevOps qui vivent dans un
terminal.
Ce que vous allez apprendre
Section intitulée « Ce que vous allez apprendre »- Installer lazyjournal sans script piégé
- Lire l'interface et ses panneaux de sources
- Filtrer les logs en mode exact, fuzzy ou regex
- Naviguer au clavier avec les raccourcis essentiels
- Étendre l'usage aux conteneurs et aux hôtes distants
Qu'est-ce que lazyjournal ?
Section intitulée « Qu'est-ce que lazyjournal ? »lazyjournal est un explorateur de logs en terminal, écrit en Go et
distribué en binaire unique sans dépendance. Son idée : au lieu de retenir
les options de journalctl, de docker logs et de tail, vous ouvrez une
interface unifiée qui liste toutes les sources à gauche et affiche leur
contenu à droite. La sélection se fait aux flèches, la recherche se tape
directement.
L'outil ne se limite pas à systemd. La version 0.8 agrège les journaux
de journald, de l'audit (auditd), des fichiers du système, des
conteneurs Docker et Podman, des stacks Compose, des pods
Kubernetes, et sait même se connecter à un hôte distant en SSH. C'est
une couche de confort au-dessus d'outils que vous connaissez déjà, pas un
remplaçant : lazyjournal appelle journalctl et l'API Docker en arrière-plan.
Installer lazyjournal
Section intitulée « Installer lazyjournal »lazyjournal se résume à un exécutable. Le dépôt propose une commande
curl ... | bash, mais exécuter un script distant sans le lire est une
mauvaise habitude. Préférez le paquet officiel ou le binaire de la
release, que vous contrôlez avant de lancer.
Téléchargez le paquet depuis la release, puis installez-le :
curl -fsSLO https://github.com/Lifailon/lazyjournal/releases/download/0.8.6/lazyjournal-0.8.6-amd64.debsudo dpkg -i lazyjournal-0.8.6-amd64.debRécupérez le binaire Linux, rendez-le exécutable et placez-le dans le PATH :
curl -fsSL -o lazyjournal https://github.com/Lifailon/lazyjournal/releases/download/0.8.6/lazyjournal-0.8.6-linux-amd64chmod +x lazyjournalsudo mv lazyjournal /usr/local/bin/Si vous avez la chaîne Go installée, compilez depuis les sources :
go install github.com/Lifailon/lazyjournal@v0.8.6Vérifiez ensuite que l'installation a réussi :
lazyjournal --versionLa commande doit afficher 0.8.6. Lancez l'outil sans argument pour ouvrir
l'interface :
lazyjournalDécouvrir l'interface
Section intitulée « Découvrir l'interface »Au lancement, l'écran se divise en panneaux. La colonne de gauche empile les sources disponibles, la partie droite affiche le contenu de la source sélectionnée et sa barre de filtre.

La colonne de gauche regroupe trois listes, de haut en bas : les unités
systemd avec leur état coloré (running en vert, dead en rouge), les
journaux système horodatés, et les conteneurs Docker et Podman
détectés. La barre du bas récapitule la configuration active : mode tail,
intervalle de rafraîchissement, mode de couleur, et contextes Docker et
Kubernetes. Cette ligne d'état est utile pour comprendre pourquoi une source
s'affiche d'une certaine manière.
Filtrer les logs
Section intitulée « Filtrer les logs »Le filtrage est le coeur de l'outil. La barre de recherche, en haut à droite, propose trois modes que l'on fait défiler avec les flèches gauche et droite.
| Mode | Comportement | Quand l'utiliser |
|---|---|---|
| Default | Recherche exacte, sensible à la casse | Chercher un terme précis, un identifiant |
| Fuzzy | Approximative, insensible à la casse | Retrouver vite une ligne sans connaître l'orthographe exacte |
| Regex | Expression régulière | Motifs complexes : plages d'adresses IP, codes d'erreur |
Le mode fuzzy est le plus confortable au quotidien : taper sshfail
remontera les lignes contenant ssh et failed même séparées. Le mode
regex vise les recherches avancées, par exemple isoler toutes les réponses
HTTP en erreur avec \" 5[0-9]{2} .
Raccourcis clavier essentiels
Section intitulée « Raccourcis clavier essentiels »lazyjournal est pensé pour le clavier. Ces raccourcis couvrent l'essentiel de la navigation quotidienne.
| Touche | Action |
|---|---|
| Tab / Shift+Tab | Passer au panneau suivant ou précédent |
| Flèches haut/bas | Parcourir la liste ou les logs ligne par ligne |
| Shift+Flèches | Défilement rapide de 10 lignes |
| Enter | Ouvrir la source sélectionnée |
| Ctrl+R | Rafraîchir la source et aller en fin de log |
| Ctrl+D / Ctrl+W | Vider le champ de recherche |
| Ctrl+C | Quitter proprement |
La logique est celle des interfaces lazy* comme
lazydocker : Tab circule entre les
zones, les flèches parcourent, Enter ouvre. Quelques minutes suffisent pour
prendre le réflexe.
Aller plus loin
Section intitulée « Aller plus loin »Au-delà des journaux système, lazyjournal couvre des cas que journalctl ne
traite pas seul, ce qui en fait un couteau suisse pratique en exploitation.
-
Conteneurs : les logs Docker et Podman apparaissent dans la liste sans commande supplémentaire, aux côtés des services systemd.
-
Hôte distant : l'option
--sshouvre les journaux d'un serveur distant sans y installer quoi que ce soit, en réutilisant votre configuration SSH.Fenêtre de terminal lazyjournal --ssh "admin@192.168.1.50 -p 22" -
Coloration renforcée : l'option
--color-modeacceptetailspinoubatpour une mise en forme plus riche des logs, si ces outils sont présents.
Dépannage
Section intitulée « Dépannage »Ces trois symptômes relèvent tous de l'environnement d'exécution, jamais d'un défaut de l'outil. Les deux premiers sont des questions de droits : lire le journal système suppose d'appartenir au groupe systemd-journal, lister les conteneurs d'accéder au socket Docker. Vérifiez donc vos groupes avec id avant de chercher plus loin.
| Symptôme | Cause probable | Solution |
|---|---|---|
| Les journaux système sont vides | Droits insuffisants sur le journal | Ajouter l'utilisateur au groupe systemd-journal ou lancer avec sudo |
| Aucun conteneur listé | Accès au socket Docker manquant | Vérifier l'appartenance au groupe docker |
| L'affichage se déforme | Terminal trop étroit | Agrandir la fenêtre, lazyjournal s'adapte à la taille |
| La recherche ne trouve rien | Mode de filtre inadapté | Basculer en mode fuzzy avec les flèches gauche/droite |
À retenir
Section intitulée « À retenir »- lazyjournal est une TUI en binaire Go qui unifie journald, fichiers, Docker, Podman, Kubernetes et hôtes distants.
- Installer via le paquet
.debou le binaire de la release, jamais par un scriptcurl | bashnon relu. - Trois modes de recherche : exact, fuzzy (le plus pratique) et regex pour les motifs avancés.
- La navigation est au clavier : Tab entre panneaux, flèches pour parcourir, Enter pour ouvrir.
- L'option
--sshlit les journaux d'un serveur distant sans rien y installer.
Prochaines étapes
Section intitulée « Prochaines étapes »Plus d'infos
Section intitulée « Plus d'infos »- Dépôt GitHub de lazyjournal : code source, releases et documentation.