diff --git a/src/main/java/com/xuxd/kafka/console/beans/QueryMessage.java b/src/main/java/com/xuxd/kafka/console/beans/QueryMessage.java index ab914ff..5cfb04b 100644 --- a/src/main/java/com/xuxd/kafka/console/beans/QueryMessage.java +++ b/src/main/java/com/xuxd/kafka/console/beans/QueryMessage.java @@ -33,4 +33,6 @@ public class QueryMessage { private String headerKey; private String headerValue; + + private int filterNumber; } diff --git a/src/main/java/com/xuxd/kafka/console/beans/dto/QueryMessageDTO.java b/src/main/java/com/xuxd/kafka/console/beans/dto/QueryMessageDTO.java index f2411dc..d6d7c37 100644 --- a/src/main/java/com/xuxd/kafka/console/beans/dto/QueryMessageDTO.java +++ b/src/main/java/com/xuxd/kafka/console/beans/dto/QueryMessageDTO.java @@ -37,6 +37,8 @@ public class QueryMessageDTO { private String headerValue; + private int filterNumber; + public QueryMessage toQueryMessage() { QueryMessage queryMessage = new QueryMessage(); queryMessage.setTopic(topic); @@ -69,6 +71,7 @@ public class QueryMessageDTO { if (StringUtils.isNotBlank(headerValue)) { queryMessage.setHeaderValue(headerValue.trim()); } + queryMessage.setFilterNumber(filterNumber); return queryMessage; } diff --git a/src/main/java/com/xuxd/kafka/console/service/impl/MessageServiceImpl.java b/src/main/java/com/xuxd/kafka/console/service/impl/MessageServiceImpl.java index 7c8fd76..3921ec0 100644 --- a/src/main/java/com/xuxd/kafka/console/service/impl/MessageServiceImpl.java +++ b/src/main/java/com/xuxd/kafka/console/service/impl/MessageServiceImpl.java @@ -70,7 +70,7 @@ public class MessageServiceImpl implements MessageService, ApplicationContextAwa @Override public ResponseData searchByTime(QueryMessage queryMessage) { - int maxNums = 5000; + int maxNums = queryMessage.getFilterNumber() <= 0 ? 5000 : queryMessage.getFilterNumber(); Object searchContent = null; String headerKey = null; diff --git a/ui/src/views/message/SearchByTime.vue b/ui/src/views/message/SearchByTime.vue index aba99f6..46b8a42 100644 --- a/ui/src/views/message/SearchByTime.vue +++ b/ui/src/views/message/SearchByTime.vue @@ -60,6 +60,33 @@
+ + + + + 条 + 注意:这里允许最多检索10万条,但是不建议将该值设置过大,这意味着一次查询要在内存里缓存这么多的数据,可能导致内存溢出;并且更大的消息量会导致更长的检索时间 + + + +