MCP Academy · Lekcja

Ustrukturyzowane logowanie do klienta

Wysyłaj przez protokół komunikaty dziennika z poziomami ważności.

Lekcja 3 z 413 kroki

Ustrukturyzowane logowanie do klienta to bezpłatna lekcja MCP Academy na CoddyKit. To lekcja 3 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej MCP Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs MCP Academy zawiera 4 lekcji w sumie.

Logi widoczne dla klienta

Drukowanie w terminalu pomaga tylko Tobie. MCP pozwala serwerowi wysyłać komunikaty log przez protokół, aby aplikacja hosta również mogła je wyświetlać.

Powiadomienie message

Logi są przesyłane jako powiadomienie notifications/message. Zawiera ono poziom, opcjonalną nazwę rejestratora oraz dane, które chcesz zapisać.

{"method": "notifications/message",
 "params": {"level": "info", "data": "Indexing started"}}

Używaj obiektu Context

Wewnątrz narzędzia uzyskujesz dostęp do logowania przez obiekt Context — ten sam uchwyt, którego używasz do raportowania postępu. Nie trzeba wykonywać dodatkowej konfiguracji.

from mcp.server.fastmcp import Context

ctx.info do aktualizacji

Najczęściej używanym pomocnikiem jest ctx.info. Używaj go do zwykłych, oczekiwanych komunikatów o stanie, które pomagają użytkownikowi śledzić działanie narzędzia.

await ctx.info("Loaded 120 records from disk")

ctx.debug do szczegółów

Sięgaj po ctx.debug, gdy potrzebujesz szczegółowych śladów, takich jak sparsowana wartość lub wybrana gałąź, które na co dzień powodują zbyt dużo szumu.

await ctx.debug(f"chosen strategy = {strategy}")

ctx.warning dla niespodzianek

Używaj ctx.warning, gdy coś jest nieprawidłowe, ale można to naprawić, na przykład gdy brakuje opcjonalnego pola i uzupełniasz je wartością domyślną.

await ctx.warning("timeout missing, using 30s default")

ctx.error dla awarii

Wywołuj ctx.error w przypadku rzeczywistych problemów. Informuje on klienta, że krok się nie powiódł, niezależnie od zgłoszenia wyjątku, które kończy wywołanie.

await ctx.error("upstream API returned 503")

Standardowe poziomy ważności

MCP stosuje dobrze znaną skalę syslog: debug, info, notice, warning, error, critical i wyższe. Klienci mogą sortować komunikaty według poziomu i oznaczać je kolorami.

Nadaj nazwę rejestratorowi

Wiele pomocników przyjmuje nazwę logger, dzięki czemu komunikaty można grupować według komponentu, podobnie jak robi to standardowy moduł logging języka Python.

await ctx.info("cache miss", logger="db")

Nigdy nie loguj sekretów

Komunikaty logów opuszczają Twój proces i trafiają do klienta, więc traktuj je jako widoczne. Nigdy nie zapisuj w logu sekretów, takich jak tokeny czy hasła.

Logi są powiadomieniami

Podobnie jak postęp, każdy log jest powiadomieniem, więc nie blokuje narzędzia ani nie oczekuje odpowiedzi. Możesz swobodnie logować przebieg pracy.

await ctx.info("step 1 done")
await ctx.info("step 2 done")

Szybkie sprawdzenie

Wybierz właściwego pomocnika do rutynowych aktualizacji stanu.

Podsumowanie: logowanie

Potrafisz już emitować logi z poziomami za pomocą ctx.info, debug, warning i error, nadawać nazwy rejestratorom oraz chronić sekrety. Świetne postępy!

Bezpłatny start

Ucz się Python dzięki korepetycjom AI — za darmo

Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.

Kursy
30
Lekcje
120

Często zadawane pytania

Czy lekcja „Ustrukturyzowane logowanie do klienta” jest bezpłatna?

Tak — pełny tekst „Ustrukturyzowane logowanie do klienta” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu MCP Academy, przejdź na CoddyKit PRO. Kurs MCP Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Ustrukturyzowane logowanie do klienta”?

Wysyłaj przez protokół komunikaty dziennika z poziomami ważności. Ćwiczysz MCP Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć MCP Academy?

Nie wymagamy żadnego doświadczenia. MCP Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 3 z 4.

Ile czasu zajmuje lekcja „Ustrukturyzowane logowanie do klienta”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji MCP Academy?

Tak. Każda lekcja MCP Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Wysyłanie postępu długich zadań
  2. Obsługa żądań anulowania
  3. Ustrukturyzowane logowanie do klienta
  4. Ustawianie poziomów logowania w czasie działania
← Powrót do MCP Academy