Bagikan melalui


Pelacakan Melingkar

Sampel CircularTracing menunjukkan implementasi pendengar pelacakan buffer melingkar. Skenario umum untuk layanan produksi adalah memiliki layanan yang tersedia untuk jangka waktu yang lama dan mengaktifkan pencatatan jejak pada tingkat rendah. Layanan ini mengonsumsi banyak ruang disk. Saat memecahkan masalah layanan, data terbaru dalam log jejak relevan untuk memecahkan masalah. Sampel ini menunjukkan implementasi pendengar pelacakan buffer melingkar di mana hanya jejak terbaru yang disimpan di disk hingga jumlah data yang dapat dikonfigurasi. Sampel ini didasarkan pada Memulai dan menyertakan pendengar pelacakan kustom.

Catatan

Prosedur penyiapan dan petunjuk pembuatan untuk sampel ini terdapat di akhir topik ini.

Sampel ini mengasumsikan bahwa Anda terbiasa dengan sampel Penelusuran dan Pengelogan Pesan dan telah membaca dokumentasi yang disediakan untuk sampel Penelusuran dan Pengelogan Pesan.

Pendengar Pelacakan Buffer Melingkar

Konsep di balik implementasi Pendengar Pelacakan Buffer Melingkar adalah memiliki dua file yang masing-masing dapat menyimpan hingga setengah dari total data log jejak yang diinginkan. Pendengar membuat satu file dan menulis ke file tersebut sampai mencapai batas setengah dari ukuran data, di mana ia beralih ke file kedua. Ketika pendengar mencapai batas untuk file kedua - pendengar menimpa file pertama dengan jejak baru.

Pendengar ini berasal dari XmlWriteTraceListener dan memungkinkan log dilihat dengan Alat Penampil Jejak Layanan (SvcTraceViewer.exe). Saat mencoba melihat log, kedua file log dapat dengan mudah dikombinasikan ulang dengan membuka kedua file log secara bersamaan di alat Penampil Jejak Layanan. Alat Penampil Jejak Layanan secara otomatis mengurutkan jejak sehingga mereka muncul dalam urutan yang benar.

Konfigurasi

Layanan dapat dikonfigurasi untuk menggunakan Pendengar Pelacakan Buffer Melingkar dengan menambahkan kode berikut untuk pendengar dan elemen sumber. Ukuran file maksimum ditentukan dengan mengatur atribut maxFileSizeKB dalam konfigurasi pendengar pelacakan melingkar. Atribut ini ditunjukkan dalam kode berikut.

<system.diagnostics>
  <sources>
    <source name="System.ServiceModel" switchValue="Information,ActivityTracing" propagateActivity="true">
      <listeners>
        <add name="CircularTraceListener" />
      </listeners>
    </source>
  </sources>
  <sharedListeners>
    <add name="CircularTraceListener" type="Microsoft. Samples.ServiceModel.CircularTraceListener,CircularTraceListener"
         initializeData="c:\logs\CircularTracing-service.svclog" maxFileSizeKB="100" />
  </sharedListeners>
  <trace autoflush="true" />
</system.diagnostics>

Untuk menyiapkan, membangun, dan menjalankan sampel

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

  2. Untuk membangun solusi edisi C# atau Visual Basic .NET, ikuti petunjuknya di Membangun Sampel WCF.

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

Lihat juga