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.
Dane TraceLoggging można przechwytywać i wyświetlać przy użyciu najnowszych wewnętrznych wersji narzędzi Windows Performance Tools (WPT). Przed opublikowaniem instrumentacji należy przetestować kod dostawcy TraceLogging, aby upewnić się, że dane zdarzenia są tworzone i dostarczają znaczące dane w odpowiednim czasie.
Proces sprawdzania, czy instrumentacja jest poprawna, obejmuje następujące dwa kroki:
- Przechwytywanie śledzenia za pomocą narzędzia Windows Performance Recorder (wpr.exe lub wprui.exe).
- Wyświetl ślad za pomocą analizatora wydajności systemu Windows (wpa.exe).
Uwaga dla systemu Windows Phone można również użyć Tracelog.exe i Xperf.exe do rejestrowania śladu. Zobacz "Aby przechwycić ślad na telefonie (przy użyciu Tracelog i XPerf)" poniżej.
wymagania wstępne
Narzędzia WPR i WPA muszą być zgodne z wersją TraceLogging, z którą jesteś powiązany. Jeśli nie możesz przechwycić lub zdekodować swoich zdarzeń, może to być spowodowane tym, że narzędzia nie są odpowiednie i nie są zgodne.
Aby przechwycić dane śledzenia za pomocą funkcji WPR
Utwórz lub edytuj profil WPR (.wprp) dla TraceLoggingProvider.
Możesz użyć poniższego przykładu. Zapisz zawartość w pliku z rozszerzeniem nazwy pliku wprp. Zastąp sekcje TODO odpowiednimi wartościami dostawcy. Jeśli na przykład zarejestrowano dostawcę za pomocą identyfikatora GUID, określ identyfikator GUID w tym pliku.
Uwaga Dla dostawców trybu jądra dodaj NonPagedMemory="true" do atrybutu EventProvider Id, zobacz komentarz w poniższym przykładzie XML.
Przykładowy plik WPRP:
<?xml version="1.0" encoding="utf-8"?>
<!-- TODO:
1. Find and replace "WorkshopTraceLoggingProvider" with your component name.
2. See TODO below to update GUID for your event provider
-->
<WindowsPerformanceRecorder Version="1.0" Author="Microsoft Corporation"
Copyright="Microsoft Corporation" Company="Microsoft Corporation">
<Profiles>
<EventCollector Id="EventCollector_WorkshopTraceLoggingProvider"
Name="WorkshopTraceLoggingProviderCollector">
<BufferSize Value="64" />
<Buffers Value="4" />
</EventCollector>
<!-- TODO:
1. Update Name attribute in EventProvider xml element with your provider GUID,
or if you specify an EventSource C# provider or call TraceLoggingRegister(...)
without a GUID, use star(*) before your provider name,
eg: Name="*MyEventSourceProvider" which will enable your provider appropriately.
2. This sample lists more than 1 EventProvider xml element and references them again
in a Profile with EventProviderId xml element. For your component wprp, enable
the required number of providers and fix the Profile xml element appropriately
-->
<EventProvider Id="EventProvider_WorkshopTraceLoggingProvider"
Name="f9bc6c5d-4b98-43b5-90a1-1d0c8f45bf5a" />
<!-- For Kernel Mode providers, add NonPagedMemory="true" attribute to the
EventProvider Id element:
Example:
<EventProvider Id="EventProvider_UMDFReflector"
Name="263dd596-513b-4fd9-969c-022b691bb130" NonPagedMemory="true"/>
-->
<Profile Id="WorkshopTraceLoggingProvider.Verbose.File"
Name="WorkshopTraceLoggingProvider" Description="WorkshopTraceLoggingProvider"
LoggingMode="File" DetailLevel="Verbose">
<Collectors>
<EventCollectorId Value="EventCollector_WorkshopTraceLoggingProvider">
<EventProviders>
<!-- TODO:
1. Fix your EventProviderId with Value same as the Id attribute on EventProvider
xml element above
-->
<EventProviderId Value="EventProvider_WorkshopTraceLoggingProvider" />
</EventProviders>
</EventCollectorId>
</Collectors>
</Profile>
<Profile Id="WorkshopTraceLoggingProvider.Light.File"
Name="WorkshopTraceLoggingProvider"
Description="WorkshopTraceLoggingProvider"
Base="WorkshopTraceLoggingProvider.Verbose.File"
LoggingMode="File"
DetailLevel="Light" />
<Profile Id="WorkshopTraceLoggingProvider.Verbose.Memory"
Name="WorkshopTraceLoggingProvider"
Description="WorkshopTraceLoggingProvider"
Base="WorkshopTraceLoggingProvider.Verbose.File"
LoggingMode="Memory"
DetailLevel="Verbose" />
<Profile Id="WorkshopTraceLoggingProvider.Light.Memory"
Name="WorkshopTraceLoggingProvider"
Description="WorkshopTraceLoggingProvider"
Base="WorkshopTraceLoggingProvider.Verbose.File"
LoggingMode="Memory"
DetailLevel="Light" />
</Profiles>
</WindowsPerformanceRecorder>
W przypadku dostawców trybu kernel należy dodać atrybut NonPagedMemory="true" do elementu Identyfikator EventProvider.
<EventProvider Id="EventProvider_myTraceLoggingProviderKM" Name="263dd596-513b-4fd9-969c-022b691bb130" NonPagedMemory="true"/>Zapisz plik przy użyciu rozszerzenia nazwy pliku (. WPRP).
Uruchom przechwytywanie przy użyciu funkcji WPR w oknie wiersza polecenia.
<path to wpr>\wpr.exe -start GeneralProfile -start yourTraceLoggingProvider.wprpPlik GeneralProfile przechwytuje zdarzenia systemowe. W przypadku debugowania ogólnego dobrym pomysłem jest przechwytywanie zdarzeń systemowych wraz ze zdarzeniami od dostawcy.
Uruchom scenariusz testowy (załaduj i rozładuj sterownik lub komponent, aby wyzwolić zdarzenia).
Zatrzymaj przechwytywanie i scal wszystkie nagrania.
<path to wpr>\wpr.exe -stop GeneralProfile -stop yourTraceCaptureFile.etl description
Do zbierania danych śledzenia można również użyć interfejsu użytkownika narzędzia Windows Performance Recorder (Wprui.exe).
<path to wpr>\wprui.exe
- W oknie WPR, jeśli opcje są ukryte, kliknij Więcej Opcji.
- Kliknij Dodaj profil i przejdź do lokalizacji pliku .wprp.
- Wybierz plik .wprp i kliknij Otwórz. Funkcja WPR zweryfikuje schemat XML profilu.
- Kliknij pozycję Uruchom i uruchom scenariusz testowy.
- Kliknij Zapisz, aby scalić wyniki i zapisać je w pliku. Jeśli używasz interfejsu użytkownika funkcji WPR, możesz również otworzyć plik dziennika .etl w WPA.
Aby przechwycić ślad na telefonie (przy użyciu usługi Tracelog i XPerf)
Rozpocznij przechwytywanie danych śledzenia swojego dostawcy usług.
cmdd tracelog '-start test -f c:\test.etl -guid #providerguid'Uruchom scenariusze testowe, aby rejestrować zdarzenia.
Zatrzymaj przechwytywanie śledzenia.
cmdd tracelog '-stop test'Połącz wyniki śledzenia.
cmdd xperf -merge c:\test.etl c:\testmerged.etlPobierz scalony plik dziennika.
getd c:\testmerged.etl
Wyświetlanie danych śledzenia przy użyciu usługi WPA
Obecnie usługa WPA jest jedyną przeglądarką, której można użyć do wyświetlania plików etl generowanych przez usługę TraceLogging.
Uruchom program WPA.
<path to wpr>\wpa.exeZaładuj plik śledzenia (etl).
Wyświetl wydarzenia dostawcy. W Eksploratorze Graph rozwiń Działanie systemu.
Kliknij dwukrotnie zdarzenia ogólne, aby wyświetlić je w widoku Analizy.
W widoku Analiza znajdź zdarzenia od dostawcy, aby sprawdzić, czy rejestrowanie działa.
W kolumnie nazwa dostawcy tabeli Zdarzenia ogólne znajdź i wybierz wiersz z nazwą dostawcy.
Możesz kliknąć nagłówek kolumny, aby sortować według nazwy kolumny, co może ułatwić znalezienie dostawcy. Po znalezieniu dostawcy kliknij prawym przyciskiem myszy nazwę i wybierz pozycję Filtruj według wyboru.