Ślady
Przegląd
Sekcja APM > Ślady wyświetla ślady zebrane z aplikacji i usług.
Ślad przedstawia ścieżkę, którą żądanie pokonuje w aplikacjach i usługach. Na przykład, gdy użytkownik kliknie przycisk Złóż zamówienie w sklepie internetowym, żądanie może przejść z usługi frontend przez usługi realizacji zamówienia i płatności do bazy danych.
Ślad składa się z zakresów. Każdy zakres przedstawia pojedynczą operację, taką jak żądanie HTTP wysyłane przez usługę frontend do usługi realizacji zamówienia, zapytanie do bazy danych zapisujące zamówienie lub wywołanie funkcji obliczającej koszt wysyłki.
Zakresy tworzą hierarchię. Zakres główny przedstawia pierwszą operację żądania. Każdy inny zakres jest zakresem podrzędnym zakresu, podczas którego rozpoczęto jego operację. Na przykład usługa frontend odbierająca żądanie Złóż zamówienie jest zakresem głównym, a usługa realizacji zamówienia przetwarzająca zamówienie jest jego zakresem podrzędnym.
Każdy zakres jest tworzony przez usługę (np. zabbix-frontend; nazwaną za pomocą atrybutu zasobu OpenTelemetry service.name) oraz przez zakres instrumentacji, czyli część kodu, która go utworzyła (np. biblioteka śledząca żądania HTTP).
Aby zapewnić kontekst dotyczący każdej operacji, zakresy mają również atrybuty w postaci klucz-wartość: atrybuty zakresu opisują samą operację (np. http.method: POST), a atrybuty zasobu opisują usługę i środowisko, w którym działa (np. host.name: eabf8c2a5ddc).
Więcej informacji na temat śladów można znaleźć w dokumentacji OpenTelemetry.

Sekcja APM > Ślady zawiera następujące elementy:
- Przycisk Tryb kiosku - wyświetla tylko zawartość strony, bez menu i nagłówka.
- Selektor okresu - wybiera okres, dla którego mają być wyświetlane ślady.
- Filtr - wyświetla tylko interesujące Cię ślady.
- Lista śladów - umożliwia wyświetlanie śladów opisanych za pomocą ich zakresów głównych.
- Panel śladu - umożliwia wyświetlanie wszystkich zakresów wybranego śladu na osi czasu.
Lista śladów
Każdy wiersz na liście śladów reprezentuje ślad; kolumny przedstawiają dane jego głównego span.

