Нет способа получить количество сообщений по темам.Предполагается, что темы выполняются в режиме реального времени, а подсчет сообщений в «теме» не имеет смысла.
Однако, если вы ищете количество сообщений, оставшихся в «прочной теме», вы можете передать ниже информацию и получить количество сообщений.
имя очереди = углерод: {идентификатор подписки}, msgPattern = очередь
Соответствующий код
public long getMessageCount(String queueName, String msgPattern) throws MBeanException {
if (log.isDebugEnabled()) {
log.debug("Counting at queue : " + queueName);
}
long messageCount = 0;
try {
if (!DLCQueueUtils.isDeadLetterQueue(queueName)) {
if ("queue".equals(msgPattern)) {
messageCount = Andes.getInstance().getMessageCountOfQueue(queueName);
}
} else {
messageCount = Andes.getInstance().getMessageCountInDLC(queueName);
}
} catch (AndesException e) {
log.error(MESSAGE_COUNT_RETRIEVE_ERROR + queueName, e);
throw new MBeanException(e, MESSAGE_COUNT_RETRIEVE_ERROR + queueName);
}
return messageCount;
}