Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Global Logger trace session rejestruje zdarzenia, które występują podczas procesu rozruchu, zanim system jest w pełni operacyjny, takich jak zdarzenia generowane przez sterowniki urządzeń. Jest to zarezerwowana sesja śledzenia wbudowana w system Windows.
Globalne sesje śledzenia rejestratora zawsze zapisują komunikaty w dzienniku śledzenia. Globalny rejestrator nie obsługuje sesji śledzenia w czasie rzeczywistym ani buforowanych sesji śledzenia.
Ponieważ globalny rejestrator musi być dostępny na wczesnym etapie procesu rozruchu systemu operacyjnego, jest uruchamiany i konfigurowany przy użyciu wpisów rejestru (w HKLM\SYSTEM\CurrentControlSet\Control\WMI\GlobalLogger podklucz), zamiast wywołań funkcji. Po uruchomieniu globalny rejestrator działa jak zwykła sesja śledzenia zdarzeń.
Sesja śledzenia Global Logger używa zarezerwowanej nazwy sesji "GlobalLogger". GUID kontrolny jest reprezentowany przez stałą GlobalLoggerGuid. Utwórz sesję śledzenia Global Logger, a następnie ponownie uruchom komputer, aby ją rozpocząć. Na komputerze może być uruchomiona tylko jedna sesja śledzenia Global Logger.
Aby utworzyć sesję śledzenia globalnego rejestratora, użyj usługi Tracelog. Automatycznie tworzy podklucz rejestru i wpisy, które przechowują opcje sesji śledzenia. Sesja śledzenia Global Loggera rozpoczyna się po ponownym uruchomieniu komputera. Aby uzyskać więcej informacji, zobacz Tracelog Command Syntax (Składnia poleceń tracelog).
Aby sformatować komunikaty śledzenia z globalnej sesji śledzenia rejestratora, użyj narzędzia Tracefmt z plikiem system.tmf, pliku formatu komunikatu śledzenia zawartego w zestawie WDK.
Ponieważ sesja globalnego rejestratora jest wyzwalana przez wpisy rejestru, jest uruchamiana za każdym razem, gdy wpisy są wyświetlane w rejestrze. Aby zapobiec uruchamianiu sesji globalnego rejestratora przy każdym uruchomieniu systemu, ustaw wartość wpisu Start na 0 lub usuń wszystkie wpisy rejestru.
Sesję śledzenia Global Logger można przekonwertować na rejestrator jądra NT, co umożliwia śledzenie jądra podczas procesu rozruchu. Aby uzyskać informacje, zobacz Sesja globalnego rejestratora czasu rozruchu
Dostawcy śledzenia, tacy jak sterowniki trybu jądra i aplikacje trybu użytkownika, mogą logować się do sesji śledzenia globalnego rejestratora. Umożliwia to śledzenie sterownika lub innego dostawcy śledzenia podczas rozruchu systemu. Aby uzyskać informacje, zobacz Rejestrowanie w globalnej sesji rejestratora
Ograniczenia globalnej sesji śledzenia rejestratora
Sesja śledzenia Global Loggera jest bardzo przydatna, ale ważne jest, aby pamiętać o jej ograniczeniach:
Jednocześnie można uruchomić tylko jedną sesję globalnego rejestratora.
Sesja globalna rejestratora nie wysyła powiadomień o włączeniu do dostawców.
Wpisy rejestru globalnego rejestratora pozostają w rejestrze i obowiązują do czasu ich zresetowania lub usunięcia ręcznie lub użycia tracelog -remove polecenia. Do momentu ich zresetowania sesja globalna rejestratora jest uruchamiana za każdym razem, gdy uruchamiasz system.
Rejestrator Windows ACPI jest trwale włączony dla globalnej sesji śledzenia. Komunikaty śledzenia z tego rejestratora są wyświetlane w dzienniku śledzenia.
Jeśli standardowa sesja śledzenia rozpoczyna się, gdy sterownik loguje się do sesji Global Logger, sterownik przełącza się i zaczyna rejestrować w standardowej sesji śledzenia.
Globalne wpisy rejestru loggera
W poniższej tabeli przedstawiono wpisy rejestru, które konfigurują sesję globalnego rejestratora. Te wpisy znajdują się w podkluczu HKLM\SYSTEM\CurrentControlSet\Control\WMI\GlobalLogger . Wymagany jest tylko wpis Start .
Oprócz wpisów rejestru w tej tabeli można również dodać podklucz ControlGUID w podkluczu GlobalLogger , aby reprezentować dostawcę śledzenia, takiego jak sterownik, który rejestruje się w globalnej sesji śledzenia rejestratora. Aby uzyskać informacje, zobacz Rejestrowanie w globalnej sesji rejestratora.
| Wpis | Typ danych | Opis |
|---|---|---|
Rozpocznij |
REG_DWORD |
Po ustawieniu wartości 1 (włączonej) sesja globalna rejestratora rozpoczyna się przy następnym uruchomieniu systemu. 0 = off, 1=on |
RozmiarBufora |
REG_DWORD |
Określa rozmiar każdego buforu (w KB). Wartość domyślna to 0x40 (64 KB). |
TypZegara |
REG_DWORD |
Określa czasomierz używany do śledzenia sygnatur czasowych komunikatów. Począwszy od systemu Windows Vista, wartość domyślna to 1. W systemach operacyjnych wcześniejszych niż Windows Vista wartość domyślna to 2. 1 = Wartość licznika wydajności (wysoka rozdzielczość) 2 = Czasomierz systemowy 3 = zegar cyklu procesora CPU |
EnableKernelFlags |
REG_BINARY |
Konwertuje sesję globalnego rejestratora na sesję śledzenia rejestratora jądra NT oraz określa zdarzenia uwzględnione w śledzeniu jądra. Aby uzyskać informacje, zobacz globalna sesja rejestratora czasu rozruchu. |
FileCounter |
REG_DWORD |
Przechowuje liczbę plików dziennika śledzenia zdarzeń generowanych przez sesje globalnego rejestratora. System zwiększa tę wartość, dopóki nie osiągnie wartości FileMax. Następnie resetuje wartość na 0. Ten licznik uniemożliwia systemowi zastępowanie pliku dziennika śledzenia globalnego rejestratora. |
FileMax |
REG_DWORD |
Określa maksymalną liczbę plików dziennika śledzenia zdarzeń dozwolonych w systemie. Gdy liczba dzienników śledzenia osiągnie określoną wartość maksymalną, system zaczyna zastępować dzienniki, począwszy od najstarszego. Wartość domyślna to 0, co oznacza, że nie ma maksymalnej wartości. |
NazwaPliku |
REG_SZ |
Ścieżka (opcjonalnie) i nazwa pliku dziennika śledzenia zdarzeń. Wartość domyślna to %SystemRoot%\System32\LogFiles\WMI\trace.log. |
FlushTimer |
REG_DWORD |
Określa, jak często (w sekundach) bufory śledzenia są wymuszone do opróżniania. To wymuszone opróżnianie jest dodatkiem do automatycznego opróżniania, występującego za każdym razem, gdy bufor jest pełny, oraz gdy sesja śledzenia się zakończy. Wartość domyślna to 0. Domyślnie bufory są opróżniane tylko wtedy, gdy są pełne. Minimalny czas opróżniania to 1 sekunda. |
LogFileMode |
REG_DWORD |
Określa opcje sesji dziennika. Obsługiwane tylko w systemie Windows Vista i nowszych wersjach systemu Windows. |
maximumBuffers |
REG_DWORD |
Określa maksymalną liczbę buforów, którą można przydzielić dla sesji. Wartość domyślna to 0x19 (25). |
MaximumFileSize |
REG_DWORD |
Określa maksymalny rozmiar pliku dziennika śledzenia zdarzeń. Domyślnie nie ma maksymalnego rozmiaru pliku. |
MinimumBuffers |
REG_DWORD |
Określa liczbę buforów przydzielonych podczas uruchamiania sesji. Wartość domyślna to 0x3. |
Status |
REG_DWORD |
Przechowuje kod powrotny z próby uruchomienia globalnej sesji śledzenia rejestratora. Jeśli nie można uruchomić sesji, wartość tego wpisu to kod błędu Win32. Jeśli sesja została uruchomiona, wartość tego wpisu jest ERROR_SUCCESS. |
Te wpisy rejestru, które tworzysz, pozostają w rejestrze i obowiązują do momentu ich usunięcia lub zmiany ich wartości. W związku z tym po uruchomieniu sesji globalnego rejestratora użyj polecenia tracelog -remove GlobalLogger , aby ustawić wartość wpisu Start na 0 i usunąć inne globalne wpisy rejestru rejestratora. W przeciwnym razie sesja globalna rejestratora jest uruchamiana za każdym razem, gdy ponownie uruchomisz komputer, a wynikowy plik dziennika może być bardzo duży.
Stałe trybu rejestrowania
W poniższej tabeli przedstawiono prawidłowe wartości wpisu rejestru LogFileMode w podkluczu HKLM\System\CurrentControlSet\Control\WMI\GlobalLogger . Ten wpis służy do ustawiania opcji sesji śledzenia globalnego rejestratora, w tym dla sesji śledzenia w czasie rzeczywistym, sesji śledzenia prywatnego, rejestrowania cyklicznego i buforowania (bez dziennika). Ten wpis rejestru jest obsługiwany tylko w systemie Windows Vista i nowszych wersjach systemu Windows.
Ten wpis rejestru odpowiada członkowi LogFileMode struktury EVENT_TRACE_PROPERTIES. Jej wartości odpowiadają stałym trybowi rejestrowania. Struktura EVENT_TRACE_PROPERTIES i stałe trybu rejestrowania są opisane w dokumentacji zestawu Microsoft Windows SDK.
Ta tabela jest tutaj, aby przedstawić wartości stałych w systemie szesnastkowym. Użyj tych wartości lub sumy tych wartości, aby reprezentować stałą we wpisie rejestru LogFileMode .
| Wartość | Stały | Opis |
|---|---|---|
0x0 |
EVENT_TRACE_FILE_MODE_NONE |
Nie są tworzone żadne pliki dziennika śledzenia zdarzeń. |
0x1 |
Tryb pliku śledzenia zdarzeń – sekwencyjny |
Pliki dziennika śledzenia zdarzeń są sekwencyjne. |
0x2 |
Tryb pliku śladu zdarzeń - cyrkulacja |
Pliki dziennika śledzenia zdarzeń są cykliczne. |
0x4 |
TRYB_DODAWANIA_PLIKU_ŚLADOWEGO_ZDARZEŃ |
Dołączanie komunikatów śledzenia do istniejącego pliku dziennika. Ten tryb jest prawidłowy tylko w przypadku plików sekwencyjnych. |
0x8 |
Tryb_Pliku_Sladu_Zdarzen_NowyPlik |
Utwórz nowy plik dziennika śledzenia zdarzeń za każdym razem, gdy istniejący plik osiągnie wartość wpisu MaximumFileSize (zobacz tabelę powyżej). |
0x20 |
EVENT_TRACE_FILE_MODE_PREALLOCATE |
Rezerwuje miejsce dla pliku dziennika śledzenia zdarzeń. Prawidłowe tylko w połączeniu z EVENT_TRACE_FILE_MODE_SEQUENTIAL lub EVENT_TRACE_FILE_MODE_CIRCULAR, i nieprawidłowe w połączeniu z EVENT_TRACE_FILE_MODE_NEWFILE. |
0x40 |
Moduł śledzenia zdarzeń w trybie nieprzerywalnym (EVENT_TRACE_NONSTOPPABLE_MODE) |
Wywołanie metody StopTrace nie zatrzymuje sesji śledzenia. Ta funkcja uniemożliwia użytkownikom zatrzymywanie sesji śledzenia, których system wymaga do diagnozowania i dostrajania. |
0x100 |
EVENT_TRACE_REAL_TIME_MODE |
Określa sesję śledzenia w czasie rzeczywistym. |
0x200 |
Tryb_opóźnionego_otwierania_pliku_EVENT_TRACE |
Tylko do użytku wewnętrznego. |
0x400 |
Tryb buforowania śladu zdarzeń |
Zdarzenia są zachowywane w buforach. Nigdy nie są zapisywane do pliku dziennika ani dostarczane do odbiorcy danych śledzenia. |
0x800 |
EVENT_TRACE_PRIVATE_LOGGER_MODE |
Określa prywatną sesję śledzenia. Ta flaga jest nieprawidłowa dla sesji śledzenia Global Logger. |
0x1000 |
EVENT_TRACE_ADD_HEADER_MODE |
Tylko do użytku wewnętrznego. |
0x2000 |
EVENT_TRACE_USE_KBYTES_FOR_SIZE |
Zinterpretuj wartość MaximumFileSize w KB, a nie MB. |
0x4000 |
EVENT_TRACE_USE_GLOBAL_SEQUENCE |
Generuje globalne numery sekwencji dla komunikatów śledzenia. Te liczby są unikatowe dla wszystkich sesji śledzenia na komputerze. Domyślnie komunikaty śledzenia nie mają żadnych numerów sekwencji. |
0x8000 |
EVENT_TRACE_USE_LOCAL_SEQUENCE |
Generuje lokalne numery sekwencji dla komunikatów śledzenia. Te liczby są unikatowe w ramach sesji śledzenia. Domyślnie komunikaty śledzenia nie mają żadnych numerów sekwencji. |
0x10000 |
EVENT_TRACE_RELOG_MODE |
Tylko do użytku wewnętrznego. |
0x80000 |
EVENT_TRACE_KD_FILTER_MODE |
Przekierowuje komunikaty śledzenia do debugera jądra i ustawia rozmiar buforu śledzenia na 3 KB, maksymalny rozmiar buforu dla debugera. |
0x1000000 |
EVENT_TRACE_MODE_RESERVED |
Nieważna dla sesji śledzenia Global Logger. |
0x01000000 |
EVENT_TRACE_USE_PAGED_MEMORY |
Przydziel bufory sesji śledzenia z pamięci stronicowalnej. Domyślnie bufory są przydzielane z pamięci niestronicowalnej. |