springcloud-sleuth +zipkin completa el seguimiento de registros

introducir

En la arquitectura de microservicios, con el desarrollo del negocio, el sistema se vuelve cada vez más complejo y la relación de llamada se vuelve cada vez más complicada. Casi todas las solicitudes formarán una cadena de llamadas, y cada cadena puede fallar debido a varias razones. En este momento, se encuentra que el seguimiento de la llamada de enlace completo se está volviendo cada vez más importante.
Srping Cloud Sleuth ofrece una solución completa. Un ID generado por Sleuth, llamado ID de seguimiento, se usa para identificar un enlace de solicitud.Un enlace de solicitud contiene un ID de seguimiento y varios ID de tramo.

1. Primero, sleuth crea un TraceFilter para interceptar todas las solicitudes de red. Si no hay información de tramo en el encabezado de la solicitud, cree un objeto de tramo, genere ID de tramo, ID de seguimiento, etc., si hay en el encabezado, directamente use los datos en el encabezado para crear el objeto Span
2. Luego configure el id de span y rastree el id al MDC de sl4j. Cuando se usa RestTemplate para enviar una solicitud, el interceptor RestTemplateInterceptorInjector intercepta la solicitud y establece el ID de tramo recién generado, el ID de rastreo y otra información en el encabezado de la solicitud. De esta forma, el servidor puede analizar la información de Span del encabezado después de recibir la solicitud.

1. Instalar zipkin

curl -sSL https://zipkin.io/quickstart.sh | bash -s

2. Comience zipkin

nohup java -jar zipkin.jar >> zipkin.log 2>&1 &

Visite la página del cliente zipkin localhost:9411

inserte la descripción de la imagen aquí

3. Introducir las dependencias de sleuth y zipkin en el proyecto springcloud

        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-sleuth-zipkin</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud </groupId>
            <artifactId>spring-cloud-starter-sleuth</artifactId>
        </dependency>

4. Archivo de configuración

spring.zipkin.enabled=true
spring.zipkin.discovery-client-enabled=false
spring.zipkin.base-url=http://localhost:9411
spring.sleuth.sampler.probability=1.0

5. Iniciar el proyecto

llamar a una interfaz
inserte la descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/qq_46645840/article/details/129087209
Recomendado
Clasificación