[Bug] Proxy heartbeat sync logs full subscription data
- Dominant language
- Java
- Stars
- 22.6k
- Forks
- 12k
- Avg merge
- 3d 1h
- Merged PRs (30d)
- 27
Description
## Problem
`HeartbeatSyncer` logs full heartbeat sync data and subscription sets in several failure/debug paths:
- `sync register heart beat. topic:{}, data:{}`
- `heartbeat register broadcast failed ... subList:{}`
- `heartbeat submit register broadcast failed ... subList:{}`
- `start process remote channel. data:{}, clientChannelInfo:{}`
- `heartbeat consume message failed. msg:{}, data:{}`
The heartbeat data contains `SubscriptionData`, including subscription expressions. These logs are useful for diagnostics, but printing the full payload can expose business subscription details and creates large log lines under client churn.
## Expected behavior
Proxy heartbeat sync logs should keep diagnostic fields such as heartbeat type, group, clientId, client metadata, channel data presence, subscription count, and topic names, without logging the full subscription expressions or raw system message body.
## Scope
RocketMQ Proxy / gRPC client runtime diagnostics and safe logging, related to the Proxy Admin / client-management track.
Contributor guide
Research direction
Start by locating HeartbeatSyncer and reviewing the listed register, broadcast, remote-channel, and consume-message logging paths. Identify the diagnostic fields that can remain while removing full subscription expressions and raw message bodies. Done means those paths retain safe, useful summaries without exposing full subscription data or producing oversized payload logs.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- backend, observability
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 68/100