apache / apache/pulsar

[improve][broker] Add metrics related interfaces for BrokerInterceptor

Open
#20,772 4 comments 0 reactions 1 assignee Claimed by @crossoverJie View on GitHub
Stale type/enhancement
Dominant language
Java
Stars
15.3k
Forks
3.8k
Avg merge
1d 14h
Merged PRs (30d)
160

Description

### Search before asking

- [X] I searched in the [issues](https://github.com/apache/pulsar/issues) and found nothing similar.

### Motivation

When I want to monitor the relevant data in the `BrokerInterceptor`, currently the `BrokerInterceptor` does not provide relevant interfaces.

I think providing such extensions is necessary.

### Solution

https://github.com/apache/pulsar/blob/e96b3398912163eb6e0528c10aed3507c95952fd/pulsar-broker/src/main/java/org/apache/pulsar/broker/intercept/BrokerInterceptor.java

Add a interface, like this:

```java
default void addCustomizeMetrics(PrometheusMetricStreams streams, PulsarService pulsar){
}
```

https://github.com/apache/pulsar/blob/e96b3398912163eb6e0528c10aed3507c95952fd/pulsar-broker/src/main/java/org/apache/pulsar/broker/stats/prometheus/PrometheusMetricsGenerator.java#L185-L187

Then callback the `addCustomizeMetrics(stream, pulsar)` method here.

This is just a draft.

### Alternatives

_No response_

### Anything else?

_No response_

### Are you willing to submit a PR?

- [X] I'm willing to submit a PR!

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.