Calvinizz opened a new pull request, #11308:
URL: https://github.com/apache/rocketmq/pull/11308

   …theus exporter and preserve pop retry lag metrics
   
   The consumer lag gauges are fed by both ConsumerLagCalculator and 
LiteConsumerLagCalculator. When both sources report the same (consumer_group, 
topic, is_retry, is_system) label set in one collection cycle, the Prometheus 
exporter fails the whole scrape with DuplicateLabelsException and all broker 
metrics are lost.
   
   - Deduplicate at record time: the three mixed gauges (lag messages, lag 
latency, ready messages) now share a recorded-label-set per cycle and record at 
most one measurement per label set.
   - calculateLag now collects all results of a pop group: calculate() emits 
both the normal and the retry result, but the notify callback previously 
completed the future with the first result only via future::complete, silently 
dropping the pop retry lag series.
   - Record whatever futures are ready after the 10s wait timeout, instead of 
losing the lag metrics of all other groups.
   
   <!-- Please make sure the target branch is right. In most case, the target 
branch should be `develop`. -->
   
   ### Which Issue(s) This PR Fixes
   
   <!-- Please ensure that the related issue has already been created, and 
[link this pull request to that issue using 
keywords](<https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue#linking-a-pull-request-to-an-issue-using-a-keyword>)
 to ensure automatic closure. -->
   
   - Fixes #issue_id
   
   ### Brief Description
   
   <!-- Write a brief description for your pull request to help the maintainer 
understand the reasons behind your changes. -->
   
   ### How Did You Test This Change?
   
   <!-- In order to ensure the code quality of Apache RocketMQ, we expect every 
pull request to have undergone thorough testing. -->
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to