Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Para poder supervisar la aplicación, debe instrumentarse. En las secciones siguientes, tratamos algunos aspectos básicos de la recopilación de datos de Application Insights de Azure Monitor.
La instrumentación de aplicaciones con OpenTelemetry (OTel) en Application Insights permite la recopilación de telemetría estandarizada entre plataformas. Esto mejora la observabilidad, simplifica la supervisión del rendimiento y admite el seguimiento distribuido, las métricas y el análisis de registros.
Nota:
Para Azure Function Apps, consulte Uso de OpenTelemetry con Azure Functions.
Enfoques de instrumentación para Application Insights: OpenTelemetry y mucho más
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 programar contra la API de Application Insights o 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 a la API que no se capturan por defecto con la autoinstrumentación. Hay dos opciones para la instrumentación manual:
Aunque consideramos OpenTelemetry como nuestra dirección futura, no tenemos planes de dejar de recopilar datos de SDK más antiguos. Todavía tenemos un camino por recorrer antes de que las distribuciones de OpenTelemetry de Azure logren la paridad de características con los SDK de Application Insights. En muchos casos, los clientes siguen optando por utilizar los SDK de Application Insights durante bastante tiempo.
Importante
"Manual" no significa que se le pedirá que escriba un código complejo para definir los intervalos de los seguimientos distribuidos (aunque sigue siendo una opción). Las bibliotecas de instrumentación empaquetadas en nuestras distribuciones le permiten capturar sin esfuerzo señales de telemetría en marcos y bibliotecas comunes. Estamos trabajando activamente para instrumentar los SDK de servicio de Azure más populares mediante OpenTelemetry, por lo que estas señales están disponibles para los clientes que usan la distribución OpenTelemetry de Azure Monitor.
Tipos de telemetría
La telemetría, los datos recopilados para observar la aplicación, se puede dividir en tres tipos o "pilares":
- Seguimiento distribuido
- Métricas
- Registros
Una historia de observabilidad completa incluye los tres pilares, y Application Insights desglosa aún más estos pilares en tablas basadas en nuestro modelo de datos. Nuestros SDK de Application Insights o las distribuciones de OpenTelemetry de Azure Monitor incluyen todo lo que necesita para impulsar la supervisión del rendimiento de las aplicaciones en Azure. La instalación del paquete en sí es gratuita y solo pagará por los datos que ingiera en Azure Monitor.
Las fuentes siguientes explican los tres pilares:
- Sitio web de la comunidad de OpenTelemetry
- Especificaciones de OpenTelemetry
- Observabilidad de sistemas distribuidos por Cindy Sridharan
Enrutamiento de telemetría
Hay dos maneras de enviar los datos a Azure Monitor (o a cualquier proveedor):
- Mediante un exportador directo
- Mediante un agente
Un exportador directo envía datos de telemetría en proceso (desde el código de la aplicación) directamente al punto de conexión de ingestión de Azure Monitor. La principal ventaja de este enfoque es la simplicidad de la incorporación.
Los SDK de Application Insights y las distribuciones de OpenTelemetry de Azure Monitor disponibles actualmente se basan en un exportador directo.
Nota:
Para conocer la posición de Azure Monitor sobre OpenTelemetry-Collector, consulta las Preguntas frecuentes sobre OpenTelemetry.
Sugerencia
Si tiene previsto usar OpenTelemetry-Collector para el muestreo o el procesamiento de datos adicional, es posible que pueda obtener estas mismas funcionalidades integradas en Azure Monitor. Recursos de Application Insights basados en áreas de trabajo beneficiarse de las Transformaciones en tiempo de ingesta . Para habilitarlas, siga los detalles del tutorial y omita el paso que muestra cómo configurar una configuración de diagnóstico, ya que con Application Insights centrado en el área de trabajo, esto ya está configurado. Si está filtrando menos del 50 % del volumen total, no supone un costo adicional. A partir del 50 %, hay un coste, pero mucho menor que la tarifa estándar por GB.
OpenTelemetry
Microsoft está encantado de adoptar OpenTelemetry como futuro de la instrumentación de telemetría. Nuestros clientes pidieron instrumentación neutral del proveedor y estamos encantados de asociarnos con la comunidad de OpenTelemetry para crear API y SDK coherentes en todos los lenguajes.
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.
Para conocer la terminología, consulte el glosario en las especificaciones de OpenTelemetry.
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 y basado en agentes | Instrumentación automática |
Seguimientos | Registros |
Solicitudes | Intervalos de servidor |
Dependencias | Otros tipos de intervalo (cliente, interno, etc.) |
Id. de operación | Id. de seguimiento |
Identificador o identificador primario de la operación | Id. de intervalo |
Pasos siguientes
Consulte las Preguntas frecuentes sobre Application Insights de Azure Monitor y las Preguntas frecuentes sobre OpenTelemetry para obtener más información.
Seleccione el enfoque de habilitación:
- Instrumentación automática
- SDK de Application Insights
- Distribución de OpenTelemetry de Azure Monitor