diff --git a/CHANGES.md b/CHANGES.md index d63f0cfb2c748e77ef20be3b44417f03ef9c63d7..982c9bdf0f71cf117022eba5557d3e190c85c690 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -26,6 +26,7 @@ Release Notes. * Add Dolphinscheduler plugin definition. * Make sampling still works when the trace ignores plug-in activation. * Fix mssql-plugin occur ClassCastException when call the method of return generate key. +* Fix bug that rocketmq-plugin set the wrong tag. #### OAP-Backend * Make meter receiver support MAL. diff --git a/apm-sniffer/apm-agent-core/src/main/java/org/apache/skywalking/apm/agent/core/context/tag/Tags.java b/apm-sniffer/apm-agent-core/src/main/java/org/apache/skywalking/apm/agent/core/context/tag/Tags.java index 291dfae6115f9e91918497b25b88f7b50876df93..a95d4dbf6b97cd5d835365d42456bcc128db0ea7 100644 --- a/apm-sniffer/apm-agent-core/src/main/java/org/apache/skywalking/apm/agent/core/context/tag/Tags.java +++ b/apm-sniffer/apm-agent-core/src/main/java/org/apache/skywalking/apm/agent/core/context/tag/Tags.java @@ -63,20 +63,25 @@ public final class Tags { public static final StringTag DB_BIND_VARIABLES = new StringTag(6, "db.bind_vars"); /** - * MQ_QUEUE records the queue name of message-middleware + * MQ_QUEUE records the queue name of message-middleware. */ public static final StringTag MQ_QUEUE = new StringTag(7, "mq.queue"); /** - * MQ_BROKER records the broker address of message-middleware + * MQ_BROKER records the broker address of message-middleware. */ public static final StringTag MQ_BROKER = new StringTag(8, "mq.broker"); /** - * MQ_TOPIC records the topic name of message-middleware + * MQ_TOPIC records the topic name of message-middleware. */ public static final StringTag MQ_TOPIC = new StringTag(9, "mq.topic"); + /** + * MQ_STATUS records the send/consume message status of message-middleware. + */ + public static final StringTag MQ_STATUS = new StringTag(16, "mq_status"); + /** * The latency of transmission. When there are more than one downstream parent/segment-ref(s), multiple tags will be * recorded, such as a batch consumption in MQ. diff --git a/apm-sniffer/apm-sdk-plugin/rocketMQ-3.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/rocketMQ/v3/MessageConcurrentlyConsumeInterceptor.java b/apm-sniffer/apm-sdk-plugin/rocketMQ-3.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/rocketMQ/v3/MessageConcurrentlyConsumeInterceptor.java index 3188e3a4a61e93e8d0ea0e3579f437cc83531b85..deab82eb1c651ab4ae36cc62e7356e77bd756b74 100644 --- a/apm-sniffer/apm-sdk-plugin/rocketMQ-3.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/rocketMQ/v3/MessageConcurrentlyConsumeInterceptor.java +++ b/apm-sniffer/apm-sdk-plugin/rocketMQ-3.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/rocketMQ/v3/MessageConcurrentlyConsumeInterceptor.java @@ -39,7 +39,7 @@ public class MessageConcurrentlyConsumeInterceptor extends AbstractMessageConsum if (status == ConsumeConcurrentlyStatus.RECONSUME_LATER) { AbstractSpan activeSpan = ContextManager.activeSpan(); activeSpan.errorOccurred(); - Tags.STATUS_CODE.set(activeSpan, status.name()); + Tags.MQ_STATUS.set(activeSpan, status.name()); } ContextManager.stopSpan(); return ret; diff --git a/apm-sniffer/apm-sdk-plugin/rocketMQ-3.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/rocketMQ/v3/MessageOrderlyConsumeInterceptor.java b/apm-sniffer/apm-sdk-plugin/rocketMQ-3.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/rocketMQ/v3/MessageOrderlyConsumeInterceptor.java index f2abdfe59765c515233bfe92452288bf902159a1..503c000461e26c90c6b1e3a55b4926d33ecd7cf0 100644 --- a/apm-sniffer/apm-sdk-plugin/rocketMQ-3.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/rocketMQ/v3/MessageOrderlyConsumeInterceptor.java +++ b/apm-sniffer/apm-sdk-plugin/rocketMQ-3.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/rocketMQ/v3/MessageOrderlyConsumeInterceptor.java @@ -40,7 +40,7 @@ public class MessageOrderlyConsumeInterceptor extends AbstractMessageConsumeInte if (status == ConsumeOrderlyStatus.SUSPEND_CURRENT_QUEUE_A_MOMENT) { AbstractSpan activeSpan = ContextManager.activeSpan(); activeSpan.errorOccurred(); - Tags.STATUS_CODE.set(activeSpan, status.name()); + Tags.MQ_STATUS.set(activeSpan, status.name()); } ContextManager.stopSpan(); return ret; diff --git a/apm-sniffer/apm-sdk-plugin/rocketMQ-3.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/rocketMQ/v3/OnSuccessInterceptor.java b/apm-sniffer/apm-sdk-plugin/rocketMQ-3.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/rocketMQ/v3/OnSuccessInterceptor.java index 968955177aba7db1ac3abae4e2ee03a8ed7d5a94..6b66e462630bb2e609d11a144b1cf2d2ba3c7672 100644 --- a/apm-sniffer/apm-sdk-plugin/rocketMQ-3.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/rocketMQ/v3/OnSuccessInterceptor.java +++ b/apm-sniffer/apm-sdk-plugin/rocketMQ-3.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/rocketMQ/v3/OnSuccessInterceptor.java @@ -47,7 +47,7 @@ public class OnSuccessInterceptor implements InstanceMethodsAroundInterceptor { SendStatus sendStatus = ((SendResult) allArguments[0]).getSendStatus(); if (sendStatus != SendStatus.SEND_OK) { activeSpan.errorOccurred(); - Tags.STATUS_CODE.set(activeSpan, sendStatus.name()); + Tags.MQ_STATUS.set(activeSpan, sendStatus.name()); } ContextManager.continued(enhanceInfo.getContextSnapshot()); } diff --git a/apm-sniffer/apm-sdk-plugin/rocketMQ-4.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/rocketMQ/v4/MessageConcurrentlyConsumeInterceptor.java b/apm-sniffer/apm-sdk-plugin/rocketMQ-4.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/rocketMQ/v4/MessageConcurrentlyConsumeInterceptor.java index 64693580db0b8a318bf9d4b7c3475a418693b02d..23b3ca39b041bfc5101f0dba41de2794a0120d2c 100644 --- a/apm-sniffer/apm-sdk-plugin/rocketMQ-4.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/rocketMQ/v4/MessageConcurrentlyConsumeInterceptor.java +++ b/apm-sniffer/apm-sdk-plugin/rocketMQ-4.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/rocketMQ/v4/MessageConcurrentlyConsumeInterceptor.java @@ -39,7 +39,7 @@ public class MessageConcurrentlyConsumeInterceptor extends AbstractMessageConsum if (status == ConsumeConcurrentlyStatus.RECONSUME_LATER) { AbstractSpan activeSpan = ContextManager.activeSpan(); activeSpan.errorOccurred(); - Tags.STATUS_CODE.set(activeSpan, status.name()); + Tags.MQ_STATUS.set(activeSpan, status.name()); } ContextManager.stopSpan(); return ret; diff --git a/apm-sniffer/apm-sdk-plugin/rocketMQ-4.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/rocketMQ/v4/MessageOrderlyConsumeInterceptor.java b/apm-sniffer/apm-sdk-plugin/rocketMQ-4.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/rocketMQ/v4/MessageOrderlyConsumeInterceptor.java index 70b1150996dd0b60cea41ced88eeb55240423d28..68a39cbb23bd074a59de34c6c2bba218ec93d118 100644 --- a/apm-sniffer/apm-sdk-plugin/rocketMQ-4.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/rocketMQ/v4/MessageOrderlyConsumeInterceptor.java +++ b/apm-sniffer/apm-sdk-plugin/rocketMQ-4.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/rocketMQ/v4/MessageOrderlyConsumeInterceptor.java @@ -40,7 +40,7 @@ public class MessageOrderlyConsumeInterceptor extends AbstractMessageConsumeInte if (status == ConsumeOrderlyStatus.SUSPEND_CURRENT_QUEUE_A_MOMENT) { AbstractSpan activeSpan = ContextManager.activeSpan(); activeSpan.errorOccurred(); - Tags.STATUS_CODE.set(activeSpan, status.name()); + Tags.MQ_STATUS.set(activeSpan, status.name()); } ContextManager.stopSpan(); return ret; diff --git a/apm-sniffer/apm-sdk-plugin/rocketMQ-4.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/rocketMQ/v4/OnSuccessInterceptor.java b/apm-sniffer/apm-sdk-plugin/rocketMQ-4.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/rocketMQ/v4/OnSuccessInterceptor.java index 1fc80c44c8cd5d517fd434e0bb570d16f5c18356..0b37226a1fafc43e8348da0c5ae768559051d109 100644 --- a/apm-sniffer/apm-sdk-plugin/rocketMQ-4.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/rocketMQ/v4/OnSuccessInterceptor.java +++ b/apm-sniffer/apm-sdk-plugin/rocketMQ-4.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/rocketMQ/v4/OnSuccessInterceptor.java @@ -47,7 +47,7 @@ public class OnSuccessInterceptor implements InstanceMethodsAroundInterceptor { SendStatus sendStatus = ((SendResult) allArguments[0]).getSendStatus(); if (sendStatus != SendStatus.SEND_OK) { activeSpan.errorOccurred(); - Tags.STATUS_CODE.set(activeSpan, sendStatus.name()); + Tags.MQ_STATUS.set(activeSpan, sendStatus.name()); } ContextManager.continued(enhanceInfo.getContextSnapshot()); }