mirror of
https://github.com/apache/rocketmq-dashboard.git
synced 2025-09-10 11:40:01 +08:00
Co-authored-by: zhangjidi2016 <zhangjidi@cmss.chinamobile.com>
This commit is contained in:
@@ -17,10 +17,12 @@
|
||||
|
||||
package org.apache.rocketmq.console.model;
|
||||
|
||||
import com.google.common.base.Charsets;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import org.apache.rocketmq.client.trace.TraceBean;
|
||||
import org.apache.rocketmq.client.trace.TraceContext;
|
||||
import org.apache.rocketmq.common.message.MessageExt;
|
||||
import org.apache.rocketmq.console.util.MsgTraceDecodeUtil;
|
||||
|
||||
public class MessageTraceView {
|
||||
@@ -41,12 +43,13 @@ public class MessageTraceView {
|
||||
public MessageTraceView() {
|
||||
}
|
||||
|
||||
public static List<MessageTraceView> decodeFromTraceTransData(String key,String messageBody) {
|
||||
public static List<MessageTraceView> decodeFromTraceTransData(String key, MessageExt messageExt) {
|
||||
List<MessageTraceView> messageTraceViewList = new ArrayList<MessageTraceView>();
|
||||
String messageBody = new String(messageExt.getBody(), Charsets.UTF_8);
|
||||
if (messageBody == null || messageBody.length() <= 0) {
|
||||
return messageTraceViewList;
|
||||
}
|
||||
|
||||
|
||||
List<TraceContext> traceContextList = MsgTraceDecodeUtil.decoderFromTraceDataString(messageBody);
|
||||
|
||||
for (TraceContext context : traceContextList) {
|
||||
@@ -58,9 +61,8 @@ public class MessageTraceView {
|
||||
messageTraceView.setCostTime(context.getCostTime());
|
||||
messageTraceView.setGroupName(context.getGroupName());
|
||||
if (context.isSuccess()) {
|
||||
messageTraceView.setStatus("Sucess");
|
||||
}
|
||||
else {
|
||||
messageTraceView.setStatus("success");
|
||||
} else {
|
||||
messageTraceView.setStatus("failed");
|
||||
}
|
||||
messageTraceView.setKeys(traceBean.getKeys());
|
||||
@@ -71,7 +73,7 @@ public class MessageTraceView {
|
||||
messageTraceView.setOffSetMsgId(traceBean.getOffsetMsgId());
|
||||
messageTraceView.setTimeStamp(context.getTimeStamp());
|
||||
messageTraceView.setStoreHost(traceBean.getStoreHost());
|
||||
messageTraceView.setClientHost(traceBean.getClientHost());
|
||||
messageTraceView.setClientHost(messageExt.getBornHostString());
|
||||
messageTraceViewList.add(messageTraceView);
|
||||
}
|
||||
return messageTraceViewList;
|
||||
|
@@ -17,7 +17,6 @@
|
||||
|
||||
package org.apache.rocketmq.console.service.impl;
|
||||
|
||||
import com.google.common.base.Charsets;
|
||||
import com.google.common.base.Throwables;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@@ -38,18 +37,17 @@ public class MessageTraceServiceImpl implements MessageTraceService {
|
||||
private final static int QUERY_MESSAGE_MAX_NUM = 64;
|
||||
@Resource
|
||||
private MQAdminExt mqAdminExt;
|
||||
|
||||
|
||||
@Override public List<MessageTraceView> queryMessageTraceByTopicAndKey(String topic, String key) {
|
||||
try {
|
||||
List<MessageTraceView> messageTraceViews = new ArrayList<MessageTraceView>();
|
||||
List<MessageExt> messageTraceList = mqAdminExt.queryMessage(topic, key, QUERY_MESSAGE_MAX_NUM, 0, System.currentTimeMillis()).getMessageList();
|
||||
for (MessageExt messageExt : messageTraceList) {
|
||||
List<MessageTraceView> messageTraceView = MessageTraceView.decodeFromTraceTransData(key, new String(messageExt.getBody(), Charsets.UTF_8));
|
||||
List<MessageTraceView> messageTraceView = MessageTraceView.decodeFromTraceTransData(key, messageExt);
|
||||
messageTraceViews.addAll(messageTraceView);
|
||||
}
|
||||
return messageTraceViews;
|
||||
}
|
||||
catch (Exception err) {
|
||||
} catch (Exception err) {
|
||||
throw Throwables.propagate(err);
|
||||
}
|
||||
}
|
||||
|
@@ -103,7 +103,6 @@ public class MsgTraceDecodeUtil {
|
||||
bean.setMsgId(line[5]);
|
||||
bean.setRetryTimes(Integer.parseInt(line[6]));
|
||||
bean.setKeys(line[7]);
|
||||
bean.setClientHost(line[8]);
|
||||
subBeforeContext.setTraceBeans(new ArrayList<TraceBean>(1));
|
||||
subBeforeContext.getTraceBeans().add(bean);
|
||||
resList.add(subBeforeContext);
|
||||
|
Reference in New Issue
Block a user