aboutsummaryrefslogtreecommitdiff
path: root/src/feature/relay/relay_metrics.h
AgeCommit message (Collapse)Author
2024-01-30metrics: Add new relay metrics to MetricsPortDavid Goulet
This commit adds the total number of DROP cell seen, the total number of DESTROY cell received and the total number of protocol violation that lead to a circuit close. Closes #40816 Signed-off-by: David Goulet <dgoulet@torproject.org>
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>