Hi Team, I'd like to propose cherry-picking PR #24647 to our LTS branches (branch-3.0 and branch-4.0) and would appreciate the community's input on this.
Link: https://github.com/apache/pulsar/pull/24647 *What this PR does* This change adds two new OpenTelemetry metrics to the Java client: pulsar.client.memory.buffer.usage (bytes) - Current memory buffer usage pulsar.client.memory.buffer.limit (bytes) - Configured memory buffer limit These metrics provide visibility into client-side memory consumption, which is currently not observable, helping users with monitoring and alerting. Why cherry-pick to LTS branches? *Improved Observability*: This addresses a significant gap in client-side monitoring capabilities that affects users across all supported versions. *Low Risk Change*: The implementation is purely additive (no existing functionality modified) - Metrics are only activated when memoryLimitBytes > 0 - Backward compatible with existing client configurations - No breaking changes to APIs or behavior *High Value for LTS Users*: Production deployments on LTS branches would benefit significantly from this observability improvement, especially for troubleshooting message publish performance issues with memory limitation on the client side. *Self-Contained*: The change is isolated to the metrics collection system and doesn't impact core client functionality. Given the low risk and high value for observability, I believe this change is suitable for cherry-picking to both branch-3.0 and branch-4.0. I will process the cherry-pick after 48 hours if there are no objections. Regards, Penghui