Bagikan melalui


Trace Provider Definitions <traceProviderDefinitions>

Gambaran Umum

Elemen ini <traceProviderDefinitions> memungkinkan Anda menentukan kumpulan penyedia jejak yang tersedia di server Internet Information Services (IIS) 7. Penyedia pelacakan adalah aplikasi atau komponen sistem operasi yang menghasilkan pesan jejak atau peristiwa pelacakan. Saat Anda menginstal layanan peran Pelacakan di IIS 7, secara default, IIS menginstal penyedia pelacakan WWW Server, yang terkait dengan server IIS 7, penyedia pelacakan ASP, dan penyedia pelacakan Ekstensi ISAPI. Jika Anda menginstal ASP.NET 2.0 di server, IIS 7 secara otomatis menambahkan penyedia pelacakan ASPNET ke koleksi definisi penyedia pelacakan. IIS mendefinisikan setiap penyedia pelacakan dalam <add> elemen dalam <traceProviderDefinitions> elemen .

Anda dapat menambahkan penyedia pelacakan kustom ke server dengan menambahkan <add> elemen yang menentukan penyedia pelacakan tersebut. Anda dapat menyertakan <remove> elemen dalam <traceProviderDefinitions> elemen untuk menghapus satu penyedia pelacakan yang diwarisi dari file konfigurasi yang lebih tinggi dalam hierarki konfigurasi. Anda dapat menggunakan <clear> elemen untuk menghapus semua penyedia pelacakan yang diwariskan.

Kompatibilitas

Versi Catatan
IIS 10.0 Elemen <traceProviderDefinitions> tidak dimodifikasi dalam IIS 10.0.
IIS 8.5 Elemen <traceProviderDefinitions> tidak dimodifikasi dalam IIS 8.5.
IIS 8.0 Elemen <traceProviderDefinitions> tidak dimodifikasi dalam IIS 8.0.
IIS 7.5 Elemen <traceProviderDefinitions> tidak dimodifikasi dalam IIS 7.5.
IIS 7.0 Elemen ini <traceProviderDefinitions> diperkenalkan di IIS 7.0.
IIS 6.0 T/A

Siapkan

Setelah Anda menyelesaikan penginstalan default IIS 7 dan yang lebih baru, Anda harus menginstal layanan peran pelacakan untuk menggunakan pelacakan permintaan yang gagal. Setelah menginstal layanan peran, Anda masih harus mengaktifkan pelacakan permintaan yang gagal di tingkat situs, tingkat aplikasi, atau tingkat direktori.

Windows Server 2012 atau Windows Server 2012 R2

  1. Pada taskbar, klik Manajer Server.
  2. Di Manajer Server, klik menu Kelola , lalu klik Tambahkan Peran dan Fitur.
  3. Di wizard Tambahkan Peran dan Fitur , klik Berikutnya. Pilih jenis penginstalan dan klik Berikutnya. Pilih server tujuan dan klik Berikutnya.
  4. Pada halaman Peran Server , perluas Server Web (IIS), perluas Server Web, perluas Kesehatan dan Diagnostik, lalu pilih Pelacakan. Klik Berikutnya.
    Cuplikan layar memperlihatkan panel Server Web dan Kesehatan dan Diagnostik diperluas dan Pelacakan dipilih. .
  5. Pada halaman Pilih fitur, klik Berikutnya.
  6. Pada halaman Konfirmasi pilihan instalasi, klik Instal.
  7. Pada halaman Hasil , klik Tutup.

Windows 8 atau Windows 8.1

  1. Pada layar Mulai, pindahkan penunjuk ke sudut kiri bawah, klik kanan tombol Mulai, lalu klik Panel Kontrol.
  2. Di Panel Kontrol, klik Program dan Fitur, lalu klik Aktifkan atau nonaktifkan fitur Windows.
  3. Perluas Layanan Informasi Internet, perluas Layanan Web Seluruh Dunia, perluas Kesehatan dan Diagnostik, lalu pilih Pelacakan.
    Cuplikan layar node World Wide Web Services and Health and Diagnostics diperluas dengan Pelacakan dipilih.- Klik OK.
  4. Klik Tutup.

Windows Server 2008 atau Windows Server 2008 R2

  1. Pada taskbar, klik Mulai, arahkan ke Alat Administratif, lalu klik Manajer Server.
  2. Di panel hierarki Manajer Server , perluas Peran, lalu klik Server Web (IIS).
  3. Di panel Server Web (IIS), gulir ke bagian Layanan Peran , lalu klik Tambahkan Layanan Peran.
  4. Pada halaman Pilih Layanan Peran dari Wizard Tambahkan Layanan Peran, pilih Pelacakan, lalu klik Berikutnya.
    Cuplikan layar menampilkan panel Pilih Layanan Peran diperluas dan Pelacakan dipilih.
  5. Pada halaman Konfirmasi Pilihan Penginstalan , klik Instal.
  6. Pada halaman Hasil , klik Tutup.

