What you will learn in this TP
- Deploy Beyla alongside an application
- Read the RED metrics
- Visualise the traces
Introduction #
What you will learn in this section
- Deploy Beyla alongside an application
- Read the RED metrics
- Visualise the traces
Context. A third-party application exposes no metrics and cannot be modified. Yet you want its throughput, errors and latency.
Prerequisites: Docker Compose on a Linux host · Estimated time: 45 min
Metrics and traces without a single line of code.Hands-on #
Guided steps, with their solutions.
1. Write the Compose file
Why? Beyla shares the application's PID namespace (
Create a Compose file with a web application (nginx), Beyla, Prometheus, Tempo and Grafana.pid: service:app) so it can see it without being privileged across the whole host.2. Generate traffic
Why? Without requests, Beyla has nothing to measure.
Start the stack and send requests, some of which return a 404 error.3. Read the RED metrics
Why? The metrics follow the OpenTelemetry semantic conventions: they are identical whatever the application's language.
Query Prometheus: total throughput, 4xx error rate, p95 latency.4. View the traces
Why? Each request becomes a span: useful for tracking down a specific slow request.
Add Tempo to Grafana (http://tempo:3200) and search forboutique-fronttraces in error.
Difficulty level : ●●●○○ (3/5)
My progress
Sign in to track your progress and take notes. Sign in
💬 Questions about this lesson
No questions yet: be the first to ask for help or share your configuration.
Recommended Articles
Zero-code instrumentation with Grafana Beyla (OpenTelemetry eBPF Instrumentation)
Get RED metrics and HTTP/gRPC traces from any application without changing it: Grafana Beyla and ...
Beyla and Alloy: zero-code RED metrics and traces with beyla.ebpf
Enable Beyla eBPF instrumentation in Alloy: service discovery, RED metrics to Mimir, traces to Te...
eBPF explained: programs in the Linux kernel to observe without instrumenting
What eBPF is, how a program is verified and then run in the kernel, hook points (kprobes, uprobes...
Tempo: generating metrics from traces (service graph, span metrics, exemplars)
Enable Tempo's metrics-generator: service graphs, RED span metrics, remote write to Prometheus or...
eBPF best practices for observability
Checklist for adopting eBPF in observability: choosing tools, gradual rollout, agent security, co...
Correlating traces, logs, metrics and profiles in Grafana
Link Tempo to logs (Loki), metrics (Prometheus) and profiles (Pyroscope): tracesToLogs, tracesToM...
Prometheus: visualizing your metrics (UI, Grafana and dashboards)
Visualize Prometheus data: the web interface, PromQL graphs, connecting to Grafana, RED and USE d...
Sending traces to Tempo: OpenTelemetry instrumentation and Alloy
Produce and route traces to Tempo: Python/Java/Node auto-instrumentation, the manual SDK, OTEL en...
Capstone project: the four signals of the OpenTelemetry Demo in the Grafana stack
A capstone project spanning the observability courses: deploy the OpenTelemetry Demo, send metric...