Cómo usar Aspire Dashboard con una aplicación WinForms legada

Guía para instrumentar trazas OpenTelemetry en una app WinForms (.NET Framework 4.7.2) y mostrarlas en Aspire Dashboard con Docker, usando HttpProtobuf y puerto 4318.

18 ago 2025 • 4 min de lectura • Equipo Q2BSTUDIO

Inteligencia-Artificial-

Introducción

Si tienes una aplicación legacy basada en Windows Forms WinForms y quieres añadir observabilidad moderna este artículo explica cómo integrar trazas OpenTelemetry en .NET Framework y enviarlas al Aspire Dashboard de .NET usando únicamente un contenedor Docker ligero y unas pocas líneas de código. OpenTelemetry aporta una forma neutral de proveedor para capturar telemetría y el Aspire Dashboard ofrece una interfaz limpia para inspeccionar trazas de forma local, ideal para aplicaciones de escritorio antiguas.

Por qué usar Aspire Dashboard con aplicaciones legacy

Las plataformas de observabilidad modernas a veces parecen inalcanzables para aplicaciones de escritorio antiguas. Aspire Dashboard permite ver trazas localmente sin necesidad de infraestructuras complejas y facilita el diagnóstico. Combinado con OpenTelemetry puedes instrumentar el código de forma portable y abrir la puerta a servicios avanzados como ingesta en la nube o integración con pipelines de observabilidad en AWS y Azure.

Retos principales

Los dos retos principales son configurar OpenTelemetry y Aspire Dashboard para funcionar con .NET Framework 4.7.2 y añadir trazas de forma manual ya que la auto instrumentación no está disponible para aplicaciones de escritorio. En mi prototipo disponible en https://github.com/VolkmarR/OTEL-Traces-Winforms-Aspire se muestran soluciones prácticas a ambos problemas.

Configuración del Aspire Dashboard

El repositorio incluye un archivo docker compose con la configuración necesaria para levantar el Aspire Dashboard. Como el protocolo gRPC no es compatible con .NET Framework 4.7.2 es importante exponer la mapping de puertos 4318:18890 para usar el protocolo HttpProtobuf. De este modo el agente que corre en Docker recibirá trazas vía http en el endpoint https://localhost:4318/v1/traces y las mostrará en la interfaz local.

Configuración de la aplicación

Agrega el paquete nuget OpenTelemetry.Exporter.OpenTelemetryProtocol a la aplicación WinForms. Crea una utilidad de inicialización que instancie un ActivitySource para tu aplicación, configure el TracerProvider con AddOtlpExporter estableciendo protocolo en HttpProtobuf y endpoint en https://localhost:4318/v1/traces y defina el ResourceBuilder con el nombre de servicio y versión. Invoca este setup desde program.cs solo en entornos de desarrollo local y no en producción.

Instrumentación manual

Al no disponer de auto instrumentación hay que añadir spans manualmente en el código. Una buena práctica es instrumentar métodos de la capa base que realicen operaciones relevantes y con cierta duración, como ejecución de sentencias SQL o llamadas HTTP. En el flujo recomendado se crean actividades root cuando el usuario inicia una acción por ejemplo al pulsar un botón y dentro de esa actividad root se crean actividades hijas para operaciones concretas como Execute. Añade etiquetas a las actividades para capturar metadatos útiles por ejemplo una etiqueta custom.sql con la consulta ejecutada. Asegúrate de iniciar actividades hijas solo si existe una actividad padre Current para mantener una jerarquía limpia.

Ejemplo de flujo

En un evento de interfaz de usuario como LoadButton Click inicia una actividad root usando el ActivitySource y dentro de ese using llama a métodos que ejecutan queries. En cada ejecución de query crea una actividad hija solo si Activity Current no es nulo añade tags con información relevante y cierra la actividad al finalizar. Este patrón mantiene las trazas legibles y evita crear spans sin contexto.

Resumen técnico

Estos son los pasos clave para llevar trazas OpenTelemetry desde una aplicación WinForms legacy al Aspire Dashboard ejecutar el contenedor Docker con el mapeo de puertos 4318:18890 instalar OpenTelemetry.Exporter.OpenTelemetryProtocol configurar el TracerProvider con protocolo HttpProtobuf y endpoint https://localhost:4318/v1/traces definir un ActivitySource y añadir trazas manuales en métodos relevantes del código. El repositorio de ejemplo contiene un prototipo funcional que demuestra todo lo anterior.

