diff --git a/examples/actix-http/Cargo.toml b/examples/actix-http/Cargo.toml index a12b49d7af..d969f2787f 100644 --- a/examples/actix-http/Cargo.toml +++ b/examples/actix-http/Cargo.toml @@ -6,7 +6,7 @@ publish = false [dependencies] opentelemetry = { path = "../../opentelemetry", features = ["rt-tokio"] } -opentelemetry-jaeger = { path = "../../opentelemetry-jaeger", features = ["reqwest_collector_client", "rt-tokio"] } +opentelemetry-jaeger = { path = "../../opentelemetry-jaeger", features = ["reqwest_collector_client", "rt-tokio-current-thread"] } thrift = "0.13" actix-web = "4.0.0-beta.4" actix-service = "2.0.0-beta.5" diff --git a/examples/actix-http/src/main.rs b/examples/actix-http/src/main.rs index 065f9d86c5..77673f500d 100644 --- a/examples/actix-http/src/main.rs +++ b/examples/actix-http/src/main.rs @@ -1,6 +1,7 @@ use actix_service::Service; use actix_web::middleware::Logger; use actix_web::{web, App, HttpServer}; +use opentelemetry::global::shutdown_tracer_provider; use opentelemetry::trace::TraceError; use opentelemetry::{global, sdk::trace as sdktrace}; use opentelemetry::{ @@ -12,7 +13,7 @@ fn init_tracer() -> Result { opentelemetry_jaeger::new_pipeline() .with_collector_endpoint("http://127.0.0.1:14268/api/traces") .with_service_name("trace-http-demo") - .install_batch(opentelemetry::runtime::Tokio) + .install_batch(opentelemetry::runtime::TokioCurrentThread) } async fn index() -> &'static str { @@ -45,5 +46,10 @@ async fn main() -> std::io::Result<()> { .bind("127.0.0.1:8088") .unwrap() .run() - .await + .await?; + + // wait until all pending spans get exported. + shutdown_tracer_provider(); + + Ok(()) }