28个版本 (17个破坏性版本)
0.18.0 | 2024年5月30日 |
---|---|
0.17.0 | 2024年3月11日 |
0.16.0 | 2023年11月7日 |
0.14.0 | 2023年7月29日 |
0.1.1 | 2019年11月26日 |
#49 in HTTP客户端
每月下载量 25,150
用于 18 个Crate(5个直接使用)
175KB
789 行
Actix Web OpenTelemetry
OpenTelemetry 对 Actix Web 的集成。
导出器配置
actix-web
使用 tokio
作为底层执行器,因此导出器应配置为非阻塞
[dependencies]
# if exporting to jaeger, use the `tokio` feature.
opentelemetry-jaeger = { version = "..", features = ["rt-tokio-current-thread"] }
# if exporting to zipkin, use the `tokio` based `reqwest-client` feature.
opentelemetry-zipkin = { version = "..", features = ["reqwest-client"], default-features = false }
# ... ensure the same same for any other exporters
执行客户端和服务器示例
# Run jaeger in background
$ docker run -d -p6831:6831/udp -p6832:6832/udp -p16686:16686 jaegertracing/all-in-one:latest
# Run server example with tracing middleware
$ cargo run --example server
# (In other tab) Run client example with request tracing
$ cargo run --example client --features awc
# View spans (see the image below)
$ firefox http://localhost:16686/
特性
awc
-- 启用对awc
http客户端的跟踪支持。metrics
-- 启用对 OpenTelemetry度量(默认情况下仅启用跟踪)的支持metrics-prometheus
-- 启用对 Prometheus度量的支持(需要metrics
特性)sync-middleware
-- 在返回future之前执行同步工作的 actix-web 中间件上启用跟踪。为每个请求添加少量开销。
依赖项
~18–30MB
~524K SLoC