Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Current state: Under Discussion

Discussion thread: here

Vote threadhere

JIRA:

Jira
serverASF JIRA
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId5aa69414-a9e9-3523-82ec-879b028fb15b
keyKAFKA-3999

...

No public interface will be introduced or changed.

Proposed Changes

A new consumer metric sensor called raw-bytes-fetched will be introduced to help with tracking the average, max, consumption rate, and consumption total of raw message sizes received, similar to how these metrics are in place for size of decompressed message (via bytes-fetched metric sensor). The newly added metrics include:

  • raw-fetch-size-avg: The average number of raw bytes fetched per request
  • raw-fetch-size-max: The maximum number of raw bytes fetched per request
  • raw-bytes-consumed-rate: The average number of raw bytes consumed per second
  • raw-bytes-consumed-total: The total number of raw bytes consumed

 

Code Block
languagejava
titleSample code in FetcherMetricsRegistry.java that defines the new metrics
public FetcherMetricsRegistry(Set<String> tags, String metricGrpPrefix) {
    /***** Client level *****/
    String groupName = metricGrpPrefix + "-fetch-manager-metrics";

    this.rawFetchSizeAvg = new MetricNameTemplate("raw-fetch-size-avg", groupName,
            "The average number of raw bytes fetched per request", tags);
    this.rawFetchSizeMax = new MetricNameTemplate("raw-fetch-size-max", groupName,
            "The maximum number of raw bytes fetched per request", tags);
    this.rawBytesConsumedRate = new MetricNameTemplate("raw-bytes-consumed-rate", groupName,
            "The average number of raw bytes consumed per second", tags);
    this.rawBytesConsumedTotal = new MetricNameTemplate("raw-bytes-consumed-total", groupName,
            "The total number of raw bytes consumed", tags);
 
    ...
}

...