Stay Updated

Get the latest OpenObserve insights delivered to your inbox

By subscribing, you agree to receive product and marketing related updates from OpenObserve.

Table of Contents
otel-demo-opentelemetry-astronomy-demo.png

OpenTelemetry Astronomy Shop Demo App with OpenObserve Integration

Want to explore OpenTelemetry with a real-world example? The OpenTelemetry Astronomy Shop demo is a microservices-based application that generates traces, metrics, and logs - perfect for learning observability concepts. We’ll cover how to set it up and ingest all that telemetry data into OpenObserve.

What You'll Build

This guide walks you through deploying the OpenTelemetry demo application and configuring it to send observability data to OpenObserve, giving you a complete view of your distributed system's performance.

Prerequisites

  1. OpenTelemetry Astronomy Shop demo
  2. OpenTelemetry Helm Chart
  3. OpenObserve Cloud or self-hosted instance

Setup Steps

Step 1: Clone the Demo Repository

git clone https://github.com/open-telemetry/opentelemetry-demo.git

Step 2: Add the OpenTelemetry Helm Repository

helm repo add open-telemetry https://open-telemetry.github.io/opentelemetry-helm-charts

Step 3: Configure OpenObserve Integration

Create a values.yml file with your OpenObserve-specific configuration. This tells the OpenTelemetry Collector where to send your data:

opentelemetry-collector:
  config:
    exporters:
      otlphttp/openobserve:
        endpoint: https://example.openobserve.ai/api/default/
        headers:
          Authorization: Basic TOKEN
          stream-name: otel-demo

    service:
      pipelines:
        traces:
          exporters: [otlp, debug, spanmetrics, otlphttp/openobserve]
        metrics:
          exporters: [otlphttp/openobserve]
        logs:
          exporters: [otlphttp/openobserve]

Replace example.openobserve.ai with your OpenObserve instance URL and TOKEN with your authentication token. You can find these configuration details in OpenObserve under DataSources > Custom > Logs/Metrics/Traces > OTEL Collector.

Adding an authentication token

Step 4: Deploy with Helm

helm install otel-demo open-telemetry/opentelemetry-demo --values my-values.yml

Step 5: Visualize in OpenObserve

Once deployed, head over to your OpenObserve dashboard. You'll see traces, metrics, and logs from the Astronomy Shop flowing in, ready to explore and analyze.

  • Errors-only filter for Traces: Quickly isolate and inspect failed transactions by filtering traces with errors, helping you focus on problematic service paths.

Error-only filter for Traces

  • Viewing all the traces: Explore all recorded traces in one place to get a high-level overview of request flows, system activity, and key RED metrics (Requests, Errors, Duration).

Viewing all Traces along with RED metrics

  • Viewing all the spans of a Trace: Drill down into individual spans within a trace to understand how different microservices and components interacted during a request.

Viewing all spans of a Trace

  • Service map of entire microservices: Visualize service dependencies and call relationships across the Astronomy Shop, helping you see how components connect and communicate.

Trace Service Map of microservices

  • Trace timeline for the Traces: Analyze request durations with a timeline view that shows latency contributions from each span in the trace.

Timeline view of the Traces

  • Viewing attributes and learning more about the transaction: Inspect key attributes such as user IDs, service names, and request methods to get rich context about each transaction.

Viewing attributes related to a transaction

  • Exploring events and exceptions: Dive into exception details and error events emitted by spans to pinpoint the root cause of failures.

Events and Exceptions for exploring root cause of failure

  • Correlate Traces with Logs: Pivot from a trace to its associated logs, providing a full picture of what happened during a transaction.

Correlate Traces with Logs

  • Logs with selected TraceID: Filter logs by TraceID to view log entries that belong to the same transaction, perfect for debugging distributed requests.

Filtering based on a traceid

What's Next?

With your demo running, you can experiment with different observability scenarios, create custom dashboards, set up alerts, and get hands-on experience with distributed tracing. The Astronomy Shop generates realistic traffic patterns across multiple microservices, making it an excellent playground for learning OpenTelemetry and OpenObserve.

Additional Resources

Learn more about Openobserve and OpenTelemetry and explore our other OTel blogs, including:

Happy observing!

About the Author

Chaitanya Sistla

Chaitanya Sistla

LinkedIn

Chaitanya Sistla is a Principal Solutions Architect with 17X certifications across Cloud, Data, DevOps, and Cybersecurity. Leveraging extensive startup experience and a focus on MLOps, Chaitanya excels at designing scalable, innovative solutions that drive operational excellence and business transformation.

Latest From Our Blogs

View all posts