Distributed - Tracing

> (Data|State) Management and Processing > Distributed - Database / Application

1 - About

Advertising

3 - Implementation

3.1 - Thread local storage

Instrumenting asynchronous application for distributed tracing is quite challenging because most tracing libraries rely on thread local storage (Storage that is local the thread). While it works reasonably well in a blocking application (one thread), this does not work for an asynchronous application.

This implementation supposes that:

  • the application control flow matters (i.e threads)
  • although what really matters is the application request flow (e.g the incoming HTTP request).

3.2 - Library