Herramienta de telemetría para la recopilación automática de métricas de rendimiento en tiempo de ejecución, en componentes de software con interfaces HTTP
Cargando...
Autores
Director
Tipo de contenido
Editor
Document language:
Español
Fecha
Título de la revista
ISSN de la revista
Título del volumen
Documentos PDF
Resumen
La creciente adopción de arquitecturas distribuidas, microservicios y despliegues basados en contenedores ha incrementado la complejidad operacional de los sistemas de software modernos. En este contexto, la observabilidad se ha convertido en un requisito fundamental para comprender el comportamiento dinámico de los componentes, diagnosticar problemas de rendimiento y garantizar niveles adecuados de confiabilidad. No obstante, la adopción de soluciones tradicionales basadas en instrumentación directa del código enfrenta desafíos importantes, tales como la intrusividad, el overhead en tiempo de ejecución, la dificultad de integración en sistemas legados y la heterogeneidad tecnológica. Este trabajo aborda dicha problemática mediante el diseño e implementación de una herramienta de telemetría no intrusiva orientada a componentes que exponen interfaces HTTP.
La herramienta propuesta encapsula el componente a evaluar y un reverse proxy que intercepta las solicitudes HTTP, mide métricas como latencia, tasa de éxito/error y throughput, y exporta la información recolectada en un formato compatible con el ecosistema OpenTelemetry. El diseño incorpora un modelo de configuración declarativo de alto nivel y un generador automático de configuraciones que traduce dicho modelo en archivos operativos para el proxy. Esta aproximación permite habilitar capacidades de observabilidad sin modificar el código del componente observado, preservando así la no intrusividad y reduciendo el costo de adopción.
En conclusión, el trabajo demuestra que es posible construir un mecanismo de observabilidad ligero, configurable y alineado con estándares abiertos, capaz de integrarse con el ecosistema actual de telemetría sin intervenir el código fuente de los servicios observados. Asimismo, se identifican oportunidades de mejora relacionadas con la ampliación del soporte a otros protocolos, la optimización del muestreo y la extensión hacia métricas más avanzadas o entornos de mayor escala. (Texto tomado de la fuente)
Abstract
The increasing adoption of distributed architectures, microservices, and container-based deployments has significantly increased the operational complexity of modern software systems. In this context, observability has become a fundamental requirement for understanding the dynamic behavior of components, diagnosing performance issues, and ensuring adequate levels of reliability. However, the adoption of traditional solutions based on direct code instrumentation faces important challenges, such as intrusiveness, runtime overhead, integration difficulties in legacy systems, and technological heterogeneity. This work addresses this problem through the design and implementation of a non-intrusive telemetry tool aimed at components that expose HTTP interfaces.
The proposed tool encapsulates the component under evaluation together with a reverse proxy that intercepts HTTP requests, measures metrics such as latency, success/error rate, and throughput, and exports the collected information in a format compatible with the OpenTelemetry ecosystem. The design incorporates a high level declarative configuration model and an automatic configuration generator that translates this model into operational proxy configuration files. This approach enables observability capabilities without modifying the code of the observed component, thereby preserving non-intrusiveness and reducing the cost of adoption.
In conclusion, this work demonstrates that it is possible to build a lightweight, configurable observability mechanism aligned with open standards, capable of integration with the current telemetry ecosystem without intervening in the source code of the observed services. Additionally, opportunities for improvement are identified, including extending support to other protocols, optimizing sampling strategies, and expanding toward more advanced metrics or larger scale environments.
Descripción
ilustraciones, diagramas, tablas
Palabras clave propuestas
Observabilidad; Telemetría; Reverse proxy; HTTP; OpenTelemetry; Monitoreo de rendimiento; Arquitecturas distribuidas; Microservicios; Instrumentación no intrusiva; Métricas de latencia; Inspección pasiva de tráfico; Contenedores; Ingeniería de software; Sistemas distribuidos; Observability; Telemetry; Reverse proxy; HTTP; OpenTelemetry; Performance monitoring; Distributed architectures; Microservices; Non-intrusive instrumentation; Latency metrics; Passive traffic inspection; Containers; Software engineering; Distributed systems