Hello Marton Greber, Alexey Serbin, Kudu Jenkins,
I'd like you to reexamine a change. Please visit
http://gerrit.cloudera.org:8080/24121
to look at the new patch set (#4).
Change subject: [metrics] Export hostname as a Prometheus label
......................................................................
[metrics] Export hostname as a Prometheus label
In https://gerrit.cloudera.org/c/24096/ we enabled exporting entity
attributes as Prometheus labels via --metrics_prometheus_use_entity_labels.
However, when Prometheus scrapes multiple Kudu nodes, there is no label
to identify the source node.
This patch adds a 'hostname' label to each metric, allowing the source
node to be identified without relying on Prometheus relabel_configs.
A new runtime flag --metrics_prometheus_export_hostname (default: true)
is provided so that users who prefer to handle hostname labeling via
Prometheus relabel_configs can opt out.
Changes:
- Add 'hostname' field to MetricPrometheusOptions; pass it from
ServerBase::Start() via messenger_->hostname() through the handler
chain into MetricEntity::WriteAsPrometheus(), where it is appended
as a label when the entity-labels flag is on and hostname is non-empty.
- Add --metrics_prometheus_export_hostname runtime flag (default true).
When set to false, the hostname label is omitted even if
--metrics_prometheus_use_entity_labels is true and hostname is available.
- Add four unit tests covering: hostname label present (both flags on),
no effect in legacy mode (entity labels off), opt-out via export flag
(export_hostname off), and empty hostname (no label).
Change-Id: I43b4c8ea5736e99c20b25a2ffea3c6c8dcb9d27e
---
M src/kudu/server/default_path_handlers.cc
M src/kudu/server/default_path_handlers.h
M src/kudu/server/server_base.cc
M src/kudu/util/metrics-test.cc
M src/kudu/util/metrics.cc
M src/kudu/util/metrics.h
6 files changed, 180 insertions(+), 7 deletions(-)
git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/21/24121/4
--
To view, visit http://gerrit.cloudera.org:8080/24121
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I43b4c8ea5736e99c20b25a2ffea3c6c8dcb9d27e
Gerrit-Change-Number: 24121
Gerrit-PatchSet: 4
Gerrit-Owner: Yan-Daojiang <[email protected]>
Gerrit-Reviewer: Alexey Serbin <[email protected]>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Marton Greber <[email protected]>
Gerrit-Reviewer: Yan-Daojiang <[email protected]>