Skip to content

Commit 6952f29

Browse files
authored
Add feature webkpi-roots for reqwest and tonic exporter backends (#1672)
adds for both opentelemetry-http and opentelemetry-otlp
1 parent 8f27e26 commit 6952f29

File tree

5 files changed

+10
-2
lines changed

5 files changed

+10
-2
lines changed

opentelemetry-http/CHANGELOG.md

+2
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
## vNext
44

5+
- Add `reqwest-rustls-webkpi-roots` feature flag to configure [`reqwest`](https://docs.rs/reqwest/0.11.27/reqwest/index.html#optional-features) to use embedded `webkpi-roots`.
6+
57
## v0.11.1
68

79
- Add feature flag enabling users to configure `reqwest` usage to use rustls via

opentelemetry-http/Cargo.toml

+1
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ rust-version = "1.65"
1111

1212
[features]
1313
reqwest-rustls = ["reqwest", "reqwest/rustls-tls-native-roots"]
14+
reqwest-rustls-webkpi-roots = ["reqwest", "reqwest/rustls-tls-webpki-roots"]
1415

1516
[dependencies]
1617
async-trait = { workspace = true }

opentelemetry-otlp/CHANGELOG.md

+1
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
### Added
1010

1111
- Added `DeltaTemporalitySelector` ([#1568])
12+
- Add `webkpi-roots` features to `reqwest` and `tonic` backends
1213

1314
[#1568]: https://github.com/open-telemetry/opentelemetry-rust/pull/1568
1415

opentelemetry-otlp/Cargo.toml

+3-1
Original file line numberDiff line numberDiff line change
@@ -67,12 +67,14 @@ grpc-tonic = ["tonic", "prost", "http", "tokio", "opentelemetry-proto/gen-tonic"
6767
gzip-tonic = ["tonic/gzip"]
6868
tls = ["tonic/tls"]
6969
tls-roots = ["tls", "tonic/tls-roots"]
70+
tls-webkpi-roots = ["tls", "tonic/tls-webpki-roots"]
7071

7172
# http binary
7273
http-proto = ["prost", "opentelemetry-http", "opentelemetry-proto/gen-tonic-messages", "http", "trace", "metrics"]
7374
reqwest-blocking-client = ["reqwest/blocking", "opentelemetry-http/reqwest"]
7475
reqwest-client = ["reqwest", "opentelemetry-http/reqwest"]
75-
reqwest-rustls = ["reqwest", "reqwest/rustls-tls-native-roots"]
76+
reqwest-rustls = ["reqwest", "opentelemetry-http/reqwest-rustls"]
77+
reqwest-rustls-webkpi-roots = ["reqwest", "opentelemetry-http/reqwest-rustls-webkpi-roots"]
7678

7779
# test
7880
integration-testing = ["tonic", "prost", "tokio/full", "trace"]

opentelemetry-otlp/src/lib.rs

+3-1
Original file line numberDiff line numberDiff line change
@@ -97,13 +97,15 @@
9797
//! * `gzip-tonic`: Use gzip compression for `tonic` grpc layer.
9898
//! * `tls-tonic`: Enable TLS.
9999
//! * `tls-roots`: Adds system trust roots to rustls-based gRPC clients using the rustls-native-certs crate
100+
//! * `tls-webkpi-roots`: Embeds Mozilla's trust roots to rustls-based gRPC clients using the webkpi-roots crate
100101
//!
101102
//! The following feature flags offer additional configurations on http:
102103
//!
103104
//! * `http-proto`: Use http as transport layer, protobuf as body format.
104105
//! * `reqwest-blocking-client`: Use reqwest blocking http client.
105106
//! * `reqwest-client`: Use reqwest http client.
106-
//! * `reqwest-rustls`: Use reqwest with TLS.
107+
//! * `reqwest-rustls`: Use reqwest with TLS with system trust roots via `rustls-native-certs` crate.
108+
//! * `reqwest-rustls-webkpi-roots`: Use reqwest with TLS with Mozilla's trust roots via `webkpi-roots` crate.
107109
//!
108110
//! # Kitchen Sink Full Configuration
109111
//!

0 commit comments

Comments
 (0)