Site icon Tosolini.info

Linux: log file navigator

Nell’articolo precedente avevo mostrato come fosse possibile colorare qualcosa all’interno di un file di LOG utilizzando Perl. Tuttavia si trattava di una soluzione estemporanea che può andare bene in situazioni del tutto occasionali.

Se invece siamo soliti guardare file di LOG la soluzione che prospetto oggi è decisamente migliore. Si tratta di un progetto Open Source che si chiama “lnav” che sta per la contrazione di “Log file NAVigator“. L’applicativo è presente nei maggiori repository di Linux, ad esempio nella classica Debian / Ubuntu, basta dare il solito “apt install lnav” e per quanto ho potuto apprezzare nelle varie installazioni dove l’ho testato, richiede generalmente solo una libreria aggiuntiva. Questo per dire che sul sistema è decisamente limitata la richiesta di dipendenze esterne da caricare.

Il comando con cui si attiva è:

lnav /path/file/del/log

Quello che emerge è un file di LOG, in una sorta di interfaccia molto simile a “top“, colorato in base ad una serie di condizioni che già a livello base aiutano a leggere in modo più efficiente ed efficace la mole di dati che abbiamo davanti.

Ovviamente non è solo una questione di colore. Infatti LNAV riesce a “capire” di che file di LOG si tratta, visto che generalmente i questi file sono standard, e quindi in base alla loro tipologia mostra una colorazione differente.

La parte interessante è che LNAV può essere usato in modo del tutto trasversale a CAT, TAC, TAIL e GREP come se in realtà stessimo usando tutti questi comandi assieme. E già questo può essere una motivazione più che valida per installare questo applicativo.

Infatti noterete che non appena viene scritta una nuova riga, questa compare immediatamente come se avessimo impartito il classico “tail -f“. Allo stesso tempo se con le frecce o il mouse ci muoviamo verso l’alto, possiamo leggere il contenuto passato come se avessimo dato un comando CAT o TAC.

Errori

Siccome una parte consistente è cercare gli errori all’interno dei LOG, questo aspetto gode di particolare attenzione “nativa“. Infatti già sul fondo della finestra vediamo se si sono verificati degli errori e in caso positivo ci dice persino quanti per minuto!

Per “ciclare” sarà sufficiente premere il tasto “e” per andare all’errore più vicino, continuando a premere questo tasto si andrà a quello successivo e così via. Per retrocedere, basterà premere “shift + e“.

In modo similare ad Error, possiamo cercare i Warning con “w” e “shift + w“.

Cercare qualcosa

Se vogliamo cercare qualcosa basta premere il tasto “/” scrivere il termine e dare invio. Possiamo anche inserire espressioni regolari. Per andare al termine successivo premeremo il tasto “n” e per tornare a quello precedente “shift + n“.

Muoversi nel LOG.

A questo punto sicuramente vi sarete resi conto che è facile perdersi nel file di LOG. Generalmente è presente la funzionalità del mouse, così basta scrollare, ma chiaramente nel caso di un Error o di una ricerca si salta in una posizione indefinita. Con il tasto “home” oppure “g“, nel caso dei laptop senza tastierino numerico, andiamo all’inizio del file. Oppure se dobbiamo andare alla fine il tasto “End” o “G“.

Probabilmente avrete anche notato che le righe spesso debordano a destra del monitor, infatti spostandosi con le frecce possiamo visionare il testo verso destra, ma possiamo anche attivare il “word wrap” cioè il testo viene messo a capo della riga. Questo lo otteniamo con la sequenza “CTRL + W“. Ripetendo la sequenza di tasti lo annulliamo.

Bookmark

Passiamo a cose decisamente non usuali. Possiamo infatti mettere un bookmark ad una riga! anzi più di una riga anche una sequenza di righe… ma… dobbiamo tenere conto che siamo in un programma a linea di comando, quindi la riga dove andremo a mettere il marcatore sarà quella più in alto. Questo perché non è presente un puntatore e quindi il programma ha delle limitazioni intrinseche. Di seguito la lista dei comandi:

Con “u” poi potremo spostarci al marcatore successivo e “shift + u” a quello precedente.

Comandi

Il programma vede poi una corposa sezione di comandi che si possono impartire dopo aver premuto il tasto “:“. La lista è lunghissima e rimando alla documentazione ufficiale, di fatto oltre a quanto prospettato fino ad ora esistono una serie di casistiche decisamente articolate, ma comunque utili in particolari situazioni.

Link e documentazione

Lascio i link alla documentazione, e alla pagina ufficiale del progetto oltre che la pagina Github.

Exit mobile version