use of org.apache.skywalking.apm.plugin.rocketMQ.v4.define.SendCallBackEnhanceInfo in project incubator-skywalking by apache.
the class OnSuccessInterceptorTest method setUp.
@Before
public void setUp() {
successInterceptor = new OnSuccessInterceptor();
enhanceInfo = new SendCallBackEnhanceInfo("test", contextSnapshot);
when(enhancedInstance.getSkyWalkingDynamicField()).thenReturn(enhanceInfo);
when(sendResult.getSendStatus()).thenReturn(SendStatus.SEND_OK);
}
use of org.apache.skywalking.apm.plugin.rocketMQ.v4.define.SendCallBackEnhanceInfo in project incubator-skywalking by apache.
the class MessageSendInterceptor method beforeMethod.
@Override
public void beforeMethod(EnhancedInstance objInst, Method method, Object[] allArguments, Class<?>[] argumentsTypes, MethodInterceptResult result) throws Throwable {
Message message = (Message) allArguments[2];
ContextCarrier contextCarrier = new ContextCarrier();
String namingServiceAddress = String.valueOf(objInst.getSkyWalkingDynamicField());
AbstractSpan span = ContextManager.createExitSpan(buildOperationName(message.getTopic()), contextCarrier, namingServiceAddress);
span.setComponent(ComponentsDefine.ROCKET_MQ);
Tags.MQ_BROKER.set(span, (String) allArguments[0]);
Tags.MQ_TOPIC.set(span, message.getTopic());
SpanLayer.asMQ(span);
SendMessageRequestHeader requestHeader = (SendMessageRequestHeader) allArguments[3];
StringBuilder properties = new StringBuilder(requestHeader.getProperties());
CarrierItem next = contextCarrier.items();
while (next.hasNext()) {
next = next.next();
if (!StringUtil.isEmpty(next.getHeadValue())) {
properties.append(next.getHeadKey());
properties.append(NAME_VALUE_SEPARATOR);
properties.append(next.getHeadValue());
properties.append(PROPERTY_SEPARATOR);
}
}
requestHeader.setProperties(properties.toString());
if (allArguments[6] != null) {
((EnhancedInstance) allArguments[6]).setSkyWalkingDynamicField(new SendCallBackEnhanceInfo(message.getTopic(), ContextManager.capture()));
}
}
use of org.apache.skywalking.apm.plugin.rocketMQ.v4.define.SendCallBackEnhanceInfo in project incubator-skywalking by apache.
the class OnExceptionInterceptor method beforeMethod.
@Override
public void beforeMethod(EnhancedInstance objInst, Method method, Object[] allArguments, Class<?>[] argumentsTypes, MethodInterceptResult result) throws Throwable {
SendCallBackEnhanceInfo enhanceInfo = (SendCallBackEnhanceInfo) objInst.getSkyWalkingDynamicField();
AbstractSpan activeSpan = ContextManager.createLocalSpan(CALLBACK_OPERATION_NAME_PREFIX + enhanceInfo.getTopicId() + "/Producer/Callback");
activeSpan.setComponent(ComponentsDefine.ROCKET_MQ);
activeSpan.errorOccurred().log((Throwable) allArguments[0]);
ContextManager.continued(enhanceInfo.getContextSnapshot());
}
use of org.apache.skywalking.apm.plugin.rocketMQ.v4.define.SendCallBackEnhanceInfo in project incubator-skywalking by apache.
the class OnExceptionInterceptor method beforeMethod.
@Override
public void beforeMethod(EnhancedInstance objInst, Method method, Object[] allArguments, Class<?>[] argumentsTypes, MethodInterceptResult result) throws Throwable {
SendCallBackEnhanceInfo enhanceInfo = (SendCallBackEnhanceInfo) objInst.getSkyWalkingDynamicField();
AbstractSpan activeSpan = ContextManager.createLocalSpan(CALLBACK_OPERATION_NAME_PREFIX + enhanceInfo.getTopicId() + "/Producer/Callback");
activeSpan.setComponent(ComponentsDefine.ROCKET_MQ);
activeSpan.errorOccurred().log((Throwable) allArguments[0]);
ContextManager.continued(enhanceInfo.getContextSnapshot());
}
use of org.apache.skywalking.apm.plugin.rocketMQ.v4.define.SendCallBackEnhanceInfo in project incubator-skywalking by apache.
the class OnSuccessInterceptorTest method setUp.
@Before
public void setUp() {
successInterceptor = new OnSuccessInterceptor();
enhanceInfo = new SendCallBackEnhanceInfo("test", contextSnapshot);
when(enhancedInstance.getSkyWalkingDynamicField()).thenReturn(enhanceInfo);
when(sendResult.getSendStatus()).thenReturn(SendStatus.SEND_OK);
}
Aggregations