Udostępnij przez


Sesja śledzenia

Sesja śledzenia to okres, w którym dostawca śledzenia generuje komunikaty śledzenia. System utrzymuje zestaw buforów dla sesji śledzenia, do przechowywania komunikatów śledzenia, dopóki nie zostaną dostarczone ("opróżnione") do dziennika śledzenia lub odbiorcy śledzenia.

Istnieją trzy podstawowe typy sesji śledzenia: sesje dziennika śledzenia, sesje śledzenia w czasie rzeczywistym i buforowane sesje śledzenia. Pojedyncza sesja śledzenia może być sesją dziennika śledzenia, sesją śledzenia w czasie rzeczywistym lub obie te sesje. Buforowane sesje śledzenia są wyłączne.

Ponadto istnieją prywatne sesje śledzenia i zarezerwowane sesje śledzenia, takie jak sesja śledzenia rejestratora jądra NT i sesja śledzenia globalnego rejestratora, które mogą być uruchamiane jako sesje dziennika lub sesje w czasie rzeczywistym. Możesz użyć standardowych narzędzi do kontrolowania tych sesji i wyświetlania wynikowych komunikatów śledzenia.

Sesje śledzenia dziennika

W sesji dziennika śledzenia komunikaty śledzenia są zapisywane z buforów śledzenia do pliku dziennika w formacie binarnym. Jest to standardowy, domyślny typ sesji śledzenia.

sesje śledzeniaReal-Time

W sesji śledzenia w czasie rzeczywistym komunikaty śledzenia są dostarczane bezpośrednio do odbiorcy śledzenia, takiego jak TraceView lub Tracefmt, zamiast wysyłania do pliku dziennika lub dodatkowo.

Buforowane sesje śledzenia

W buforowanej sesji śledzenia komunikaty śledzenia pozostają w buforze śledzenia; nie są zapisywane w dzienniku śledzenia ani dostarczane do konsumenta śledzenia. Bufor jest utrzymywany jak plik okrągły. Gdy jest pełna, najnowsze komunikaty śledzenia zastępują najstarsze komunikaty śledzenia w buforze.

Buforowane sesje śledzenia są obsługiwane tylko w systemie Windows Vista i nowszych wersjach systemu Windows.

Mimo że śledzenie oprogramowania, ogólnie rzecz biorąc, powoduje bardzo małe obciążenie, buforowane sesje śledzenia mają najmniejsze obciążenie wszystkich typów sesji śledzenia. Możesz śledzić długie okresy czasu, a następnie, jeśli coś interesującego się stanie, możesz użyć debugera do zbadania bieżącej zawartości buforu lub zapisania bieżącej zawartości buforu w dzienniku śledzenia.

Aby wyświetlić komunikaty śledzenia w buforze śledzenia, użyj specjalistycznego rozszerzenia debuggera !wmitrace. Aby uzyskać informacje o tym rozszerzeniu, zobacz Narzędzia debugowania dla Windows.

Aby opróżnić zawartość buforu do dziennika śledzenia, użyj -f parametru tracelog -flush polecenia .

Aby uruchomić buforowaną sesję śledzenia, użyj parametru -buffering polecenia tracelog -start . Aby uzyskać więcej informacji, zobacz Tracelog Command Syntax (Składnia poleceń tracelog).

Prywatne sesje śledzenia

Prywatna sesja śledzenia to sesja, która jest uruchamiana w trybie użytkownika jako część procesu, który śledzi. (Standardowe sesje śledzenia są uruchamiane w jądrze). Sesje śledzenia prywatnego są również nazywane sesjami śledzenia trybu użytkownika lub sesjami śledzenia procesów.

Jednocześnie można uruchomić więcej niż jedną prywatną sesję śledzenia, ale w każdym procesie można uruchomić tylko jedną prywatną sesję śledzenia.

Nie można prowadzić śledzenia w czasie rzeczywistym prywatnej sesji śledzenia. Komunikaty śledzenia muszą być zapisywane w dzienniku.

Bufory używane w prywatnych sesjach śledzenia są zawsze stronicowalne. Nie można określić pamięci stronicowanej ani niestronicowanej dla tych buforów.

Nie można wysłać komunikatów śledzenia z prywatnej sesji śledzenia do debugera. Rozszerzenie śledzenia usługi WMI (!wmitrace) nie obsługuje prywatnych sesji śledzenia.

Aby uzyskać więcej informacji na temat sesji śledzenia zdarzeń prywatnych, zobacz dokumentację zestawu Microsoft Windows SDK.