From 1e9ebd8399542a1d34c7a8600b4309b4b0599e3a Mon Sep 17 00:00:00 2001 From: Lois Soto Lopez Date: Tue, 24 Sep 2024 10:27:36 +0200 Subject: [PATCH] Add specific label clause for Q+Exchange resource --- .../prometheus_rabbitmq_core_metrics_collector.erl | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/deps/rabbitmq_prometheus/src/collectors/prometheus_rabbitmq_core_metrics_collector.erl b/deps/rabbitmq_prometheus/src/collectors/prometheus_rabbitmq_core_metrics_collector.erl index 0e4ed2c1294c..8c8ef2656377 100644 --- a/deps/rabbitmq_prometheus/src/collectors/prometheus_rabbitmq_core_metrics_collector.erl +++ b/deps/rabbitmq_prometheus/src/collectors/prometheus_rabbitmq_core_metrics_collector.erl @@ -489,6 +489,13 @@ label({RemoteAddress, Username, Protocol}) when is_binary(RemoteAddress), is_bin V =/= <<>> end, [{remote_address, RemoteAddress}, {username, Username}, {protocol, atom_to_binary(Protocol, utf8)}]); +label({ + #resource{kind=queue, virtual_host=VHost, name=QName}, + #resource{kind=exchange, name=ExName} + }) -> + <<"vhost=\"", (escape_label_value(VHost))/binary, "\",", + "exchange=\"", (escape_label_value(ExName))/binary, "\",", + "queue=\"", (escape_label_value(QName))/binary, "\"">>; label({I1, I2}) -> case {label(I1), label(I2)} of {<<>>, L} -> L;