20 lines
793 B
Java
20 lines
793 B
Java
package com.baiyue.eventbridge.trace;
|
|
|
|
import com.baiyue.common.web.CorrelationContext;
|
|
import com.baiyue.common.web.OutboundTraceHeaders;
|
|
import org.springframework.stereotype.Component;
|
|
|
|
import java.net.http.HttpRequest;
|
|
|
|
/** Applies a fresh child span to one raw JDK HttpClient request. */
|
|
@Component
|
|
public class EventBridgeHttpTracePropagation {
|
|
public HttpRequest.Builder apply(HttpRequest.Builder builder) {
|
|
OutboundTraceHeaders outbound = OutboundTraceHeaders.fromCurrentOrNew();
|
|
return builder
|
|
.setHeader(CorrelationContext.REQUEST_ID_HEADER, outbound.requestId())
|
|
.setHeader(CorrelationContext.TRACE_ID_HEADER, outbound.traceId())
|
|
.setHeader(CorrelationContext.TRACE_PARENT_HEADER, outbound.traceParent());
|
|
}
|
|
}
|