diff --git a/backend/src/main/java/com/stackup/stackup/common/messaging/RabbitMessagePublisher.java b/backend/src/main/java/com/stackup/stackup/common/messaging/RabbitMessagePublisher.java index 56876f4d..56e64827 100644 --- a/backend/src/main/java/com/stackup/stackup/common/messaging/RabbitMessagePublisher.java +++ b/backend/src/main/java/com/stackup/stackup/common/messaging/RabbitMessagePublisher.java @@ -20,11 +20,16 @@ public RabbitMessagePublisher(RabbitMqProperties properties, RabbitTemplate rabb } public MessageEnvelope publishToAi(String routingKey, T payload, MessageContext context) { + String traceId = TraceContext.getTraceId(); + if (traceId == null || traceId.isBlank()) { + // RabbitListener / EventListener 등에서 MDC 미주입 흐름 — 발행 시점에 새 traceId 생성. + traceId = UUID.randomUUID().toString(); + } MessageEnvelope envelope = new MessageEnvelope<>( UUID.randomUUID().toString(), routingKey, properties.version(), - TraceContext.getTraceId(), + traceId, Instant.now(), properties.publisher(), payload,