summaryrefslogtreecommitdiff
path: root/src/feature/relay/relay_metrics.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/feature/relay/relay_metrics.c')
-rw-r--r--src/feature/relay/relay_metrics.c21
1 files changed, 16 insertions, 5 deletions
diff --git a/src/feature/relay/relay_metrics.c b/src/feature/relay/relay_metrics.c
index 82abeeeee5..5f1238a5d3 100644
--- a/src/feature/relay/relay_metrics.c
+++ b/src/feature/relay/relay_metrics.c
@@ -165,25 +165,36 @@ fill_dns_error_values(void)
};
static const size_t num_errors = ARRAY_LENGTH(errors);
- for (size_t i = 0; i < num_dns_types; i++) {
- /* NOTE: Disable the record type label until libevent is fixed. */
+ /* NOTE: Disable the record type label until libevent is fixed. */
+ (void) num_dns_types;
#if 0
+ for (size_t i = 0; i < num_dns_types; i++) {
/* Dup the label because metrics_format_label() returns a pointer to a
* string on the stack and we need that label for all metrics. */
char *record_label =
tor_strdup(metrics_format_label("record", dns_types[i].name));
-#endif
for (size_t j = 0; j < num_errors; j++) {
sentry = metrics_store_add(the_store, rentry->type, rentry->name,
rentry->help);
- //metrics_store_entry_add_label(sentry, record_label);
+ metrics_store_entry_add_label(sentry, record_label);
metrics_store_entry_add_label(sentry,
metrics_format_label("reason", errors[j].name));
metrics_store_entry_update(sentry,
rep_hist_get_n_dns_error(dns_types[i].type, errors[j].key));
}
- //tor_free(record_label);
+ tor_free(record_label);
+ }
+#endif
+
+ /* Put in the DNS errors, unfortunately not per-type for now. */
+ for (size_t j = 0; j < num_errors; j++) {
+ sentry = metrics_store_add(the_store, rentry->type, rentry->name,
+ rentry->help);
+ metrics_store_entry_add_label(sentry,
+ metrics_format_label("reason", errors[j].name));
+ metrics_store_entry_update(sentry,
+ rep_hist_get_n_dns_error(0, errors[j].key));
}
}