Table of Contents |
---|
Introducción
En la release de Q2 de 2023 se ha incluido la capacidad de Tracing distribuido en Plataforma.
Esto nos permite obtener la trazabilidad distribuida entre sus componentes y otros componentes como microservicios que pueden invocar un API REST de plataforma y poder ver esta trazabilidad completa desde este microservicio.
Cómo acceder a la funcionalidad
Estas trazas pueden verse desde el control panel en la opción TRACING:
...
En este ejemplo se muestran las trazas de un micr servicio que invoca a otro microservicio y este a su vez a un servicio RESTexpuesto desde el Api Manager de plataforma. En las trazas se ve cuanto tiempo se ha empleado en cada span, lo cual es útil para detectar cueellos de botella, interrupciones entre componentes,…
...
Detalle de funcionamiento
¿Qué es la instrumentación?
La instrumentación de una aplicación, microservicio, etc, … es adaptarla para que genere una información de trazas y span que enviará al colector, estas trazas y span comparten un contexto por lo que puede trazarse desde el inicio hasta el fin el camino recorrido, el tiempo en cada punto del camino y además contiene información del tipo clave valor, para luego poder interpretar todo y poder sacar conclusiones.
En Plataforma se utiliza Open Telemetry para crear las trazas y spans y enviarla al colector para su tratamiento.
Tipos de instrumentación
Existen 2 tipos de instrumentación,
...
Ejemplos de Instrumentación
Para los ejemplo crearemos dos microservicios a partir de proyectos creados con Spring Boot.
Uno para la instrumentación automática y otro para la manual.
Instrumentación Automática
Para este tipo de instrumentación tan sólo hay que arrancar junto a la aplicación el agente de Open Telemetry, el cual es altamente configurable por parametría.
...
También existen agentes para otras tecnologías, no sólo java.
Instrumentación Manual
En este caso habría que añadir código a la aplicación para generar las trazas.
...