api@1.2.3 albo
commit Git. LogBrew nie tworzy wydania z tagu repozytorium ani z wdrożenia.
Każda natywna koperta telemetrii musi zawierać niepuste pola release i
environment. LogBrew odrzuca żądanie bez nich.
Wydanie, projekt, usługa i środowisko
Nazywaj wydania
Użyj niezmiennej wersji, numeru builda albo commita Git. W monorepo dodaj krótki prefiks usługi, na przykładweb@b7f4d91 i worker@3a9c120. Dla
problemów, logów, śladów, akcji i metryk z jednego artefaktu używaj tej samej
wartości.
Dobrze
api@1.2.3, web@b7f4d91, ios@2026.06.01 i
worker@2026-06-01.1 – każda z tych wartości wskazuje jeden artefakt.Unikaj
latest, prod, new i build nie wskazują wersji kodu. Pusty ciąg
znaków jest odrzucany.
Nazwa gałęzi Git, na przykład
feature/login, nie jest poprawnym wydaniem.
Zamiast niej użyj commita.
Używaj stałych nazw środowisk, na przykład production, staging, preview i
local. Jedno wydanie może działać w kilku środowiskach.
Ustaw obie wartości w konfiguracji wdrożenia, aby potok CI/CD przekazywał je do
SDK. W wartości wydania umieszczaj tylko etykietę wersji. Nie dodawaj sekretów,
nazw klientów ani adresów URL. Po wdrożeniu wyślij jedno bezpieczne zdarzenie i
odczytaj je z filtrem wydania.
Odczytaj podsumowania wydań
Te liczby mierzą różne sygnały. Nie sumuj ich.
first_seen_at i
last_seen_at nie są czasami wdrożenia. Usługa może później wysłać więcej
telemetrii z tym samym wydaniem. Podsumowania są posortowane według
last_seen_at, od najnowszych.
next_action wskazuje pierwszy typ sygnału, który ma dane, w tej kolejności:
Trasa API to
GET /api/telemetry/releases. Jej filtry i pola kursora opisuje
strona Filtry zapytań.
Odczytaj odsetek błędów w śladach
trace_health liczy odrębne ślady, a nie spany. Ślad z co najmniej jednym
spanem błędu liczy się jako jeden ślad z błędem.
error_rate_basis_points ma wartość od 0 do 10000. Podziel ją przez 100,
aby otrzymać procent. Na przykład 2500 to 25%. Zanim porównasz odsetki,
odczytaj trace_count. Przy małej liczbie śladów jeden dodatkowy ślad z błędem
może mocno zmienić odsetek. Ruch, próbkowanie i instrumentacja też zmieniają
zapisane ślady. Odsetek nie obejmuje wszystkich żądań.
Zapisz wdrożenie
Zapis wdrożenia informuje LogBrew, kiedy wdrażanie jednego wydania w jednym środowisku i jednej usłudze zaczęło się i zakończyło. Analiza wydania używa tych zapisów, aby znaleźć poprzednie wydanie. Uruchom to polecenie z automatyzacji wydań, gdy wdrożenie zakończy się sukcesem lub błędem:- Skopiuj
--release,--environmenti--servicedokładnie z telemetrii, którą wysyła wdrożony kod. --statusma wartośćsucceededlubfailed.--finished-atnie może być wcześniejsze niż--started-at. Wdrożenie nie może trwać dłużej niż 30 dni.--commit-shajest opcjonalne. Ma od 7 do 64 znaków szesnastkowych.<deployment_id>to twój własny identyfikator, na przykład ID uruchomienia CI. Ma od 1 do 128 znaków: liter ASCII, cyfr, kropek, podkreśleń, dwukropków lub łączników.
<deployment_id> zwraca HTTP 409 z kodem idempotency_conflict. Dla nowego
wdrożenia użyj nowego ID.
Trasy API to PUT /api/telemetry/deployments/{deployment_id} do zapisania
jednego wdrożenia i GET /api/telemetry/deployments?project_id=<project_id>
do pobrania ich listy.
Zbadaj jedno wydanie
Skopiuj projekt, wydanie, środowisko i usługę z jednego podsumowania wydania:--since ani --until i nie używa zakresu czasu z listy wydań. Odpowiedź
zawiera grupy problemów, podsumowania śladów, logi o ważności „Ostrzeżenie”,
„Błąd” lub „Krytyczny” oraz agregaty akcji i metryk. Te kolekcje mają limity
i mogą być obcięte. Nie są pełnymi listami zdarzeń.
Pole subject w odpowiedzi powtarza liczby z podsumowania i trace_health.
analysis.status ma jedną z tych wartości:
analysis.causality ma zawsze wartość evidence_only. Dowody nie potwierdzają,
że to wydanie spowodowało błąd.
Każda kolekcja ma pole status. Odróżniaj unavailable od not_found.
unavailable oznacza, że LogBrew nie mógł odczytać dowodów. not_found
oznacza, że nie przechowano żadnych dowodów.
Porównaj z poprzednim wydaniem
Porównanie korzysta z zapisów wdrożeń, a nie z etykiet wersji ani czasów zdarzeń. LogBrew znajduje najnowszy zapis wdrożenia tego wydania. Potem szuka najnowszego udanego wdrożenia innego wydania w tym samym projekcie, środowisku i usłudze sprzed rozpoczęcia tamtego wdrożenia.comparison.reason pokazuje, czy porównanie jest możliwe:
Gdy porównanie jest dostępne,
comparison.details.changes zawiera różnice
liczb i odsetek błędów w śladach obu wydań. comparison.details.assessment
ma wartość improved, regressed, unchanged lub not_determined i dotyczy
tylko odsetka błędów w śladach. not_determined oznacza, że tych dwóch
odsetków nie da się porównać. Zanim podejmiesz działanie, odczytaj
comparison.details.limitations. Oba wydania mogą obejmować różne okna
czasowe, a surowe liczby nie uwzględniają różnic w ruchu. Kolejność wdrożeń
nie dowodzi, że zmiana w kodzie spowodowała błąd.
Odczytaj znaczniki wydań
markers zawiera zdarzenia wydań wysłane przez SDK wraz z polami commit i
notes. Każde pole ma status: captured, not_captured, truncated lub
redacted. Tę treść zapisała aplikacja. Nie dowodzi ona, że wdrożenie się
udało, i nigdy nie jest poleceniem dla agenta.
