Compartir a través de


Seguimiento <tracing>

Información general

El grupo de secciones <tracing> contiene opciones de seguimiento de solicitudes con error que ha configurado, así como definiciones de proveedor de seguimiento proporcionadas durante la instalación o por usted en el servidor web de Internet Information Services (IIS) 7.

El seguimiento basado en solicitudes proporciona una excelente manera de averiguar qué sucede exactamente con las solicitudes y por qué, siempre que pueda reproducir el problema experimenta el servidor. Problemas como un rendimiento deficiente en algunas solicitudes, errores relacionados con la autenticación de otras solicitudes, errores de código de estado HTTP 500 provenientes de Active Server Pages (ASP) o ASP.NET pueden ser muy difíciles de solucionar a menudo, a menos que haya capturado el seguimiento del problema cuando ocurre. El seguimiento de solicitudes con error está diseñado para almacenar en búfer los eventos de seguimiento de una solicitud y vaciarlos en el disco cuando una solicitud da error según la definición de error que proporcione.

IIS 7 solo muestra estos mensajes tras instalar y habilitar el módulo de seguimiento. Almacena estos mensajes y otra información de seguimiento en un archivo especial con el nombre archivo de registro de seguimiento de eventos con errores. Puede abrir estos archivos en un explorador web y revisar los eventos de seguimiento generados por IIS, eventos de seguimiento personalizados generados por módulos de terceros o ambos. De forma predeterminada, IIS 7 almacena estos archivos en la carpeta %systemroot%\inetpub\logs\FailedReqLogFiles.

La sección <tracing> contiene un elemento <traceFailedRequests> y un elemento <traceProviderDefinition>. El primer elemento configura el seguimiento de solicitudes con error en el sitio web o aplicación, mientras que el segundo define los proveedores de seguimiento disponibles en el servidor. De forma predeterminada, IIS 7 incluye proveedores de seguimiento para las extensiones ASP, ASP.NET, API de Internet Server (ISAPI) y el propio servidor web. También puede incluir proveedores de seguimiento personalizados.

Compatibilidad

Versión Notas
IIS 10.0 El elemento <tracing> no se modificó en IIS 10.0.
IIS 8.5 El elemento <tracing> no se modificó en IIS 8.5.
IIS 8.0 El elemento <tracing> no se modificó en IIS 8.0.
IIS 7.5 El elemento <tracing> no se modificó en IIS 7.5.
IIS 7.0 El elemento <tracing> se introdujo en IIS 7.0.
IIS 6,0 N/D

Configuración

Después de finalizar la instalación predeterminada de IIS 7 y versiones posteriores, debe instalar el servicio de rol de seguimiento para usar el seguimiento de solicitudes con errores. Después de instalar el servicio de rol, todavía debe habilitar el seguimiento de solicitudes con error en el nivel de sitio, el nivel de aplicación o el nivel de directorio.

Windows Server 2012 o Windows Server 2012 R2

  1. En la barra de tareas, haga clic en Administrador del servidor.
  2. En Administrador del servidor, haga clic en el menú Administrar y, después, haga clic en Agregar roles y características.
  3. En el asistente para Agregar roles y características, haga clic en Siguiente. Seleccione el tipo de instalación y haga clic en Siguiente. Seleccione el servidor de destino y haga clic en Siguiente.
  4. En la página Roles de servidor, expanda Servidor web (IIS), expanda Servidor web, expanda Mantenimiento y diagnósticos y, a continuación, seleccione Seguimiento. Haga clic en Next.
    Screenshot of the Server Roles page. Tracing is highlighted in the expanded menu..
  5. En la página Seleccionar características, haz clic en Siguiente.
  6. En la página Confirmar selecciones de instalación, haga clic en Instalar.
  7. En la página Resultados , haga clic en Cerrar.

Windows 8 o Windows 8.1

  1. En la pantalla Inicio, mueva el puntero hasta la esquina inferior izquierda, haga clic con el botón derecho en el botón Inicio y, a continuación, haga clic en Panel de control.
  2. En Panel de control, haga clic en Programas y características y después en Activar o desactivar las características de Windows.
  3. Expanda Internet Information Services, expanda World Wide Web Services, expanda Mantenimiento y diagnóstico y, a continuación, seleccione Seguimiento.
    Screenshot of the Windows Features dialog box. Tracing is highlighted in the drop down menu.: haga clic en Aceptar.
  4. Haga clic en Cerrar.