Windows Vista atau Windows 7

  1. Pada taskbar, klik Mulai, lalu klik Panel Kontrol.
  2. Di Panel Kontrol, klik Program dan Fitur, lalu klik Aktifkan atau nonaktifkan Fitur Windows.
  3. Perluas Layanan Informasi Internet, lalu World Wide Web Services, lalu Kesehatan dan Diagnostik.
  4. Pilih Pelacakan, lalu klik OK.
    Cuplikan layar memperlihatkan node World Wide Web Services and Health and Diagnostics yang diperluas dengan Pelacakan disorot.

Bagaimana Caranya

Tidak ada antarmuka pengguna untuk menambahkan penyedia pelacakan untuk IIS 7. Untuk contoh cara menambahkan penyedia pelacakan secara terprogram, lihat bagian Sampel Kode dari dokumen ini.

Konfigurasi

Anda dapat mengonfigurasi <traceProviderDefinitions> elemen di tingkat server dalam file ApplicationHost.config atau di tingkat situs, tingkat aplikasi, atau tingkat direktori dalam file Web.config yang sesuai.

Atribut

Tidak ada.

Elemen Anak

Elemen Deskripsi
add Elemen opsional.

Menambahkan penyedia pelacakan ke kumpulan penyedia pelacakan.
clear Elemen opsional.

Menghapus semua referensi ke penyedia pelacakan dari kumpulan penyedia pelacakan.
remove Elemen opsional.

Menghapus referensi ke penyedia pelacakan dari kumpulan penyedia pelacakan.

Sampel Konfigurasi

Elemen default <traceProviderDefinitions> berikut dikonfigurasi dalam file ApplicationHost.config root di IIS 7.0.

<traceProviderDefinitions>
   <add name="WWW Server" guid="{3a2a4e84-4c21-4981-ae10-3fda0d9b0f83}">
      <areas>
         <clear />
         <add name="Authentication" value="2" />
         <add name="Security" value="4" />
         <add name="Filter" value="8" />
         <add name="StaticFile" value="16" />
         <add name="CGI" value="32" />
         <add name="Compression" value="64" />
         <add name="Cache" value="128" />
         <add name="RequestNotifications" value="256" />
         <add name="Module" value="512" />
      </areas>
   </add>
   <add name="ASP" guid="{06b94d9a-b15e-456e-a4ef-37c984a2cb4b}">
      <areas>
         <clear />
      </areas>
   </add>
   <add name="ISAPI Extension" guid="{a1c2040e-8840-4c31-ba11-9871031a19ea}">
      <areas>
         <clear />
      </areas>
   </add>
   <add name="ASPNET" guid="{AFF081FE-0247-4275-9C4E-021F3DC1DA35}">
      <areas>
         <add name="Infrastructure" value="1" />
         <add name="Module" value="2" />
         <add name="Page" value="4" />
         <add name="AppServices" value="8" />
      </areas>
   </add>
</traceProviderDefinitions>

Kode Sampel

Contoh berikut menambahkan penyedia pelacakan kustom dengan dua area pelacakan ke daftar yang ditentukan dalam koleksi global <traceProviderDefinitions> .

AppCmd.exe

appcmd.exe set config -section:system.webServer/tracing/traceProviderDefinitions /+"[name='MyTraceProvider',guid='{00000000-0000-0000-0000-00000000000}']" /commit:apphost

appcmd.exe set config -section:system.webServer/tracing/traceProviderDefinitions /+"[guid='{00000000-0000-0000-0000-00000000000}'].areas.[name='ProviderAreaOne',value='0']" /commit:apphost

appcmd.exe set config -section:system.webServer/tracing/traceProviderDefinitions /+"[guid='{00000000-0000-0000-0000-00000000000}'].areas.[name='ProviderAreaTwo',value='1']" /commit:apphost

Catatan

Anda harus memastikan untuk mengatur parameter penerapan ke apphost saat Anda menggunakan AppCmd.exe untuk mengonfigurasi pengaturan ini. Ini menerapkan pengaturan konfigurasi ke bagian lokasi yang sesuai dalam file ApplicationHost.config.

C#

using System;
using System.Text;
using Microsoft.Web.Administration;

