Logging strutturato verso il client
Emetta messaggi di log con diversi livelli tramite il protocollo.
Logging strutturato verso il client è una lezione MCP Academy gratuita su CoddyKit. Questa è la lezione 3 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento MCP Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso MCP Academy include 4 lezioni in totale.
Log visibili al client
Stampare nel terminale aiuta solo Lei. MCP consente al server di inviare messaggi di log tramite il protocollo, così anche l'app host può mostrarli.
La notifica message
I log viaggiano come una notifica notifications/message. Contiene un livello, un nome opzionale del logger e i dati che desidera registrare.
{"method": "notifications/message",
"params": {"level": "info", "data": "Indexing started"}}Usare il Context
All'interno di uno strumento, accede al logging tramite l'oggetto Context, lo stesso riferimento usato per l'avanzamento. Non è necessaria alcuna configurazione aggiuntiva.
from mcp.server.fastmcp import Contextctx.info per gli aggiornamenti
L'helper più comune è ctx.info. Lo utilizzi per le normali note di stato previste, che aiutano l'utente a seguire ciò che sta facendo lo strumento.
await ctx.info("Loaded 120 records from disk")ctx.debug per i dettagli
Ricorra a ctx.debug quando desidera tracce dettagliate, come un valore analizzato o un ramo scelto, che risultano troppo rumorose nell'uso quotidiano.
await ctx.debug(f"chosen strategy = {strategy}")ctx.warning per le anomalie
Utilizzi ctx.warning quando qualcosa non è corretto ma può essere recuperato, ad esempio un campo opzionale mancante che ha sostituito con un valore predefinito.
await ctx.warning("timeout missing, using 30s default")ctx.error per gli errori
Chiami ctx.error per i problemi reali. Informa il client che un passaggio non è riuscito, separatamente dal sollevamento di un'eccezione che termina la chiamata.
await ctx.error("upstream API returned 503")Livelli di gravità standard
MCP segue la familiare scala syslog: debug, info, notice, warning, error, critical e livelli superiori. I client possono ordinare e colorare i messaggi in base al livello.
Assegnare un nome al logger
Molti helper accettano un nome di logger, così i messaggi possono essere raggruppati per componente, proprio come avviene nel modulo standard di logging di Python.
await ctx.info("cache miss", logger="db")Non registrare mai segreti
I messaggi di log escono dal processo e raggiungono il client, quindi li consideri visibili. Non scriva mai in un log segreti come token o password.
I log sono notifiche
Come l'avanzamento, ogni log è una notifica, quindi non blocca mai lo strumento né si aspetta una risposta. Può registrare messaggi liberamente mentre il lavoro procede.
await ctx.info("step 1 done")
await ctx.info("step 2 done")Verifica rapida
Scelga l'helper corretto per i normali aggiornamenti di stato.
Riepilogo: logging
Ora sa emettere log con diversi livelli usando ctx.info, debug, warning ed error, assegnare nomi ai logger e tenere fuori i segreti. Ottimi progressi!
Impara Python con un tutor IA — gratis
Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.
- Corsi
- 30
- Lezioni
- 120
Domande Frequenti
La lezione «Logging strutturato verso il client» è gratuita?
Sì — il testo completo di «Logging strutturato verso il client» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso MCP Academy, passa a CoddyKit PRO. Il corso MCP Academy include 4 lezioni in totale.
Cosa imparerò in «Logging strutturato verso il client»?
Emetta messaggi di log con diversi livelli tramite il protocollo. Eserciti MCP Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare MCP Academy?
Non è richiesta alcuna esperienza precedente. MCP Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 3 di 4.
Quanto tempo richiede la lezione «Logging strutturato verso il client»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione MCP Academy?
Sì. Ogni lezione MCP Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Inviare l'avanzamento delle attività lunghe
- Gestire le richieste di annullamento
- Logging strutturato verso il client
- Impostare i livelli di log in esecuzione