summaryrefslogtreecommitdiff
path: root/src/feature/relay/relay_metrics.h
AgeCommit message (Collapse)Author
2023-05-25Added relay prefix to new metrics functionsfriendly73
2023-05-25Removed getter abstraction and moved from rephist to relay_metrics.friendly73
2023-05-25Added INTRO and REND metrics for relay.friendly73
2023-03-06add new metrics entry for cert expirationtrinity-1686a
2022-11-10metrics: Split cc with counters and gaugesDavid Goulet
Part of #40712 Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-11-10metrics: Split connections with a counter and gaugeDavid Goulet
Created and Rejected connections are ever going up counters. While Opened connections are gauges going up and down. Fixes #40712 Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-10-27metrics: Add number of opened circuits to MetricsPortDavid Goulet
Related to #40194 Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-10-27relay: Add our consensus relay flag to MetricsPortDavid Goulet
Related to #40194 Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-10-27metrics: Add traffic related stats to MetricsPortDavid Goulet
At this commit, bytes read and written are exported. Related to #40194 Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-10-27relay: Add DoS subsystem stats to MetricsPortDavid Goulet
Related to #40194 Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-10-26relay: Add CC RTT reset stats to MetricsPortDavid Goulet
Related to #40194 Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-10-26relay: Add total number of streams seen on MetricsPortDavid Goulet
Related to #40194 Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-10-12relay: Add connection stats to MetricsPortDavid Goulet
This adds the number of created and opened connections to the MetricsPort for a relay for each connection type and direction. Output looks like: # HELP tor_relay_connections Connections metrics of this relay # TYPE tor_relay_connections counter tor_relay_connections{type="OR listener",direction="initiated",state="created"} 0 tor_relay_connections{type="OR listener",direction="received",state="created"} 0 tor_relay_connections{type="OR listener",direction="initiated",state="opened"} 0 tor_relay_connections{type="OR listener",direction="received",state="opened"} 0 tor_relay_connections{type="OR",direction="initiated",state="created"} 5 tor_relay_connections{type="OR",direction="received",state="created"} 0 tor_relay_connections{type="OR",direction="initiated",state="opened"} 5 tor_relay_connections{type="OR",direction="received",state="opened"} 0 tor_relay_connections{type="Exit",direction="initiated",state="created"} 0 tor_relay_connections{type="Exit",direction="received",state="created"} 0 tor_relay_connections{type="Exit",direction="initiated",state="opened"} 0 tor_relay_connections{type="Exit",direction="received",state="opened"} 0 tor_relay_connections{type="Socks listener",direction="initiated",state="created"} 0 tor_relay_connections{type="Socks listener",direction="received",state="created"} 0 tor_relay_connections{type="Socks listener",direction="initiated",state="opened"} 0 tor_relay_connections{type="Socks listener",direction="received",state="opened"} 0 tor_relay_connections{type="Socks",direction="initiated",state="created"} 0 tor_relay_connections{type="Socks",direction="received",state="created"} 0 tor_relay_connections{type="Socks",direction="initiated",state="opened"} 0 tor_relay_connections{type="Socks",direction="received",state="opened"} 0 tor_relay_connections{type="Directory listener",direction="initiated",state="created"} 0 tor_relay_connections{type="Directory listener",direction="received",state="created"} 0 tor_relay_connections{type="Directory listener",direction="initiated",state="opened"} 0 tor_relay_connections{type="Directory listener",direction="received",state="opened"} 0 tor_relay_connections{type="Directory",direction="initiated",state="created"} 0 tor_relay_connections{type="Directory",direction="received",state="created"} 0 tor_relay_connections{type="Directory",direction="initiated",state="opened"} 0 tor_relay_connections{type="Directory",direction="received",state="opened"} 0 tor_relay_connections{type="Control listener",direction="initiated",state="created"} 0 tor_relay_connections{type="Control listener",direction="received",state="created"} 0 tor_relay_connections{type="Control listener",direction="initiated",state="opened"} 0 tor_relay_connections{type="Control listener",direction="received",state="opened"} 0 tor_relay_connections{type="Control",direction="initiated",state="created"} 0 tor_relay_connections{type="Control",direction="received",state="created"} 0 tor_relay_connections{type="Control",direction="initiated",state="opened"} 0 tor_relay_connections{type="Control",direction="received",state="opened"} 0 tor_relay_connections{type="Transparent pf/netfilter listener",direction="initiated",state="created"} 0 tor_relay_connections{type="Transparent pf/netfilter listener",direction="received",state="created"} 0 tor_relay_connections{type="Transparent pf/netfilter listener",direction="initiated",state="opened"} 0 tor_relay_connections{type="Transparent pf/netfilter listener",direction="received",state="opened"} 0 tor_relay_connections{type="Transparent natd listener",direction="initiated",state="created"} 0 tor_relay_connections{type="Transparent natd listener",direction="received",state="created"} 0 tor_relay_connections{type="Transparent natd listener",direction="initiated",state="opened"} 0 tor_relay_connections{type="Transparent natd listener",direction="received",state="opened"} 0 tor_relay_connections{type="DNS listener",direction="initiated",state="created"} 0 tor_relay_connections{type="DNS listener",direction="received",state="created"} 0 tor_relay_connections{type="DNS listener",direction="initiated",state="opened"} 0 tor_relay_connections{type="DNS listener",direction="received",state="opened"} 0 tor_relay_connections{type="Extended OR",direction="initiated",state="created"} 0 tor_relay_connections{type="Extended OR",direction="received",state="created"} 0 tor_relay_connections{type="Extended OR",direction="initiated",state="opened"} 0 tor_relay_connections{type="Extended OR",direction="received",state="opened"} 0 tor_relay_connections{type="Extended OR listener",direction="initiated",state="created"} 0 tor_relay_connections{type="Extended OR listener",direction="received",state="created"} 0 tor_relay_connections{type="Extended OR listener",direction="initiated",state="opened"} 0 tor_relay_connections{type="Extended OR listener",direction="received",state="opened"} 0 tor_relay_connections{type="HTTP tunnel listener",direction="initiated",state="created"} 0 tor_relay_connections{type="HTTP tunnel listener",direction="received",state="created"} 0 tor_relay_connections{type="HTTP tunnel listener",direction="initiated",state="opened"} 0 tor_relay_connections{type="HTTP tunnel listener",direction="received",state="opened"} 0 tor_relay_connections{type="Metrics listener",direction="initiated",state="created"} 0 tor_relay_connections{type="Metrics listener",direction="received",state="created"} 1 tor_relay_connections{type="Metrics listener",direction="initiated",state="opened"} 0 tor_relay_connections{type="Metrics listener",direction="received",state="opened"} 1 tor_relay_connections{type="Metrics",direction="initiated",state="created"} 0 tor_relay_connections{type="Metrics",direction="received",state="created"} 0 tor_relay_connections{type="Metrics",direction="initiated",state="opened"} 0 tor_relay_connections{type="Metrics",direction="received",state="opened"} 0 Related to #40194 Signed-off-by: David Goulet <dgoulet@torproject.org>
2021-05-12relay: Add TCP port exhaustion metricsDavid Goulet
Signed-off-by: David Goulet <dgoulet@torproject.org>
2021-05-12relay: Add DNS metricsDavid Goulet
Emit on the MetricsPort all the DNS statistics we have that is the total number of queries seen and errors per record type. Related to #40367 Signed-off-by: David Goulet <dgoulet@torproject.org>
2021-05-12relay: Add the global connection limit metricsDavid Goulet
This emits two events (read and write) of the total number that the global connection limit was reached. Related to #40367 Signed-off-by: David Goulet <dgoulet@torproject.org>
2021-05-12relay: Add number of open and max sockets metricsDavid Goulet
With this commit, a relay will emit metrics that give the total number of sockets and total number of opened sockets. Related to #40367 Signed-off-by: David Goulet <dgoulet@torproject.org>
2021-05-12relay: Add the onionskins processing metricsDavid Goulet
With this commit, a relay now emits metrics event on the MetricsPort related to how many onionskins were handled (processed or dropped) for each handshake type. Related to #40367 Signed-off-by: David Goulet <dgoulet@torproject.org>
2021-05-12relay: Add the OOM invocation metricsDavid Goulet
With this commit, a relay now emits metrics event on the MetricsPort related to the OOM invocation for: - DNS cache - GeoIP database - Cell queues - HSDir caches Everytime the OOM is invoked, the number of bytes is added to the metrics counter for that specific type of invocation. Related to #40367 Signed-off-by: David Goulet <dgoulet@torproject.org>
2021-05-12relay: Code and objects to initialize metrics storeDavid Goulet
Signed-off-by: David Goulet <dgoulet@torproject.org>
2021-05-12relay: Groundwork for relay metrics supportDavid Goulet
The basic functions for the relay subsystem to expose metrics onto the MetricsPort. Part of #40367 Signed-off-by: David Goulet <dgoulet@torproject.org>