Skip to main content

get_current_context

Function get_current_context 

Source
pub fn get_current_context() -> Option<TraceContext>
Expand description

Get the current trace context for this thread

Examples found in repository?
examples/integrated_context_demo.rs (line 15)
11fn main() {
12    println!("🔌 observability_core context demo");
13    println!("==================================\n");
14
15    println!("Before: {:?}", get_current_context());
16
17    let root = TraceContext::new_root();
18    let trace_id = root.trace_id.clone();
19
20    let out = with_context(root, || {
21        println!("Inside: {:?}", get_current_context());
22        "ok"
23    });
24
25    println!("After: {:?}", get_current_context());
26    println!("Result: {out} (trace_id={trace_id})");
27}
More examples
Hide additional examples
examples/raii_scoped_context_demo.rs (line 13)
9fn main() {
10    println!("🔒 Scoped trace context demo");
11    println!("============================\n");
12
13    println!("Before: {:?}", get_current_context());
14
15    let ctx = TraceContext::new_root();
16    let tid = ctx.trace_id.clone();
17
18    let out = with_context(ctx, || {
19        log::info!("Processing request");
20        get_current_context().unwrap().trace_id
21    });
22
23    println!("Inside returned trace_id={out}");
24    println!("Expected trace_id={tid}");
25    println!("After: {:?}", get_current_context());
26}