Marton Greber has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/24121 )
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 Reviewed-on: http://gerrit.cloudera.org:8080/24121 Tested-by: Alexey Serbin <[email protected]> Reviewed-by: Alexey Serbin <[email protected]> Reviewed-by: Marton Greber <[email protected]> --- 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(-) Approvals: Alexey Serbin: Looks good to me, approved; Verified Marton Greber: Looks good to me, approved -- 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: merged Gerrit-Change-Id: I43b4c8ea5736e99c20b25a2ffea3c6c8dcb9d27e Gerrit-Change-Number: 24121 Gerrit-PatchSet: 5 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]>
