fix mdc traceId

This commit is contained in:
金海洋 2023-11-07 14:29:35 +08:00
parent 226d3f3e5f
commit a1fed917e7
2 changed files with 7 additions and 0 deletions

View File

@ -57,6 +57,8 @@ public abstract class AbstractEventProducer<Meta> implements EventProducer<Meta>
// 复制一份 context并加入链路跟踪信息 traceId
HashMap newHeaders = Maps.newHashMap(Optional.ofNullable(context.getHeaders()).orElse(ImmutableMap.of()));
newHeaders.put(TraceUtils.TRACE_ID, TraceUtils.getOrCreateTraceId());
newHeaders.put(TraceUtils.CTX_LOG_ID, TraceUtils.getOrCreateTraceId());
newHeaders.put(TraceUtils.TRACE_ID_IN_MDC, TraceUtils.getOrCreateTraceId());
final Context copiedContext = context.toBuilder().headers(newHeaders).build();
Runnable runnable = () -> {

View File

@ -1,10 +1,12 @@
package cn.axzo.framework.rocketmq;
import cn.axzo.framework.rocketmq.utils.TraceUtils;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.Maps;
import lombok.extern.slf4j.Slf4j;
import org.apache.rocketmq.common.message.MessageConst;
import org.apache.rocketmq.common.message.MessageExt;
import org.slf4j.MDC;
import java.util.Map;
import java.util.Optional;
@ -21,6 +23,9 @@ public class BaseListener {
String topic = message.getTopic();
String value = new String(message.getBody());
Map<String, String> headers = message.getProperties();
MDC.put(TraceUtils.CTX_LOG_ID, headers.get(TraceUtils.TRACE_ID));
MDC.put(TraceUtils.TRACE_ID, headers.get(TraceUtils.TRACE_ID));
MDC.put(TraceUtils.TRACE_ID_IN_MDC, headers.get(TraceUtils.TRACE_ID));
if (log.isDebugEnabled()) {
log.debug("received message, topic={}, headers={}, value={}", topic, headers, value);
}