Table of Contents |
---|
Status
Current state: DISCUSSIONACCEPTED
Discussion thread: here
Vote Thread: here
JIRA:
Jira | ||||||
---|---|---|---|---|---|---|
|
...
We will add the following metrics:
Metric Name | Mbean Name | Description |
---|---|---|
time-between-poll-avg | kafka.consumer:type=consumer-metrics,client-id=([-.\w]+) | The average delay between invocations of poll(). |
time-between-poll-max | kafka.consumer:type=consumer-metrics,client-id=([-.\w]+) | The max delay between invocations of poll(). |
last-poll-seconds-ago | kafka.consumer:type=consumer-metrics,client-id=([-.\w]+) | The number of seconds since the last poll() invocation. |
poll-idle-ratio |
-avg | kafka.consumer:type=consumer-metrics,client-id=([-.\w]+) | The average fraction of time the consumer |
's poll() is idle as opposed to waiting for the user code to process records |
. |
Proposed Changes
time-between-poll (avg/max)
...
The last-poll-seconds-ago
metric will measure the time since the user last called poll()
to provide more insight into how/when the user code calls poll()
.
poll-idle-ratio-avg
There will be an additional metric that measures the idle time of the consumer in waiting for the user to process records returned from poll:
LaTeX Formatting |
---|
$\textrm{poll-idle-ratio-avg} = \frac{\textrm{time-betweeninside-poll}}{\textrm{total-time-inside-poll}}$ |
The value of this metric indicates different possible scenarios:
...
- Can indicate a potential issue or performance bottleneck in user code
This metric will have a value between 0.0 and 1.0.
A value approaching 1.0 means consumer is idle in poll (ex. waiting for records) while a value approaching 0.0 means the application is busy processing in user code.
...
A low value (approaching 0.0) could indicate a
potential issue or performance bottleneck in
...
user code.
Compatibility, Deprecation, and Migration Plan
...