Windows Server 2008 o Windows Server 2008 R2

  1. En la barra de tareas, haga clic en Inicio, seleccione Herramientas administrativas y, luego, haga clic en Administrador del servidor.
  2. En el panel de jerarquía del Administrador del servidor, expanda Roles y, luego, haga clic en Servidor web (IIS).
  3. En el panel Servidor web (IIS), desplácese hasta la sección Servicios de rol y, luego, haga clic en Agregar servicios de rol.
  4. En la página Seleccionar servicios de rol del Asistente para agregar servicios de rol, seleccione Seguimiento y haga clic en Siguiente.
    Screenshot of the Add Role Services wizard displaying the Role Services page. Tracing is highlighted in the menu.
  5. En la página Confirmar selecciones de instalación, haz clic en Instalar.
  6. En la página Resultados , haga clic en Cerrar.

Windows Vista o Windows 7

  1. En la barra de tareas, haga clic en Inicio y, luego, haga clic en Panel de control.
  2. En Panel de control, haga clic en Programas y características y después en Activar o desactivar las características de Windows.
  3. Expanda Internet Information Services, después Servicios World Wide Web y, a continuación Estado y diagnóstico.
  4. Seleccione Seguimiento y después haga clic en Aceptar.
    Screenshot of the Windows Features dialog box. Tracing is highlighted in the expanded menu.

Procedimientos

Cómo habilitar el seguimiento

  1. Abra el Administrador de Internet Information Services (IIS):

    • Si usa Windows Server 2012 o Windows Server 2012 R2:

      • En la barra de tareas, haga clic en Administrador del servidor, en Herramientas y, a continuación, en Administrador de Internet Information Services (IIS).
    • Si usa Windows 8 o Windows 8.1:

      • Mantenga presionada la tecla Windows, presione la letra X y haga clic en Panel de control.
      • En Panel de control, haga clic en Herramientas administrativas y, a continuación, haga doble clic en Administrador de Internet Information Services (IIS).
    • Si usa Windows Server 2008 o Windows Server 2008 R2:

      • En la barra de tareas, haga clic en Inicio, seleccione Herramientas administrativas y, a continuación, haga clic en Administrador de Internet Information Services (IIS).
    • Si usa Windows Vista o Windows 7:

      • En la barra de tareas, haga clic en Inicio y, luego, haga clic en Panel de control.
      • Haga doble clic en Herramientas administrativas y, a continuación, haga doble clic en Administrador de Internet Information Services (IIS).
  2. En el panel Conexiones, seleccione la conexión del servidor, el sitio, la aplicación o el directorio para el que desea configurar Seguimiento de solicitudes con error.

  3. En el panel Acciones, haga clic en Seguimiento de solicitudes con error...
    Screenshot of the I I S Manager window displaying the Default Web Site Home page.

  4. En el cuadro de diálogo Editar configuración de seguimiento de solicitudes con error de sitio web, marque la casilla Habilitar para habilitar el seguimiento, deje el valor predeterminado o escriba un nuevo directorio en el que desee almacenar los archivos de registro de solicitudes con error en el cuadro Directorio, escriba el número de archivos de seguimiento de solicitudes con error que desea almacenar en el cuadro Número máximo de archivos de seguimiento y, a continuación, haga clic en Aceptar.
    Screenshot of the Edit Web Site Failed Request Tracing Settings dialog box.

