Merge pull request #833 from urkle/feate-update-opentelemetry
update opentelemetry
This commit is contained in:
commit
a14c10624c
|
@ -61,7 +61,7 @@ log = { version = "0.4.14", optional = true }
|
|||
secrecy = { version = "0.7.0", optional = true }
|
||||
tracinglib = { version = "0.1.25", optional = true, package = "tracing" }
|
||||
tracing-futures = { version = "0.2.5", optional = true, features = ["std-future", "futures-03"] }
|
||||
opentelemetry = { version = "0.16.0", optional = true, default-features = false, features = ["trace"] }
|
||||
opentelemetry = { version = "0.17.0", optional = true, default-features = false, features = ["trace"] }
|
||||
uuid = { version = "0.8.2", optional = true, features = ["v4", "serde"] }
|
||||
rust_decimal = { version = "1.14.3", optional = true }
|
||||
url = { version = "2.2.1", optional = true }
|
||||
|
|
|
@ -31,7 +31,8 @@ impl<T> OpenTelemetry<T> {
|
|||
/// Use `tracer` to create an OpenTelemetry extension.
|
||||
pub fn new(tracer: T) -> OpenTelemetry<T>
|
||||
where
|
||||
T: Tracer + Send + Sync,
|
||||
T: Tracer + Send + Sync + 'static,
|
||||
<T as Tracer>::Span: Sync + Send,
|
||||
{
|
||||
Self {
|
||||
tracer: Arc::new(tracer),
|
||||
|
@ -39,7 +40,11 @@ impl<T> OpenTelemetry<T> {
|
|||
}
|
||||
}
|
||||
|
||||
impl<T: Tracer + Send + Sync> ExtensionFactory for OpenTelemetry<T> {
|
||||
impl<T> ExtensionFactory for OpenTelemetry<T>
|
||||
where
|
||||
T: Tracer + Send + Sync + 'static,
|
||||
<T as Tracer>::Span: Sync + Send,
|
||||
{
|
||||
fn create(&self) -> Arc<dyn Extension> {
|
||||
Arc::new(OpenTelemetryExtension {
|
||||
tracer: self.tracer.clone(),
|
||||
|
@ -52,7 +57,11 @@ struct OpenTelemetryExtension<T> {
|
|||
}
|
||||
|
||||
#[async_trait::async_trait]
|
||||
impl<T: Tracer + Send + Sync> Extension for OpenTelemetryExtension<T> {
|
||||
impl<T> Extension for OpenTelemetryExtension<T>
|
||||
where
|
||||
T: Tracer + Send + Sync + 'static,
|
||||
<T as Tracer>::Span: Sync + Send,
|
||||
{
|
||||
async fn request(&self, ctx: &ExtensionContext<'_>, next: NextRequest<'_>) -> Response {
|
||||
next.run(ctx)
|
||||
.with_context(OpenTelemetryContext::current_with_span(
|
||||
|
|
Loading…
Reference in New Issue