|
10 | 10 | import io.opentelemetry.api.baggage.Baggage;
|
11 | 11 | import io.opentelemetry.api.trace.Span;
|
12 | 12 | import io.opentelemetry.context.Scope;
|
| 13 | +import io.opentelemetry.instrumentation.api.incubator.log.LoggingContextConstants; |
13 | 14 | import io.opentelemetry.instrumentation.testing.junit.InstrumentationExtension;
|
14 | 15 | import java.util.List;
|
15 | 16 | import java.util.concurrent.atomic.AtomicReference;
|
16 | 17 | import org.apache.logging.log4j.LogManager;
|
17 | 18 | import org.apache.logging.log4j.Logger;
|
| 19 | +import org.apache.logging.log4j.ThreadContext; |
18 | 20 | import org.junit.jupiter.api.BeforeEach;
|
19 | 21 | import org.junit.jupiter.api.Test;
|
20 | 22 |
|
@@ -132,4 +134,29 @@ void testIdsWhenSpan() {
|
132 | 134 | assertThat(events.get(3).getContextData().get(getLoggingKey("trace_flags"))).isEqualTo("01");
|
133 | 135 | assertThat(events.get(3).getContextData().get("baggage.baggage_key")).isNull();
|
134 | 136 | }
|
| 137 | + |
| 138 | + @Test |
| 139 | + void testNoOverrideTraceId() { |
| 140 | + Logger logger = LogManager.getLogger("TestLogger"); |
| 141 | + |
| 142 | + AtomicReference<Span> spanParent = new AtomicReference<>(); |
| 143 | + ThreadContext.put(getLoggingKey("trace_id"), "test_traceId"); |
| 144 | + ThreadContext.put(getLoggingKey("span_id"), "test_spanId"); |
| 145 | + ThreadContext.put(getLoggingKey("trace_flags"), "test_traceFlag"); |
| 146 | + getInstrumentationExtension() |
| 147 | + .runWithSpan( |
| 148 | + "test", |
| 149 | + () -> { |
| 150 | + spanParent.set(Span.current()); |
| 151 | + logger.info("log span parent"); |
| 152 | + }); |
| 153 | + List<ListAppender.LoggedEvent> events = ListAppender.get().getEvents(); |
| 154 | + assertThat(events.size()).isEqualTo(1); |
| 155 | + assertThat(events.get(0).getMessage()).isEqualTo("log span parent"); |
| 156 | + assertThat(events.get(0).getContextData().get(getLoggingKey("trace_id"))) |
| 157 | + .isEqualTo("test_traceId"); |
| 158 | + assertThat(events.get(0).getContextData().get(getLoggingKey("span_id"))) |
| 159 | + .isEqualTo("test_spanId"); |
| 160 | + assertThat(events.get(0).getContextData().get(getLoggingKey("trace_flags"))).isEqualTo("test_traceFlag"); |
| 161 | + } |
135 | 162 | }
|
0 commit comments