Skip to content

Commit cad63b6

Browse files
authored
Remove the option of using grpcio for gRPC (#1534)
1 parent 476f2c1 commit cad63b6

38 files changed

+21
-3563
lines changed

.github/workflows/ci.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ jobs:
7070
non-default-examples:
7171
strategy:
7272
matrix:
73-
example: [opentelemetry-otlp/examples/external-otlp-grpcio-async-std, opentelemetry-otlp/examples/basic-otlp]
73+
example: [opentelemetry-otlp/examples/basic-otlp]
7474
runs-on: ubuntu-latest
7575
steps:
7676
- uses: actions/checkout@v1

Cargo.toml

-2
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ members = [
1717
"opentelemetry-zipkin",
1818
"opentelemetry-otlp/examples/basic-otlp",
1919
"opentelemetry-otlp/examples/basic-otlp-http",
20-
"opentelemetry-otlp/examples/external-otlp-grpcio-async-std",
2120
"opentelemetry-otlp/tests/integration_test",
2221
"examples/metrics-basic",
2322
"examples/metrics-advanced",
@@ -43,7 +42,6 @@ env_logger = "0.10"
4342
futures-core = "0.3"
4443
futures-executor = "0.3"
4544
futures-util = "0.3"
46-
grpcio = "0.12"
4745
hyper = "0.14"
4846
http = "0.2"
4947
isahc = "1.4"

opentelemetry-otlp/CHANGELOG.md

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

33
## vNext
44

5+
- Remove support for grpcio transport (#1534)
6+
57
## v0.14.0
68

79
### Added

opentelemetry-otlp/Cargo.toml

-6
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@ rustdoc-args = ["--cfg", "docsrs"]
2828
[dependencies]
2929
async-trait = { workspace = true }
3030
futures-core = { workspace = true }
31-
grpcio = { workspace = true, optional = true }
3231
opentelemetry = { version = "0.21", default-features = false, path = "../opentelemetry" }
3332
opentelemetry_sdk = { version = "0.21", default-features = false, path = "../opentelemetry-sdk" }
3433
opentelemetry-http = { version = "0.10", path = "../opentelemetry-http", optional = true }
@@ -71,11 +70,6 @@ gzip-tonic = ["tonic/gzip"]
7170
tls = ["tonic/tls"]
7271
tls-roots = ["tls", "tonic/tls-roots"]
7372

74-
# grpc using grpcio
75-
grpc-sys = ["grpcio", "opentelemetry-proto/gen-grpcio"]
76-
openssl = ["grpcio/openssl"]
77-
openssl-vendored = ["grpcio/openssl-vendored"]
78-
7973
# http binary
8074
http-proto = ["prost", "opentelemetry-http", "opentelemetry-proto/gen-tonic-messages", "http", "trace", "metrics"]
8175
reqwest-blocking-client = ["reqwest/blocking", "opentelemetry-http/reqwest"]

opentelemetry-otlp/README.md

+3-19
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,6 @@ use opentelemetry::trace::Tracer;
4646

4747
fn main() -> Result<(), Box<dyn std::error::Error + Send + Sync + 'static>> {
4848
// use tonic as grpc layer here.
49-
// If you want to use grpcio. enable `grpc-sys` feature and use with_grpcio function here.
5049
let tracer = opentelemetry_otlp::new_pipeline()
5150
.tracing()
5251
.with_exporter(opentelemetry_otlp::new_exporter().tonic())
@@ -71,7 +70,7 @@ automatically.
7170
```toml
7271
[dependencies]
7372
opentelemetry_sdk = { version = "*", features = ["async-std"] }
74-
opentelemetry-otlp = { version = "*", features = ["grpc-sys"] }
73+
opentelemetry-otlp = { version = "*", features = ["grpc-tonic"] }
7574
```
7675

7776
```rust
@@ -84,26 +83,11 @@ let tracer = opentelemetry_otlp::new_pipeline()
8483

8584
## Kitchen Sink Full Configuration
8685

87-
[Example](https://docs.rs/opentelemetry-otlp/latest/opentelemetry_otlp/#kitchen-sink-full-configuration)
86+
[Example](https://docs.rs/opentelemetry-otlp/latest/opentelemetry_otlp/#kitchen-sink-full-configuration)
8887
showing how to override all configuration options.
8988

90-
Generally there are two parts of configuration. One is metrics config
89+
Generally there are two parts of configuration. One is metrics config
9190
or tracing config. Users can config it via [`OtlpTracePipeline`]
9291
or [`OtlpMetricPipeline`]. The other is exporting configuration.
9392
Users can set those configurations using [`OtlpExporterPipeline`] based
9493
on the choice of exporters.
95-
96-
# Grpc libraries comparison
97-
98-
Multiple gRPC transport layers are available. [`tonic`](https://crates.io/crates/tonic) is the default gRPC transport
99-
layer and is enabled by default. [`grpcio`](https://crates.io/crates/grpcio) is optional.
100-
101-
| gRPC transport layer | [hyperium/tonic](https://github.com/hyperium/tonic) | [tikv/grpc-rs](https://github.com/tikv/grpc-rs) |
102-
|---|---|---|
103-
| Feature | --features=default | --features=grpc-sys |
104-
| gRPC library | [`tonic`](https://crates.io/crates/tonic) | [`grpcio`](https://crates.io/crates/grpcio) |
105-
| Transport | [hyperium/hyper](https://github.com/hyperium/hyper) (Rust) | [grpc/grpc](https://github.com/grpc/grpc) (C++ binding) |
106-
| TLS support | yes | yes |
107-
| TLS library | rustls | OpenSSL |
108-
| TLS optional | yes | yes |
109-
| Supported .proto generator | [`prost`](https://crates.io/crates/prost) | [`prost`](https://crates.io/crates/prost), [`protobuf`](https://crates.io/crates/protobuf) |

opentelemetry-otlp/examples/external-otlp-grpcio-async-std/Cargo.toml

-18
This file was deleted.

opentelemetry-otlp/examples/external-otlp-grpcio-async-std/README.md

-19
This file was deleted.

opentelemetry-otlp/examples/external-otlp-grpcio-async-std/src/main.rs

-101
This file was deleted.

opentelemetry-otlp/src/exporter/grpcio/logs.rs

-76
This file was deleted.

0 commit comments

Comments
 (0)