Compartir a través de


Seguimiento de solicitudes con error <traceFailedRequests>

Información general

El elemento <traceFailedRequests> permite configurar el seguimiento de solicitudes con error para un sitio web, una aplicación o un directorio. Este elemento puede contener una colección de <add> elementos que definen reglas de seguimiento, cada una de las cuales especifica la extensión de la dirección URL de solicitud a la que se aplica la regla, los proveedores de seguimiento y las áreas que se van a habilitar y las condiciones que hacen que esta regla registre los eventos.

Compatibilidad

Versión Notas
IIS 10.0 El elemento <traceFailedRequests> no se modificó en IIS 10.0.
IIS 8.5 El elemento <traceFailedRequests> no se modificó en IIS 8.5.
IIS 8.0 El elemento <traceFailedRequests> no se modificó en IIS 8.0.
IIS 7.5 El elemento <traceFailedRequests> no se modificó en IIS 7.5.
IIS 7.0 El elemento <traceFailedRequests> 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 Web Server pane expanded with Tracing selected..
  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 World Wide Web Services pane expanded with Tracing selected. : 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 Select Role Services pane expanded with Tracing selected.
  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 Internet Information Services pane expanded with Tracing selected.

Procedimientos

Habilitación del 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 I I S Manager Console with application icons.

  4. En el cuadro de diálogo Editar configuración de seguimiento de solicitudes con error de sitio web, active 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 luego haga clic en Aceptar.
    Screenshot of Edit Web Site Failed Request Tracing Settings dialog box displaying Directory and Maximum Number of Traced Files populated.

Configuración de 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 I I S Manager console with application icons.

  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 erróneas, seleccione el tipo de contenido del que desea realizar el seguimiento y haga clic en Siguiente.
    Screenshot of Add Failed Request Tracing Rule Wizard with All Content selected.

  6. En la página Definir condiciones de seguimiento, seleccione las condiciones de seguimiento y luego 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 Define Trace Conditions page with status codes box checked.

  7. En la página Seleccionar proveedores de seguimiento, seleccione uno o varios de los proveedores de seguimiento en Proveedores.
    Screenshot of Select Trace Providers page with A S P and A S P Net selected as trace providers.

  8. En la página Seleccionar proveedores de seguimiento, seleccione uno o varios de los niveles de detalle en Nivel de detalle.
    Screenshot of Select Trace Providers page with A S P and A S P Net selected for Providers verbosity.

  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 elemento <traceFailedRequests> en el nivel de servidor en el archivo ApplicationHost.config o en el nivel de sitio, nivel de aplicación o dirección URL en el archivo Web.config adecuado.

Atributos

Ninguno.

Elementos secundarios

Elemento Descripción
add Elemento opcional.

Agrega una ruta de acceso a la colección de definiciones de ruta de acceso.
remove Elemento opcional.

Quita una referencia a una ruta de acceso de la colección de definiciones de ruta de acceso.
clear Elemento opcional.

Quita todas las referencias a las rutas de acceso de la colección de definiciones de ruta de acceso.

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 Infraestructura, Módulo, Página y AppServices. El ejemplo también usa el atributo nivel de detalle para establecer la cantidad de información devuelta al archivo de seguimiento en advertencia. 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 erróneas 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()