Skip to content

Commit 5c062de

Browse files
authored
Add basic stress test for tracing (open-telemetry#1286)
1 parent 0173b2b commit 5c062de

File tree

2 files changed

+32
-1
lines changed

2 files changed

+32
-1
lines changed

throughput.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ where
2727
})
2828
.expect("Error setting Ctrl-C handler");
2929
let num_threads = num_cpus::get_physical();
30-
println!("Number threads: {}", num_threads);
30+
println!("Number of threads: {}", num_threads);
3131
let mut handles = Vec::with_capacity(num_threads);
3232
let func_arc = Arc::new(func);
3333
let mut worker_stats_vec: Vec<WorkerStats> = Vec::new();

traces.rs

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
use lazy_static::lazy_static;
2+
use opentelemetry::{
3+
trace::{Span, SpanBuilder, Tracer, TracerProvider as _},
4+
KeyValue,
5+
};
6+
use opentelemetry_sdk::trace as sdktrace;
7+
8+
mod throughput;
9+
10+
lazy_static! {
11+
static ref PROVIDER: sdktrace::TracerProvider = sdktrace::TracerProvider::builder()
12+
.with_config(sdktrace::config().with_sampler(sdktrace::Sampler::AlwaysOn))
13+
.build();
14+
static ref TRACER: sdktrace::Tracer = PROVIDER.tracer("stress");
15+
}
16+
17+
fn main() {
18+
throughput::test_throughput(test_span);
19+
}
20+
21+
fn test_span() {
22+
let span_builder = SpanBuilder::from_name("test_span").with_attributes(vec![
23+
KeyValue::new("attribute_at_span_start1", "value1"),
24+
KeyValue::new("attribute_at_span_start2", "value2"),
25+
]);
26+
27+
let mut span = TRACER.build(span_builder);
28+
span.set_attribute(KeyValue::new("key3", "value3"));
29+
span.set_attribute(KeyValue::new("key4", "value4"));
30+
span.end();
31+
}

0 commit comments

Comments
 (0)