internal static class Sample
{
   private static void Main()
   {
      using (ServerManager serverManager = new ServerManager())
      {
         Configuration config = serverManager.GetApplicationHostConfiguration();
         ConfigurationSection traceProviderDefinitionsSection = config.GetSection("system.webServer/tracing/traceProviderDefinitions");
         ConfigurationElementCollection traceProviderDefinitionsCollection = traceProviderDefinitionsSection.GetCollection();

         ConfigurationElement addElement = traceProviderDefinitionsCollection.CreateElement("add");
         addElement["name"] = @"MyTraceProvider";
         addElement["guid"] = @"{00000000-0000-0000-0000-00000000000}";
         ConfigurationElementCollection areasCollection = addElement.GetCollection("areas");

         ConfigurationElement addElement1 = areasCollection.CreateElement("add");
         addElement1["name"] = @"ProviderAreaOne";
         addElement1["value"] = 0;
         areasCollection.Add(addElement1);

         ConfigurationElement addElement2 = areasCollection.CreateElement("add");
         addElement2["name"] = @"ProviderAreaTwo";
         addElement2["value"] = 1;
         areasCollection.Add(addElement2);

         traceProviderDefinitionsCollection.Add(addElement);
         serverManager.CommitChanges();
      }
   }
}

VB.NET

Imports System
Imports System.Text
Imports Microsoft.Web.Administration

Module Sample
   Sub Main()
      Dim serverManager As ServerManager = New ServerManager
      Dim config As Configuration = serverManager.GetApplicationHostConfiguration
      Dim traceProviderDefinitionsSection As ConfigurationSection = config.GetSection("system.webServer/tracing/traceProviderDefinitions")
      Dim traceProviderDefinitionsCollection As ConfigurationElementCollection = traceProviderDefinitionsSection.GetCollection

      Dim addElement As ConfigurationElement = traceProviderDefinitionsCollection.CreateElement("add")
      addElement("name") = "MyTraceProvider"
      addElement("guid") = "{00000000-0000-0000-0000-00000000000}"
      Dim areasCollection As ConfigurationElementCollection = addElement.GetCollection("areas")

      Dim addElement1 As ConfigurationElement = areasCollection.CreateElement("add")
      addElement1("name") = "ProviderAreaOne"
      addElement1("value") = 0
      areasCollection.Add(addElement1)

      Dim addElement2 As ConfigurationElement = areasCollection.CreateElement("add")
      addElement2("name") = "ProviderAreaTwo"
      addElement2("value") = 1
      areasCollection.Add(addElement2)

      traceProviderDefinitionsCollection.Add(addElement)
      serverManager.CommitChanges()
   End Sub
End Module

JavaScript

var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";
var traceProviderDefinitionsSection = adminManager.GetAdminSection("system.webServer/tracing/traceProviderDefinitions", "MACHINE/WEBROOT/APPHOST");
var traceProviderDefinitionsCollection = traceProviderDefinitionsSection.Collection;

var addElement = traceProviderDefinitionsCollection.CreateNewElement("add");
addElement.Properties.Item("name").Value = "MyTraceProvider";
addElement.Properties.Item("guid").Value = "{00000000-0000-0000-0000-00000000000}";
var areasCollection = addElement.ChildElements.Item("areas").Collection;

var addElement1 = areasCollection.CreateNewElement("add");
addElement1.Properties.Item("name").Value = "ProviderAreaOne";
addElement1.Properties.Item("value").Value = 0;
areasCollection.AddElement(addElement1);

var addElement2 = areasCollection.CreateNewElement("add");
addElement2.Properties.Item("name").Value = "ProviderAreaTwo";
addElement2.Properties.Item("value").Value = 1;
areasCollection.AddElement(addElement2);

traceProviderDefinitionsCollection.AddElement(addElement);
adminManager.CommitChanges();

Vbscript

Set adminManager = createObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"
Set traceProviderDefinitionsSection = adminManager.GetAdminSection("system.webServer/tracing/traceProviderDefinitions", "MACHINE/WEBROOT/APPHOST")
Set traceProviderDefinitionsCollection = traceProviderDefinitionsSection.Collection

Set addElement = traceProviderDefinitionsCollection.CreateNewElement("add")
addElement.Properties.Item("name").Value = "MyTraceProvider"
addElement.Properties.Item("guid").Value = "{00000000-0000-0000-0000-00000000000}"
Set areasCollection = addElement.ChildElements.Item("areas").Collection

Set addElement1 = areasCollection.CreateNewElement("add")
addElement1.Properties.Item("name").Value = "ProviderAreaOne"
addElement1.Properties.Item("value").Value = 0
areasCollection.AddElement addElement1

Set addElement2 = areasCollection.CreateNewElement("add")
addElement2.Properties.Item("name").Value = "ProviderAreaTwo"
addElement2.Properties.Item("value").Value = 1
areasCollection.AddElement addElement2

traceProviderDefinitionsCollection.AddElement addElement
adminManager.CommitChanges()