Bagikan melalui


Merekam dan Melihat Peristiwa TraceLogging

Anda dapat menggunakan banyak alat untuk mengumpulkan dan mendekode peristiwa TraceLogging ETW.

  • Untuk mengontrol sesi pelacakan, gunakan alat seperti WPR, tracelog, atau traceview.
  • Untuk mendekode peristiwa dari sesi, gunakan alat seperti WPA, tracefmt, atau traceview.

Contoh ini menunjukkan cara merekam peristiwa TraceLogging dengan Windows Performance Recorder (WPR) dan melihatnya dengan Windows Penganalisis Kinerja (WPA).

Prasyarat

  • Windows 10
  • Versi Windows 10 Windows Performance Recorder (WPR), dan versi Windows 10 Windows Penganalisis Kinerja (WPA) yang merupakan bagian dari Windows® Assessment and Deployment Kit (Windows ADK).

Penting

Jejak yang diambil dengan TraceLogging harus diambil dengan versi Windows 10 Windows Performance Recorder dan dilihat dengan versi Windows 10 Windows Penganalisis Kinerja. Jika Anda tidak dapat mengambil atau mendekode peristiwa Anda, verifikasi bahwa Anda menggunakan versi alat Windows 10.

1. Mengambil data pelacakan dengan WPR

Untuk mengambil jejak pada Windows Phone, lihat Menangkap peristiwa TraceLogging pada Windows Phone di bawah ini.

Buat profil Perekam Performa Windows (.wprp) sehingga Anda dapat menggunakan WPR untuk mengambil peristiwa Pelacakan Anda.

Buat . File WPRP

  1. Gunakan contoh WPRP berikut dengan contoh kode asli di Mulai Cepat TraceLogging C/C++ atau contoh terkelola di Mulai Cepat Terkelola TraceLogging. Jika Anda mencatat peristiwa dari penyedia Anda sendiri, ganti bagian TODO dengan nilai yang sesuai untuk penyedia Anda.

    Penting

    Jika Anda menggunakan mulai cepat TraceLogging C/C++, tentukan GUID penyedia dalam Name atribut <EventProvider> elemen . Misalnya: <EventProvider Id="EventProvider_SimpleTraceLoggingProvider" Name="0205c616-cf97-5c11-9756-56a2cee02ca7" />. Jika Anda menggunakan mulai cepat TraceLogging terkelola, tentukan nama penyedia yang diawali oleh * dalam Name atribut <EventProvider /> elemen . Contohnya:<EventProvider Name="*SimpleTraceLoggingProvider" />

    Contoh file WPRP:

    <?xml version="1.0" encoding="utf-8"?>
    <!-- TODO:
    1. Find and replace "SimpleTraceLoggingProvider" with the name of your provider.
    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_SimpleTraceLoggingProvider" Name="SimpleTraceLoggingProvider">
          <BufferSize Value="64" />
          <Buffers Value="4" />
        </EventCollector>
    
        <!-- TODO:
        1. Update Name attribute in EventProvider xml element with your provider GUID, eg: Name="0205c616-cf97-5c11-9756-56a2cee02ca7". 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 one EventProvider xml element and references it 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_SimpleTraceLoggingProvider" Name="*SimpleTraceLoggingProvider" />
    
        <Profile Id="SimpleTraceLoggingProvider.Verbose.File" Name="SimpleTraceLoggingProvider" Description="SimpleTraceLoggingProvider" LoggingMode="File" DetailLevel="Verbose">
          <Collectors>
            <EventCollectorId Value="EventCollector_SimpleTraceLoggingProvider">
              <EventProviders>
                <!-- TODO:
                1. Fix your EventProviderId with Value same as the Id attribute on EventProvider xml element above
                -->
                <EventProviderId Value="EventProvider_SimpleTraceLoggingProvider" />
              </EventProviders>
            </EventCollectorId>
          </Collectors>
        </Profile>
    
        <Profile Id="SimpleTraceLoggingProvider.Light.File" Name="SimpleTraceLoggingProvider" Description="SimpleTraceLoggingProvider" Base="SimpleTraceLoggingProvider.Verbose.File" LoggingMode="File" DetailLevel="Light" />
        <Profile Id="SimpleTraceLoggingProvider.Verbose.Memory" Name="SimpleTraceLoggingProvider" Description="SimpleTraceLoggingProvider" Base="SimpleTraceLoggingProvider.Verbose.File" LoggingMode="Memory" DetailLevel="Verbose" />
        <Profile Id="SimpleTraceLoggingProvider.Light.Memory" Name="SimpleTraceLoggingProvider" Description="SimpleTraceLoggingProvider" Base="SimpleTraceLoggingProvider.Verbose.File" LoggingMode="Memory" DetailLevel="Light" />
    
      </Profiles>
    </WindowsPerformanceRecorder>
    
  2. Simpan file dengan . Ekstensi nama file WPRP.

  3. Mulai pengambilan menggunakan WPR dari jendela Prompt Perintah yang ditinggikan (jalankan sebagai Administrator).

    <jalur ke wpr>\wpr.exe -start GeneralProfile -start TraceLoggingProvider.wprp

    Tip

    Untuk tujuan pembuatan profil umum, Anda juga dapat menambahkan -start GeneralProfile ke baris perintah wpr.exe untuk menangkap peristiwa sistem bersama dengan peristiwa dari penyedia Anda. Jika Anda hanya ingin mengumpulkan acara Anda, hilangkan -start GeneralProfile.

  4. Jalankan aplikasi yang berisi peristiwa Anda.

  5. Hentikan tangkapan jejak.

    <jalur ke wpr> deskripsi\wpr.exe -stop TraceCaptureFile.etl

    Tip

    Jika Anda menambahkan -start GeneralProfile untuk mengumpulkan peristiwa sistem, tambahkan -stop GeneralProfile ke baris perintahwpr.exe di atas.

