Distributed Application Tracing with Trace4Cats
summary
Trace4Cats is a pure Scala tracing library and a lightweight tracing system built on Cats Effect that captures spans, propagates context over HTTP, and forwards traces via a native agent and collector or directly to Jaeger/Datadog. It implements head and tail sampling (always, never, probabilistic, token‑bucket rate limiter) and offers a Redis decision store for coordinated tail sampling. Exports use an Avro wire format over UDP/TCP/Kafka, integrates with http4s, fs2 and Natchez, and runs as small Docker/native‑image components.
AI-written summary · about
chapters (18)
- 0:00Start
- 1:35Agenda
- 2:39Why use Distributed Tracing?
- 3:50Terminology - Trace and Span
- 5:16Trace Sampling
- 7:34Tracing Libraries
- 10:30Key Differences to Natchez
- 11:34Support Exporters (to date)
- 12:03Finally Tagless & Trace Typeclass
- 13:28Traceable Business Logic
- 14:24Trace Visualisation
- 17:27Implementation
- 20:03Example:HTTP
- 21:51What About Arbitrary Contexts?
- 24:20Tail Sampling
- 25:16Deployment Topologies
- 26:26Trace4Cats Agent
- 27:08Trace4Cats Collector
related talks
14mCognitive and SelfAdaptive System for Distributed Tracing
59mDistributed Tracing and Monitoring with OpenCensus
34mDistributed Tracing, Lessons Learned
47mI'm Tracing You!
20mTracing of Large-scale Actor Systems
14mLightning Talk: Cognitive and SelfAdaptive System for Distributed Tracing
01h 02mDistributed Tracing and Monitoring with OpenCensus
54mA TRACE TO REMEMBER: COMPOSITIONAL TRACING
