Udostępnij za pośrednictwem


Znaczniki wizualizatora współbieżności

W wizualizatorze współbieżności znaczniki to ikony reprezentujące zdarzenia w aplikacji. Zazwyczaj aplikacja generuje te zdarzenia w celu wyznaczenia faz lub wystąpień w aplikacji. Zdarzenia mogą być generowane przez aplikację lub biblioteki i środowiska uruchomieniowe używane przez aplikację.

Rodzaje znaczników

Wizualizator współbieżności używa trzech rodzajów znaczników do reprezentowania zdarzeń aplikacji: flag, komunikatów i zakresów.

  1. Użyj flagi, aby wskazać interesujący punkt w czasie w aplikacji. Możesz na przykład użyć flagi, aby przedstawić, że wartość zmiennej osiągnęła określony próg lub że został zgłoszony wyjątek.

  2. Komunikat oznacza również punkt w czasie, ale można go użyć do śledzenia stylu dziennika. Na przykład to, co mogło zostać po cenach dumpingowych do pliku dziennika, można teraz opakowować w wywołaniu komunikatu, aby można było go śledzić i wyświetlać w wizualizatorze współbieżności. Możesz również użyć wizualizatora współbieżności, aby wyeksportować te dane do pliku CSV.

  3. Zakres reprezentuje interwał czasu w aplikacji, na przykład jedną z jej faz.

Łączenie znacznika z wątkami

Każdy wątek, który generuje znaczniki, ma oddzielny kanał osi czasu. Identyfikator wątku odpowiedzialnego za generowanie zdarzeń znacznika jest wyświetlany obok opisu kanału znacznika. Identyfikator wyświetlany po lewej stronie kanału znacznika odpowiada identyfikatorowi innego wątku w bieżącym procesie.

Ważność znacznika

Znaczniki mogą mieć jeden z czterech poziomów ważności: niski, normalny, wysoki i krytyczny. Źródła znaczników można filtrować na podstawie poziomu ważności. Jeśli na przykład chcesz wyświetlić tylko znaczniki z określonego źródła, które ma normalne lub krytyczne znaczenie, możesz skonfigurować filtr w oknie dialogowym Zaawansowane Ustawienia. Ważność znacznika jest wyświetlana w etykietce narzędzia i w raporcie znaczników.

Kategoria znacznika

Kategoria znacznika wskazuje grupę zdarzeń znaczników, które pochodzą z tego samego źródła. Wizualizator współbieżności używa koloru do rozróżniania różnych kategorii flag i zakresów. Wizualizator współbieżności można skonfigurować tak, aby używał kategorii do filtrowania zdarzeń znacznika od określonego dostawcy zdarzeń. Aby skonfigurować filtr, użyj okna dialogowego Zaawansowane Ustawienia.

Znane źródła znaczników

Każdy dostawca ETW może generować znaczniki, o ile dostawca przestrzega określonych ograniczeń. Wizualizator współbieżności można skonfigurować tak, aby nasłuchiwać dodatkowych źródeł zdarzeń dla znaczników. Domyślnie nasłuchuje tych źródeł zdarzeń:

Znaczniki z usługi EventSource

Wizualizator współbieżności może również wyświetlać zdarzenia EventSource. Aby uzyskać więcej informacji, zobacz Visualize EventSource events as markers (Wizualizowanie zdarzeń usługi EventSource jako znaczniki).

Znaczniki flag

Znacznik flagi reprezentuje coś, co wystąpiło natychmiast w czasie w aplikacji. Flaga może reprezentować wiele rodzajów zdarzeń aplikacji. Na przykład flaga może być wyświetlana, gdy określony element roboczy został zaplanowany lub kiedy został zgłoszony wyjątek. Środowiska uruchomieniowe, takie jak biblioteka równoległa zadań, mogą również generować flagi.

Ważność flagi

Flagi są wyświetlane w różnych rozmiarach w zależności od ich ważności. Podobnie jak każdy znacznik, ważność może być niska, normalna, wysoka lub krytyczna. Na tej ilustracji przedstawiono wygląd znaczników według poziomu ważności:

Illustration of Low, Normal, High, and Critical importance markers.

Kategoria flagi

