Instrumentación de una aplicación para supervisión
En un nivel básico, la "instrumentación" simplemente permite que una aplicación capture telemetría. Hay dos métodos para instrumentar la aplicación:
- Instrumentación automática (autoinstrumentación)
- Instrumentación manual
La Autoinstrumentación habilita la recopilación de telemetría mediante configuración sin tocar el código de la aplicación. Aunque es más conveniente, tiende a ser menos configurable. Tampoco está disponible en todos los lenguajes. Consulte Entornos y lenguajes compatibles con la autoinstrumentación. Cuando la instrumentación automática está disponible, es la manera más fácil de habilitar Azure Monitor Application Insights.
La instrumentación manual consiste en crear código para Application Insights o la API de OpenTelemetry. En el contexto de un usuario, normalmente hace referencia a la instalación de un SDK específico del lenguaje en una aplicación. Esto significa que tiene que administrar las actualizaciones de la versión más reciente del paquete por su cuenta. Puede usar esta opción si necesita realizar llamadas de dependencia personalizadas o llamadas API que no se capturan de forma predeterminada con la implementación automática. Hay dos opciones para la instrumentación manual:
Habilitación mediante los SDK de Application Insights
Solo debe instalar el SDK de Application Insights en las siguientes circunstancias:
- Necesita eventos y métricas personalizados
- Necesita control sobre el flujo de telemetría
- La instrumentación automática no está disponible (normalmente debido a limitaciones de en cuanto al lenguaje o la plataforma)
Para usar el SDK, instale un pequeño paquete de instrumentación en la aplicación y, a continuación, 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.
En GitHub se hospeda una lista de versiones y nombres del SDK. Para obtener más información, visite Versión del SDK.
Habilitación mediante OpenTelemetry
Microsoft ha colaborado con las partes interesadas del proyecto procedentes de dos proyectos de telemetría de código abierto anteriormente populares, OpenCensus y OpenTracing. Juntos, hemos ayudado a crear un único proyecto, OpenTelemetry. OpenTelemetry incluye contribuciones de todos los principales proveedores de administración del rendimiento de aplicaciones y de la nube (APM) y reside en la base de software de código abierto Cloud Native Computing Foundation (CNCF). Microsoft es miembro Platinum de CNCF.
Algunos términos heredados de Application Insights son confusos debido a la convergencia del sector en OpenTelemetry. En la tabla siguiente se destacan estas diferencias. Los términos de OpenTelemetry reemplazan los términos de Application Insights.
Application Insights | OpenTelemetry |
---|---|
Colectores automáticos | Bibliotecas de instrumentación |
Canal | Exportador |
Sin código/basado en agente | Instrumentación automática |
Traces | Registros |
Requests | Intervalos de servidor |
Dependencias | Otros tipos de intervalo (cliente, interno, etc.) |
Id. de operación | Identificación de seguimiento |
Id. o id. principal de operación | Id. de intervalo |