未验证 提交 9b6a4ed2 编写于 作者: Y yangy 提交者: GitHub

Fix kafka plugin sometimes trace doesn't show span layer (#5264)

上级 4b441f06
......@@ -24,6 +24,7 @@ import org.apache.skywalking.apm.agent.core.context.ContextManager;
import org.apache.skywalking.apm.agent.core.context.ContextSnapshot;
import org.apache.skywalking.apm.agent.core.context.tag.Tags;
import org.apache.skywalking.apm.agent.core.context.trace.AbstractSpan;
import org.apache.skywalking.apm.agent.core.context.trace.SpanLayer;
import org.apache.skywalking.apm.network.trace.component.ComponentsDefine;
/**
......@@ -44,6 +45,7 @@ public class CallbackAdapterInterceptor implements Callback {
public void onCompletion(RecordMetadata metadata, Exception exception) {
ContextSnapshot snapshot = callbackCache.getSnapshot();
AbstractSpan activeSpan = ContextManager.createLocalSpan("Kafka/Producer/Callback");
SpanLayer.asMQ(activeSpan);
activeSpan.setComponent(ComponentsDefine.KAFKA_PRODUCER);
if (metadata != null) {
Tags.MQ_TOPIC.set(activeSpan, metadata.topic());
......
......@@ -23,6 +23,7 @@ import org.apache.skywalking.apm.agent.core.context.ContextManager;
import org.apache.skywalking.apm.agent.core.context.ContextSnapshot;
import org.apache.skywalking.apm.agent.core.context.tag.Tags;
import org.apache.skywalking.apm.agent.core.context.trace.AbstractSpan;
import org.apache.skywalking.apm.agent.core.context.trace.SpanLayer;
import org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.EnhancedInstance;
import org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodsAroundInterceptor;
import org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.MethodInterceptResult;
......@@ -43,6 +44,7 @@ public class CallbackInterceptor implements InstanceMethodsAroundInterceptor {
ContextSnapshot snapshot = getSnapshot(cache);
RecordMetadata metadata = (RecordMetadata) allArguments[0];
AbstractSpan activeSpan = ContextManager.createLocalSpan("Kafka/Producer/Callback");
SpanLayer.asMQ(activeSpan);
activeSpan.setComponent(ComponentsDefine.KAFKA_PRODUCER);
if (metadata != null) {
// Null if an error occurred during processing of this record
......
......@@ -23,7 +23,7 @@ segmentItems:
operationId: 0
parentSpanId: -1
spanId: 0
spanLayer: Unknown
spanLayer: MQ
startTime: nq 0
endTime: nq 0
componentId: 40
......@@ -43,7 +43,7 @@ segmentItems:
operationId: 0
parentSpanId: -1
spanId: 0
spanLayer: Unknown
spanLayer: MQ
startTime: nq 0
endTime: nq 0
componentId: 40
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册