Flaga jest wyświetlana w jednym z pięciu różnych kolorów w zależności od jego kategorii. Kolory są ponownie używane, jeśli istnieje więcej niż pięć kategorii. Nie można wybrać koloru. Podobnie jak dowolny znacznik, kategoria może być dowolną liczbą całkowitą. Na następnej ilustracji przedstawiono kolory dla pierwszych pięciu kategorii.

Illustration of five colors of category markers.

Alerty

Alert jest czerwoną flagą reprezentującą krytyczne zdarzenie aplikacji, takie jak wyjątek. Oto alert:

Illustration of the Concurrency Visualizer alert marker.

Flagi agregacji

Czasami flagi występują tak blisko siebie w wizualizatorze współbieżności, że nie można ich narysować indywidualnie. W takim przypadku jest wyświetlana szara flaga agregacji reprezentująca flagi bazowe. Gdy wskaźnik spoczywa na jednej z tych ikon, etykietka narzędzia wyświetla liczbę reprezentowanych flag bazowych. Aby wyświetlić flagi, powiększ. Jeśli powiększ całą drogę i nadal uzyskasz flagę agregacji, możesz wyświetlić flagi bazowe w raporcie znaczników.

Flagi agregacji są rysowane w różnych rozmiarach. Rozmiar zależy od poziomu ważności najważniejszej flagi w agregacji. Na poniższej ilustracji przedstawiono flagi agregacji w kolejności rosnącej ważności.

Illustration of aggregate flags showing four levels of importance.

Znaczniki komunikatów

Znacznik komunikatu reprezentuje dane wyjściowe dziennika. Komunikat to ciąg, który jest wystawiany przez określony wątek w określonym czasie. Komunikaty można eksportować do pliku tekstowego do użytku z innymi narzędziami. Wskaźnik można odpocząć w komunikacie w wizualizatorze współbieżności, aby wyświetlić ciąg komunikatu. Możesz również wyświetlić wszystkie znaczniki komunikatów w raporcie Znaczniki. Na poniższej ilustracji przedstawiono znacznik komunikatu.

Znaczniki agregacji komunikatów

Czasami wiele komunikatów występuje tak blisko siebie w wizualizatorze współbieżności, że nie można ich narysować pojedynczo. W takim przypadku jest wyświetlany znacznik agregacji komunikatów reprezentujący komunikaty bazowe. W przypadku odpoczynku wskaźnika na jednej z tych ikon etykietka narzędzia wyświetla liczbę wyświetlanych komunikatów, które są reprezentowane. Aby wyświetlić komunikaty, powiększ. Jeśli powiększasz cały sposób i nadal uzyskujesz znacznik agregacji, możesz wyświetlić bazowe komunikaty w raporcie znaczników.

Znaczniki zakresu

Znacznik zakresu reprezentuje znaczącą fazę aplikacji. Można na przykład użyć zakresu do reprezentowania przedziału czasu, w którym jest przetwarzany określony element roboczy. Jego długość reprezentuje czas trwania odpowiedniej fazy aplikacji. Ta ilustracja przedstawia zakres w wizualizatorze współbieżności:

Illustration of a span marker in Concurrency Visualizer.

Kategoria zakresu

Znacznik zakresu jest wyświetlany w jednym z pięciu różnych kolorów, w zależności od jego kategorii. Kolory są powtarzane, jeśli istnieje więcej niż pięć kategorii. Kategoria może być dowolną liczbą całkowitą. Na tej ilustracji przedstawiono pięć możliwych kolorów:

Illustration of five spans in different categories.

Znaczniki agregacji zakresu

Czasami znaczniki zakresu występują tak blisko siebie w wizualizatorze współbieżności, że nie można ich narysować indywidualnie. W takim przypadku jest wyświetlany szary znacznik agregacji zakresu, który reprezentuje bazowe zakresy. W przypadku odpoczynku wskaźnika na jednej z tych ikon etykietka narzędzia wyświetla liczbę reprezentowanych zakresów bazowych. Aby wyświetlić zakresy, powiększ. Jeśli powiększasz cały sposób i nadal uzyskujesz znacznik agregacji zakresu, możesz wyświetlić bazowe znaczniki zakresu w raporcie znaczników. Na tej ilustracji przedstawiono znacznik agregacji zakresu:

Illustration of an aggregate span marker in Concurrency Visualizer.