[
https://issues.apache.org/jira/browse/HADOOP-17804?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Adam Binford updated HADOOP-17804:
----------------------------------
Description:
A prometheus endpoint was added in
https://issues.apache.org/jira/browse/HADOOP-16398, but the logic that puts
them into a map based on the "key" incorrectly hides any metrics with the same
key but different labels. The relevant code is here:
[https://github.com/apache/hadoop/blob/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/metrics2/sink/PrometheusMetricsSink.java#L55|https://github.com/apache/hadoop/blob/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/metrics2/sink/PrometheusMetricsSink.java#L55.]
The labels/tags need to be taken into account, as different tags mean different
metrics. For example, I came across this while trying to scrape metrics for all
the queues in our scheduler. Only the last queue is included because all the
metrics have the same "key" but a different "queue" label/tag.
was:
A prometheus endpoint was added in
https://issues.apache.org/jira/browse/HADOOP-1639, but the logic that puts them
into a map based on the "key" incorrectly hides any metrics with the same key
but different labels. The relevant code is here:
[https://github.com/apache/hadoop/blob/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/metrics2/sink/PrometheusMetricsSink.java#L55|https://github.com/apache/hadoop/blob/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/metrics2/sink/PrometheusMetricsSink.java#L55.]
The labels/tags need to be taken into account, as different tags mean different
metrics. For example, I came across this while trying to scrape metrics for all
the queues in our scheduler. Only the last queue is included because all the
metrics have the same "key" but a different "queue" label/tag.
> Prometheus metrics only include the last set of labels
> ------------------------------------------------------
>
> Key: HADOOP-17804
> URL: https://issues.apache.org/jira/browse/HADOOP-17804
> Project: Hadoop Common
> Issue Type: Bug
> Components: common
> Affects Versions: 3.3.1
> Reporter: Adam Binford
> Priority: Major
>
> A prometheus endpoint was added in
> https://issues.apache.org/jira/browse/HADOOP-16398, but the logic that puts
> them into a map based on the "key" incorrectly hides any metrics with the
> same key but different labels. The relevant code is here:
> [https://github.com/apache/hadoop/blob/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/metrics2/sink/PrometheusMetricsSink.java#L55|https://github.com/apache/hadoop/blob/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/metrics2/sink/PrometheusMetricsSink.java#L55.]
> The labels/tags need to be taken into account, as different tags mean
> different metrics. For example, I came across this while trying to scrape
> metrics for all the queues in our scheduler. Only the last queue is included
> because all the metrics have the same "key" but a different "queue" label/tag.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]