Oharra
Baimena behar duzu orria atzitzeko. Direktorioetan saioa has dezakezu edo haiek alda ditzakezu.
Baimena behar duzu orria atzitzeko. Direktorioak alda ditzakezu.
Azure integra diagnósticos para ayudar a depurar aplicaciones de Azure App Service. En este artículo aprenderá a habilitar el registro de diagnósticos y a agregar instrumentación a su aplicación. También aprenderá a acceder a la información que registra Azure.
En este artículo se usa Azure Portal y la CLI de Azure para trabajar con registros de diagnóstico. Para obtener información sobre cómo trabajar con registros de diagnóstico utilizando Visual Studio, consulte Solución de problemas de una aplicación en Azure App Service utilizando Visual Studio.
Además de las instrucciones de registro de este artículo, puede usar la funcionalidad de registro integrada de Azure Monitor. Para más información, consulte Envío de registros a Azure Monitor.
Nota
App Service proporciona una herramienta de diagnóstico interactiva dedicada para ayudarle a solucionar problemas de su aplicación. Para más información, consulte Introducción a los diagnósticos de Azure App Service.
También puede usar otros servicios de Azure para mejorar las capacidades de registro y supervisión de su aplicación, como Azure Monitor.
Información general sobre los tipos de registro
Tipo | Plataforma | Ubicación de almacenamiento de registros | Descripción |
---|---|---|---|
Registro de aplicaciones | Windows, Linux | Sistema de archivos de App Service o blobs de Azure Storage | Registre los mensajes que genera el código de la aplicación. Los mensajes se pueden generar en el marco web que elija o directamente desde el código de aplicación mediante el patrón de registro estándar del lenguaje. A cada mensaje se le asigna una de las siguientes categorías: Crítico, Error, Advertencia, Información, Depuración o Seguimiento. Puede seleccionar el grado de detalle que quiere que tenga el registro; para ello, establezca el nivel de gravedad al habilitar el registro de la aplicación. |
Registro del servidor web | Windows | Sistema de archivos de App Service o blobs de Azure Storage | Datos de solicitud HTTP sin procesar en el formato de archivo de registro extendido W3C. Cada mensaje de registro incluye datos como el método HTTP, el URI del recurso, la dirección IP del cliente, el puerto del cliente, el agente de usuario, el código de respuesta, etc. |
Mensajes de error detallados | Windows | Sistema de archivos de App Service | Copias de las páginas de error .htm que se habrían enviado al explorador del cliente. Por razones de seguridad, las páginas de error detalladas no deben enviarse a los clientes en producción. Pero App Service puede guardar la página de error cada vez que se produzca un error de aplicación con código HTTP 400 o superior. La página puede contener información útil para determinar por qué el servidor devuelve el código de error. |
Seguimiento de solicitudes con error | Windows | Sistema de archivos de App Service | Información de seguimiento detallada sobre las solicitudes con error, lo que incluye un seguimiento de los componentes de IIS usados para procesar la solicitud y el tiempo dedicado a cada componente. Esta información resulta útil si desea mejorar el rendimiento del sitio o aislar un error HTTP específico. Se genera una carpeta para cada solicitud con error. La carpeta contiene el archivo de registro XML y la hoja de estilo XSL para visualizar el archivo de registro. |
Registro de implementación | Windows, Linux | Sistema de archivos de App Service | Registros al publicar contenido en una aplicación. El registro de implementación tiene lugar automáticamente, no hay valores configurables. Ayuda a determinar por qué no se realizó una implementación. Por ejemplo, si usa un script de implementación personalizado, puede usar el registro de implementación para determinar por qué el script da error. |
Cuando los registros se almacenan en el sistema de archivos de App Service, están sujetos al almacenamiento disponible para su plan de tarifa. Para más información, consulte Limitaciones de App Service.
Habilitación del registro de aplicaciones (Windows)
Para habilitar el registro de aplicaciones para las aplicaciones de Windows en Azure Portal:
Vaya a su aplicación y seleccione Supervisión>Registros de App Service.
Seleccione Activado para una de estas opciones o para ambas:
Registro de aplicaciones (sistema de archivos): esta opción es para fines de depuración temporal. Se apaga en 12 horas.
Registro de aplicaciones (blob): esta opción es para el registro a largo plazo. Necesita un contenedor de almacenamiento de blobs en el que escribir los registros.
La opción de Blob incluye información adicional en los mensajes de registro, como el id. de la instancia de la máquina virtual de origen del mensaje de registro (
InstanceId
), el id. del subproceso (Tid
) y una marca de tiempo más granular (EventTickCount
).
En Nivel, seleccione el nivel de detalles que quiere registrar. En la tabla siguiente se muestran las categorías de registro incluidas en cada nivel:
Nivel Categorías incluidas Deshabilitado Ninguno Error Error, Crítico Advertencia Advertencia, Error, Crítico Información Información, Advertencia, Error, Crítico Detallado Seguimiento, Depuración, Información, Advertencia, Error, Crítico (todas las categorías) Haga clic en Guardar.
Si escribe registros en blobs, la directiva de retención ya no se aplica si elimina la aplicación pero mantiene los registros en los blobs. Para más información, consulte Costos que pueden generarse tras eliminar un recurso.
Actualmente, solo los registros de aplicación de .NET pueden escribirse en el almacenamiento de blobs. Los registros de aplicaciones de Java, PHP, Node.js y Python solo se pueden almacenar en el sistema de archivos de App Service sin modificaciones de código para escribir registros en almacenamiento externo.
Si regenera las claves de acceso de su cuenta de almacenamiento, deberá restablecer la configuración de registro correspondiente para usar las claves de acceso actualizadas:
En la pestaña Configurar, establezca la característica de registro correspondiente en Desactivado. Guarde la configuración.
Vuelva a habilitar el registro en el blob de la cuenta de almacenamiento. Guarde la configuración.
Habilitación del registro de aplicaciones (Linux o contenedor)
Para habilitar el registro de aplicaciones para aplicaciones de Linux o contenedores personalizados en Azure Portal:
Vaya a su aplicación y seleccione Supervisión>Registros de App Service.
En Registro de aplicaciones, seleccione Sistema de archivos.
En Cuota (MB), especifique la cuota de disco para los registros de aplicaciones.
En Periodo de retención (días), establezca el número de días que se conservarán los registros.
Haga clic en Guardar.
Habilitar el registro de servidor web
Para habilitar el registro de servidor web para las aplicaciones de Windows en Azure Portal:
Vaya a su aplicación y seleccione Supervisión>Registros de App Service.
Para Registro del servidor web, seleccione Almacenamiento para almacenar los registros en el almacenamiento de blobs, o seleccione Sistema de archivos para almacenar los registros en el sistema de archivos de App Service.
En Periodo de retención (días), establezca el número de días que se conservarán los registros.
Haga clic en Guardar.
Si escribe registros en blobs, la directiva de retención ya no se aplica si elimina la aplicación pero mantiene los registros en los blobs. Para más información, consulte Costos que pueden generarse tras eliminar un recurso.
Si se regeneran las claves de acceso de su cuenta de almacenamiento, deberá restablecer la configuración de registro correspondiente para usar las claves actualizadas:
En la pestaña Configurar, establezca la característica de registro correspondiente en Desactivado. Guarde la configuración.
Vuelva a habilitar el registro en el blob de la cuenta de almacenamiento. Guarde la configuración.
Registro de errores detallados
Para guardar la página de error o los seguimientos de solicitudes con error de las aplicaciones de Windows en Azure Portal:
Vaya a su aplicación y seleccione Supervisión>Registros de App Service.
En Mensajes de error detallados o Seguimiento de solicitudes con error, seleccione Activado.
Haga clic en Guardar.
Ambos tipos de registros se almacenan en el sistema de archivos de App Service. Conserva hasta 50 errores (archivos o carpetas). Cuando el número de archivos HTML supera los 50, App Service elimina los archivos de error más antiguos.
De manera predeterminada, el seguimiento de solicitudes erróneas captura un registro de las solicitudes que fallaron con códigos de estado HTTP entre 400 y 600. Para especificar reglas personalizadas, invalide la sección <traceFailedRequests>
en el archivo Web.config
.
Adición de mensajes de registro en el código
En el código de la aplicación, puede usar las funciones de registro habituales para enviar mensajes de registro a los registros de aplicaciones. Por ejemplo:
Las aplicaciones de ASP.NET pueden usar la clase System.Diagnostics.Trace para registrar información en el registro de diagnóstico de la aplicación. Por ejemplo:
System.Diagnostics.Trace.TraceError("If you're seeing this, something bad happened");
De forma predeterminada, ASP.NET Core usa el proveedor de registro Microsoft.Extensions.Logging.AzureAppServices. Para más información, consulte el artículo sobre el registro de ASP.NET Core en Azure. Para más información sobre el registro del SDK de WebJobs, consulte Introducción al SDK de Azure WebJobs.
Las aplicaciones de Python pueden usar OpenTelemetry para enviar registros al registro de diagnóstico de la aplicación. Para más información, consulte Habilitar Azure Monitor OpenTelemetry.
Transmisión de registros
Antes de transmitir registros en tiempo real, habilite el tipo de registro que quiera. App Service transmite cualquier información escrita en la salida de la consola o archivos terminados en .txt, .log o .htm que estén almacenados en el directorio /home/LogFiles
(D:\home\LogFiles
).
Nota
Algunos tipos de búferes de registro escriben en el archivo de registro, lo que puede provocar que los eventos aparezcan en el orden incorrecto en la transmisión. Por ejemplo, una entrada de registro de aplicaciones que se genera cuando un usuario visita una página se puede visualizar en la transmisión antes de la entrada de registro HTTP correspondiente para la solicitud de la página.
Azure Portal
Para transmitir los registros en Azure Portal, vaya a su aplicación y seleccione Supervisión>Transmisión de registros.
Cloud Shell
Para transmitir registros en directo en Azure Cloud Shell, use el siguiente comando.
Importante
Es posible que este comando no funcione con aplicaciones web hospedadas en un plan de App Service de Linux.
az webapp log tail --name appname --resource-group myResourceGroup
Para filtrar tipos de registros específicos, como HTTP, use el parámetro --provider
. Por ejemplo:
az webapp log tail --name appname --resource-group myResourceGroup --provider http
Terminal local
Para transmitir registros en la consola local, instale la CLI de Azure e inicie sesión en su cuenta. Después de iniciar sesión, siga las instrucciones de Cloud Shell.
Acceso a los archivos de registro
Si configura la opción de blobs de Azure Storage para un tipo de registro, necesitará una herramienta de cliente que funcione con Azure Storage. Para más información, consulte Herramientas de cliente de Microsoft para trabajar con Azure Storage.
Para los registros almacenados en el sistema de archivos de App Service, acceda a ellos mediante el motor de Kudu.
- Abra la aplicación en Azure Portal y seleccione Herramientasavanzadas de > y, a continuación, seleccione Ir.
- En Kudu, seleccione Herramientas>de volcado de diagnóstico.
En el caso de contenedores personalizados o Linux, el archivo ZIP contiene los registros de salida de la consola para el host de Docker y el contenedor de Docker. En el caso de las aplicaciones escaladas horizontalmente, el archivo ZIP contiene un conjunto de registros para cada instancia. En el sistema de archivos de App Service, estos archivos de registro son el contenido del directorio /home/LogFiles
. Los registros de implementación se almacenan en /site/deployments/
.
En el caso de las aplicaciones de Windows, el archivo ZIP incluye el contenido del directorio D:\Home\LogFiles
en el sistema de archivos de App Service. Tiene la siguiente estructura:
Tipo de registro | Directorio | Descripción |
---|---|---|
Registro de aplicaciones | /LogFiles/Application/ |
Contiene uno o varios archivos de texto. El formato de los mensajes de registro depende del proveedor de registro que se use. |
Seguimiento de solicitudes con error | /LogFiles/W3SVC#########/ |
Contiene archivos XML y un archivo XSL. Puede ver los archivos XML con formato en el explorador. |
Registros de errores detallados | /LogFiles/DetailedErrors/ |
Contiene archivos de error HTM. Puede ver los archivos HTM en el explorador. Otra manera sencilla de ver los seguimientos de las solicitudes con error consiste en ir a la página de la aplicación en el portal. En el menú izquierdo, seleccione Diagnosticar y resolver problemas. Busque Registros de seguimiento de solicitudes con error, y después seleccione el icono para examinar y ver el seguimiento que quiere. |
Registro de servidor web | /LogFiles/http/RawLogs/ |
Contiene archivos de texto con formato de archivo de registro extendido W3C. Puede leer estos archivos mediante un editor de texto o una herramienta como Log Parser. App Service no admite los campos s-computername , s-ip ni cs-version . |
Registro de implementación |
/LogFiles/Git/ y /deployments/ |
Contiene registros generados por los procesos de implementación internos, así como registros para implementaciones de Git. |
Envío de registros a Azure Monitor
Con la integración de Azure Monitor, puede crear configuraciones de diagnóstico para enviar registros a cuentas de almacenamiento, centros de eventos y áreas de trabajo de Log Analytics. Al agregar una configuración de diagnóstico, App Service agrega la configuración de la aplicación a la aplicación, lo que desencadena un reinicio de la aplicación.
Tipos de registro admitidos
Para obtener una lista de los tipos de registro admitidos y sus descripciones, consulte Registros de recursos admitidos para Microsoft.Web.
Consideraciones sobre la red
Para obtener información sobre las restricciones para la configuración del diagnóstico, consulte Límites de destino.