未验证 提交 2a8ba5a7 编写于 作者: C ChaosYjh 提交者: GitHub

[ISSUE #1473] Trace message`s clientHost was wrong (#1474)

上级 3eaabeef
...@@ -62,6 +62,14 @@ public class TraceDataEncoder { ...@@ -62,6 +62,14 @@ public class TraceDataEncoder {
bean.setOffsetMsgId(line[12]); bean.setOffsetMsgId(line[12]);
pubContext.setSuccess(Boolean.parseBoolean(line[13])); pubContext.setSuccess(Boolean.parseBoolean(line[13]));
} }
// compatible with the old version
if (line.length >= 15) {
bean.setOffsetMsgId(line[12]);
pubContext.setSuccess(Boolean.parseBoolean(line[13]));
bean.setClientHost(line[14]);
}
pubContext.setTraceBeans(new ArrayList<TraceBean>(1)); pubContext.setTraceBeans(new ArrayList<TraceBean>(1));
pubContext.getTraceBeans().add(bean); pubContext.getTraceBeans().add(bean);
resList.add(pubContext); resList.add(pubContext);
...@@ -76,6 +84,7 @@ public class TraceDataEncoder { ...@@ -76,6 +84,7 @@ public class TraceDataEncoder {
bean.setMsgId(line[5]); bean.setMsgId(line[5]);
bean.setRetryTimes(Integer.parseInt(line[6])); bean.setRetryTimes(Integer.parseInt(line[6]));
bean.setKeys(line[7]); bean.setKeys(line[7]);
bean.setClientHost(line[8]);
subBeforeContext.setTraceBeans(new ArrayList<TraceBean>(1)); subBeforeContext.setTraceBeans(new ArrayList<TraceBean>(1));
subBeforeContext.getTraceBeans().add(bean); subBeforeContext.getTraceBeans().add(bean);
resList.add(subBeforeContext); resList.add(subBeforeContext);
...@@ -130,7 +139,8 @@ public class TraceDataEncoder { ...@@ -130,7 +139,8 @@ public class TraceDataEncoder {
.append(ctx.getCostTime()).append(TraceConstants.CONTENT_SPLITOR)// .append(ctx.getCostTime()).append(TraceConstants.CONTENT_SPLITOR)//
.append(bean.getMsgType().ordinal()).append(TraceConstants.CONTENT_SPLITOR)// .append(bean.getMsgType().ordinal()).append(TraceConstants.CONTENT_SPLITOR)//
.append(bean.getOffsetMsgId()).append(TraceConstants.CONTENT_SPLITOR)// .append(bean.getOffsetMsgId()).append(TraceConstants.CONTENT_SPLITOR)//
.append(ctx.isSuccess()).append(TraceConstants.FIELD_SPLITOR); .append(ctx.isSuccess()).append(TraceConstants.CONTENT_SPLITOR)//
.append(bean.getClientHost()).append(TraceConstants.FIELD_SPLITOR);
} }
break; break;
case SubBefore: { case SubBefore: {
...@@ -142,7 +152,8 @@ public class TraceDataEncoder { ...@@ -142,7 +152,8 @@ public class TraceDataEncoder {
.append(ctx.getRequestId()).append(TraceConstants.CONTENT_SPLITOR)// .append(ctx.getRequestId()).append(TraceConstants.CONTENT_SPLITOR)//
.append(bean.getMsgId()).append(TraceConstants.CONTENT_SPLITOR)// .append(bean.getMsgId()).append(TraceConstants.CONTENT_SPLITOR)//
.append(bean.getRetryTimes()).append(TraceConstants.CONTENT_SPLITOR)// .append(bean.getRetryTimes()).append(TraceConstants.CONTENT_SPLITOR)//
.append(bean.getKeys()).append(TraceConstants.FIELD_SPLITOR);// .append(bean.getKeys()).append(TraceConstants.CONTENT_SPLITOR)//
.append(bean.getClientHost()).append(TraceConstants.FIELD_SPLITOR);//
} }
} }
break; break;
......
...@@ -19,6 +19,7 @@ package org.apache.rocketmq.client.trace.hook; ...@@ -19,6 +19,7 @@ package org.apache.rocketmq.client.trace.hook;
import org.apache.rocketmq.client.consumer.listener.ConsumeReturnType; import org.apache.rocketmq.client.consumer.listener.ConsumeReturnType;
import org.apache.rocketmq.client.hook.ConsumeMessageContext; import org.apache.rocketmq.client.hook.ConsumeMessageContext;
import org.apache.rocketmq.client.hook.ConsumeMessageHook; import org.apache.rocketmq.client.hook.ConsumeMessageHook;
import org.apache.rocketmq.client.trace.AsyncTraceDispatcher;
import org.apache.rocketmq.client.trace.TraceContext; import org.apache.rocketmq.client.trace.TraceContext;
import org.apache.rocketmq.client.trace.TraceDispatcher; import org.apache.rocketmq.client.trace.TraceDispatcher;
import org.apache.rocketmq.client.trace.TraceBean; import org.apache.rocketmq.client.trace.TraceBean;
...@@ -73,6 +74,7 @@ public class ConsumeMessageTraceHookImpl implements ConsumeMessageHook { ...@@ -73,6 +74,7 @@ public class ConsumeMessageTraceHookImpl implements ConsumeMessageHook {
traceBean.setStoreTime(msg.getStoreTimestamp());// traceBean.setStoreTime(msg.getStoreTimestamp());//
traceBean.setBodyLength(msg.getStoreSize());// traceBean.setBodyLength(msg.getStoreSize());//
traceBean.setRetryTimes(msg.getReconsumeTimes());// traceBean.setRetryTimes(msg.getReconsumeTimes());//
traceBean.setClientHost(((AsyncTraceDispatcher)localDispatcher).getHostConsumer().getmQClientFactory().getClientId());
traceContext.setRegionId(regionId);// traceContext.setRegionId(regionId);//
beans.add(traceBean); beans.add(traceBean);
} }
......
...@@ -60,6 +60,7 @@ public class SendMessageTraceHookImpl implements SendMessageHook { ...@@ -60,6 +60,7 @@ public class SendMessageTraceHookImpl implements SendMessageHook {
traceBean.setStoreHost(context.getBrokerAddr()); traceBean.setStoreHost(context.getBrokerAddr());
traceBean.setBodyLength(context.getMessage().getBody().length); traceBean.setBodyLength(context.getMessage().getBody().length);
traceBean.setMsgType(context.getMsgType()); traceBean.setMsgType(context.getMsgType());
traceBean.setClientHost(((AsyncTraceDispatcher)localDispatcher).getHostProducer().getmQClientFactory().getClientId());
tuxeContext.getTraceBeans().add(traceBean); tuxeContext.getTraceBeans().add(traceBean);
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册