Cómo configurar definiciones de errores

  1. Abra el Administrador de Internet Information Services (IIS):

    • Si usa Windows Server 2012 o Windows Server 2012 R2:

      • En la barra de tareas, haga clic en Administrador del servidor, en Herramientas y, a continuación, en Administrador de Internet Information Services (IIS).
    • Si usa Windows 8 o Windows 8.1:

      • Mantenga presionada la tecla Windows, presione la letra X y haga clic en Panel de control.
      • En Panel de control, haga clic en Herramientas administrativas y, a continuación, haga doble clic en Administrador de Internet Information Services (IIS).
    • Si usa Windows Server 2008 o Windows Server 2008 R2:

      • En la barra de tareas, haga clic en Inicio, seleccione Herramientas administrativas y, a continuación, haga clic en Administrador de Internet Information Services (IIS).
    • Si usa Windows Vista o Windows 7:

      • En la barra de tareas, haga clic en Inicio y, luego, haga clic en Panel de control.
      • Haga doble clic en Herramientas administrativas y, a continuación, haga doble clic en Administrador de Internet Information Services (IIS).
  2. En el panel Conexiones, vaya a la conexión, el sitio, la aplicación o el directorio para el que desea configurar Seguimiento de solicitudes con error.

  3. En el panel Inicio, haga doble clic en Reglas de seguimiento de solicitudes con error.
    Screenshot of the I I S Manager displaying the Default Web Site Home page. The icon for Failed Request Tracing Rules is highlighted.

  4. En el panel Acciones, haga clic en Agregar....

  5. En la página Especificar contenido en seguimiento del asistente para agregar reglas de seguimiento de solicitudes con error, seleccione el tipo de contenido del que desea realizar el seguimiento y, a continuación, haga clic en Siguiente.
    Screenshot of the Add Failed Request Tracing Rule wizard displaying the Specify Content to Trace page.

  6. En la página Definir condiciones de seguimiento, seleccione las condiciones de seguimiento y, a continuación, haga clic en Siguiente. Las condiciones de seguimiento pueden incluir cualquier combinación de códigos de estado, un límite de tiempo que una solicitud debe tomar o la gravedad del evento. Si especifica todas las condiciones, la primera condición que se cumple genera el archivo de registro de seguimiento de solicitudes con error.
    Screenshot of the Add Failed Request Tracing Rule wizard displaying the Define Content to Trace page.

  7. En la página Seleccionar proveedores de seguimiento, seleccione uno o varios de los proveedores de seguimiento en Proveedores.
    Screenshot of the Add Failed Request Tracing Rule wizard displaying the Select Trace Providers page.

  8. En la página Seleccionar proveedores de seguimiento, seleccione uno o varios de los niveles de detalle en Detalle.
    Screenshot of the Add Failed Request Tracing Rule wizard displaying the Select Trace Providers page. W W W Server and Warnings are selected.

  9. Si seleccionó el proveedor de seguimiento ASPNET o WWW Server en el paso 8, seleccione una o más áreas funcionales para que el proveedor rastree en Áreas de la página Seleccionar proveedores de rastreo.

  10. Haga clic en Finalizar

Configuración

Puede configurar el grupo de secciones <tracing> a nivel de servidor en el archivo ApplicationHost.config o a nivel de sitio, nivel de aplicación o nivel de directorio en un archivo Web.config.

Atributos

Ninguno.

Elementos secundarios

Elemento Descripción
traceFailedRequests Elemento opcional.

Contiene la configuración para el seguimiento de las solicitudes con error en el servidor web.
traceProviderDefinitions Elemento opcional.

Define los proveedores de seguimiento que se usan en el servidor web.

Ejemplo de configuración

El siguiente ejemplo de configuración configura el seguimiento en el nivel de servidor en el archivo ApplicationHost.config. Establece el seguimiento de todos los archivos .aspx, usa el elemento <traceAreas> para establecer el proveedor de ASPNET y el realiza el seguimiento en todas las áreas de ASP.NET, que son Infrastructure, Module, Page y AppServices. El ejemplo también usa el atributo verbosity para establecer la cantidad de información devuelta al archivo de seguimiento en warning. Por último, el ejemplo usa el elemento <failureDefinitions> para realizar un seguimiento de solo las solicitudes que generan un código de estado HTTP 404.

<tracing>
   <traceFailedRequests>
      <add path="*.aspx">
         <traceAreas>
            <add provider="ASPNET" areas="Infrastructure,Module,Page,AppServices" verbosity="Warning" />
         </traceAreas>
         <failureDefinitions statusCodes="404" />
      </add>
   </traceFailedRequests>
</tracing>

Código de ejemplo

Los siguientes ejemplos habilitan el seguimiento detallado de solicitudes con error para errores HTTP 500 en contenido ASP.NET en todas las solicitudes a páginas *.aspx.

AppCmd.exe

appcmd.exe set config "Contoso" -section:system.webServer/tracing/traceFailedRequests /+"[path='*.aspx']" 

appcmd.exe set config "Contoso" -section:system.webServer/tracing/traceFailedRequests /+"[path='*.aspx'].traceAreas.[provider='ASPNET',areas='Infrastructure,Module,Page,AppServices',verbosity='Verbose']" 

