linkerd / linkerd/website

Distributed Tracing: Use Cases, When It's Good, And When It's Overkill

Open
#131 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

area/blog size/large thinkpiece
Dominant language
JavaScript
Stars
60
Forks
221
Avg merge
4h 32m
Merged PRs (30d)
1

Description

### What is the purpose of the post?
The purpose of this HIGHLY OPINIONATED post is to unpack what people are asking for when they say they want distributed tracing and why they may be able to get what they need more simply and easily.

### What should it talk about?
The post will define distributed tracing and then break down what people are asking for when they say they need distributed tracing. More specifically, whether they need tracing for network topology graphs, for performance measurement and monitoring, or for audit purposes.

If this means they are asking for network topologies, it is a relatively simply thing to achieve and one that does not require inject tracer elements on every inch of your kubernetes real estate.

If this means measuring performance and monitoring, distributed tracing may actually be a less accurate method for monitoring than direct measurements that are not so sparsely sampled (and btw are far less expensive in terms of resources and hassles)

Lastly, we will consider distributed tracing for audit purpose and super complex microservice architectures - in which case, distributed tracing is a perfect use case.

### Who is the target audience?

* [x] Architect
* [x] SRE
* [ ] Developers

### Are there any assets?
Not required.

### What are the dependencies?
None.

### Relevant Examples / References

https://blog.buoyant.io/2016/05/17/distributed-tracing-for-polyglot-microservices/
https://eng.uber.com/distributed-tracing/
https://medium.com/opentracing/distributed-tracing-in-10-minutes-51b378ee40f1

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the three linked references and the issue's requested topics: definitions, topology, performance monitoring, audit use cases, and when tracing is overkill. Done means a highly opinionated post for architects and SREs that addresses those comparisons and explains when distributed tracing is appropriate.

Written by the indexing model from the issue text.

Assessment

Tech stack
kubernetes
Domain
content, documentation
Issue type
Documentation
Difficulty
3/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.