Bagikan melalui


Pelacakan ETW

Sampel AnalyticTrace menunjukkan cara mengimplementasikan pelacakan End-to-End (E2E) menggunakan Event Tracing for Windows (ETW) dan ETWTraceListener yang disediakan dengan sampel ini. Sampel didasarkan pada Memulai dan menyertakan pelacakan ETW.

Catatan

Prosedur pengaturan dan instruksi build untuk sampel ini terletak di akhir topik ini.

Sampel ini mengasumsikan bahwa Anda sudah terbiasa dengan Pelacakan dan Pengelogan Pesan.

Setiap sumber jejak dalam model pelacakan System.Diagnostics dapat memiliki beberapa listener jejak yang menentukan tempat dan cara data dilacak. Jenis listener menentukan format tempat data jejak dicatat. Contoh kode berikut menunjukkan cara menambahkan listener ke konfigurasi.

<system.diagnostics>
    <sources>
        <source name="System.ServiceModel"
             switchValue="Verbose,ActivityTracing"
             propagateActivity="true">
            <listeners>
                <add type=
                   "System.Diagnostics.DefaultTraceListener"
                   name="Default">
                   <filter type="" />
                </add>
                <add name="ETW">
                    <filter type="" />
                </add>
            </listeners>
        </source>
    </sources>
    <sharedListeners>
        <add type=
            "Microsoft.ServiceModel.Samples.EtwTraceListener, ETWTraceListener"
            name="ETW" traceOutputOptions="Timestamp">
            <filter type="" />
       </add>
    </sharedListeners>
</system.diagnostics>

Sebelum menggunakan listener ini, Sesi Jejak ETW harus dimulai. Sesi ini dapat dimulai dengan menggunakan Logman.exe atau Tracelog.exe. File SetupETW.bat disertakan dengan sampel ini sehingga Anda dapat menyiapkan Sesi Jejak ETW beserta file CleanupETW.bat untuk menutup sesi dan menyelesaikan file log.

Catatan

Prosedur penyiapan dan petunjuk pembuatan untuk sampel ini terdapat di akhir topik ini. Untuk informasi selengkapnya tentang alat ini, lihat https://go.microsoft.com/fwlink/?LinkId=56580

Saat menggunakan ETWTraceListener, jejak dicatat dalam file .etl biner. Dengan pelacakan ServiceModel diaktifkan, semua jejak yang dihasilkan muncul dalam file yang sama. Gunakan Alat Penampil Jejak Layanan (SvcTraceViewer.exe) untuk melihat file log .etl dan .svclog. Penampil membuat tampilan sistem end-to-end yang memungkinkan untuk melacak pesan dari sumbernya ke tujuan serta titik konsumsinya.

Listener Jejak ETW mendukung pengelogan melingkar. Untuk mengaktifkan fitur ini, buka Mulai, Jalankan, lalu ketik cmd untuk memulai konsol perintah. Dalam perintah berikut, ganti parameter <logfilename> dengan nama file log Anda.

logman create trace Wcf -o <logfilename> -p "{411a0819-c24b-428c-83e2-26b41091702e}" -f bincirc -max 1000

Tombol -f dan -max bersifat opsional. Hal tersebut menentukan format melingkar biner dan ukuran log maksimal masing-masing 1000 MB. Tombol -p digunakan untuk menentukan penyedia jejak. Dalam contoh kami, "{411a0819-c24b-428c-83e2-26b41091702e}" adalah GUID untuk "Penyedia Sampel XML ETW".

Untuk memulai sesi, ketik perintah berikut.

logman start Wcf

Setelah selesai pengelogan, Anda dapat menghentikan sesi dengan perintah berikut.

logman stop Wcf

Proses ini menghasilkan log melingkar biner yang dapat Anda proses dengan alat pilihan Anda, termasuk Alat Penampil Jejak Layanan (SvcTraceViewer.exe) atau Tracerpt.

Anda juga dapat meninjau sampel Pelacakan Melingkar untuk mengetahui informasi selengkapnya tentang listener alternatif untuk melakukan pengelogan melingkar.

Untuk menyiapkan, membangun, dan menjalankan sampel

  1. Pastikan Anda telah melakukan Prosedur Penyiapan Satu Kali untuk Sampel Windows Communication Foundation.

  2. Untuk membangun solusi, ikuti instruksi dalam Membangun Sampel Windows Communication Foundation.

    Catatan

    Untuk menggunakan perintah RegisterProvider.bat, SetupETW.bat, dan CleanupETW.bat, Anda harus menjalankan dengan akun administrator lokal. Jika Anda menggunakan Windows Vista atau versi lebih baru, Anda juga harus menjalankan perintah dengan hak istimewa lebih tinggi. Untuk melakukannya, klik kanan ikon perintah, kemudian klik Jalankan sebagai administrator.

  3. Sebelum menjalankan sampel, jalankan RegisterProvider.bat pada klien dan server. Ini menyiapkan file ETWTracingSampleLog.etl yang dihasilkan untuk membuat jejak yang dapat dibaca oleh Penampil Jejak Layanan. File ini dapat ditemukan di folder C:\logs. Jika folder ini tidak ada, maka folder harus dibuat atau tidak ada jejak yang akan dihasilkan. Kemudian, jalankan SetupETW.bat di komputer klien dan server untuk memulai Sesi Jejak ETW. File SetupETW.bat dapat ditemukan di bagian folder CS\Client.

  4. Untuk menjalankan sampel dalam konfigurasi tunggal atau lintas komputer, ikuti petunjuk di Menjalankan Sampel Windows Communication Foundation.

  5. Setelah sampel selesai, jalankan CleanupETW.bat untuk menyelesaikan pembuatan file ETWTracingSampleLog.etl.

  6. Buka file ETWTracingSampleLog.etl dari dalam Penampil Jejak Layanan. Anda akan diminta untuk menyimpan file berformat biner sebagai file .svclog.

  7. Buka file .svclog yang baru dibuat dari dalam Penampil Jejak Layanan untuk melihat jejak ETW dan ServiceModel.

Lihat juga