Добавление URL-адресов трассировки <>
Общие сведения
Элемент <add>
<traceUrls>
коллекции добавляет URL-адрес трассировки в коллекцию URL-адресов для трассировки etW.
Примечание
Трассировка событий Windows (ETW) — это высокоскоростное средство трассировки общего назначения, предоставляемое операционной системой. Используя механизм буферизации и ведения журнала, реализованный в ядре, etW предоставляет механизм трассировки событий, вызванных как приложениями в пользовательском режиме, так и драйверами устройств в режиме ядра. Кроме того, etW позволяет включать и отключать ведение журнала динамически, упрощая выполнение подробной трассировки в рабочих средах без необходимости перезагрузки или перезапуска приложения. Механизм ведения журнала использует буферы для каждого процессора, которые записываются на диск потоком асинхронного модуля записи. Это позволяет крупномасштабным серверным приложениям записывать события с минимальными нарушениями.
Совместимость
Версия | Примечания |
---|---|
IIS 10.0 | Элемент <add> не был изменен в IIS 10.0. |
IIS 8,5 | Элемент <add> не был изменен в IIS 8.5. |
IIS 8,0 | Элемент <add> не был изменен в IIS 8.0. |
IIS 7,5 | Элемент <add> не был изменен в IIS 7.5. |
IIS 7.0 | Элемент <add> коллекции появился <traceUrls> в IIS 7.0. |
IIS 6,0 | Н/Д |
Настройка
Элемент <traceUrls>
<httpTracing>
коллекции включен в установку iis 7 по умолчанию.
Инструкции
Для элемента IIS 7 отсутствует пользовательский интерфейс <httpTracing>
. Примеры программного доступа к элементу <httpTracing>
см. в разделе Примеры кода этого документа.
Конфигурация
Атрибуты
Атрибут | Описание |
---|---|
Value |
Обязательный строковый атрибут. Указывает URL-адрес для трассировки. |
Дочерние элементы
Отсутствует.
Образец конфигурации
Следующий пример включает трассировку для примера домашней страницы, которая поставляется с IIS 7 при размещении в файле Web.config в корне веб-сайта по умолчанию.
<configuration>
<system.webServer>
<httpTracing>
<traceUrls>
<add value="/iisstart.htm" />
</traceUrls>
</httpTracing>
</system.webServer>
</configuration>
Пример кода
Приведенные ниже примеры позволяют выполнить трассировку для примера домашней страницы, которая поставляется с IIS 7 на веб-сайте Contoso, добавив запись в <traceUrls>
коллекцию для этого сайта.
AppCmd.exe
appcmd.exe set config "Contoso" -section:system.webServer/httpTracing /+"traceUrls.[value='/iisstart.htm']" /commit:apphost
Примечание
При использовании AppCmd.exe для настройки этих параметров для параметра apphost
фиксации необходимо задать значение . Это зафиксирует параметры конфигурации в соответствующем разделе расположения в файле 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 httpTracingSection = config.GetSection("system.webServer/httpTracing", "Contoso");
ConfigurationElementCollection traceUrlsCollection = httpTracingSection.GetCollection("traceUrls");
ConfigurationElement addElement = traceUrlsCollection.CreateElement("add");
addElement["value"] = @"/iisstart.htm";
traceUrlsCollection.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 httpTracingSection As ConfigurationSection = config.GetSection("system.webServer/httpTracing", "Contoso")
Dim traceUrlsCollection As ConfigurationElementCollection = httpTracingSection.GetCollection("traceUrls")
Dim addElement As ConfigurationElement = traceUrlsCollection.CreateElement("add")
addElement("value") = "/iisstart.htm"
traceUrlsCollection.Add(addElement)
serverManager.CommitChanges()
End Sub
End Module
JavaScript
var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";
var httpTracingSection = adminManager.GetAdminSection("system.webServer/httpTracing", "MACHINE/WEBROOT/APPHOST/Contoso");
var traceUrlsCollection = httpTracingSection.ChildElements.Item("traceUrls").Collection;
var addElement = traceUrlsCollection.CreateNewElement("add");
addElement.Properties.Item("value").Value = "/iisstart.htm";
traceUrlsCollection.AddElement(addElement);
adminManager.CommitChanges();
VBScript
Set adminManager = createObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"
Set httpTracingSection = adminManager.GetAdminSection("system.webServer/httpTracing", "MACHINE/WEBROOT/APPHOST/Contoso")
Set traceUrlsCollection = httpTracingSection.ChildElements.Item("traceUrls").Collection
Set addElement = traceUrlsCollection.CreateNewElement("add")
addElement.Properties.Item("value").Value = "/iisstart.htm"
traceUrlsCollection.AddElement addElement
adminManager.CommitChanges()