Quand on développe, on passe beaucoup de temps à consulter et à chercher des informations dans les fichiers de logs des produits ou du système.

J'ai longtemps utilisé glogg et maintenant il me parait lourd et peu efficace.

lnav que je vais vous présenter maintenant est plus léger et s'avère très performant grâce à de nombreux raccourcis clavier.

Au lancement, on obtient le résultat suivant:

lnav.png

Vous constatez qu'on est au début du fichier. Pour naviguer dans le fichier, on peut utiliser:

  • g pour aller au début
  • G pour aller à la fin
  • Page up ou Backspace/ Page down ou Espace pour naviguer de page en page

Mais ce qu'il y a de commode, c'est que lnav permet d'aller à la prochaine erreur, en tappant 'e' ou au prochain warning en tappant 'w'.

De la même façon, 'E' vous positionne sur l'erreur précédente et 'W' sur le warning précédent.

On peut également naviguer dans le temps, c'est à dire que la touche 'o' vous fait avancer de 24h dans le fichier et 'O' le fait dans le sens inverse. Si l'intervalle recherché est de 24h, il faut utiliser respectivement 'd' ou 'D'.

lnav vous autorise aussi à rechercher un motif en tappant /<regexp>, les regular expressions acceptées étant les PCRE (Perl-Compatible Regular Expressions).

Autre fonctionnalité intéressante, on peut marquer une ligne pour la retrouver plus tard avec la touche 'm'. Ensuite l'appui sur les touches 'u' et 'U' permet de naviguer d'une ligne marquée à l'autre. C'est très utile pour débugger.

Bref, lnav devient rapidement un outil indispensable du quotidien du développeur, et le fait qu'il soit utilisable directement dans un terminal est un atout non négligeable.

Je n'ai évidemment pas décrit ici tout ce qu'on faire avec, pour découvrir d'autres fonctionnalités, vous pouvez utiliser la touche '?' au démarrage de lnav.