The GitHub Actions job "CI" on rocketmq-dashboard.git/fix/consumer-stats-unavailable has failed. Run started by GitHub user unbridled-41 (triggered by unbridled-41).
Head commit for run: 7a2334dc742194dbf3acad6b06ddb2abcbaf7f60 / unbridled-41 <[email protected]> fix(consumer): treat an unreadable consume-stats response as unknown, not as zero ConsumerGroupVO carries consumeStatsAvailable next to the lag fields, and the provider keeps the Java zero defaults when the read fails: // RocketMQMetadataProvider.enrichGroupLiveStats // No consume stats (e.g. POP-only group without an offset table): keep zeros. snapshot.set(new GroupLiveSnapshot(instances, onlineInstances, true, lagUnknown ? -1 : totalLag, delaySeconds, timestampAvailable)); The console read only totalLag/delaySeconds (grep: consumeStatsAvailable has no reference under web/src, ever), so a group whose broker stats could not be read was presented as measured: the 总堆积量 cell showed a green 0, the sort key was that 0 (it leads an ascending scan), the detail card showed a green 0, and the health panel - which is the feature's whole point - reported no issue at all, i.e. 消费组健康 with a full score. The backend itself refuses to draw conclusions from that state: GroupDetailToolHandler returns health UNKNOWN for it and ApacheRocketMqBusinessMetricsCollector emits CONSUMER_STATS_UNAVAILABLE instead of a zero. Read the flag: the backlog of such a group renders as 不可用 in the list and the card (through the sentinel the colour and formatter already understand), sorts after measured groups in either direction, the diagnostics report no measured lag and add a CONSUME_STATS_UNAVAILABLE warning, so the group is no longer graded healthy. Tests (web/): npx vitest run src/pages/instance/__tests__/ConsumerPage.test.tsx src/utils/consumerGroupDiagnostics.test.ts -> Test Files 2 passed, Tests 53 passed. - new ConsumerPage case "reports a group whose consume stats could not be read as an unknown backlog" fails before this change (the row shows a measured 0 and no 不可用) and passes after it; it also asserts the health panel and the sort order. - new diagnostics case "reports a group whose consume stats could not be read as unknown instead of healthy" fails before (reportedLag 0, status healthy) and passes after it. - npx eslint reports no errors; npx tsc -b passes. Report URL: https://github.com/apache/rocketmq-dashboard/actions/runs/37975470943 With regards, GitHub Actions via GitBox
