mirror of
https://github.com/lennart-k/rustical.git
synced 2025-12-14 05:52:19 +00:00
Fix tracing
This commit is contained in:
43
Cargo.lock
generated
43
Cargo.lock
generated
@@ -1572,6 +1572,19 @@ dependencies = [
|
|||||||
"webpki-roots",
|
"webpki-roots",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "hyper-timeout"
|
||||||
|
version = "0.5.2"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "2b90d566bffbce6a75bd8b09a05aa8c2cb1fabb6cb348f8840c9e4c90a0d83b0"
|
||||||
|
dependencies = [
|
||||||
|
"hyper",
|
||||||
|
"hyper-util",
|
||||||
|
"pin-project-lite",
|
||||||
|
"tokio",
|
||||||
|
"tower-service",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "hyper-util"
|
name = "hyper-util"
|
||||||
version = "0.1.11"
|
version = "0.1.11"
|
||||||
@@ -2199,6 +2212,8 @@ dependencies = [
|
|||||||
"prost",
|
"prost",
|
||||||
"reqwest",
|
"reqwest",
|
||||||
"thiserror 2.0.12",
|
"thiserror 2.0.12",
|
||||||
|
"tokio",
|
||||||
|
"tonic",
|
||||||
"tracing",
|
"tracing",
|
||||||
]
|
]
|
||||||
|
|
||||||
@@ -2817,7 +2832,7 @@ dependencies = [
|
|||||||
"sync_wrapper",
|
"sync_wrapper",
|
||||||
"tokio",
|
"tokio",
|
||||||
"tokio-rustls",
|
"tokio-rustls",
|
||||||
"tower",
|
"tower 0.5.2",
|
||||||
"tower-service",
|
"tower-service",
|
||||||
"url",
|
"url",
|
||||||
"wasm-bindgen",
|
"wasm-bindgen",
|
||||||
@@ -3116,6 +3131,7 @@ dependencies = [
|
|||||||
"serde",
|
"serde",
|
||||||
"thiserror 2.0.12",
|
"thiserror 2.0.12",
|
||||||
"tokio",
|
"tokio",
|
||||||
|
"tracing",
|
||||||
"url",
|
"url",
|
||||||
"uuid",
|
"uuid",
|
||||||
]
|
]
|
||||||
@@ -3982,10 +3998,35 @@ dependencies = [
|
|||||||
"http 1.3.1",
|
"http 1.3.1",
|
||||||
"http-body",
|
"http-body",
|
||||||
"http-body-util",
|
"http-body-util",
|
||||||
|
"hyper",
|
||||||
|
"hyper-timeout",
|
||||||
|
"hyper-util",
|
||||||
"percent-encoding",
|
"percent-encoding",
|
||||||
"pin-project",
|
"pin-project",
|
||||||
"prost",
|
"prost",
|
||||||
|
"tokio",
|
||||||
"tokio-stream",
|
"tokio-stream",
|
||||||
|
"tower 0.4.13",
|
||||||
|
"tower-layer",
|
||||||
|
"tower-service",
|
||||||
|
"tracing",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "tower"
|
||||||
|
version = "0.4.13"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c"
|
||||||
|
dependencies = [
|
||||||
|
"futures-core",
|
||||||
|
"futures-util",
|
||||||
|
"indexmap 1.9.3",
|
||||||
|
"pin-project",
|
||||||
|
"pin-project-lite",
|
||||||
|
"rand 0.8.5",
|
||||||
|
"slab",
|
||||||
|
"tokio",
|
||||||
|
"tokio-util",
|
||||||
"tower-layer",
|
"tower-layer",
|
||||||
"tower-service",
|
"tower-service",
|
||||||
"tracing",
|
"tracing",
|
||||||
|
|||||||
@@ -130,7 +130,9 @@ tracing-actix-web = { workspace = true }
|
|||||||
uuid.workspace = true
|
uuid.workspace = true
|
||||||
|
|
||||||
opentelemetry = { version = "0.29", optional = true }
|
opentelemetry = { version = "0.29", optional = true }
|
||||||
opentelemetry-otlp = { version = "0.29", optional = true }
|
opentelemetry-otlp = { version = "0.29", optional = true, features = [
|
||||||
|
"grpc-tonic",
|
||||||
|
] }
|
||||||
opentelemetry_sdk = { version = "0.29", features = [
|
opentelemetry_sdk = { version = "0.29", features = [
|
||||||
"rt-tokio",
|
"rt-tokio",
|
||||||
], optional = true }
|
], optional = true }
|
||||||
|
|||||||
@@ -1,14 +1,14 @@
|
|||||||
use crate::config::TracingConfig;
|
use crate::config::TracingConfig;
|
||||||
#[cfg(feature = "opentelemetry")]
|
#[cfg(feature = "opentelemetry")]
|
||||||
use opentelemetry::{global, trace::TracerProvider, KeyValue};
|
use opentelemetry::{KeyValue, global, trace::TracerProvider};
|
||||||
#[cfg(feature = "opentelemetry")]
|
#[cfg(feature = "opentelemetry")]
|
||||||
use opentelemetry_otlp::WithExportConfig;
|
use opentelemetry_otlp::WithExportConfig;
|
||||||
#[cfg(feature = "opentelemetry")]
|
#[cfg(feature = "opentelemetry")]
|
||||||
use opentelemetry_sdk::{propagation::TraceContextPropagator, trace::Tracer, Resource};
|
use opentelemetry_sdk::{Resource, propagation::TraceContextPropagator, trace::Tracer};
|
||||||
#[cfg(feature = "opentelemetry")]
|
#[cfg(feature = "opentelemetry")]
|
||||||
use opentelemetry_semantic_conventions::{
|
use opentelemetry_semantic_conventions::{
|
||||||
resource::{SERVICE_NAME, SERVICE_VERSION},
|
|
||||||
SCHEMA_URL,
|
SCHEMA_URL,
|
||||||
|
resource::{SERVICE_NAME, SERVICE_VERSION},
|
||||||
};
|
};
|
||||||
#[cfg(feature = "opentelemetry")]
|
#[cfg(feature = "opentelemetry")]
|
||||||
use std::time::Duration;
|
use std::time::Duration;
|
||||||
@@ -17,9 +17,9 @@ use tracing::level_filters::LevelFilter;
|
|||||||
use tracing::warn;
|
use tracing::warn;
|
||||||
#[cfg(feature = "opentelemetry")]
|
#[cfg(feature = "opentelemetry")]
|
||||||
use tracing_opentelemetry::OpenTelemetryLayer;
|
use tracing_opentelemetry::OpenTelemetryLayer;
|
||||||
|
use tracing_subscriber::EnvFilter;
|
||||||
use tracing_subscriber::layer::SubscriberExt;
|
use tracing_subscriber::layer::SubscriberExt;
|
||||||
use tracing_subscriber::util::SubscriberInitExt;
|
use tracing_subscriber::util::SubscriberInitExt;
|
||||||
use tracing_subscriber::EnvFilter;
|
|
||||||
|
|
||||||
#[cfg(feature = "opentelemetry")]
|
#[cfg(feature = "opentelemetry")]
|
||||||
pub fn init_otel() -> Tracer {
|
pub fn init_otel() -> Tracer {
|
||||||
@@ -29,15 +29,19 @@ pub fn init_otel() -> Tracer {
|
|||||||
.build()
|
.build()
|
||||||
.unwrap();
|
.unwrap();
|
||||||
|
|
||||||
let tracer_provider = opentelemetry_sdk::trace::TracerProvider::builder()
|
let tracer_provider = opentelemetry_sdk::trace::SdkTracerProvider::builder()
|
||||||
.with_batch_exporter(otel_exporter, opentelemetry_sdk::runtime::Tokio)
|
.with_batch_exporter(otel_exporter)
|
||||||
.with_resource(Resource::from_schema_url(
|
.with_resource(
|
||||||
[
|
Resource::builder_empty()
|
||||||
KeyValue::new(SERVICE_NAME, env!("CARGO_PKG_NAME")),
|
.with_schema_url(
|
||||||
KeyValue::new(SERVICE_VERSION, env!("CARGO_PKG_VERSION")),
|
[
|
||||||
],
|
KeyValue::new(SERVICE_NAME, env!("CARGO_PKG_NAME")),
|
||||||
SCHEMA_URL,
|
KeyValue::new(SERVICE_VERSION, env!("CARGO_PKG_VERSION")),
|
||||||
))
|
],
|
||||||
|
SCHEMA_URL,
|
||||||
|
)
|
||||||
|
.build(),
|
||||||
|
)
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
global::set_tracer_provider(tracer_provider.clone());
|
global::set_tracer_provider(tracer_provider.clone());
|
||||||
@@ -66,7 +70,9 @@ pub fn setup_tracing(config: &TracingConfig) {
|
|||||||
#[cfg(not(feature = "opentelemetry"))]
|
#[cfg(not(feature = "opentelemetry"))]
|
||||||
{
|
{
|
||||||
registry.init();
|
registry.init();
|
||||||
warn!("This version of RustiCal is compiled without the opentelemetry feature. tracing.opentelemtry = true has no effect");
|
warn!(
|
||||||
|
"This version of RustiCal is compiled without the opentelemetry feature. tracing.opentelemtry = true has no effect"
|
||||||
|
);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
registry.init();
|
registry.init();
|
||||||
|
|||||||
Reference in New Issue
Block a user