]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
metrics: Add tor_ namespace to all metrics
authorDavid Goulet <dgoulet@torproject.org>
Tue, 27 Oct 2020 14:43:19 +0000 (10:43 -0400)
committerDavid Goulet <dgoulet@torproject.org>
Tue, 27 Oct 2020 14:43:42 +0000 (10:43 -0400)
Closes #40063

Signed-off-by: David Goulet <dgoulet@torproject.org>
src/feature/hs/hs_metrics_entry.c
src/lib/metrics/metrics_common.h

index e4da0921aad2a28d9423f6c7b885fd782c2aa02a..7eb78db5ac870872e2d4aa9701fb985e816d7b1f 100644 (file)
@@ -23,40 +23,40 @@ const hs_metrics_entry_t base_metrics[] =
   {
     .key = HS_METRICS_NUM_INTRODUCTIONS,
     .type = METRICS_TYPE_COUNTER,
-    .name = "hs_intro_num_total",
+    .name = METRICS_NAME(hs_intro_num_total),
     .help = "Total number of introduction received",
     .port_as_label = false,
   },
   {
     .key = HS_METRICS_APP_WRITE_BYTES,
     .type = METRICS_TYPE_COUNTER,
-    .name = "hs_app_write_bytes_total",
+    .name = METRICS_NAME(hs_app_write_bytes_total),
     .help = "Total number of bytes written to the application",
     .port_as_label = true,
   },
   {
     .key = HS_METRICS_APP_READ_BYTES,
     .type = METRICS_TYPE_COUNTER,
-    .name = "hs_app_read_bytes_total",
+    .name = METRICS_NAME(hs_app_read_bytes_total),
     .help = "Total number of bytes read from the application",
     .port_as_label = true,
   },
   {
     .key = HS_METRICS_NUM_ESTABLISHED_RDV,
     .type = METRICS_TYPE_GAUGE,
-    .name = "hs_rdv_established_count",
+    .name = METRICS_NAME(hs_rdv_established_count),
     .help = "Total number of established rendezvous circuit",
   },
   {
     .key = HS_METRICS_NUM_RDV,
     .type = METRICS_TYPE_COUNTER,
-    .name = "hs_rdv_num_total",
+    .name = METRICS_NAME(hs_rdv_num_total),
     .help = "Total number of rendezvous circuit created",
   },
   {
     .key = HS_METRICS_NUM_ESTABLISHED_INTRO,
     .type = METRICS_TYPE_GAUGE,
-    .name = "hs_intro_established_count",
+    .name = METRICS_NAME(hs_intro_established_count),
     .help = "Total number of established introduction circuit",
   },
 };
index 5d1a32ea6ce5a9e3f0b81dc0f353d18b7e27d396..50f6147007191ab8df56521c36eb277dad851f24 100644 (file)
 
 #include "lib/cc/torint.h"
 
+/** Prefix to every metrics exposed. This is insures that the metrics are
+ * always in the same namespace. */
+#define METRICS_PREFIX tor_
+
+/** Helper macro that must be used to construct the right namespaced metrics
+ * name. A name is a string so stringify the result. */
+#define METRICS_STR(val) #val
+#define METRICS_NAME(name) METRICS_STR(METRICS_PREFIX ## name)
+
 /** Format output type. */
 typedef enum {
   /** Prometheus data output format. */