public IEnumerable <TopicConsumeInfo> GetAllTopicConsumeInfoList() { var topicConsumeInfoList = _consumeOffsetStore.GetAllTopicConsumeInfoList(); foreach (var topicConsumeInfo in topicConsumeInfoList) { var queueCurrentOffset = _queueStore.GetQueueCurrentOffset(topicConsumeInfo.Topic, topicConsumeInfo.QueueId); topicConsumeInfo.QueueCurrentOffset = queueCurrentOffset; topicConsumeInfo.QueueNotConsumeCount = topicConsumeInfo.CalculateQueueNotConsumeCount(); topicConsumeInfo.OnlineConsumerCount = _consumerManager.GetConsumerCount(topicConsumeInfo.ConsumerGroup); topicConsumeInfo.ClientCachedMessageCount = _consumerManager.GetClientCacheMessageCount(topicConsumeInfo.ConsumerGroup, topicConsumeInfo.Topic, topicConsumeInfo.QueueId); topicConsumeInfo.ConsumeThroughput = _tpsStatisticService.GetTopicConsumeThroughput(topicConsumeInfo.Topic, topicConsumeInfo.QueueId, topicConsumeInfo.ConsumerGroup); } return(topicConsumeInfoList); }
private ConsumerInfo BuildConsumerInfo(string group, string consumerId, string topic, int queueId) { var queueCurrentOffset = _queueStore.GetQueueCurrentOffset(topic, queueId); var consumerInfo = new ConsumerInfo(); consumerInfo.ConsumerGroup = group; consumerInfo.ConsumerId = consumerId; consumerInfo.Topic = topic; consumerInfo.QueueId = queueId; consumerInfo.QueueCurrentOffset = queueCurrentOffset; consumerInfo.ConsumedOffset = _offsetStore.GetConsumeOffset(topic, queueId, group); return(consumerInfo); }
private ConsumerInfo BuildConsumerInfo(string groupName, string consumerId, MessageQueueEx messageQueue) { var queueCurrentOffset = _queueStore.GetQueueCurrentOffset(messageQueue.Topic, messageQueue.QueueId); var consumerInfo = new ConsumerInfo(); consumerInfo.ConsumerGroup = groupName; consumerInfo.ConsumerId = consumerId; consumerInfo.Topic = messageQueue.Topic; consumerInfo.QueueId = messageQueue.QueueId; consumerInfo.ClientCachedMessageCount = messageQueue.ClientCachedMessageCount; consumerInfo.QueueCurrentOffset = queueCurrentOffset; consumerInfo.ConsumedOffset = _consumeOffsetStore.GetConsumeOffset(messageQueue.Topic, messageQueue.QueueId, groupName); consumerInfo.QueueNotConsumeCount = consumerInfo.CalculateQueueNotConsumeCount(); return(consumerInfo); }