2. Menangkap peristiwa TraceLogging di Windows Phone

  1. Mulai tracelog untuk mengambil peristiwa dari penyedia Anda.

    cmdd tracelog -start test -f c:\test.etl -guid #providerguid

  2. Jalankan skenario pengujian Anda untuk mencatat peristiwa.

  3. Hentikan tangkapan pelacakan.

    cmdd tracelog -stop test

  4. Gabungkan hasil pelacakan sistem dengan hasil pelacakan Anda.

    cmdd xperf -merge c:\test.etl c:\testmerged.etl

  5. Ambil file log gabungan.

    getd c:\testmerged.etl

3. Lihat data TraceLogging menggunakan Windows Penganalisis Kinerja

WPA saat ini adalah satu-satunya penampil yang dapat Anda gunakan untuk melihat file jejak TraceLogging (.etl).

  1. Mulai WPA.

    <jalur ke wpr>\wpa.exe traceLoggingResults.etl

  2. Muat file jejak (.etl) yang Anda tentukan dalam perintah wpa.exe di atas, misalnya traceLoggingResults.etl.

  3. Lihat peristiwa penyedia Anda. Di WPA Graph Explorer, perluas Aktivitas Sistem.

  4. Klik dua kali di panel Peristiwa Generik untuk menampilkan peristiwa di panel Analisis .

    perluas peristiwa generik

  5. Di panel Analisis, temukan peristiwa dari penyedia Anda untuk memverifikasi bahwa TraceLogging berfungsi.

    Di kolom Nama Penyedia dari tabel Kejadian Umum , temukan dan pilih baris dengan nama penyedia Anda.

    Jika Anda memiliki beberapa penyedia untuk diurutkan, klik header kolom untuk mengurutkan menurut nama kolom yang mungkin membuatnya lebih mudah untuk menemukan penyedia Anda.

    Saat Anda menemukan penyedia Anda, klik kanan pada nama dan pilih Filter ke Pilihan.

    pemilihan filter ke penyedia

    Peristiwa untuk SimpleTraceLoggingProvider dan nilainya akan muncul di panel bawah jendela Analisis. Perluas nama penyedia untuk melihat peristiwa.

    lihat peristiwa dari simpletraceloggingprovider

    Untuk informasi selengkapnya tentang menggunakan WPA, lihat windows Penganalisis Kinerja.

Ringkasan dan langkah berikutnya

Proses untuk merekam dan melihat peristiwa ETW menggunakan WPR dan WPA berlaku sama baiknya untuk peristiwa TraceLogging.

Lihat Contoh Pelacakan C/C++ untuk contoh TraceLogging tambahan.