Datos de diagnóstico de proceso de la plataforma como servicio (PaaS) de Windows Azure
Cuando tiene que solucionar un problema, uno de los aspectos más importantes para comprender es qué datos de diagnóstico están disponibles. Si no sabe dónde buscar registros u otra información de diagnóstico, es posible que tenga que recurrir al enfoque de prueba y error o escopeta para solucionar problemas. Si tiene acceso a los registros, tendrá una mejor posibilidad de diagnosticar cualquier problema, incluso si no está dentro de su área de experiencia.
En este artículo se describen los datos disponibles en entornos de proceso de plataforma como servicio (PaaS) de Azure. Describe cómo puede recopilar fácilmente estos datos de una máquina virtual PaaS (VM) de Windows.
En las secciones siguientes se incluyen los orígenes de datos más usados al solucionar problemas en una máquina virtual PaaS de Windows. Las secciones se ordenan aproximadamente por importancia (la frecuencia de uso del registro para diagnosticar problemas).
Registros de eventos de Windows Azure
Los registros de eventos de Windows Azure contienen la salida de diagnóstico clave del entorno de ejecución de Azure. Los registros registran información sobre estos eventos, como los siguientes:
- El rol se inicia y se detiene
- Tareas de inicio
OnStart
iniciar y detenerOnRun
empezar- Bloqueos
- Recicla
Para ver los registros de eventos de Windows Azure:
En el menú Inicio, busque Visor de eventos y, a continuación, seleccione esa aplicación.
En el panel de navegación, expanda Registros de aplicaciones y servicios y, a continuación, seleccione Windows Azure.
Este origen de diagnóstico le ayuda a identificar la causa de varios de los problemas más comunes que impiden que los roles de Azure se inicien correctamente. Estos incluyen errores de tarea de inicio y bloqueos en OnStart
o OnRun
. Visor de eventos captura bloqueos en los procesos del host en tiempo de ejecución de Azure que ejecutan el código de punto de entrada de rol (como WebRole.cs o WorkerRole.cs) y proporciona pilas de llamadas.
Registros de eventos de la aplicación
Puede usar registros de eventos de aplicación para la solución de problemas estándar en servidores locales y de Azure. A menudo, es posible que encuentre errores relacionados con w3wp.exe en estos registros.
Para ver los registros de eventos de la aplicación:
En el menú Inicio, busque Visor de eventos y, a continuación, seleccione esa aplicación.
En el panel de navegación, expanda Registros de Windows y, a continuación, seleccione Aplicación.
Registros en tiempo de ejecución del agente de aplicaciones
El registro en tiempo de ejecución del agente de la aplicación se encuentra en C:\Logs\AppAgentRuntime.log y lo escribe el archivo ejecutable de WindowsAzureGuestAgent.exe . El registro contiene información sobre los eventos que se producen en el agente invitado y en la máquina virtual. Esta información de evento incluye, pero no está limitado a, las siguientes categorías:
- Configuración de firewall
- Cambios de estado de rol
- Recicla
- Reinicios
- Cambios de estado de mantenimiento
- El rol se detiene e inicia
- Configuración de certificados
Este registro es útil para obtener una visión general rápida de los eventos que se producen a lo largo del tiempo en un rol. Esto se debe a que registra cambios importantes en el rol sin registrar latidos. Si el agente invitado no puede iniciar el rol correctamente (por ejemplo, si un archivo bloqueado impide la limpieza de directorios), verá el evento registrado en este registro.
Registros de latidos del agente de aplicación
El registro de latido del agente de la aplicación se encuentra en C:\Logs\WaAppAgent.log y lo escribe el archivo ejecutable WindowsAzureGuestAgent.exe . Contiene información de estado sobre los sondeos de estado del programa previo del host.
El proceso del agente invitado es responsable de notificar el estado de mantenimiento (por ejemplo, Ready
o Busy
) al tejido. Por lo tanto, el estado de mantenimiento que notifica este registro es el mismo que el estado que verá en el portal de administración. El registro es útil para determinar el estado actual del rol dentro de la máquina virtual o para determinar cuál era el estado en algún momento anterior. Puede proporcionar descripciones de problemas como "Mi sitio web estaba fuera de las 10:00 a las 11:30 de ayer" para usar el registro de latidos para ayudarle a determinar el estado de mantenimiento del rol durante ese tiempo.
Registros del programa previo de host
El registro del programa previo del host se encuentra en C:\Resources\WaHostBootstrapper.log. Contiene entradas para las tareas de inicio, incluidos los complementos, como el almacenamiento en caché o el protocolo de escritorio remoto (RDP). El registro también contiene sondeos de estado para el proceso de host que ejecuta el código de punto de entrada de rol (el código de WebRole.cs que se ejecuta en WaIISHost.exe).
Se genera un archivo de registro cada vez que se reinicia el programa previo del host. (Es decir, se reinicia cada vez que el rol se recicla debido a un evento como un bloqueo, reciclaje, reinicio de máquina virtual o actualización). Esta práctica facilita el uso del registro para determinar con qué frecuencia o cuándo se recicla el rol.
Registros de Internet Information Services
Los registros de Internet Information Services (IIS) se encuentran en C:\Resources\Directory\<DeploymentID>.<RoleName>. DiagnosticStore\LogFiles\Web. Estos registros se usan para la solución de problemas estándar en servidores locales y de Azure.
Los registros de IIS suelen pasarse por alto en escenarios como "Mi sitio web estaba fuera de las 10:00 a las 11:30 de ayer". Es natural culpar a Azure por la interrupción. ("Mi sitio estaba funcionando bien durante dos semanas, por lo que el problema debe ser Azure!") Sin embargo, los registros de IIS suelen indicar lo contrario. Es posible que encuentre que el aumento de los tiempos de respuesta se produjo inmediatamente antes de la interrupción. O bien, es posible que IIS devuelva códigos de estado no correctos. Estos códigos indicarían un problema que se produjo en el propio sitio web (es decir, en el código de ASP.NET que se ejecuta en w3wp.exe) y no en Azure.
Contadores de rendimiento
Para ver los contadores de rendimiento, seleccione el menú Inicio, busque en perfmon y, a continuación, seleccione Monitor de rendimiento. Esta aplicación es un complemento de Microsoft Management Console (MMC). Como alternativa, instale y configure la extensión de diagnóstico de Windows Azure (WAD).
Los contadores de rendimiento se usan para la solución de problemas estándar en servidores locales y de Azure. Si configura WAD con antelación, a menudo tendrá contadores de rendimiento valiosos para solucionar problemas que se produjeron en el pasado (por ejemplo, "Mi sitio web estaba fuera de las 10:00 a las 11:30 de ayer").
Aparte de los problemas para los que se recopilan contadores de rendimiento específicos, los usos más comunes para los contadores de rendimiento recopilados por WAD es buscar los siguientes elementos, en el orden indicado:
Entradas del contador de rendimiento normales
Un período sin entradas
Uno de los estados de la tabla siguiente.
Estado Description Reanudación de entradas regulares Escenario en el que la máquina virtual potencialmente no se había estado ejecutando Uso de CPU del 100 % Un bucle infinito o algún otro problema lógico en el propio código del sitio web
registros de HTTP.SYS
Los registros de HTTP.SYS se encuentran en D:\Windows\System32\LogFiles\HTTPERR. Estos registros se usan para la solución de problemas estándar en servidores locales y de Azure.
Como sucede con los registros de IIS, a menudo se pasan por alto los registros de HTTP.SYS. Sin embargo, son importantes al intentar solucionar un problema en el que un sitio web de servicio hospedado no responde. A menudo, este problema se debe a que IIS no puede procesar el volumen de solicitudes que entran. La evidencia de esta causa suele aparecer en los registros de HTTP.SYS.
Archivos de registro de solicitudes con error de IIS
Los archivos de registro "solicitud con error de IIS" se encuentran en C:\Resources\Directory\<DeploymentID>.<RoleName>. DiagnosticStore\FailedReqLogFiles. Estos registros se usan para la solución de problemas estándar en servidores locales y de Azure.
De forma predeterminada, estos archivos de registro no están activados en Windows Azure. Rara vez se usan. Sin embargo, si está solucionando problemas específicos de IIS o ASP.NET, debe considerar la posibilidad de activar el seguimiento de FREB (búfer de eventos de solicitud con error). El seguimiento de FREB puede proporcionar más detalles sobre estos problemas.
Configuración y tablas de diagnóstico de Windows Azure
Las tablas y la configuración de la extensión de diagnóstico de Windows Azure (WAD) se encuentran en C:\Resources\Directory\<DeploymentID>.<RoleName>. DiagnosticStore\Monitor. Estos elementos representan la caché local en máquina virtual de los datos WAD.
WAD realiza los pasos siguientes:
Captura los datos a medida que lo ha configurado.
Almacena los datos en archivos .tsf personalizados en la máquina virtual.
Transfiere los datos al almacenamiento en función del período de transferencia programado especificado.
Desafortunadamente, dado que los datos están en un formato .tsf personalizado, el contenido de los datos WAD es de uso limitado. Pero contienen los archivos de configuración de diagnóstico que son útiles para solucionar problemas si WAD no funciona correctamente. En la carpeta Configuración , busque un archivo denominado config.xml. Este archivo incluye los datos de configuración de WAD. Si WAD no funciona correctamente, compruebe este archivo para asegurarse de que refleja la forma en que espera que WAD se configure.
Archivos de registro de almacenamiento en caché de Windows Azure
Los archivos de registro de almacenamiento en caché de Windows Azure se encuentran en C:\Resources\Directory\<DeploymentID>.<RoleName>. DiagnosticStore\AzureCaching. Estos registros contienen información detallada sobre el almacenamiento en caché basado en roles de Windows Azure. Los registros pueden ayudarle a solucionar problemas en los que el almacenamiento en caché no funciona según lo previsto.
Registros de WaIISHost
El registro de WaIISHost se encuentra en C:\Resources\Directory\<DeploymentID>.<RoleName>. DiagnosticStore\WaIISHost.log. Contiene información del proceso de WaIISHost.exe . Este proceso es donde se ejecuta el código de punto de entrada de rol (WebRole.cs) para WebRoles. La mayoría de esta información también se incluye en los demás registros que se describen en este artículo (como los registros de eventos de Windows Azure). Sin embargo, en ocasiones puede encontrar información más útil aquí.
Registros de IISConfigurator
El registro de IISConfigurator se encuentra en C:\Resources\Directory\<DeploymentID>.<RoleName>. DiagnosticStore\IISConfigurator.log. Contiene información sobre el proceso IISConfigurator. Este proceso se usa para realizar la configuración real de IIS del sitio web, en función del modelo definido en los archivos de definición de servicio. Rara vez se produce un error en el proceso o se producen errores. Pero si IIS o w3wp.exe no parece estar configurado correctamente para el servicio, este registro es el lugar para comprobarlo.
Archivos de configuración de roles
El archivo de configuración de roles se encuentra en C:\Config\<DeploymentID>.<RoleName>.<Versión>.xml. Contiene información sobre la configuración del rol, como los siguientes elementos:
Configuración definida en el archivo ServiceConfiguration.cscfg
Directorios de recursos locales
Direcciones IP y puertos para ip dinámica (DIP) e IP virtual (VIP)
Huellas digitales de certificado
Sondeos del equilibrador de carga
No se puede acceder
El archivo de configuración de roles es similar al archivo de definición del modelo de roles en que no contiene información generada por tiempo de ejecución. Sin embargo, puede ser útil asegurarse de que el servicio está configurado según lo previsto.
Archivo de definición del modelo de rol
El archivo de definición del modelo de rol se encuentra en E:\RoleModel.xml o F:\RoleModel.xml. Contiene información sobre cómo se define el servicio según el tiempo de ejecución de Azure.
El archivo contiene entradas para cada tarea de inicio e información sobre cómo se ejecuta la tarea, incluidas las siguientes características:
- Fondo
- Variables de entorno
- Location
También puede ver cómo <se define el elemento sites> para un rol web.
El archivo de definición del modelo de roles no contiene información generada por tiempo de ejecución, pero puede ayudarle a comprobar que Azure ejecuta el servicio según lo previsto. Esta comprobación a menudo ayuda cuando tiene una versión determinada de una definición de servicio en el equipo de desarrollo, pero el servidor de compilación y paquete usa otra versión de los archivos de definición de servicio.
Acerca de los archivos ETL
La carpeta C:\Logs contiene archivos RuntimeEvents_<Iteration.etl> y WaAppAgent_<Iteration.etl>. Estos archivos de registro de seguimiento de eventos (ETL) son seguimientos de seguimiento de eventos para Windows (ETW) que contienen una compilación de la información que se encuentra en los registros de eventos de Windows Azure, registros de agentes invitados y otros registros. Los archivos son una compilación cómoda de los datos de registro más importantes en una máquina virtual de Azure. Dado que los archivos están en formato ETL, debe realizar algunos pasos adicionales para consumir la información. Si tiene una herramienta de visualización de ETW favorita, puede omitir muchos de los archivos de registro mencionados. En su lugar, solo puede ver la información de estos dos archivos ETL.
Pasos siguientes
Más información
Ponte en contacto con nosotros para obtener ayuda
Si tiene preguntas o necesita ayuda, cree una solicitud de soporte o busque consejo en la comunidad de Azure. También puede enviar comentarios sobre el producto con los comentarios de la comunidad de Azure.