Cómo: Instrumentar una aplicación web ASP.NET compilada estáticamente y recopilar datos detallados de control de tiempo con el generador de perfiles utilizando la línea de comandos

En este tema se describe cómo utilizar las herramientas de la línea de comandos de las herramientas de generación de perfiles de Visual Studio para instrumentar un componente web precompilado o un sitio web ASP.NET y recopilar datos detallados de control de tiempo.

[!NOTA]

Las herramientas de línea de comandos de las herramientas de generación de perfiles se encuentran en el subdirectorio \Team Tools\Performance Tools del directorio de instalación de Visual Studio.En equipos de 64 bits, están disponibles las dos versiones de las herramientas, la de 64 bits y la de 32 bits.Para utilizar las herramientas de línea de comandos del generador de perfiles, debe agregar la ruta de acceso de las herramientas a la variable de entorno PATH de la ventana Símbolo del sistema o agregarla al propio comando.Para obtener más información, vea Especificar la ruta de acceso a las herramientas de línea de comandos de Herramientas de generación de perfiles.

Los datos de interacción de capas a una ejecución de generación de perfiles requiere procedimientos concretos con la línea de comandos que las herramientas de generación de perfiles.Vea Agregar datos de interacción de capas desde la línea de comandos.

Para recopilar datos de control de tiempo detallados de un componente web ASP.NET utilizando el método de instrumentación, utilice la herramienta VSInstr.exe para generar una versión instrumentada del componente.En el equipo que hospeda el componente, reemplace la versión no instrumentada del componente por la versión instrumentada.Luego se usa la herramienta VSPerfCLREnv.cmd para inicializar el perfil del entorno global de las variables y reiniciar el computador host. A continuación, inicie el generador de perfiles.

Cuando se ejecute el componente instrumentado, los datos de tiempo se recopilarán inmediatamente en un archivo de datos.Puede pausar y reanudar la recolección de datos durante la sesión de generación de perfiles.

Para finalizar una sesión de generación de perfiles, cierre el proceso de trabajo ASP.NET que hospeda el componente y, a continuación, cierre explícitamente el generador de perfiles.En la mayoría de los casos, recomendamos borrar las variables de entorno de generación de perfiles al final de una sesión.

Empezar a perfilar

Para instrumentar un componente web ASP.NET e iniciar la generación de perfiles

  1. Abra una ventana de símbolo del sistema.

  2. Utilice la herramienta VSInstr para generar una versión instrumentada de la aplicación de destino.Si es necesario, reemplace los binarios de aplicación del equipo host ASP.NET por los binarios instrumentados.

  3. Inicialice las variables de entorno de generación de perfiles .NET.En la ventana Símbolo del sistema, escriba:

    VSPerfClrEnv /globaltraceon

  4. Reinicie el equipo.

  5. Abra una ventana de símbolo del sistema.Si es necesario, establezca la ruta de acceso a las herramientas del generador de perfiles.

  6. Inicie el generador de perfiles.Tipo:

    **VSPerfCmd /start:trace /output:**OutputFile [Options]

    • La opción /start:trace inicializa el generador de perfiles.

    • La opción /output**:**OutputFile es necesaria con /start.OutputFile especifica el nombre y la ubicación del archivo de datos de generación de perfiles (.vsp).

    Puede usar cualquiera de las siguientes opciones con la opción /start:trace.

    [!NOTA]

    Las opciones /user y /crosssession son necesarias normalmente para aplicaciones ASP.NET.

    Opción

    Descripción

    /user:[Domain\]UserName

    Especifica el dominio y el nombre de usuario de la cuenta propietaria del proceso de trabajo de ASP.NET.Esta opción es necesaria si el proceso se está ejecutando como otro usuario distinto del usuario que inició la sesión.El propietario del proceso se muestra en la columna Nombre de usuario de la pestaña Procesos del Administrador de tareas de Windows.

    /crosssession

    Habilita la generación de perfiles de procesos en otros inicios de sesión.Esta opción es necesaria si la aplicación ASP.NET se ejecuta en otra sesión.El identificador de sesión se muestra en la columna Id. de sesión de la pestaña Procesos del Administrador de tareas de Windows./CS se puede especificar como una abreviatura de /crosssession.

    /wincounter:WinCounterPath

    Especifica un contador de rendimiento de Windows que se va a recopilar durante la generación de perfiles.

    /automark:Interval

    Se utiliza únicamente con /wincounter.Especifica el número de milisegundos entre eventos de recopilación de contadores de rendimiento de Windows.El valor predeterminado es 500 ms.

    /events:Config

    Especifica un evento de Seguimiento de eventos para Windows (ETW) que se va a recopilar durante la generación de perfiles.Los eventos ETW se recopilan en un archivo (.etl) independiente.

    /globaloff

    Para iniciar el generador de perfiles con la recolección de datos en pausa, agregue la opción /globaloff a la línea de comandos /start.Utilice /globalon para reanudar la generación de perfiles.

  7. Abra el sitio web que contiene el componente instrumentado.

Controlar la recolección de datos

Mientras se ejecuta la aplicación de destino, puede controlar la recolección de datos iniciando o deteniendo la escritura de los datos en un archivo mediante el uso de las opciones de VSPerfCmd.exe.Al controlar la recolección de datos, puede recopilar datos de una parte específica de la ejecución de un programa, como por ejemplo el inicio o el cierre de una aplicación.

Para iniciar y detener la recolección de datos

  • Los siguientes pares de opciones inician y detienen la recolección de datos.Especifique cada opción en una línea de comandos diferente.Puede activar y desactivar la recolección de datos varias veces.

    Opción

    Descripción

    /globalon /globaloff

    Inicia (/globalon) o detiene (/globaloff) la recolección de datos de todos los procesos.

    /processon:PID/processoff:PID

    Inicia (/processon) o detiene (/processoff) la recolección de datos del proceso especificado por el identificador del proceso (PID).

    /threadon:TID/threadoff:TID

    Inicia (/threadon) o detiene (/threadoff) la recolección de datos del subproceso especificado por el identificador del subproceso (TID).

  • También puede usar la opción VSPerfCmd.exe/mark para insertar una marca de generación de perfiles en el archivo de datos.El comando /mark agrega un identificador, una marca de tiempo y una cadena de texto opcional definida por el usuario.Las marcas se pueden utilizar para filtrar los datos que se muestran en las vistas de informes y datos del generador de perfiles.

Finalizar la sesión de generación de perfiles

Para finalizar una sesión de generación de perfiles, cierre la aplicación web ASP.NET y utilice el comando IISReset de Internet Information Services (IIS) para cerrar el proceso de trabajo de ASP.NET. Llame a la opción de VSPerfCmd/shutdown para desactivar el generador de perfiles y cerrar el archivo de datos de generación de perfiles. 

El comando VSPerfClrEnv /globaloff borra las variables de entorno de generación de perfiles.Para que se aplique la configuración de entorno, debe reiniciar el equipo.

Para finalizar una sesión de generación de perfiles

  1. Cierre la aplicación web ASP.NET.

  2. Cierre el proceso de trabajo ASP.NET.Tipo:

    IISReset /stop

  3. Apague el generador de perfiles.Tipo:

    VSPerfCmd/shutdown

  4. (Opcional).Borre las variables del entorno de generación de perfiles.Tipo:

    VSPerfCmd/globaloff

  5. Reinicie el equipo.

Vea también

Conceptos

Generar perfiles mediante línea de comandos de aplicaciones web ASP.NET

Otros recursos

Vistas de datos del método de instrumentación del generador de perfiles