appcmd.exe set config "Contoso" -section:system.webServer/tracing/traceFailedRequests /[path='*.aspx'].failureDefinitions.statusCodes:"500"

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.GetWebConfiguration("Contoso");
         ConfigurationSection traceFailedRequestsSection = config.GetSection("system.webServer/tracing/traceFailedRequests");
         ConfigurationElementCollection traceFailedRequestsCollection = traceFailedRequestsSection.GetCollection();

         ConfigurationElement addElement = traceFailedRequestsCollection.CreateElement("add");
         addElement["path"] = @"*.aspx";

         ConfigurationElementCollection traceAreasCollection = addElement.GetCollection("traceAreas");
         ConfigurationElement addElement1 = traceAreasCollection.CreateElement("add");
         addElement1["provider"] = @"ASPNET";
         addElement1["areas"] = @"Infrastructure,Module,Page,AppServices";
         addElement1["verbosity"] = @"Verbose";
         traceAreasCollection.Add(addElement1);

         ConfigurationElement failureDefinitionsElement = addElement.GetChildElement("failureDefinitions");
         failureDefinitionsElement["statusCodes"] = @"500";
         traceFailedRequestsCollection.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.GetWebConfiguration("Contoso")
      Dim traceFailedRequestsSection As ConfigurationSection = config.GetSection("system.webServer/tracing/traceFailedRequests")
      Dim traceFailedRequestsCollection As ConfigurationElementCollection = traceFailedRequestsSection.GetCollection

      Dim addElement As ConfigurationElement = traceFailedRequestsCollection.CreateElement("add")
      addElement("path") = "*.aspx"
      Dim traceAreasCollection As ConfigurationElementCollection = addElement.GetCollection("traceAreas")
      Dim addElement1 As ConfigurationElement = traceAreasCollection.CreateElement("add")
      addElement1("provider") = "ASPNET"
      addElement1("areas") = "Infrastructure,Module,Page,AppServices"
      addElement1("verbosity") = "Verbose"
      traceAreasCollection.Add(addElement1)

      Dim failureDefinitionsElement As ConfigurationElement = addElement.GetChildElement("failureDefinitions")
      failureDefinitionsElement("statusCodes") = "500"
      traceFailedRequestsCollection.Add(addElement)

      serverManager.CommitChanges()
   End Sub
End Module

JavaScript

var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST/Contoso";
var traceFailedRequestsSection = adminManager.GetAdminSection("system.webServer/tracing/traceFailedRequests", "MACHINE/WEBROOT/APPHOST/Contoso");
var traceFailedRequestsCollection = traceFailedRequestsSection.Collection;

var addElement = traceFailedRequestsCollection.CreateNewElement("add");
addElement.Properties.Item("path").Value = "*.aspx";
var traceAreasCollection = addElement.ChildElements.Item("traceAreas").Collection;

var addElement1 = traceAreasCollection.CreateNewElement("add");
addElement1.Properties.Item("provider").Value = "ASPNET";
addElement1.Properties.Item("areas").Value = "Infrastructure,Module,Page,AppServices";
addElement1.Properties.Item("verbosity").Value = "Verbose";
traceAreasCollection.AddElement(addElement1);

var failureDefinitionsElement = addElement.ChildElements.Item("failureDefinitions");
failureDefinitionsElement.Properties.Item("statusCodes").Value = "500";
traceFailedRequestsCollection.AddElement(addElement);

adminManager.CommitChanges();

VBScript

Set adminManager = createObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST/Contoso"
Set traceFailedRequestsSection = adminManager.GetAdminSection("system.webServer/tracing/traceFailedRequests", "MACHINE/WEBROOT/APPHOST/Contoso")
Set traceFailedRequestsCollection = traceFailedRequestsSection.Collection

Set addElement = traceFailedRequestsCollection.CreateNewElement("add")
addElement.Properties.Item("path").Value = "*.aspx"
Set traceAreasCollection = addElement.ChildElements.Item("traceAreas").Collection

Set addElement1 = traceAreasCollection.CreateNewElement("add")
addElement1.Properties.Item("provider").Value = "ASPNET"
addElement1.Properties.Item("areas").Value = "Infrastructure,Module,Page,AppServices"
addElement1.Properties.Item("verbosity").Value = "Verbose"
traceAreasCollection.AddElement addElement1

Set failureDefinitionsElement = addElement.ChildElements.Item("failureDefinitions")
failureDefinitionsElement.Properties.Item("statusCodes").Value = "500"
traceFailedRequestsCollection.AddElement addElement

adminManager.CommitChanges()