This is an automated email from the ASF dual-hosted git repository.

junouyang pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-opendal.git


The following commit(s) were added to refs/heads/main by this push:
     new f2b262b8e chore(service/minitrace): update to v0.5.0 (#2725)
f2b262b8e is described below

commit f2b262b8ef553595f6f80111cf80677be63f8d2f
Author: Andy Lok <[email protected]>
AuthorDate: Sat Jul 29 02:32:52 2023 +0800

    chore(service/minitrace): update to v0.5.0 (#2725)
    
    * chore(service/minitrace): update to v0.5.0
    
    * fix
    
    * fix
    
    * fix
---
 Cargo.lock                   | 16 ++++++++++++----
 core/Cargo.toml              |  2 +-
 core/src/layers/minitrace.rs | 37 ++++++++++++++++++++-----------------
 3 files changed, 33 insertions(+), 22 deletions(-)

diff --git a/Cargo.lock b/Cargo.lock
index 29292833f..55743447e 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -1237,6 +1237,12 @@ version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index";
 checksum = "eaa37046cc0f6c3cc6090fbdbf73ef0b8ef4cfcc37f6befc0020f63e8cf121e1"
 
+[[package]]
+name = "defer"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index";
+checksum = "647605a6345d5e89c3950a36a638c56478af9b414c55c6f2477c73b115f9acde"
+
 [[package]]
 name = "der"
 version = "0.7.7"
@@ -2688,23 +2694,25 @@ checksum = 
"68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
 
 [[package]]
 name = "minitrace"
-version = "0.4.1"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "317e28b8c337ada2fd437611c241ce053d5b7f5480b79e945597996b87b1de96"
+checksum = "5bdc5c5a697f93f25a109f36988a60ce534c05b944afb8ef3c1498e131638133"
 dependencies = [
+ "defer",
  "futures",
  "minitrace-macro",
  "minstant",
  "once_cell",
  "parking_lot 0.12.1",
  "pin-project",
+ "rand 0.8.5",
 ]
 
 [[package]]
 name = "minitrace-macro"
-version = "0.4.1"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "77814d165883613a1846517efdc50b88fabd9c210b7ff4d3745b38b99d539652"
+checksum = "f2277f13e7d585f02062590b3496cc0ca862aefadd24888efa01d50843605b79"
 dependencies = [
  "proc-macro-error",
  "proc-macro2",
diff --git a/core/Cargo.toml b/core/Cargo.toml
index 8be27e9b3..33761cbde 100644
--- a/core/Cargo.toml
+++ b/core/Cargo.toml
@@ -211,7 +211,7 @@ madsim = { version = "0.2.21", optional = true }
 md-5 = "0.10"
 metrics = { version = "0.20", optional = true }
 mini-moka = { version = "0.10", optional = true }
-minitrace = { version = "0.4.1", optional = true }
+minitrace = { version = "0.5", optional = true }
 moka = { version = "0.10", optional = true, features = ["future"] }
 once_cell = "1"
 openssh = { version = "0.9.9", optional = true }
diff --git a/core/src/layers/minitrace.rs b/core/src/layers/minitrace.rs
index 83c16be70..a3d587317 100644
--- a/core/src/layers/minitrace.rs
+++ b/core/src/layers/minitrace.rs
@@ -57,13 +57,20 @@ use crate::*;
 ///
 /// use anyhow::Result;
 /// use futures::executor::block_on;
+/// use minitrace::collector::Config;
+/// use minitrace::prelude::*;
 /// use opendal::layers::MinitraceLayer;
 /// use opendal::services;
 /// use opendal::Operator;
 ///
 /// fn main() -> Result<(), Box<dyn Error + Send + Sync + 'static>> {
-///     let collector = {
-///         let (span, collector) = minitrace::Span::root("op");
+///     let reporter =
+///         
minitrace_jaeger::JaegerReporter::new("127.0.0.1:6831".parse().unwrap(), 
"opendal")
+///             .unwrap();
+///     minitrace::set_reporter(reporter, Config::default());
+///
+///     {
+///         let root = Span::root("op", SpanContext::random());
 ///         let runtime = tokio::runtime::Runtime::new()?;
 ///         runtime.block_on(
 ///             async {
@@ -78,15 +85,12 @@ use crate::*;
 ///                 op.stat("test").await.expect("must succeed");
 ///                 op.read("test").await.expect("must succeed");
 ///             }
-///             .in_span(Span::enter_with_parent("test", &span)),
+///             .in_span(Span::enter_with_parent("test", &root)),
 ///         );
-///         collector
-///     };
-///     let spans = block_on(collector.collect());
-///     let bytes =
-///         minitrace_jaeger::encode("opendal".to_owned(), rand::random(), 0, 
0, &spans).unwrap();
-///     minitrace_jaeger::report_blocking("127.0.0.1:6831".parse().unwrap(), 
&bytes)
-///         .expect("report error");
+///     }
+///
+///     minitrace::flush();
+///
 ///     Ok(())
 /// }
 /// ```
@@ -99,14 +103,13 @@ use crate::*;
 ///
 /// For example:
 ///
-/// ```ignore
+/// ```no_run
 /// extern crate minitrace_jaeger;
 ///
-/// let spans = block_on(collector.collect());
-///
-/// let bytes =
-///     minitrace_jaeger::encode("opendal".to_owned(), rand::random(), 0, 0, 
&spans).unwrap();
-/// minitrace_jaeger::report_blocking("127.0.0.1:6831".parse().unwrap(), 
&bytes).expect("report error");
+/// let reporter =
+///     
minitrace_jaeger::JaegerReporter::new("127.0.0.1:6831".parse().unwrap(), 
"opendal")
+///         .unwrap();
+/// minitrace::set_reporter(reporter, Config::default());
 /// ```
 ///
 /// For real-world usage, please take a look at 
[`minitrace-datadog`](https://crates.io/crates/minitrace-datadog) or 
[`minitrace-jaeger`](https://crates.io/crates/minitrace-jaeger) .
@@ -145,7 +148,7 @@ impl<A: Accessor> LayeredAccessor for MinitraceAccessor<A> {
         self.inner.info()
     }
 
-    #[trace("create", enter_on_poll = true)]
+    #[trace(name = "create", enter_on_poll = true)]
     async fn create_dir(&self, path: &str, args: OpCreateDir) -> 
Result<RpCreateDir> {
         self.inner.create_dir(path, args).await
     }

Reply via email to