Member-only story

Deep Dive into OpenTelemetry Baggage: A New Signal Beyond Traces, Metrics, and Logs

Guangya Liu
3 min readJan 1, 2025

As distributed systems grow in complexity, the importance of observability cannot be overstated. Traditional observability has focused on three key signals: Traces, Metrics, and Logs. Each plays a unique role in understanding system behavior and diagnosing issues. However, OpenTelemetry introduces another powerful yet lesser-known concept: Baggage.

Baggage isn’t just a tool for debugging; it’s a strategic feature for propagating contextual information across distributed systems. In this blog, we’ll dive deep into what Baggage is, how it differs from other observability signals, and how you can use it effectively.

Understanding OpenTelemetry Baggage

OpenTelemetry Baggage is a mechanism for propagating small key-value pairs throughout a distributed system. It allows you to attach contextual information to a request as it flows through various services. While Baggage is not primarily designed for debugging or monitoring like the other signals, it complements them by enabling advanced context-sharing capabilities.

What is Baggage?

Baggage consists of:

  • Key-Value Pairs: Lightweight metadata (e.g., user_id=12345, region=us-west-1).
  • Global Context: Shared across services as part of the request context.
  • Cross-Service Propagation: Automatically carried by OpenTelemetry propagators.

Baggage in Action

Imagine a user request originating from a mobile app. With Baggage, you can tag the request with user-specific data (e.g., user ID or geographic location). As the request traverses various services in your microservices architecture, each service can access and act on this data without additional network calls or re-computation.

Baggage vs. Traces, Metrics, and Logs

While Traces, Metrics, and Logs are the bedrock of observability, they serve different purposes compared to Baggage:

Why Use Baggage?

Baggage adds value in several key areas:

Custom Business Logic

Create an account to read the full story.

The author made this story available to Medium members only.
If you’re new to Medium, create a new account to read this story on us.

Already have an account? Sign in

Guangya Liu

Written by Guangya Liu

STSM@IBM, Member - IBM Academy of Technology, Kubernetes Member, Istio Maintainer, Apache Mesos Committer & PMC Member.

No responses yet

Write a response