6

Spring Cloud Sleuth is used for creating traceIds (Unique to request across services) and spanId (Same for one unit for work). My idea is that Zipkin server is used to get collective visualization of these logs across service. But I know and have used ELK stack which does necessarily the same function. I mean we can group requests with the same traceId for visualising, using ELK stack. But I do see people trying to implement distributed tracing with Sleuth, ELK along with Zipkin, as in these examples (Link1,Link2). But why do we need Zipkin if there is already ELK for log collection and visualising? Where I am missing?

sebin vincent
  • 330
  • 3
  • 12
  • 3
    [Zipkin Official Docs](https://zipkin.io/) - Zipkin is a distributed tracing system. It helps gather timing data needed to troubleshoot latency problems in service architectures. It is a visualization of your request-response and trace it. ELK stack is used for distributed logging. The Zipking server gives a visual aid of your request-response and timing details, while Kibaana in ELK gives a visual aid for centralized logging - somewhere where you can read the logs – Priyak Dey Aug 15 '20 at 19:03
  • How a Zipkin dashboard looks like : (Example One)[https://www.scalyr.com/blog/zipkin-tutorial-distributed-tracing/] , [Exmaple Two](https://github.com/openzipkin/zipkin-finagle-example/blob/master/README.md) and [Zipkin Official Page](https://zipkin.io/pages/data_model.html) – Priyak Dey Aug 15 '20 at 19:09
  • [Kibana Dashboard Example](https://www.elastic.co/guide/en/kibana/current/xpack-logs.html) Yes ELK has other features too, but official docs are starting places – Priyak Dey Aug 15 '20 at 19:10
  • 1
    The free [Elastic APM](https://www.elastic.co/apm) covers tracing similar to Zipkin and other tools and ties them together with the rest of the ELK / Elastic Stack in a single solution. – xeraa Aug 16 '20 at 19:47
  • Feature Services Map isn't free in Elastic APM but it free in Zipkin. – Doan Thai Feb 08 '22 at 03:37

1 Answers1

0

In fact, you can use ELK for distributed tracing by configuring it to collect and index trace and span data from your service. But, this requires more manual configuration and customization compared to using a specialized tracing system like Zipkin.

Zipkin provides specialized functionality for distributed tracing and supports open standards that make it easier to integrate with other systems and services.