Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/davidb/tracing-opentelemetry-instrumentation-sdk
Middlewares and tools to integrate axum + tracing + opentelemetry
https://github.com/davidb/tracing-opentelemetry-instrumentation-sdk
Last synced: 3 days ago
JSON representation
Middlewares and tools to integrate axum + tracing + opentelemetry
- Host: GitHub
- URL: https://github.com/davidb/tracing-opentelemetry-instrumentation-sdk
- Owner: davidB
- License: cc0-1.0
- Created: 2022-06-11T15:49:52.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-09-23T10:48:35.000Z (4 months ago)
- Last Synced: 2024-10-29T23:10:14.624Z (3 months ago)
- Language: Rust
- Size: 472 KB
- Stars: 149
- Watchers: 3
- Forks: 42
- Open Issues: 16
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# tracing-opentelemetry-instrumentation-sdk
A set of rust crates to help working with tracing + opentelemetry
- `init-tracing-opentelemetry`: A set of helpers to initialize (and more) tracing + opentelemetry (compose your own or use opinionated preset)
- `axum-tracing-opentelemetry`: Middlewares and tools to integrate axum + tracing + opentelemetry.
- `fake-opentelemetry-collector`: A Fake (basic) opentelemetry collector, useful to test what is collected opentelemetry## For local dev / demo
To collect and visualize trace on local, some ofthe simplest solutions:
### Otel Desktop Viewer
[CtrlSpice/otel-desktop-viewer: desktop-collector](https://github.com/CtrlSpice/otel-desktop-viewer)
### Jaeger all-in-one
```sh
# launch Jaeger with OpenTelemetry, Jaeger, Zipking,... mode.
# see https://www.jaegertracing.io/docs/1.49/getting-started/#all-in-one# nerdctl or docker or any container runner
nerdctl run --rm --name jaeger \
-e COLLECTOR_ZIPKIN_HOST_PORT:9411 \
-e COLLECTOR_OTLP_ENABLED:true \
-p 6831:6831/udp \
-p 6832:6832/udp \
-p 5778:5778 \
-p 16686:16686 \
-p 4317:4317 \
-p 4318:4318 \
-p 14250:14250 \
-p 14268:14268 \
-p 14269:14269 \
-p 9411:9411 \
jaegertracing/all-in-one:1.49open http://localhost:16686
```Then :
- setup env variable (or not), (eg see [.envrc](.envrc))
- launch your server
- send the request
- copy trace_id from log (or response header)
- paste into Jaeger web UI## To release
Use the github workflow `release-plz`.