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.
En este artículo se describe cómo habilitar y configurar la recopilación de datos basada en OpenTelemetry en Azure Monitor Application Insights mediante la distribución de OpenTelemetry de Azure Monitor. OpenTelemetry es el estándar de observabilidad de código abierto de la CNCF; Azure Monitor OpenTelemetry Distro es la distribución de Microsoft de ese estándar, optimizada para Azure Monitor. La distribución:
- Proporciona una distribución OpenTelemetry, que incluye compatibilidad con características específicas de Azure Monitor.
- Habilita la recopilación automática de telemetría mediante la inclusión de bibliotecas de instrumentación de OpenTelemetry para recopilar seguimientos, métricas, registros y excepciones.
- Permite recopilar telemetría personalizada.
- Admite Live Metrics para supervisar y recopilar datos de telemetría de aplicaciones web activas en producción.
Para obtener más información sobre las ventajas de usar la distribución de OpenTelemetry Azure Monitor, consulte Why should I use the Azure Monitor OpenTelemetry Distro.
Para más información sobre la recopilación de datos mediante OpenTelemetry, consulte la introducción a Application Insights o las preguntas más frecuentes sobre OpenTelemetry.
Siga los pasos de este artículo para instalar la distribución, conectarla al recurso de Application Insights y comprobar que los datos de telemetría fluyen a Azure Monitor.
Sugerencia
Para obtener información general conceptual sobre las opciones de OpenTelemetry en Azure Monitor : ingesta nativa de OTLP, la distribución de OpenTelemetry Microsoft y las experiencias de observabilidad de un extremo a otro, consulte OpenTelemetry con Azure Monitor.
Estado de la versión de OpenTelemetry
Las ofertas de OpenTelemetry están disponibles para aplicaciones de .NET, Node.js, Python y Java. Para obtener un estado de versión de característica por característica, consulte las preguntas más frecuentes.
Nota:
Para las aplicaciones de función de Azure, consulte Uso de OpenTelemetry con Azure Functions.
Habilitación de OpenTelemetry con Application Insights
Siga los pasos de esta sección para instrumentar la aplicación con OpenTelemetry. Seleccione una pestaña para obtener instrucciones específicas del idioma.
En la tabla siguiente se resumen los paquetes y los comandos de instalación de cada idioma admitido:
| Language | Package | Comando Install |
|---|---|---|
| ASP.NET Core | Azure.Monitor.OpenTelemetry.AspNetCore |
dotnet add package Azure.Monitor.OpenTelemetry.AspNetCore |
| .NET | Azure.Monitor.OpenTelemetry.Exporter |
dotnet add package Azure.Monitor.OpenTelemetry.Exporter |
| Java | applicationinsights-agent-3.7.8.jar |
Download desde GitHub |
| Node.js | @azure/monitor-opentelemetry |
npm install @azure/monitor-opentelemetry |
| Python | azure-monitor-opentelemetry |
pip install azure-monitor-opentelemetry |
Nota:
.NET trata varios escenarios, incluidos los ASP.NET clásicos, las aplicaciones de consola, Windows Forms (WinForms) y mucho más.
Requisitos previos
- Azure suscripción: Crear una suscripción de Azure gratuita
- Recurso de Application Insights: Creación de un recurso de Application Insights.
- ASP.NET Core Application con una versión compatible oficialmente de .NET
Sugerencia
Si va a migrar desde SDK de Application Insights anteriores, consulte nuestra documentación de migración.
Instalación de la biblioteca cliente
Instale el paquete Azure.Monitor.OpenTelemetry.AspNetCoreNuGet más reciente:
dotnet add package Azure.Monitor.OpenTelemetry.AspNetCore
Modifique su aplicación
Importe el espacio de nombres Azure.Monitor.OpenTelemetry.AspNetCore, agregue OpenTelemetry y configúrelo para usar Azure Monitor en su clase program.cs.
// Import the Azure.Monitor.OpenTelemetry.AspNetCore namespace.
using Azure.Monitor.OpenTelemetry.AspNetCore;
var builder = WebApplication.CreateBuilder(args);
// Add OpenTelemetry and configure it to use Azure Monitor.
builder.Services.AddOpenTelemetry().UseAzureMonitor();
var app = builder.Build();
app.Run();
Copia la cadena de conexión desde el recurso de Application Insights
La cadena de conexión es única e indica a dónde envía Azure Monitor OpenTelemetry Distro la telemetría que ha recopilado.
Sugerencia
Si aún no tiene un recurso de Application Insights, cree uno siguiendo esta guía. Se recomienda crear un nuevo recurso en lugar de usar uno existente.
Para copiar la cadena de conexión:
- Vaya al panel de Información general del recurso de Application Insights.
- Busque su cadena de conexión.
- Mantenga el puntero sobre la cadena de conexión y seleccione el icono Copiar al portapapeles.
Pegue la cadena de conexión en su entorno.
Para pegar el cadena de conexión, use uno de los métodos siguientes:
| Método | Idiomas compatibles | Recomendado para |
|---|---|---|
| Variable del entorno | Todos | Producción |
Archivo de configuración (applicationinsights.json) |
Solo para Java | Producción (Java) |
| Código | ASP.NET Core, Node.js, Python | Solo desarrollo/pruebas locales |
Importante
Se recomienda establecer la cadena de conexión mediante el código únicamente en entornos locales de desarrollo y prueba.
Para producción, use una variable de entorno o un archivo de configuración (solo Java).
Configure la cadena de conexión de Application Insights como una variable de entorno (recomendado para producción)
Sustituya
<Your cadena de conexión>en el siguiente comando por su cadena de conexión.APPLICATIONINSIGHTS_CONNECTION_STRING=<Your connection string>Establezca la cadena de conexión de Application Insights en un archivo de configuración - Solo para Java
Cree un archivo de configuración denominado
applicationinsights.jsony colóquelo en el mismo directorio queapplicationinsights-agent-3.7.8.jar, con el siguiente contenido:{ "connectionString": "<Your connection string>" }Reemplace
<Your cadena de conexión>en el código JSON anterior por su cadena de conexión única.Establecer la cadena de conexión de Application Insights en el código - Solo para ASP.NET Core, Node.js y Python
Consulte cadena de conexión configuration para obtener un ejemplo de configuración de cadena de conexión mediante código.
Nota:
Si establece la cadena de conexión en varios lugares, se resolverá en el siguiente orden de precedencia (de mayor a menor):
- Código
- Variable del entorno
- Archivo de configuración
Confirmación de que los datos fluyen
Después de configurar la distribución de OpenTelemetry de Azure Monitor y establecer la cadena de conexión, ejecute su aplicación y abra el recurso de Application Insights en el portal de Azure para comprobar que aparecen trazas, métricas y registros. Los datos pueden tardar unos minutos en aparecer.
Application Insights ahora está habilitado para su aplicación. Los pasos siguientes son opcionales y permiten una mayor personalización.
Nota:
Como parte del uso de la instrumentación de Application Insights, recopilamos y envíamos datos de diagnóstico a Microsoft. Estos datos ayudan a ejecutar y mejorar Application Insights. Obtenga más información en preguntas más frecuentes sobre Application Insights.
Importante
Si tiene dos o más servicios que emiten datos de telemetría al mismo recurso de Application Insights, es obligatorio establecer nombres de rol en la nube para representarlos correctamente en el mapa de aplicación.
Solución de problemas, comentarios y soporte técnico
Sugerencia
Las siguientes secciones están disponibles en todos los artículos de la distro de OpenTelemetry.
Solución de problemas
Para obtener información sobre la solución de problemas, consulte Solución de problemas de OpenTelemetry en .NET y Solución de problemas de telemetría de aplicaciones ausente en Application Insights de Azure Monitor.
Comentarios de OpenTelemetry
Para proporcionar comentarios:
- Rellene la encuesta de comentarios de los clientes de la comunidad de OpenTelemetry.
- Dile a Microsoft sobre ti al unirte a la OpenTelemetry Early Adopter Community.
- Póngase en contacto con otros usuarios de Azure Monitor en el Microsoft Tech Community.
- Realice una solicitud de característica en el Azure Foro de comentarios.
Apoyo
Seleccione una pestaña para el idioma que prefiera para detectar las opciones de soporte técnico.
- Para problemas de soporte de Azure, abra un ticket de soporte de Azure.
- Para problemas de OpenTelemetry, póngase en contacto directamente con el OpenTelemetry .NET community.
- Para obtener una lista de problemas abiertos relacionados con Azure Monitor Exportador, consulte la página GitHub Problemas.
Pasos siguientes
- Para revisar el código fuente, consulte el repositorio Azure Monitor ASP.NET Core GitHub.
- Para revisar una aplicación de ejemplo, consulte Azure Monitor OpenTelemetry para ASP.NET Core.
- Para instalar el paquete NuGet, buscar actualizaciones o ver las notas de la versión, consulte la página del paquete NuGet de Azure Monitor AspNetCore.
- Para obtener más información sobre OpenTelemetry y su comunidad, consulte el repositorio OpenTelemetry .NET GitHub repositorio.
- Habilite la supervisión de usuarios web o de explorador para habilitar las experiencias de uso.