Sobre Q2BSTUDIO

En Q2BSTUDIO somos una empresa de desarrollo de software y aplicaciones a medida especializada en soluciones modernas para empresas incluyendo inteligencia artificial, ciberseguridad y servicios cloud AWS y Azure. Ofrecemos software a medida, servicios de inteligencia de negocio e implementaciones de Power BI para transformar datos en decisiones, así como soluciones de ia para empresas incluyendo agentes IA personalizados. Nuestro equipo integra buenas prácticas de observabilidad y trazabilidad para facilitar mantenibilidad y seguridad en aplicaciones legacy y nuevas aplicaciones. Si necesitas migrar capacidades de monitoreo a aplicaciones desktop o quieres incorporar inteligencia artificial y ciberseguridad en tus soluciones a medida en la nube, Q2BSTUDIO puede ayudarte.

Servicios destacados

Aplicaciones a medida software a medida inteligencia artificial ciberseguridad servicios cloud aws y azure servicios inteligencia de negocio ia para empresas agentes IA power bi. Contacta a Q2BSTUDIO para evaluar tu caso y diseñar una hoja de ruta que incluya observabilidad con OpenTelemetry, integración con Aspire Dashboard y despliegue en entornos cloud AWS o Azure.

Enlaces útiles

Repositorio de ejemplo https://github.com/VolkmarR/OTEL-Traces-Winforms-Aspire y documentación oficial de OpenTelemetry para .NET. Para proyectos a medida y consultoría en inteligencia artificial agentes IA y power bi contacta a Q2BSTUDIO.

¿UNA PAUSA?

Juega un momento antes de irte

NUESTROS SERVICIOS

Cómo podemos ayudarte

Inteligencia artificial

Agentes de IA, chatbots y asistentes inteligentes que automatizan tareas y atienden a tus clientes 24/7 para mejorar la eficiencia de tu negocio.

Más info

Desarrollo de software

Aplicaciones web, móviles y de escritorio, intranets, e-commerce, SaaS y plataformas de gestión diseñadas para las necesidades concretas de tu empresa.

Más info

Servicios cloud

Migración, infraestructura, hosting gestionado, alta disponibilidad y seguridad en Microsoft Azure y Amazon Web Services para que tu negocio escale sin límites.

Más info

Ciberseguridad y pentesting

Auditorías de seguridad, test de intrusión (pentesting) y protección de aplicaciones, datos e infraestructura on-premise y cloud, con hacking ético y cumplimiento normativo.

Más info

Business Intelligence

Cuadros de mando y análisis de datos con Power BI: integramos tus fuentes, diseñamos dashboards y KPIs y convertimos tus datos en decisiones.

Más info

Automatización de procesos

Automatizamos tareas repetitivas y conectamos tus aplicaciones con n8n, Power Automate, Make y RPA, eliminando trabajo manual y aumentando la productividad.

Más info

Formación para empresas

Formamos a tus equipos en tecnología con criterio: desarrollo web, bases de datos, Git, buenas prácticas y seguridad, automatización con n8n, inteligencia artificial para empresas y creación de soluciones de IA con Azure AI Foundry.

Más info

Auditoría de código

Auditamos el código que creas tú, tu equipo o una IA: te decimos qué está bien y qué mejorar, lo securizamos y lo dejamos listo para producción, web o app.

Más info

Generación de imágenes con IA

Creamos por ti las imágenes que necesita tu negocio con inteligencia artificial: producto, redes, publicidad, ilustración y avatares. Tú nos dices qué quieres y te lo entregamos listo para usar.

Más info

Generación de vídeos con IA

Creamos por ti vídeos con inteligencia artificial: promocionales, para redes, presentadores virtuales, doblaje y animaciones. Nos cuentas la idea y te lo entregamos montado y listo para publicar.

Más info

Avatares conversacionales con IA

Creamos avatares conversacionales con IA —humanos digitales con cara y voz— que atienden a tus clientes y equipos con el conocimiento de tu empresa, en tu web, monitores interactivos, WhatsApp o Teams.

Más info

Marketing Online e IA

Google Ads, Meta Ads, LinkedIn Ads y posicionamiento en motores de IA (GEO/AEO): captamos clientes y hacemos que tu marca aparezca donde te buscan, también en ChatGPT, Gemini y Perplexity.

Más info

¿Tienes un proyecto en mente?

Cuéntanos tu visión y la convertimos en una solución de software. Sea cual sea el alcance, hacemos realidad tu idea.

Live Chat