btlqql opened a new pull request, #10626: URL: https://github.com/apache/rocketmq/pull/10626
### Which Issue(s) This PR Fixes Fixes #9638 ### Problem `mqadmin consumeMessage` uses `DefaultMQPullConsumer`, so operators who need to reproduce PushConsumer delivery behavior must compile and run a separate demo. That also makes it difficult to inspect live delivery metadata, per-queue progress, orderly consumption, and message tracing from the standard administration tool. ### Root Cause The tools module did not expose a PushConsumer-backed command or a bounded execution model suitable for both interactive diagnostics and automation. ### Changes - add `mqadmin consumeMessageByPush` backed by `DefaultMQPushConsumer` - support concurrent or orderly listeners, tag expressions, configurable batch size, first/last/timestamp start positions, and optional message tracing - support message-count and time limits while retaining an unlimited interactive mode - print message metadata, optional body/properties, and a deterministic per-queue progress summary - validate invalid booleans, ranges, charsets, trace settings, timestamp format, and wait-time overflow before starting the consumer - register the command in `MQAdminStartup` - add focused tests for command wiring, configuration validation, listener accounting, output formatting, shutdown, interruption, and failure paths ### Impact The change is isolated to the tools module. Existing commands and client APIs are unchanged. Operators can now diagnose PushConsumer behavior with the same `mqadmin` distribution used for other RocketMQ administration tasks. ### Validation - `mvn -pl tools -Dtest=PushConsumeMessageConfigTest,PushConsumeMessageObserverTest,PushConsumeMessagePrinterTest,PushConsumeMessageCommandTest -Dspotbugs.skip=true -Djacoco.skip=true test` - 47 tests passed - Checkstyle passed with 0 violations -- 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]
