99import static io .opentelemetry .api .common .AttributeKey .stringKey ;
1010import static io .opentelemetry .sdk .testing .assertj .OpenTelemetryAssertions .assertThat ;
1111
12+ import io .opentelemetry .api .common .AttributeKey ;
1213import io .opentelemetry .api .common .Attributes ;
14+ import io .opentelemetry .api .common .KeyValue ;
1315import io .opentelemetry .api .common .Value ;
14- import io .opentelemetry .api .incubator .events . EventLogger ;
16+ import io .opentelemetry .api .incubator .logs . ExtendedLogger ;
1517import io .opentelemetry .api .logs .Severity ;
1618import io .opentelemetry .api .trace .Span ;
1719import io .opentelemetry .api .trace .SpanContext ;
2224import io .opentelemetry .context .Context ;
2325import io .opentelemetry .context .Scope ;
2426import io .opentelemetry .sdk .logs .SdkLoggerProvider ;
25- import io .opentelemetry .sdk .logs .internal .SdkEventLoggerProvider ;
2627import io .opentelemetry .sdk .testing .exporter .InMemorySpanExporter ;
2728import io .opentelemetry .sdk .testing .time .TestClock ;
2829import io .opentelemetry .sdk .trace .IdGenerator ;
@@ -46,14 +47,13 @@ class EventToSpanEventBridgeTest {
4647 .addSpanProcessor (SimpleSpanProcessor .create (spanExporter ))
4748 .build ();
4849 private final TestClock testClock = TestClock .create ();
49- private final SdkEventLoggerProvider eventLoggerProvider =
50- SdkEventLoggerProvider .create (
51- SdkLoggerProvider .builder ()
52- .setClock (testClock )
53- .addLogRecordProcessor (EventToSpanEventBridge .create ())
54- .build ());
50+ private final SdkLoggerProvider loggerProvider =
51+ SdkLoggerProvider .builder ()
52+ .setClock (testClock )
53+ .addLogRecordProcessor (EventToSpanEventBridge .create ())
54+ .build ();
5555 private final Tracer tracer = tracerProvider .get ("tracer" );
56- private final EventLogger eventLogger = eventLoggerProvider .get ("event-logger" );
56+ private final ExtendedLogger logger = ( ExtendedLogger ) loggerProvider .get ("event-logger" );
5757
5858 private static Sampler onlyServerSpans () {
5959 return new Sampler () {
@@ -85,15 +85,18 @@ void withRecordingSpan_BridgesEvent() {
8585 // others. We create a recording span by setting kind to SERVER.
8686 Span span = tracer .spanBuilder ("span" ).setSpanKind (SpanKind .SERVER ).startSpan ();
8787 try (Scope unused = span .makeCurrent ()) {
88- eventLogger
89- .builder ("my.event-name" )
88+ logger
89+ .logRecordBuilder ()
90+ .setEventName ("my.event-name" )
9091 .setTimestamp (100 , TimeUnit .NANOSECONDS )
9192 .setSeverity (Severity .DEBUG )
92- .put ("foo" , "bar" )
93- .put ("number" , 1 )
94- .put ("map" , Value .of (Collections .singletonMap ("key" , Value .of ("value" ))))
95- .setAttributes (Attributes .builder ().put ("color" , "red" ).build ())
96- .setAttributes (Attributes .builder ().put ("shape" , "square" ).build ())
93+ .setBody (
94+ Value .of (
95+ KeyValue .of ("number" , Value .of (1 )),
96+ KeyValue .of ("foo" , Value .of ("bar" )),
97+ KeyValue .of ("map" , Value .of (Collections .singletonMap ("key" , Value .of ("value" ))))))
98+ .setAttribute (AttributeKey .stringKey ("color" ), "red" )
99+ .setAttribute (AttributeKey .stringKey ("shape" ), "square" )
97100 .emit ();
98101 } finally {
99102 span .end ();
@@ -134,15 +137,18 @@ void nonRecordingSpan_doesNotBridgeEvent() {
134137 // others. We create a non-recording span by setting kind to INTERNAL.
135138 Span span = tracer .spanBuilder ("span" ).setSpanKind (SpanKind .INTERNAL ).startSpan ();
136139 try (Scope unused = span .makeCurrent ()) {
137- eventLogger
138- .builder ("my.event-name" )
140+ logger
141+ .logRecordBuilder ()
142+ .setEventName ("my.event-name" )
139143 .setTimestamp (100 , TimeUnit .NANOSECONDS )
140144 .setSeverity (Severity .DEBUG )
141- .put ("foo" , "bar" )
142- .put ("number" , 1 )
143- .put ("map" , Value .of (Collections .singletonMap ("key" , Value .of ("value" ))))
144- .setAttributes (Attributes .builder ().put ("color" , "red" ).build ())
145- .setAttributes (Attributes .builder ().put ("shape" , "square" ).build ())
145+ .setBody (
146+ Value .of (
147+ KeyValue .of ("number" , Value .of (1 )),
148+ KeyValue .of ("foo" , Value .of ("bar" )),
149+ KeyValue .of ("map" , Value .of (Collections .singletonMap ("key" , Value .of ("value" ))))))
150+ .setAttribute (AttributeKey .stringKey ("color" ), "red" )
151+ .setAttribute (AttributeKey .stringKey ("shape" ), "square" )
146152 .emit ();
147153 } finally {
148154 span .end ();
@@ -158,8 +164,9 @@ void differentSpanContext_doesNotBridgeEvent() {
158164 // others. We create a recording span by setting kind to SERVER.
159165 Span span = tracer .spanBuilder ("span" ).setSpanKind (SpanKind .SERVER ).startSpan ();
160166 try (Scope unused = span .makeCurrent ()) {
161- eventLogger
162- .builder ("my.event-name" )
167+ logger
168+ .logRecordBuilder ()
169+ .setEventName ("my.event-name" )
163170 // Manually override the context
164171 .setContext (
165172 Span .wrap (
@@ -171,11 +178,13 @@ void differentSpanContext_doesNotBridgeEvent() {
171178 .storeInContext (Context .current ()))
172179 .setTimestamp (100 , TimeUnit .NANOSECONDS )
173180 .setSeverity (Severity .DEBUG )
174- .put ("foo" , "bar" )
175- .put ("number" , 1 )
176- .put ("map" , Value .of (Collections .singletonMap ("key" , Value .of ("value" ))))
177- .setAttributes (Attributes .builder ().put ("color" , "red" ).build ())
178- .setAttributes (Attributes .builder ().put ("shape" , "square" ).build ())
181+ .setBody (
182+ Value .of (
183+ KeyValue .of ("number" , Value .of (1 )),
184+ KeyValue .of ("foo" , Value .of ("bar" )),
185+ KeyValue .of ("map" , Value .of (Collections .singletonMap ("key" , Value .of ("value" ))))))
186+ .setAttribute (AttributeKey .stringKey ("color" ), "red" )
187+ .setAttribute (AttributeKey .stringKey ("shape" ), "square" )
179188 .emit ();
180189 } finally {
181190 span .end ();
@@ -187,15 +196,18 @@ void differentSpanContext_doesNotBridgeEvent() {
187196
188197 @ Test
189198 void noSpan_doesNotBridgeEvent () {
190- eventLogger
191- .builder ("my.event-name" )
199+ logger
200+ .logRecordBuilder ()
201+ .setEventName ("my.event-name" )
192202 .setTimestamp (100 , TimeUnit .NANOSECONDS )
193203 .setSeverity (Severity .DEBUG )
194- .put ("foo" , "bar" )
195- .put ("number" , 1 )
196- .put ("map" , Value .of (Collections .singletonMap ("key" , Value .of ("value" ))))
197- .setAttributes (Attributes .builder ().put ("color" , "red" ).build ())
198- .setAttributes (Attributes .builder ().put ("shape" , "square" ).build ())
204+ .setBody (
205+ Value .of (
206+ KeyValue .of ("number" , Value .of (1 )),
207+ KeyValue .of ("foo" , Value .of ("bar" )),
208+ KeyValue .of ("map" , Value .of (Collections .singletonMap ("key" , Value .of ("value" ))))))
209+ .setAttribute (AttributeKey .stringKey ("color" ), "red" )
210+ .setAttribute (AttributeKey .stringKey ("shape" ), "square" )
199211 .emit ();
200212
201213 assertThat (spanExporter .getFinishedSpanItems ()).isEmpty ();
0 commit comments