Skip to content

Commit

Permalink
Upgrade OpenTelemetry SDK to 0.22 (#2772)
Browse files Browse the repository at this point in the history
  • Loading branch information
divergentdave authored Mar 5, 2024
1 parent b968f73 commit c704b40
Show file tree
Hide file tree
Showing 5 changed files with 52 additions and 75 deletions.
93 changes: 33 additions & 60 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -45,8 +45,8 @@ janus_interop_binaries = { version = "0.6", path = "interop_binaries" }
janus_messages = { version = "0.6", path = "messages" }
k8s-openapi = { version = "0.20.0", features = ["v1_24"] } # keep this version in sync with what is referenced by the indirect dependency via `kube`
kube = { version = "0.87.2", default-features = false, features = ["client", "rustls-tls"] }
opentelemetry = { version = "0.21", features = ["metrics"] }
opentelemetry_sdk = { version = "0.21", features = ["metrics"] }
opentelemetry = { version = "0.22", features = ["metrics"] }
opentelemetry_sdk = { version = "0.22", features = ["metrics"] }
prio = { version = "0.15.4", features = ["multithreaded", "experimental"] }
serde = { version = "1.0.197", features = ["derive"] }
serde_json = "1.0.114"
Expand All @@ -61,7 +61,7 @@ trillium = "0.2.16"
trillium-api = { version = "0.2.0-rc.10", default-features = false }
trillium-caching-headers = "0.2.2"
trillium-head = "0.2.1"
trillium-opentelemetry = "0.4.0"
trillium-opentelemetry = "0.6.0"
trillium-router = "0.3.6"
trillium-rustls = "0.4.2"
trillium-testing = "0.5.0"
Expand Down
8 changes: 4 additions & 4 deletions aggregator/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -62,10 +62,10 @@ janus_messages.workspace = true
k8s-openapi.workspace = true
kube.workspace = true
opentelemetry.workspace = true
opentelemetry-otlp = { version = "0.14", optional = true, features = ["metrics"] }
opentelemetry-prometheus = { version = "0.14", optional = true }
opentelemetry-otlp = { version = "0.15", optional = true, features = ["metrics"] }
opentelemetry-prometheus = { version = "0.15", optional = true }
opentelemetry_sdk = { workspace = true, features = ["rt-tokio"], optional = true }
opentelemetry-semantic-conventions = { version = "0.13", optional = true }
opentelemetry-semantic-conventions = { version = "0.14", optional = true }
postgres-protocol = "0.6.6"
postgres-types = { version = "0.2.6", features = ["derive", "array-impls"] }
prio.workspace = true
Expand All @@ -91,7 +91,7 @@ tokio-postgres-rustls = "0.11.1"
tracing = "0.1.40"
tracing-chrome = "0.7.1"
tracing-log = "0.2.0"
tracing-opentelemetry = { version = "0.22", optional = true }
tracing-opentelemetry = { version = "0.23", optional = true }
tracing-stackdriver = "0.9.0"
tracing-subscriber = { version = "0.3", features = ["std", "env-filter", "fmt", "json"] }
trillium.workspace = true
Expand Down
8 changes: 5 additions & 3 deletions aggregator/src/binary_utils.rs
Original file line number Diff line number Diff line change
Expand Up @@ -498,7 +498,7 @@ mod tests {
};
use opentelemetry::metrics::MeterProvider as _;
use opentelemetry_sdk::{
metrics::{data::Gauge, MeterProvider, PeriodicReader},
metrics::{data::Gauge, PeriodicReader, SdkMeterProvider},
runtime::Tokio,
testing::metrics::InMemoryMetricsExporter,
};
Expand Down Expand Up @@ -659,7 +659,9 @@ mod tests {

let exporter = InMemoryMetricsExporter::default();
let reader = PeriodicReader::builder(exporter.clone(), Tokio).build();
let meter_provider = MeterProvider::builder().with_reader(reader.clone()).build();
let meter_provider = SdkMeterProvider::builder()
.with_reader(reader.clone())
.build();
let meter = meter_provider.meter("tests");

register_database_pool_status_metrics(pool.clone(), &meter).unwrap();
Expand All @@ -681,7 +683,7 @@ mod tests {
}

async fn check_database_pool_gauges(
meter_provider: &MeterProvider,
meter_provider: &SdkMeterProvider,
exporter: &InMemoryMetricsExporter,
expected_available: u64,
expected_total: u64,
Expand Down
12 changes: 7 additions & 5 deletions aggregator/src/metrics.rs
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,9 @@ use {
janus_aggregator_core::datastore::TRANSACTION_RETRIES_METER_NAME,
opentelemetry::{metrics::MetricsError, KeyValue},
opentelemetry_sdk::{
metrics::{new_view, Aggregation, Instrument, InstrumentKind, MeterProvider, Stream, View},
metrics::{
new_view, Aggregation, Instrument, InstrumentKind, SdkMeterProvider, Stream, View,
},
Resource,
},
};
Expand Down Expand Up @@ -89,7 +91,7 @@ pub enum MetricsExporterHandle {
port: u16,
},
#[cfg(feature = "otlp")]
Otlp(MeterProvider),
Otlp(SdkMeterProvider),
Noop,
}

Expand Down Expand Up @@ -168,11 +170,11 @@ impl View for CustomView {
#[cfg(feature = "prometheus")]
fn build_opentelemetry_prometheus_meter_provider(
registry: Registry,
) -> Result<MeterProvider, MetricsError> {
) -> Result<SdkMeterProvider, MetricsError> {
let reader = opentelemetry_prometheus::exporter()
.with_registry(registry)
.build()?;
let meter_provider = MeterProvider::builder()
let meter_provider = SdkMeterProvider::builder()
.with_reader(reader)
.with_view(CustomView::new()?)
.with_resource(resource())
Expand Down Expand Up @@ -256,7 +258,7 @@ pub async fn install_metrics_exporter(
Box::new(DefaultTemporalitySelector::new()),
)?;
let reader = PeriodicReader::builder(exporter, Tokio).build();
let meter_provider = MeterProvider::builder()
let meter_provider = SdkMeterProvider::builder()
.with_reader(reader)
.with_view(CustomView::new()?)
.with_resource(resource())
Expand Down

0 comments on commit c704b40

Please sign in to comment.