Il modulo logging di Python registra l'esecuzione e salva i log
Testo scritto con l’intelligenza artificiale a partire da una fonte citata, senza revisione umana prima della pubblicazione.
Usi il logging integrato per tracciare eventi e errori, configurare livelli e scrivere file di log senza pacchetti esterni.
Uno script di import entra in errore alle 3 di notte. Al mattino trovi la finestra chiusa e nessuno in ufficio sa cosa è successo. I log raccontano la sequenza degli eventi. In Python li ottieni con logging, parte della libreria standard, senza installare nulla1.
Con logging registri eventi ed errori mentre il programma gira. Usi messaggi chiari, rileggi dopo, ricostruisci cause e tempi. La configurazione resta esterna alla logica: cambi quanto vedi, non il codice che genera i messaggi1.
Bastano tre scelte, sempre le stesse:
- livello: filtra quanta verbosità vuoi, dal minimo al dettagliato
- formato: impone coerenza a data, livello, testo
- destinazione: invia i messaggi in console o su file, così restano dopo la chiusura
Questa struttura separa contenuto, presentazione e persistenza. Funziona in sessione interattiva e in script eseguiti senza presidio1.
Scrivere su file è un uso tipico. I messaggi diventano uno storico che puoi confrontare tra run. Vedi quando compare un errore, in quale punto, con quale contesto. Se alzi il livello, ottieni una cronaca più fitta. Se lo abbassi, tieni solo ciò che serve in operatività1.
Esempio minimo
import logging
logging.basicConfig(filename="app.log", level=logging.INFO,
format="%(asctime)s %(levelname)s %(message)s")
logging.info("Avvio applicazione")
Il tutorial di Real Python mostra gli esempi nella REPL standard. Fornisce anche uno script completo con configurazione e utilizzo, che puoi scaricare dai materiali collegati e usare come base per un progetto1. Vedi il percorso nel tutorial: parti con un filtro sobrio, aggiungi un formato con data e livello, poi scrivi su file per avere uno storico consultabile1.
La raccomandazione è netta: preferisci logging a print(). Con logging controlli la verbosità senza toccare le chiamate che generano i messaggi. Cambi la configurazione quando ti serve più o meno dettaglio. Nel tempo riduci il carico di manutenzione e mantieni uno standard unico per raccolta e consultazione1.
Usare una libreria dedicata porta due vantaggi operativi: messaggi strutturati e coerenza tra ambienti. Il formato uniforme velocizza la lettura da riga di comando e l’analisi su file. La stessa politica di raccolta si applica in sviluppo, test e produzione con differenze minime di configurazione1.
Chi adotta logging presto evita il punto cieco dei bug “fantasma”. Quando l’applicazione si chiude senza output a schermo, il file di log resta e racconta l’accaduto.
Fonti
Come è nato questo articolo Scritto da un sistema di intelligenza artificiale, con controlli automatici
Millebit non ha giornalisti che scrivono gli articoli: li scrive un motore editoriale basato su modelli di intelligenza artificiale, a partire dalle fonti elencate qui sopra. Prima di uscire, ogni testo passa questi controlli:
- Fedeltà alle fonti. Un secondo passaggio toglie ogni affermazione che le fonti non sostengono. Valutazione su questo pezzo: 9/10.
- Anti-cliché. Un filtro scarta frasi fatte, enfasi e tic della prosa artificiale: superato.
- Giudizio editoriale. Un modello valuta il pezzo su sette criteri (apertura, chiarezza, economia, concretezza, voce, struttura, fedeltà) e sotto 7,8/10 non si pubblica. Questo articolo ha preso 7,8/10 dopo 2 revisioni.
I controlli riducono gli errori ma non li eliminano: un modello può fraintendere una fonte. Per le decisioni importanti, risali alla fonte originale. Se trovi un errore, segnalacelo.
Per vedere Millebit nelle notizie principali di Google, aggiungilo alle tue fonti preferite. Oppure segui l’edizione di oggi, il feed RSS o La Sintesi.