Spring Cloud Sleuth Zipkin
In this tutorial, you'll learn about Fix Spring Cloud Sleuth Zipkin Not Reporting. We cover key concepts, practical examples, and best practices.
The Problem
Spans are created locally but never sent to the Zipkin server.
Quick Fix
Configure Zipkin URL
Wrong:
// zipkin.baseUrl not set
Output:
Spans not sent
Right:
spring.zipkin.baseUrl=http://localhost:9411
Output:
Spans sent to Zipkin
Enable sampling
Wrong:
spring.sleuth.sampler.probability=0.0
Output:
No spans sampled
Right:
spring.sleuth.sampler.probability=1.0
Output:
All spans sampled
Add Zipkin dependency
Wrong:
// No Zipkin dependency
Output:
Sleuth but no Zipkin
Right:
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-sleuth-zipkin</artifactId>
</dependency>
Output:
Zipkin reporter active
Prevention
- Set spring.zipkin.baseUrl to the Zipkin server
- Set sampler probability to 1.0 for development
- Ensure Zipkin server is running
Common Mistakes with cloud sleuth zipkin
- Using
returnto exit a function early instead of wrapping a pure value in the monad - Mixing let bindings with <- bindings in do notation, producing type errors
- Overlapping type class instances that cause GHC to reject the program with ambiguous dispatch errors
These mistakes appear frequently in real-world SPRING code. DodaTech's contributors have identified these patterns through analysis of open-source projects and production systems.
Practice Exercise
Write a pure function that safely divides two integers using Maybe, then test it with edge cases like division by zero and negative numbers.
This exercise reinforces the concepts covered in this guide. Try implementing it before checking online solutions.
FAQ
This quick fix is part of the DodaTech Spring & JVM ecosystem series. Built by the developers of Doda Browser, DodaZIP, and Durga Antivirus Pro.
Built by the developers of DodaTech
Doda Browser, DodaZIP & Durga Antivirus Pro