@@ -7,10 +7,11 @@ use criterion::{criterion_group, criterion_main, Criterion};
7
7
use opentelemetry:: logs:: { AnyValue , LogRecord , LogResult , Logger , LoggerProvider as _, Severity } ;
8
8
use opentelemetry:: trace:: Tracer ;
9
9
use opentelemetry:: trace:: TracerProvider as _;
10
- use opentelemetry:: Key ;
10
+ use opentelemetry:: { Key , KeyValue } ;
11
11
use opentelemetry_sdk:: export:: logs:: { LogData , LogExporter } ;
12
- use opentelemetry_sdk:: logs:: LoggerProvider ;
12
+ use opentelemetry_sdk:: logs:: { Config , LoggerProvider } ;
13
13
use opentelemetry_sdk:: trace:: { config, Sampler , TracerProvider } ;
14
+ use opentelemetry_sdk:: Resource ;
14
15
15
16
#[ derive( Debug ) ]
16
17
struct VoidExporter ;
@@ -27,6 +28,12 @@ fn log_benchmark_group<F: Fn(&dyn Logger)>(c: &mut Criterion, name: &str, f: F)
27
28
28
29
group. bench_function ( "no-context" , |b| {
29
30
let provider = LoggerProvider :: builder ( )
31
+ . with_config ( Config :: default ( ) . with_resource ( Resource :: new ( vec ! [
32
+ KeyValue :: new( "service.name" , "my-service" ) ,
33
+ KeyValue :: new( "service.version" , "1.0.0" ) ,
34
+ KeyValue :: new( "service.environment" , "production" ) ,
35
+ KeyValue :: new( "service.instance.id" , "1234" ) ,
36
+ ] ) ) )
30
37
. with_simple_exporter ( VoidExporter )
31
38
. build ( ) ;
32
39
@@ -38,6 +45,12 @@ fn log_benchmark_group<F: Fn(&dyn Logger)>(c: &mut Criterion, name: &str, f: F)
38
45
group. bench_function ( "with-context" , |b| {
39
46
let provider = LoggerProvider :: builder ( )
40
47
. with_simple_exporter ( VoidExporter )
48
+ . with_config ( Config :: default ( ) . with_resource ( Resource :: new ( vec ! [
49
+ KeyValue :: new( "service.name" , "my-service" ) ,
50
+ KeyValue :: new( "service.version" , "1.0.0" ) ,
51
+ KeyValue :: new( "service.environment" , "production" ) ,
52
+ KeyValue :: new( "service.instance.id" , "1234" ) ,
53
+ ] ) ) )
41
54
. build ( ) ;
42
55
43
56
let logger = provider. logger ( "with-context" ) ;
0 commit comments