Skip to main content
Telemetria to ustrukturyzowane dowody, które aplikacja wysyła o swoim zachowaniu. Logi rejestrują zgłoszone zdarzenia. Ślady łączą operacje. Metryki mierzą wartości. Problemy grupują błędy. Akcje rejestrują aktywność w produkcie. Pola projektu, usługi, środowiska, wydania i czasu określają zakres każdego wyniku. Sygnały, które rejestruje twoje SDK, opisuje przewodnik po integracji SDK.

Wybierz sygnał

Analizę błędu zacznij od problemów lub logów. Użyj dostępnego śladu, aby zbadać jedno wykonanie. Użyj trendu metryki, aby zbadać szerszy okres. Aktywność i utrzymanie opisuje strona Analityka produktowa. Rejestruj tylko pola, których potrzebuje analiza. Używaj stałych nazw usług, operacji i metryk. Nie wysyłaj poświadczeń, danych płatniczych ani surowych treści żądań. Mechanizmy kontroli opisuje przewodnik po kontroli rejestrowanych danych.

Logi

Log to wpis z aplikacji z jednego momentu w czasie. Przydatny log zawiera:
  • Czas wystąpienia zdarzenia w źródle.
  • Kanoniczny poziom ważności.
  • Zakres projektu i usługi.
  • Środowisko i wydanie.
  • Identyfikatory śladu i spanu, gdy log ma aktywny kontekst śladu.
  • Małe, nazwane atrybuty z kontekstem zdarzenia.
Odpowiedź z logiem zawiera te wartości w polach occurred_at, severity, project_id, service_name, environment, release, trace_id, span_id i attributes. Kontekst umieszczaj w nazwanych atrybutach, a nie w treści komunikatu. Logi z kilku usług w jednym widoku nie są ze sobą powiązane śladem. Takie powiązanie tworzy tylko kontekst śladu.

Ślady

Ślad zawiera spany jednego żądania lub jednej operacji. Span główny nie ma spanu nadrzędnego. Span podrzędny wskazuje swój span nadrzędny. Wszystkie spany w śladzie mają to samo ID śladu i różne ID spanów. Zobacz Śledzenie rozproszone. Log, problem, akcja lub metryka wysłane bez aktywnego kontekstu śladu dostają ślad rejestracji. Ten ślad zawiera tylko spany rejestracji. Nie pokazuje ścieżki żądania. Zobacz Spany rejestracji.

Metryki

Metryka rejestruje zmierzoną wartość w czasie. Każdą metrykę odczytuj razem z jej nazwą, jednostką, wymiarami, projektem, zakresem czasu i długością przedziału. LogBrew wybiera value każdego punktu na podstawie kind i temporality metryki: Na przykład trzy próbki licznika typu delta o wartościach 2, 3 i 5 w jednym przedziale dają punkt z value równym 10 i sample_count równym 3. Trzy próbki typu gauge o tych samych wartościach, w tej kolejności, dają punkt z value równym 5. Wartość p95 nie jest średnią. Około 95% zarejestrowanych obserwacji ma wartość równą jej lub mniejszą. Dla status: "ready" dostępna jest agregacja pochodna. Dla status: "limited" przeczytaj aggregation.limitation i używaj tylko surowych wartości. Nie sumuj wartości typu gauge ani strumienia skumulowanego. Przedział bez punktu nie oznacza zmierzonego zera. Pola zapytań opisuje strona Filtry zapytań. GET /api/telemetry/metrics/series zwraca te punkty. Wymaga project_id, name i since. Każdy szereg ma jedno identity z polami kind, unit i temporality. Szeregi o różnych tożsamościach pozostają oddzielne. Każdy punkt może też zawierać: coverage.truncated ma wartość true, gdy series_limit pominął szeregi o mniejszej liczbie danych. Aby porównać okno metryki z poprzednim oknem o tej samej długości, uruchom:

Problemy

Problem grupuje powtarzające się błędy według stałego odcisku palca. Ma ważność, status, liczbę wystąpień, czas pierwszego wystąpienia i czas ostatniego wystąpienia. Szczegóły problemu mogą zawierać łańcuchy wyjątków, ramki stosu, breadcrumby, powiązane logi i powiązanie ze śladem. last_seen_at to najnowsze wystąpienie w grupie. Wybrane wystąpienie może być starsze. Odczytaj oba czasy. status problemu to unresolved, resolved lub archived. Odpowiedź API w wersji 1 pokazuje archived jako ignored. Wersje odpowiedzi 2 i 3 dodają priority (high, medium lub low) i priority_source. Wersja 3 dodaje też assignee. Zobacz Wartości statusu i Priorytet.

Akcje

Akcja rejestruje aktywność w produkcie. Obsługiwana klasyfikacja oznacza ją jako wyświetlenie strony, wyświetlenie ekranu lub interakcję. Sama nazwa zdarzenia nie ustawia klasyfikacji. Ten kontekst dodasz według przewodnika Rejestrowanie zdarzeń produktowych. Sesje to nie użytkownicy. Anonimowe podmioty to nie zidentyfikowani użytkownicy.

Wspólne pola

Wartości ważności

LogBrew akceptuje aliasy na wejściu w dowolnej wielkości liter. API, CLI i zdarzenia na żywo używają wartości kanonicznych. Nieznane wartości ważności są odrzucane. Ważność to zapisana pilność. Nie pokazuje wpływu na biznes ani przyczyny źródłowej. Użytkownik może zmienić wyświetlaną ważność problemu lub logu. Odpowiedź zawiera wtedy obiekt triage z polem effective_severity. Pole severity zachowuje zarejestrowaną wartość.

Odczyty na żywo i migawki

logbrew read zwraca migawkę dla wybranego projektu, zakresu czasu i filtrów. Aby odczytać nowe zdarzenia, uruchom to polecenie ponownie. logbrew watch przesyła strumieniowo nowe logi, problemy i akcje, dopóki połączenie jest otwarte. Nie przesyła śladów ani metryk. Błąd połączenia nie dowodzi, że projekt jest pusty.

Stany dowodów

Odpowiedzi rozróżniają te stany: zarejestrowane, brakujące, zamaskowane, obcięte i niedostępne. Dowody ze śladu mają 4 stany: available, not_linked, not_found i unavailable. Ich znaczenie opisuje przegląd, a pola pokrycia – sekcja Ograniczenia dowodów. Nowsza wersja SDK nie dodaje pól do zdarzeń, które wysłano wcześniej.

Zbadaj jeden projekt

1

Znajdź nierozwiązane problemy

2

Odczytaj jeden problem

To polecenie odczytuje przechowywaną historię problemu. Filtr --since z listy nie ma tu zastosowania.
3

Otwórz dostępny ślad

Użyj ID śladu tylko wtedy, gdy wybrane wystąpienie je zwraca.
4

Odczytaj powiązane dowody

Filtruj logi, akcje i metryki według tego samego projektu, usługi, środowiska i wydania. Nie łącz sygnałów wyłącznie na podstawie czasu.
Opis pól odpowiedzi znajdziesz na stronach API telemetrii i Formaty odpowiedzi.