ReleaseCloudflare (Workers AI)Cloudflare (Workers AI)published Feb 28, 2024seen 5d

cloudflare/ebpf_exporter v2.4.0

cloudflare/ebpf_exporter

Open original ↗

Captured source

source ↗
published Feb 28, 2024seen 5dcaptured 8hhttp 200method plain

v2.4.0 / 2024-02-27

Repository: cloudflare/ebpf_exporter

Tag: v2.4.0

Published: 2024-02-28T04:01:15Z

Prerelease: no

Release notes: This is a big release that comes with a major new feature: Distributed Tracing via OpenTelemetry (#297).

You can find the full documentation in ./tracing.

As a quick demo, you could run a demo locally with a provided Docker image:

1. Run Jaeger all-in-one to provide an OpenTelemetry sink and UI:

docker run --rm -it --net host jaegertracing/all-in-one:1.54.0

2. Open Jaeger UI: http://localhost:16686/.

3. Build tracing demos from the root of the repo:

make tracing-demos

4. Run ebpf_exporter with a sock-trace example from the root of the repo:

docker run --rm -it --privileged --net host -e OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4318 -v $(pwd)/tracing:/tracing ghcr.io/cloudflare/ebpf_exporter:v2.4.0 --config.dir=examples --config.names=sock-trace

5. Run the demo:

./tracing/demos/sock/demo

6. Refresh the Jaeger UI and select demo as the service, click "Find Traces".

7. Observe a trace that includes both userspace demo component produced spans and kernel spans produced with ebpf_exporter:

We have more examples bundled, please see the docs.

Tracing support required us to take a few dependencies that needed a newer Go version, so we bumped the build requirement from go1.18 to go1.20.

Other changes:

  • Bumped dependencies to latest (#347, #348, #353, #354)
  • Updated softirq-latency-net-rx example (#349)
  • Modernized eBPF description (#357)