Mapa de aplicaciones: Evaluación de prioridades de aplicaciones distribuidas
Los desarrolladores usan asignaciones de aplicaciones para representar la estructura lógica de sus aplicaciones distribuidas. Se genera un mapa mediante la identificación de los componentes de aplicación individuales con su propiedad roleName
o name
en la telemetría registrada. Los círculos (o nodos) en el mapa representan los componentes y las líneas direccionales ( conectores o bordes) muestran las llamadas HTTP desde nodos de origen para nodos de destino.
Azure Monitor proporciona la característica Mapa de aplicaciónpara ayudarle a implementar rápidamente un mapa y detectar cuellos de botella de rendimiento o zonas activas de error en todos los componentes. Cada nodo de mapa es un componente de aplicación o sus dependencias, y proporciona el estado de KPI de mantenimiento y alertas. Puede seleccionar cualquier nodo para ver diagnósticos detallados para el componente, como eventos de Application Insights. Si su aplicación usa servicios de Azure, también puede seleccionar diagnósticos de Azure, como las recomendaciones de SQL Database Advisor.
Mapa de aplicación también incluye vista inteligente para ayudar con investigaciones rápidas de estado del servicio.
Descripción de los componentes
Los componentes son partes que se pueden implementar independientemente de su aplicación de microservicio o distribuida. Los equipos de operaciones y los desarrolladores pueden ver el código o acceder a la telemetría que generan estos componentes de la aplicación.
Algunas consideraciones sobre los componentes:
- Los componentes son diferentes de las dependencias externas "observadas", por ejemplo, Azure SQL e Event Hubs, a las que el equipo o la organización podrían no tener acceso (código o telemetría).
- Los componentes se ejecutan en cualquier número de instancias de rol, servidor o contenedor.
- Los componentes pueden ser recursos de Application Insights independientes, incluso si las suscripciones son diferentes. También pueden ser diferentes roles que informan a un único recurso de Application Insights. La experiencia de mapa de vista preliminar muestra los componentes independientemente de cómo se configuren.
Exploración del mapa de la aplicación
Mapa de aplicación le permite ver la topología de aplicación completa en varios niveles de componentes de aplicación relacionados. Como se ha descrito anteriormente, los componentes pueden ser diferentes recursos de Application Insights, componentes dependientes o roles diferentes en un único recurso. Mapa de aplicación localiza componentes siguiendo las llamadas de dependencia HTTP realizadas entre servidores con el SDK de Application Insights instalado.
La experiencia de asignación comienza con la detección progresiva de los componentes dentro de la aplicación y sus dependencias. Cuando se carga por primera vez el Mapa de aplicaciones, un conjunto de consultas desencadena para detectar los componentes relacionados con el componente principal. A medida que se detectan componentes, una barra de estado muestra el número actual de componentes detectados:
En las secciones siguientes se describen algunas de las acciones disponibles para trabajar con Mapa de aplicación en Azure Portal.
Actualización de componentes de mapa
La opción Actualizar componentes de mapa desencadena la detección de componentes y actualiza el mapa para mostrar todos los nodos actuales. En función de la complejidad de la aplicación, la actualización puede tardar un minuto en cargarse:
Cuando todos los componentes de la aplicación son roles dentro de un único recurso de Application Insights, el paso de detección no es necesario. La carga inicial en este escenario de aplicación detecta todos los componentes.
Visualización de los detalles del componente
Un objetivo clave para la experiencia Mapa de aplicación es ayudarle a visualizar topologías complejas que tienen cientos de componentes. En este escenario, resulta útil mejorar la vista de mapa con detalles de un nodo individual mediante la opción Ver detalles. El panel de detalles del nodo muestra información relacionada, rendimiento y experiencia de evaluación de errores para el componente seleccionado:
Cada sección de panel incluye una opción para ver más información en una vista expandida, incluidos los errores, el rendimiento y los detalles sobre las solicitudes y dependencias con errores.
Investigar los errores
En el panel de detalles del nodo, puede usar la opción Investigar errores para ver todos los errores del componente:
La vista Errores permite explorar los datos de error de las operaciones, las dependencias, las excepciones y los roles relacionados con el componente seleccionado:
Investigar el rendimiento
En el panel de detalles del nodo, puede solucionar problemas de rendimiento con el componente seleccionando la opción Investigar rendimiento:
La vista de Rendimiento permite explorar los datos de telemetría de las operaciones, las dependencias y los roles conectados con el componente seleccionado:
Vaya a detalles y seguimiento de pila
La Opción Ir a detalles en el panel de detalles del nodo muestra la experiencia de transacción de un extremo a otro para el componente. Este panel le permite ver los detalles en el nivel de pila de llamadas:
Se abre la página para mostrar la vista Escala de tiempo para obtener los detalles:
Puede usar la opción Ver todos para ver los detalles de la pila con información de seguimiento y evento para el componente:
Ver en Registros (Analytics)
En el panel de detalles del nodo, puede consultar e investigar los datos de las aplicaciones con la opción Ver en registros (Analytics):
La página registros(Analytics)proporciona opciones para explorar los registros de tabla de telemetría de la aplicación con consultas y funciones integradas o personalizadas. Puede trabajar con los datos ajustando el formato y guardando y exportando el análisis:
Visualización de alertas y reglas
La opción Ver alertas en el panel de detalles del nodo le permite ver alertas activas:
La página Alertas muestra alertas críticas y desencadenadas:
La opción Reglas de alertas de la página Alertas muestra las reglas subyacentes que hacen que las alertas se desencadenen:
Descripción de los nombres y nodos de rol en la nube
Mapa de aplicación usa la propiedad nombre de rol en la nube para identificar los componentes de la aplicación en un mapa. Para explorar cómo se usan los nombres de rol en la nube con nodos de componente, examine un mapa de aplicaciones que tiene varios nombres de rol en la nube presentes.
En el ejemplo siguiente se muestra un mapa en Vista jerárquica con cinco nodos de componente y conectores a nueve nodos dependientes. Cada nodo tiene un nombre de rol en la nube.
Mapa de aplicación usa colores, resaltados y tamaños diferentes para los nodos para representar los datos y relaciones del componente de la aplicación:
Los nombres de rol en la nube expresan los distintos aspectos de la aplicación distribuida. En este ejemplo, algunos de los roles de aplicación incluyen
Contoso Retail Check
,Fabrikam-App
,fabrikam-loadfunc
,retailfabrikam-37ha6
, yretailapp
.El círculo azul punteado alrededor de un nodo indica el último componente seleccionado. En este ejemplo, el último componente seleccionado es el nodo
Web
.Al seleccionar un nodo para ver los detalles, un círculo azul sólido resalta el nodo. En el ejemplo, el nodo seleccionado actualmente es
Contoso Retail Reports
.Los nodos de componentes distantes o no relacionados se muestran más pequeños en comparación con los otros nodos. Estos elementos se atenúan en la vista para resaltar el rendimiento del componente seleccionado actualmente.
En este ejemplo, cada nombre de rol en la nube también representa un recurso de Application Insights único diferente con sus propias claves de instrumentación. Dado que el propietario de esta aplicación tiene acceso a cada uno de esos cuatro recursos dispares de Application Insights, Mapa de aplicación puede unir un mapa de las relaciones subyacentes.
Investigación de instancias de rol en la nube
Cuando un nombre de rol en la nube revela un problema en algún lugar del front-end web y está ejecutando varios servidores con equilibrio de carga en el front-end web, puede resultar útil usar una instancia de rol en la nube. Mapa de aplicación le permite ver información más detallada sobre un nodo de componente mediante consultas de Kusto. Puede investigar un nodo para ver detalles sobre instancias de rol en la nube específicas. Este enfoque le ayuda a determinar si un problema afecta a todos los servidores front-end web o solo a instancias específicas.
Un escenario en el que es posible que quiera invalidar el valor de una instancia de rol en la nube es cuando la aplicación se ejecuta en un entorno contenedorizado. En este caso, es posible que la información sobre el servidor individual no sea suficiente para localizar el problema específico.
Para obtener más información sobre cómo reemplazar la propiedad de nombre de rol en la nube con inicializadores de telemetría, vea Agregar propiedades: ITelemetryInitializer.
Establecimiento de nombres de rol en la nube
Mapa de aplicación usa la propiedad nombre de rol en la nube para identificar los componentes del mapa. En esta sección se proporcionan ejemplos para establecer o invalidar manualmente los nombres de roles en la nube y cambiar lo que aparece en el mapa de la aplicación.
Nota:
El Agente o SDK de Application Insights agregan de forma automática la propiedad de nombre de rol en la nube a la telemetría emitida por los componentes en un entorno de Azure App Service.
En el fragmento de código siguiente se muestran las definiciones de esquema para el rol en la nube y la instancia de rol en la nube:
[Description("Name of the role the application is a part of. Maps directly to the role name in Azure.")]
[MaxStringLength("256")]
705: string CloudRole = "ai.cloud.role";
[Description("Name of the instance where the application is running. Computer name for on-premises, instance name for Azure.")]
[MaxStringLength("256")]
715: string CloudRoleInstance = "ai.cloud.roleInstance";
Para las definiciones oficiales:
TelemetryInitializer personalizado
using Microsoft.ApplicationInsights.Channel;
using Microsoft.ApplicationInsights.Extensibility;
namespace CustomInitializer.Telemetry
{
public class MyTelemetryInitializer : ITelemetryInitializer
{
public void Initialize(ITelemetry telemetry)
{
if (string.IsNullOrEmpty(telemetry.Context.Cloud.RoleName))
{
//set custom role name here
telemetry.Context.Cloud.RoleName = "Custom RoleName";
telemetry.Context.Cloud.RoleInstance = "Custom RoleInstance";
}
}
}
}
Aplicaciones ASP.NET: cargue el inicializador en el elemento TelemetryConfiguration activo
En el archivoApplicationInsights.config :
<ApplicationInsights>
<TelemetryInitializers>
<!-- Fully qualified type name, assembly name: -->
<Add Type="CustomInitializer.Telemetry.MyTelemetryInitializer, CustomInitializer"/>
...
</TelemetryInitializers>
</ApplicationInsights>
Un método alternativo para aplicaciones web ASP.NET consiste en crear instancias del inicializador en el código. En el ejemplo siguiente se muestra código en el archivo Global.aspx.cs:
using Microsoft.ApplicationInsights.Extensibility;
using CustomInitializer.Telemetry;
protected void Application_Start()
{
// ...
TelemetryConfiguration.Active.TelemetryInitializers.Add(new MyTelemetryInitializer());
}
Nota:
La adición del inicializador mediante ApplicationInsights.config
o TelemetryConfiguration.Active
no es válida para las aplicaciones de ASP.NET Core.
Aplicaciones de ASP.NET Core: cargue un inicializador en TelemetryConfiguration
Para aplicaciones ASP.NET Core, para agregar una nueva instancia de TelemetryInitializer
, se agrega al contenedor inserción de dependencias. En el ejemplo siguiente se muestra este enfoque. Agregue este código en el método ConfigureServices
de la clase Startup.cs
.
using Microsoft.ApplicationInsights.Extensibility;
using CustomInitializer.Telemetry;
public void ConfigureServices(IServiceCollection services)
{
services.AddSingleton<ITelemetryInitializer, MyTelemetryInitializer>();
}
Uso de filtros de mapa de aplicación
Mapa de aplicación filtros le ayudan a reducir el número de nodos y bordes visibles en el mapa. Estos filtros se pueden usar para reducir el ámbito del mapa y mostrar una vista más pequeña y centrada.
Una manera rápida de filtrar es usar la opción Filtro en este nodo del menú contextual de cualquier nodo del mapa:
También puede crear un filtro con la opción Agregar filtro:
Seleccione el tipo de filtro (nodo o conector) y la configuración deseada, revise las opciones y aplíquelas al mapa actual.
Creación de filtros de nodo
Los filtros de nodo permiten ver solo determinados nodos en el mapa de aplicaciones y ocultar todos los demás nodos. Los parámetros se configuran para buscar las propiedades de los nodos en el mapa para ver los valores que coinciden con una condición. Cuando un filtro de nodo quita un nodo, el filtro también quita todos los conectores y bordes del nodo.
Un filtro de nodo tiene tres parámetros para configurar:
Nodos incluidos: Los tipos de nodos que se van a revisar en el mapa de la aplicación para buscar propiedades coincidentes. Existen cuatro opciones:
Nodos, orígenes y destinos: Todos los nodos que coinciden con los criterios de búsqueda se incluyen en el mapa de resultados. Todos los nodos de origen y destino de los nodos coincidentes también se incluyen automáticamente en el mapa de resultados, aunque los orígenes o destinos no cumplan los criterios de búsqueda. Los nodos de origen y destino se conocen colectivamente como nodos de conectados.
Nodos y orígenes: El mismo comportamiento que Nodos, orígenes y destinos, pero los nodos de destino no se incluyen automáticamente en el mapa de resultados.
Nodos y destinos: El mismo comportamiento que Nodos, orígenes y destinos, pero los nodos de origen no se incluyen automáticamente en el mapa de resultados.
Nodos solo: Todos los nodos del mapa de resultados deben tener un valor de propiedad que coincida con los criterios de búsqueda.
Operador: Tipo de prueba condicional que se va a realizar en los valores de propiedad de cada nodo. Existen cuatro opciones:
contains
: El valor de la propiedad nodo contiene el valor especificado en el parámetro Valor de búsqueda.!contains
El valor de la propiedad del nodo no contiene el valor especificado en el parámetro Valor de búsqueda.==
: El valor de la propiedad del nodo es igual al valor especificado en el parámetro Valor de búsqueda.!=
: El valor de la propiedad del nodo no es igual al valor especificado en el parámetro Valor de búsqueda.
Valor de búsqueda: Cadena de texto que se va a usar para la prueba condicional del valor de propiedad. La lista desplegable del parámetro muestra los valores de los nodos existentes en el mapa de la aplicación. Puede seleccionar un valor de la lista o crear su propio valor. Escriba el valor personalizado en el campo de parámetro y, a continuación, seleccione opción Crear ... en la lista. Por ejemplo, puede escribir
test
y, a continuación, seleccionar opción Crear "prueba" en la lista.
En la imagen siguiente se muestra un ejemplo de un filtro aplicado a un mapa de aplicación que muestra 30 días de datos. El filtro indica a Mapa de aplicación buscar nodos y destinos conectados que tengan propiedades que contengan el texto "retailapp":
Los nodos coincidentes y sus nodos de destino conectados se incluyen en el mapa de resultados:
Creación de filtros de conector (perimetral)
Los filtros de conector permiten ver solo determinados nodos con conectores específicos en el mapa de aplicaciones y ocultar todos los demás nodos y conectores. Los parámetros se configuran para buscar las propiedades de los conectores en el mapa para ver los valores que coinciden con una condición. Cuando un nodo no tiene conectores coincidentes, el filtro quita el nodo del mapa.
Un filtro de conector tiene tres parámetros para configurar:
Filtrar conectores por: Los tipos de conectores que se van a revisar en el mapa de la aplicación para buscar propiedades coincidentes. Hay cuatro opciones. La selección controla las opciones disponibles para los otros dos parámetros.
Operador: Tipo de prueba condicional que se va a realizar en el valor de cada conector.
Valor: Valor de comparación que se va a usar para la prueba condicional del valor de propiedad. La lista desplegable del parámetro contiene valores relevantes para el mapa de aplicación actual. Puede seleccionar un valor de la lista o crear su propio valor. Por ejemplo, puede escribir
16
y, a continuación, seleccionar opción Crear "16" en la lista.
En la tabla siguiente se resumen las opciones de configuración basadas en su elección para los conectores de Filtro mediante parámetro.
Filtrado de conectores por | Descripción | Parámetro de operador | Parámetro Value | Uso |
---|---|---|---|---|
Conector de error de (resaltado rojo) | Busque conectores basados en su color. El color rojo indica que el conector está en estado de error. | == : Igual a != : No es igual a |
Siempre se establece en Errores | Mostrar solo conectores con errores o solo conectores sin errores. |
Tasa de errores (0 % - 100 %) | Busque conectores en función de su tasa de errores promedio (el número de llamadas con error divididas por el número de todas las llamadas). El valor se expresa como un porcentaje. | >= Mayor o igual que <= Menor o igual que |
En la lista desplegable se muestran las tasas de error medias relevantes para los conectores actuales en el mapa de la aplicación. Elija un valor de la lista o escriba un valor personalizado siguiendo el proceso descrito anteriormente. | Mostrar conectores con tasas de error mayores o inferiores al valor seleccionado. |
Duración media de la llamada (ms) | Busque conectores en función de la duración media de todas las llamadas en el conector. El valor se mide en milisegundos. | >= Mayor o igual que <= Menor o igual que |
En la lista desplegable se muestran las duraciones medias relevantes para los conectores actuales en el mapa de la aplicación. Por ejemplo, un valor de 1000 hace referencia a las llamadas con una duración media de 1 segundo. Elija un valor de la lista o escriba un valor personalizado siguiendo el proceso descrito anteriormente. |
Mostrar conectores con velocidades medias de duración de llamadas mayores o inferiores a los valores seleccionados. |
Recuento de llamadas | Busque conectores en función del número total de llamadas en el conector. | >= Mayor o igual que <= Menor o igual que |
En la lista desplegable se muestran los recuentos totales de llamadas relevantes para los conectores actuales en el mapa de la aplicación. Elija un valor de la lista o escriba un valor personalizado siguiendo el proceso descrito anteriormente. | Mostrar conectores con recuentos de llamadas mayores o inferiores a su valor seleccionado. |
Indicadores de percentil para el valor
Al filtrar los conectores por la Tasa de errores, Duración media de las llamadas, o Recuento de llamadas, algunas opciones para el parámetro Value incluyen la designación de (Pxx)
. Este indicador muestra el nivel de percentil. Para obtener un filtro duración media de la llamada, es posible que vea el valor 200 (P90)
. Esta opción significa que el 90 % de todos los conectores (independientemente del número de llamadas que representan) tengan menos de 200 ms de duración de llamada.
Puede ver las opciones de Value que incluyen el nivel de percentil escribiendo P
en el campo de parámetro.
Revisión de los filtros
Después de realizar las selecciones, la sección Revisar del elemento emergente Agregar filtro muestra descripciones textuales y visuales sobre el filtro. La presentación de resumen puede ayudarle a comprender cómo se aplica el filtro al mapa de la aplicación.
En el ejemplo siguiente se muestra el resumen de Revisión para un filtro de nodo que busca nodos y destinos con propiedades que tienen el texto "-west":
En este ejemplo se muestra el resumen de un filtro de conector que busca conectores (y los nodos que conectan) con una duración media de llamada igual o superior a 42 ms:
Aplicar filtros a la asignación
Después de configurar y revisar los valores de filtro, seleccione Aplicar para crear el filtro. Puede aplicar varios filtros al mismo mapa de aplicación. En Mapa de aplicación, los filtros aplicados se muestran como píldoras encima del mapa:
La acción Quitar en una píldora de filtro le permite eliminar un filtro. Al eliminar un filtro aplicado, la vista de mapa se actualiza para restar la lógica del filtro.
Mapa de aplicación aplica la lógica de filtro al mapa secuencialmente, empezando por el filtro más a la izquierda de la lista. A medida que se aplican filtros, los nodos y los conectores se quitan de la vista de mapa. Después de quitar un nodo o conector de la vista, un filtro posterior no puede restaurar el elemento.
Puede cambiar la configuración de un filtro aplicado seleccionando la píldora de filtro. A medida que cambia la configuración de filtro, Mapa de aplicación muestra una vista previa de la vista de mapa con la nueva lógica de filtro. Si decide no aplicar los cambios, puede usar la opción Cancelar a la vista de mapa actual y los filtros.
Exploración y guardado de filtros
Al detectar un filtro interesante, puede guardar el filtro para reutilizarlo más adelante con la opción Copiar vínculo o Anclar al panel:
La opción Copiar vínculo codifica toda la configuración de filtro actual en la dirección URL copiada. Puede guardar este vínculo en los marcadores del explorador o compartirlo con otros usuarios. Esta característica conserva el valor de duración en la configuración del filtro, pero no el tiempo absoluto. Cuando se usa el vínculo más adelante, el mapa de aplicación generado puede diferir del mapa presente en el momento en que se capturó el vínculo.
La opción Anclar al panel agrega el mapa de aplicación actual a un panel, junto con sus filtros actuales. Un enfoque de diagnóstico común consiste en anclar un mapa con un filtro de Conector de error aplicado. Puede supervisar la aplicación para los nodos con errores en sus llamadas HTTP.
En las secciones siguientes se describen algunos filtros comunes que se aplican a la mayoría de los mapas y pueden ser útiles para anclar en un panel.
Comprobación de errores importantes
Genere una vista de mapa de solo conectores con errores (resaltados en rojo) en las últimas 24 horas. Los filtros incluyen el parámetro del Conector de error combinado con la Vista inteligente:
La característica Vista inteligente se describe más adelante en este artículo.
Ocultar conectores de tráfico bajo
Oculte conectores de tráfico bajo sin errores en la vista de mapa, por lo que puede centrarse rápidamente en problemas más significativos. Los filtros incluyen conectores en las últimas 24 horas con un Recuento de llamadasmayor que 2872 (P20):
Mostrar conectores de alto tráfico
Mostrar conectores de alto tráfico que también tienen un tiempo medio de duración de llamada alto. Este filtro puede ayudar a identificar posibles problemas de rendimiento. Los filtros de este ejemplo incluyen conectores en las últimas 24 horas con un Recuento de llamadas mayor que 10854 (P50) y Tiempo promedio de duración de llamadas mayor que 578 (P80):
Buscar componentes por nombre
Busque componentes (nodos y conectores) en la aplicación por nombre según la implementación del componente roleName
convención de nomenclatura de propiedades. Puede usar este enfoque para ver la parte específica de una aplicación distribuida. El filtro busca Nodos, orígenes y destinos durante las últimas 24 horas que contienen el valor especificado. En este ejemplo, el valor de búsqueda es "west":
Quitar componentes ruidosos
Defina filtros para ocultar componentes ruidosos quitándolos del mapa. A veces, los componentes de la aplicación pueden tener nodos dependientes activos que generan datos que no son esenciales para la vista de mapa. En este ejemplo, el filtro busca Nodos, orígenes y destinos durante las últimas 24 horas que no contienen el valor especificado "retail":
Búsqueda de conectores propensos a errores
Muestra solo los conectores que tienen tasas de error más altas que un valor específico. El filtro de este ejemplo busca conectores en las últimas 24 horas que tienen una Tasa de errores superior al 3 %:
Exploración de la vista inteligente
La característica de Vista inteligente para Mapa de aplicación está diseñada para ayudar en las investigaciones de estado del servicio. Aplica aprendizaje automático para identificar rápidamente las posibles causas principales de los problemas mediante la filtración del ruido. El modelo de aprendizaje automático aprende de Mapa de aplicación comportamiento histórico para identificar patrones dominantes y anomalías que indican posibles causas de un incidente.
En las aplicaciones distribuidas de gran tamaño, siempre hay algún grado de ruido procedente de errores "benignos", lo que podría provocar que Mapa de aplicación sea ruidoso mostrando muchos bordes rojos. Vista inteligente muestra solo las causas más probables del error del servicio y quita los bordes rojos de nodo a nodo (comunicación entre servicios) en servicios correctos. Vista inteligente resalta los bordes en rojo que se deben investigar. También ofrece información práctica para el borde resaltado.
Hay muchas ventajas para usar Vista inteligente:
- Reduce el tiempo de resolución al resaltar solo los errores que deben investigarse.
- Proporciona información procesable sobre por qué se ha resaltado un borde rojo determinado.
- Permite Mapa de aplicación usarse para aplicaciones distribuidas de gran tamaño sin problemas (centrándose solo en bordes marcados en rojo).
Vista inteligente tiene algunas limitaciones:
- Las aplicaciones distribuidas de gran tamaño pueden tardar un minuto en cargarse.
- Se admiten períodos de tiempo de hasta siete días.
Trabajar con una vista inteligente
Un botón de alternancia encima del mapa de la aplicación le permite habilitar Vista inteligente y controlar la sensibilidad de detección de problemas:
Vista inteligente usa el modelo de aprendizaje automático patentado de AIOps para resaltar (rojo) los datos significativos e importantes en un mapa de aplicación. Se usan varios datos de aplicación para determinar qué datos resaltar en el mapa, incluidas las tasas de error, los recuentos de solicitudes, las duraciones, las anomalías y el tipo de dependencia. En comparación, la vista de mapa estándar usa solo la tasa de errores de sin procesar.
Mapa de aplicación resalta los bordes en rojo según la configuración de sensibilidad. Puede ajustar la sensibilidad para lograr el nivel de confianza deseado en los bordes resaltados.
Confidencialidad | Descripción |
---|---|
Alta | Se resaltan menos bordes. |
Mediano | (Configuración predeterminada) Se resalta un número equilibrado de bordes. |
Baja | Se resaltan más bordes. |
Comprobación de información accionable
Después de habilitar Vista inteligente, seleccione un borde resaltado (rojo) en el mapa para ver la "información accionable" para el componente. La información se muestra en un panel a la derecha y explica por qué se resalta el borde.
Para empezar a solucionar un problema, seleccione Investigar errores. Puede revisar la información sobre el componente en el panel Errores para determinar si el problema detectado es la causa principal.
Cuando vista inteligente no resalta ningún borde en el mapa de la aplicación, el modelo de aprendizaje automático no encontró posibles incidentes en las dependencias de la aplicación.
Sugerencias de solución de problemas
Si tiene problemas para obtener Mapa de aplicación funcionar según lo previsto, revise las sugerencias de las secciones siguientes.
Estas son algunas recomendaciones generales:
Use un SDK compatible oficialmente. Es posible que los SDK no compatibles o de la comunidad no admitan la correlación. Para una lista de los SDK admitidos, consulte Application Insights: lenguajes, plataformas e integraciones.
Actualice todos los componentes a la versión más reciente del SDK.
Admita Azure Functions con C# mediante la actualización a Azure Functions V2.
Asegúrese de que el nombre del rol en la nube esté configurado correctamente.
Confirme que las dependencias que faltan se muestran como dependencias de recopilación automática. Si no aparece una dependencia, puede realizar un seguimiento manual con una llamada de dependencia para realizar un seguimiento.
Demasiados nodos en el mapa
Mapa de aplicación agrega un nodo de componente para cada nombre de rol de nube único en la telemetría de solicitud. El proceso también agrega un nodo de dependencia para cada combinación única de tipo, destino y nombre de rol en la nube.
Si tiene más de 10 000 nodos en la telemetría, Mapa de aplicación no puede capturar todos los nodos y vínculos. En este escenario, la estructura del mapa está incompleta. Si se produce este escenario, aparece un mensaje de advertencia al visualizar el mapa.
Mapa de aplicación puede representar un máximo de 1 000 nodos separados sin agrupar a la vez. Mapa de aplicación reduce la complejidad visual mediante la agrupación de dependencias cuando tienen el mismo tipo y llamadores.
Si la telemetría tiene demasiados nombres de rol de nube únicos o demasiados tipos de dependencia, la agrupación no es suficiente y el mapa no se representa.
Para corregir este problema, debe cambiar la instrumentación para establecer correctamente el nombre del rol en la nube, el tipo de dependencia y los campos de destino de dependencia. Confirme que la aplicación cumple los siguientes criterios:
Cada destino de dependencia representa el nombre lógico de una dependencia. En muchos casos, este valor es equivalente al nombre del servidor o recurso de la dependencia. Por ejemplo, si hay dependencias HTTP, el valor es el nombre de host. El valor no debe contener identificadores o parámetros únicos que cambien de una solicitud a otra.
Cada tipo de dependencia representa el tipo lógico de una dependencia. Por ejemplo, HTTP, SQL o Azure Blob son tipos de dependencia típicos. Este valor no debe contener identificadores únicos.
Cada propósito de nombre de rol en la nube aplica la descripción de la sección Establecer o reemplazar el nombre del rol en la nube.
Vista inteligente: Edge no resaltado
Vista inteligente podría no resaltar un borde como se esperaba, incluso con una configuración de baja sensibilidad. Es posible que una dependencia parezca estar en error, pero el modelo no indica el problema como un posible incidente. Algunos posibles escenarios son:
Si normalmente se produce un error en la dependencia, el modelo podría considerar el error un estado estándar para el componente y no resaltar el borde. Vista inteligente se centra en la resolución de problemas en tiempo real.
Si la dependencia tiene un efecto mínimo en el rendimiento general de la aplicación, Vista inteligente podría omitir el componente durante el modelado de aprendizaje automático.
Si su escenario es único, puede usar la opción Comentarios para describir su experiencia y ayudar a mejorar las versiones futuras del modelo.
Vista inteligente: Edge resaltado
Cuando Vista inteligente resalta un borde, la información accionable del modelo de aprendizaje automático debe identificar los problemas significativos que contribuyen a la puntuación de probabilidad alta. Tenga en cuenta que la recomendación no se basa únicamente en errores, sino en otros indicadores, como la latencia inesperada en los flujos dominantes.
Vista inteligente: No se carga
Si la Vista inteligente no se carga, establezca el período de tiempo configurado en seis días o menos.
Vista inteligente: Tiempo de carga largo
Si Vista inteligente tarda más tiempo en cargarse de lo esperado, evite seleccionar la opción Actualizar componentes de mapa. Habilite Vista inteligente solo en un recurso de Application Insights.
Contenido relacionado
Obtenga información sobre cómo funciona la correlación en Application Insights con Correlación de telemetría.
Explore la experiencia de diagnóstico de transacciones de un extremo a otro que correlaciona la telemetría del lado servidor entre todos los componentes supervisados por Application Insights en una sola vista.
Admite escenarios de correlación avanzados en ASP.NET Core y ASP.NET con Realizar un seguimiento de las operaciones personalizadas.