Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/dgzlopes/foobar-demo

Distributed tracing demo.
https://github.com/dgzlopes/foobar-demo

demo distributed-tracing k6 opentelemetry tempo tracing

Last synced: about 2 months ago
JSON representation

Distributed tracing demo.

Awesome Lists containing this project

README

        

## foobar

This is a distributed tracing demo! Foobar consists of two **extremely** complex services: foo and bar.

On this demo:
- You can generate load with k6.
- Services foo and bar:
- Are written in Python.
- Are instrumented with OpenTelemetry.
- Export the spans to an OpenTelemetry Collector using the OTLP exporter.
- The OpenTelemetry Collector exports the tracing data to Grafana Tempo.
- Grafana Tempo can be queried from Grafana.

Here's a small diagram:


diagram

## QuickStart

Requirements: Docker and Docker Compose.

1. Build and run services with docker-compose:
```
docker-compose up --build -d
```

2. See running services with:
```
docker-compose ps
```

3. Generate some load with k6:
```
docker run -i --network=foobar-demo_default grafana/k6 run --quiet - Explore -> Tempo and paste the `trace_id`.


diagram

7. Stop the whole setup with:
```
docker-compose stop
```