Python logs

Photo by Markus Spiske on Unsplash

In questi ultimi tempi sto facendo grande uso di Python per alcuni progetti personali e per alcune cose che usiamo in Sketchin per muovere dati da una parte all’altra facendo un pochino di analisi.

Da sempre sono stato un grande fanatico dei file di log per seguire l’esecuzione dei programmi che sto scrivendo.

Per questa ragione il mio personale template per la scrittura di applicazioni da linea di comando contiene delle funzioni dedicate al logging che ho curato nel tempo e che soddisfano i miei requisiti.

Per questo genere di cose ho sempre utilizzato la libreria logging. Non appena la mia applicazione parte configuro i miei logging handler, tipicamente uno per la console ed uno per un file, e definisco il formato del mio log.

Salvo casi particolari il formato di log che utilizzo riporta il tempo dell’evento, il thread in cui è avvenuto l’evento, il nome della funzione, il numero di linea all’interno del file sorgente, il livello di debug ed il messaggio vero e proprio.

L’unica cosa che mi rimane da fare è impostare i criteri di rotation dei file di log.

Sono poche righe di codice e funzionano alla perfezione.

Recentemente ho scoperto la libreria loguru che nativamente fa quello che ho sempre fatto con una sola linea di comando.

Loguru ha tutta una serie di funzionalità che potrei, abbastanza semplicemente, implementare con logging ma che richiederebbe tempo che posso quindi evitare di spendere.

La possibilità di evidenziare alcuni messaggi di log con un colore, la possibilità di serializzare il messaggio di log, una più potente formattazione dei messaggi di log, eccezioni estremamente descrittive e tante altre cosette che possono tornare utili.

Se vi interessa trovate la documentazione qui: Loguru

0 0 votes
Article Rating
Subscribe
Notify of
guest

0 Commenti
Newest
Oldest Most Voted
Inline Feedbacks
View all comments