Ślady są wyświetlane w konfigurowalnej tabeli.
Przycisk
Dostosuj tabelę w nagłówku tabeli umożliwia wyświetlanie, ukrywanie lub zmianę kolejności kolumn oraz przywrócenie domyślnego układu.
Można również zmienić szerokość każdej kolumny, przeciągając jej prawą krawędź; dwukrotne kliknięcie krawędzi przywraca domyślną szerokość.
Wszystkie dostosowania są stosowane natychmiast i zapamiętywane dla bieżącego użytkownika.
Lista śladów może zawierać następujące kolumny:
Każda kolumna odpowiada kolumnie w tabeli otel_traces źródła danych telemetrycznych; listę kolumn można znaleźć w sekcji Obsługiwane kolumny danych telemetrycznych.
Większość kolumn ma taką samą nazwę jak w źródle danych (np. Trace ID odpowiada kolumnie TraceId).
Jeśli nazwy się różnią, kolumna źródła danych jest określona w poniższej tabeli.
| Kolumna | Opis |
|---|---|
| Trace ID | Identyfikator śladu, wspólny dla wszystkich spanów należących do tego śladu. |
| Span ID | Identyfikator głównego span. |
| Trace state | Dodatkowe dane, jeśli istnieją, dołączane do śladu przez narzędzia śledzenia (zobacz W3C Trace Context). |
| Service name | Usługa, która utworzyła główny span, a następnie liczba spanów w śladzie. Jeśli którykolwiek span ma kod stanu Error (zobacz poniżej), czerwona ikona pokazuje ich liczbę. |
| Operation name | Operacja reprezentowana przez główny span (np. POST /zabbix.php).Kolumna źródła danych: SpanName. |
| Span kind | Rola głównego span: Unspecified - nieokreślona. Internal - operacja wykonywana wewnątrz aplikacji. Server - obsługa przychodzącego żądania. Client - żądanie wychodzące. Producer - utworzenie operacji asynchronicznej (np. wysłanie wiadomości). Consumer - przetwarzanie operacji asynchronicznej. |
| Scope name | Zakres instrumentacji, który utworzył główny span. |
| Scope version | Wersja zakresu instrumentacji. |
| Status code | Stan operacji reprezentowanej przez główny span: Unset - głównemu spanowi nie przypisano jawnego stanu. Ok - operacja została pomyślnie zakończona. Error - operacja została zakończona błędem. |
| Status message | Dodatkowe informacje, jeśli istnieją, dotyczące stanu. |
| Start time | Data i godzina rozpoczęcia głównego span. Kolumna źródła danych: Timestamp. |
| Span attributes | Atrybuty span głównego span. Kliknij przycisk z trzema kropkami |
| Resource attributes | Atrybuty zasobu głównego span. Kliknij przycisk z trzema kropkami |
| Duration | Czas trwania śladu; szary pasek pokazuje go w odniesieniu do pozostałych śladów. |
Panel śladu
Kliknij ślad na liście śladów, aby otworzyć panel śladu, który pokazuje wszystkie zakresy śladu na osi czasu: jakie operacje zostały wykonane, w jakiej kolejności i ile czasu zajęła każda z nich.

Panel śladu może zawierać następujące elementy:
| Element | Opis |
|---|---|
| Trace ID | Identyfikator wybranego śladu. |
| Przegląd osi czasu śladu | Cały ślad z zakresami w maksymalnie 8 wierszach (kilka zakresów może współdzielić jeden wiersz). Przeciągnij krawędzie wybranego zakresu lub sam zakres, aby powiększyć oś czasu zakresów dla tej części śladu. |
| Drzewo zakresów | Zakresy przedstawione hierarchicznie; każdy pokazuje swoją usługę (pogrubioną czcionką), nazwę operacji i liczbę bezpośrednich zakresów podrzędnych. |
| Oś czasu zakresów | Zakresy przedstawione jako paski: położenie i długość pokazują, kiedy rozpoczął się każdy zakres i ile czasu trwał. Znaczniki pokazują zdarzenia (np. wyjątki); najedź kursorem na znacznik lub kliknij go, aby wyświetlić szczegóły. |
| Szczegóły zakresu | Kliknij zakres w drzewie zakresów, aby wyświetlić jego szczegóły i atrybuty. |
Korzystanie z filtra
Możesz użyć filtra, aby wyświetlać tylko interesujące Cię ślady.

Aby filtrować według atrybutów, wprowadź klucz atrybutu, wybierz operator i wprowadź wartość atrybutu.
Obsługiwane są następujące operatory:
- Zawiera - (domyślnie) wartość atrybutu zawiera wprowadzony ciąg znaków.
- Równa się - wartość atrybutu jest równa wprowadzonemu ciągowi znaków.
- Nie zawiera - wartość atrybutu nie zawiera wprowadzonego ciągu znaków.
- Nie równa się - wartość atrybutu nie jest równa wprowadzonemu ciągowi znaków.
- Istnieje - atrybut z wprowadzonym kluczem istnieje.
- Nie istnieje - atrybut z wprowadzonym kluczem nie istnieje.
Jeśli dodasz kilka warunków, wybierz sposób ich oceny:
- And/Or - (domyślnie) wszystkie warunki muszą być spełnione; warunki z tym samym kluczem atrybutu są łączone operatorem Or.
- Or - musi być spełniony co najmniej jeden warunek.