Introducción sobre Application Insights

Application Insights es una extensión de Azure Monitor y proporciona características de APM. Las herramientas de APM son útiles para supervisar aplicaciones de desarrollo, pruebas y producción de las siguientes maneras:

  1. De manera proactiva comprende cómo funciona una aplicación.
  2. De manera reactiva revisa los datos de ejecución de la aplicación para determinar la causa de un incidente.

Además de recopilar Métricas y datos de Telemetría de aplicaciones, que describen las actividades y el estado de la aplicación, Application Insights también se puede usar para recopilar y almacenar datos de registro de seguimiento de aplicaciones.

El seguimiento del registro está asociado a otros datos de telemetría para proporcionar una vista detallada de la actividad. Agregar registro de seguimiento a las aplicaciones existentes solo requiere proporcionar un destino para los registros; rara vez es necesario cambiar la plataforma de registro.

Application Insights proporciona otras características, entre las que se incluyen, entre otras, las siguientes:

  • Live Metrics: observe la actividad de la aplicación implementada en tiempo real sin que afecte al entorno de host.
  • Disponibilidad: también conocida como "Supervisión de transacciones sintéticas"; sondee los puntos de conexión externos de las aplicaciones para probar la disponibilidad general y la capacidad de respuesta a lo largo del tiempo.
  • Integración de GitHub o Azure DevOps: cree elementos de trabajo de GitHub o Azure DevOps en el contexto de los datos de Application Insights.
  • Uso: comprenda qué características son populares con los usuarios y cómo estos interactúan con la aplicación y la usan.
  • Detección inteligente: detección automática de errores y anomalías mediante el análisis proactivo de telemetría.

Además, Application Insights admite el seguimiento distribuido, también conocido como "correlación de componentes distribuidos". Esta característica permite buscar y visualizar un flujo de un extremo a otro de una ejecución o transacción determinada. La capacidad de realizar un seguimiento de la actividad de un extremo a otro es cada vez más importante para las aplicaciones que se han creado como componentes distribuidos o microservicios.

El mapa de aplicación permite obtener una vista general de arriba abajo de la arquitectura de la aplicación y referencias visuales de un vistazo al estado y la capacidad de respuesta de los componentes.

Para comprender el número de recursos de Application Insights necesarios para cubrir la aplicación o los componentes entre entornos, vea la Guía de planificación de la implementación de Application Insights.

¿Cómo uso Application Insights?

Application Insights se habilita mediante la instrumentación automática (agente) o la incorporación del SDK de Application Insights al código de la aplicación. Se admiten muchos lenguajes y las aplicaciones pueden estar en Azure, en el entorno local u hospedadas por otra nube. Para averiguar qué tipo de instrumentación es la más adecuada, vea Cómo instrumentar una aplicación.

El agente de Application Insights o el SDK preprocesan la telemetría y las métricas antes de enviar los datos a Azure, donde se ingieren y procesan más antes de almacenarse en los registros de Azure Monitor (Log Analytics). Por este motivo, para usar Application Insights se necesita una cuenta de Azure.

La manera más fácil de empezar a consumir Application Insights es mediante Azure Portal y las experiencias visuales integradas. Los usuarios avanzados pueden consultar los datos subyacentes directamente para crear visualizaciones personalizadas mediante paneles y libros de Azure Monitor.

Considere la posibilidad de empezar con el mapa de aplicación para obtener una vista de alto nivel. Use la experiencia de búsqueda para restringir rápidamente la telemetría y los datos por tipo y fecha y hora, o buscar en los datos (por ejemplo, Seguimientos de registro) y filtrar por una operación correlacionada determinada de interés.

Vaya al análisis con la vista de rendimiento: obtenga información detallada sobre el rendimiento de la aplicación o la API y las dependencias de bajada y busque un ejemplo representativo para explorar de un extremo a otro. Además, sea proactivo con la vista de error: comprenda qué componentes o acciones generan errores, y prioridades y excepciones. Las vistas integradas son útiles para realizar un seguimiento del estado de la aplicación de forma proactiva y para el análisis reactivo de la causa principal.

Cree alertas de Azure Monitor para indicar posibles problemas si las partes de la aplicación o los componentes se desvían de la línea base establecida.

Los precios de Application Insights se basan en el consumo; solo paga por lo que usa. Para obtener más información sobre los precios, vea la página Precios de Azure Monitor y Procedimientos para optimizar los costos.

Cómo instrumentar una aplicación

La instrumentación automática es el método de instrumentación preferido. No requiere ninguna inversión para el desarrollador y elimina la sobrecarga futura relacionada con la actualización del SDK. También es la única manera de instrumentar una aplicación en la que no tiene acceso al código fuente.

Solo debe instalar el SDK de Application Insights en las circunstancias siguientes:

Para usar el SDK, instale un pequeño paquete de instrumentación en la aplicación y, después, instrumente la aplicación web, los componentes en segundo plano y JavaScript en las páginas web. La aplicación y sus componentes no tienen que estar hospedados obligatoriamente en Azure. La instrumentación supervisa la aplicación y dirige los datos de telemetría a un recurso de Application Insights mediante un token único. El efecto en el rendimiento de la aplicación es pequeño; las llamadas de seguimiento no bloquean y se envían por lotes en un subproceso independiente.

La instrumentación automática integrada está disponible para Azure App Service .NET, Azure App Service .NET Core, Azure Functions y Azure Virtual Machines.

El agente de Application Insights para Azure Monitor está disponible para cargas de trabajo que se ejecutan en máquinas virtuales locales.

Aquí encontrará una vista detallada de todos los entornos, lenguajes y proveedores de recursos compatibles con la instrumentación automática.

En otros escenarios, se requiere el SDK de Application Insights.

También hay disponible una oferta de OpenTelemetry en versión preliminar.


Idiomas compatibles

En esta sección se describen los escenarios admitidos.

Plataformas y marcos compatibles

Las plataformas y marcos admitidos se enumeran aquí.

Integración de servicios de Azure (habilitación del portal, implementaciones de Azure Resource Manager)

Instrumentación automática (habilitar sin cambios de código)

Instrumentación manual/SDK (se requieren algunos cambios de código)

Nota

La instrumentación basada en OpenTelemetry está disponible en versión preliminar para C#, Node.js y Python. Revise las limitaciones que se indican al principio de la documentación oficial de cada idioma. Si necesita una experiencia con todas las características, use el SDK de Application Insights existente.

Marcos de registro

Exportación y análisis de datos

SDK no compatibles

Existen otros SDK de Application Insights con el soporte de la comunidad. Sin embargo, Azure Monitor solo proporciona compatibilidad cuando se usan las opciones de instrumentación admitidas que se enumeran en esta página. Estamos evaluando constantemente las oportunidades de ampliar nuestro soporte técnico para otros idiomas. Siga las actualizaciones de Azure para Application Insights para obtener las últimas noticias del SDK.


Solución de problemas

Preguntas más frecuentes

Consulte las preguntas más frecuentes.

Foro de preguntas de Preguntas y respuestas de Microsoft

Publique preguntas en el foro de respuestas de Preguntas y respuestas de Microsoft.

Stack Overflow

Publique preguntas de programación en Stack Overflow mediante una etiqueta de Application Insights.

UserVoice

Deje los comentarios del producto para el equipo de ingeniería en UserVoice.

Pasos siguientes