aboutsummaryrefslogtreecommitdiff
path: root/src/feature/hs/hs_metrics.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/feature/hs/hs_metrics.c')
-rw-r--r--src/feature/hs/hs_metrics.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/feature/hs/hs_metrics.c b/src/feature/hs/hs_metrics.c
index e6d3084f26..452bb44419 100644
--- a/src/feature/hs/hs_metrics.c
+++ b/src/feature/hs/hs_metrics.c
@@ -32,12 +32,16 @@ port_to_str(const uint16_t port)
/** Return a static buffer pointer that contains a formatted label on the form
* of key=value.
*
+ * NOTE: Important, label values MUST NOT contain double quotes else, in the
+ * case of Prometheus, it will fail with a malformed line because we force the
+ * label value to be enclosed in double quotes.
+ *
* Subsequent call to this function invalidates the previous buffer. */
static const char *
format_label(const char *key, const char *value)
{
static char buf[128];
- tor_snprintf(buf, sizeof(buf), "%s=%s", key, value);
+ tor_snprintf(buf, sizeof(buf), "%s=\"%s\"", key, value);
return buf;
}