[tor-dev] prometheus relay label

nusenu nusenu-lists at riseup.net
Tue Nov 9 17:44:33 UTC 2021


Hi,

when adding MetricsPort support to ansible-relayor
I realized that many operators that run more than one tor instance per server
will run into an issue because tor's relay prometheus metrics has no identifying label like
fingerprint=
or similar to tell tor instances appart. The instance=
default label can have the same value for all tor instances on a given server
so that can not be used.

To avoid using nickname (might not be set) the easiest option is probably to use
the relay's SHA1 fingerprint or alternatively the IP:ORPort combination
which is unique per server but not necessarily globally unique (RFC1918 IPs).

Another neat option for operators is to use node_exporter's textfile collector to
collect tor's MetricsPort content to avoid having to run an additional webserver
for TLS and authentication (because unlike tor's exporter node_exporter comes with TLS and authentication builtin).
In that case the suggested solution would be even more needed because in that case relabling
via prometheus' scrape config is no longer possible.

What do you think about this suggestion?

kind regards,
nusenu



-- 
https://nusenu.github.io


More information about the tor-dev mailing list