Logi strukturalne dla predykcji
Rejestruj dane wejściowe, wyjściowe i opóźnienie jako JSON
Logi strukturalne dla predykcji to bezpłatna lekcja MLOps Academy na CoddyKit. To lekcja 1 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 MLOps Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs MLOps Academy zawiera 4 lekcji w sumie.
Dlaczego rejestrować predykcje
Gdy model obsługuje prawdziwych użytkowników, nie możesz obserwować go ręcznie. Logging każdej predykcji pozwala sprawdzić, jak model faktycznie działa na produkcji. 📊
Zwykły tekst jest problematyczny
Wiersz logu w rodzaju „otrzymano żądanie, zwrócono 0.91” jest dla Ciebie czytelny, ale bardzo trudny do przeszukiwania na dużą skalę. Maszyny potrzebują structure, a nie prozy.
Logowanie strukturalne
Structured logging oznacza, że każdy wiersz logu jest małym obiektem nazwanych pól, a nie zdaniem. Narzędzia mogą wtedy natychmiast filtrować, grupować i agregować dane.
JSON to właściwy format
Najczęściej wybiera się jeden obiekt JSON w każdym wierszu. Każde pole ma klucz, więc systemy logowania za każdym razem analizują je w ten sam sposób.
{"event": "prediction", "model": "churn-v3", "score": 0.91}Co rejestrować dla każdej predykcji
Dla każdego wywołania zapisz inputs, wynik oraz czas wykonania. Razem pozwalają one później debugować, przeprowadzać audyty i mierzyć jakość.
Rejestruj opóźnienie
Zawsze zapisuj latency w milisekundach. To najwcześniejszy sygnał ostrzegawczy, że model lub jego serwer zaczyna mieć problemy.
import time
start = time.perf_counter()
score = model.predict(x)
latency_ms = (time.perf_counter() - start) * 1000Dodaj identyfikator do śledzenia
Każdemu żądaniu nadaj unikatowy identyfikator request_id. Później możesz śledzić jedną predykcję w logach, panelach oraz jej rzeczywistym wyniku.
import uuid
request_id = str(uuid.uuid4())Zbuduj rekord logu
Zbierz pola w jednym słowniku. Ten pojedynczy record stanie się jednym możliwym do przeszukiwania wierszem JSON w logach.
record = {
"request_id": request_id,
"model": "churn-v3",
"score": score,
"latency_ms": latency_ms,
}Generuj JSON za pomocą loggera
Użyj wbudowanego w Pythona modułu logging i zapisz rekord jako JSON. Nigdy nie używaj print, ponieważ pomija poziomy logowania i znaczniki czasu.
import json, logging
log = logging.getLogger("predictions")
log.info(json.dumps(record))Nigdy nie loguj niezaszyfrowanych sekretów
Uważaj na to, co zapisujesz. Pomijaj hasła, tokeny i nieprzetworzone dane PII albo haszuj wrażliwe pola, zanim trafią do logu. 🔒
Przesyłaj logi do centralnego miejsca
Logi na jednym serwerze znikają po jego ponownym uruchomieniu. Przekazuj je do central store, takiego jak Loki lub CloudWatch, aby przetrwały działanie pojedynczego kontenera.
Szybkie sprawdzenie
Chcesz mieć logi predykcji, które można przeszukiwać i agregować na dużą skalę. Jaki format będzie najlepszy?
Podsumowanie
Rejestrujesz każdą predykcję jako ustrukturyzowany rekord JSON zawierający dane wejściowe, wynik, opóźnienie i identyfikator, a następnie przesyłasz go do centralnego miejsca. To Twoje oczy na produkcji. ✅
Często zadawane pytania
Czy lekcja „Logi strukturalne dla predykcji” jest bezpłatna?
Tak — pełny tekst „Logi strukturalne dla predykcji” 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 MLOps Academy, przejdź na CoddyKit PRO. Kurs MLOps Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Logi strukturalne dla predykcji”?
Rejestruj dane wejściowe, wyjściowe i opóźnienie jako JSON Ćwiczysz MLOps 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ąć MLOps Academy?
Nie wymagamy żadnego doświadczenia. MLOps 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 1 z 4.
Ile czasu zajmuje lekcja „Logi strukturalne dla predykcji”?
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 MLOps Academy?
Tak. Każda lekcja MLOps 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
- Logi strukturalne dla predykcji
- Udostępnianie metryk za pomocą Prometheus
- Budowanie panelu Grafana
- Alarmy dotyczące skoków opóźnień i błędów