Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/guptaachin/tracing-with-open-telemetry
Auto instrumentation of go application with eBPF (Otel Collector)
https://github.com/guptaachin/tracing-with-open-telemetry
api docker ebpf golang jaeger observability otel-collector swagger traces
Last synced: 11 days ago
JSON representation
Auto instrumentation of go application with eBPF (Otel Collector)
- Host: GitHub
- URL: https://github.com/guptaachin/tracing-with-open-telemetry
- Owner: guptaachin
- Created: 2024-04-06T20:39:22.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2024-04-06T23:08:45.000Z (10 months ago)
- Last Synced: 2024-11-20T01:17:18.523Z (2 months ago)
- Topics: api, docker, ebpf, golang, jaeger, observability, otel-collector, swagger, traces
- Language: Go
- Homepage:
- Size: 269 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## Distributed Tracing with OTel Collector, and Jaeger
![CI](https://github.com/guptaachin/tracing-with-open-telemetry/actions/workflows/validate.yml/badge.svg)
### 1. Overview
Distributed tracing is essential for understanding the flow of requests across microservices in a complex system. In this guide, we'll set up a tracing pipeline using eBPF, the OpenTelemetry Collector (OTel Collector), and Jaeger.
### 2 Flow diagram
### 3. Components
- **PingAckAPI**:
- Is a light weight `net/http` API
- Exposes `/ping` and /`delay`
- Also has Swagger integrated for easy
- **OpenTelemetry Collector**:
- Collects, processes, and exports telemetry data (including traces).
- Acts as an intermediary between eBPF and Jaeger.
- **Jaeger**:
- Distributed tracing system for visualizing and analyzing trace data.### 3. Running code
#### Pre-requisites.
1. Docker
#### Steps to run code
1. `cd tracing-with-open-telemetry`
2. `./run.sh`
3. To make test api calls `http://localhost:7997/swagger/index.html`
4. To access Jaeger `http://localhost:16686/`This is how your final selections on Jaeger should look like