From 7f6327b01ac0057f574c7bdd55d57113f684b798 Mon Sep 17 00:00:00 2001 From: Jef Roosens Date: Mon, 26 Dec 2022 14:32:19 +0100 Subject: [PATCH] feat: add NullCollector --- collector.v | 10 +++++----- null.v | 26 ++++++++++++++++++++++++++ 2 files changed, 31 insertions(+), 5 deletions(-) create mode 100644 null.v diff --git a/collector.v b/collector.v index 2f2f7c3..9bb2a23 100644 --- a/collector.v +++ b/collector.v @@ -44,7 +44,7 @@ pub fn (mut c DefaultCollector) counter_register(value u64, metric Metric) { } } -pub fn (mut c DefaultCollector) counter_increment(metric Metric) { +pub fn (c &DefaultCollector) counter_increment(metric Metric) { rlock c.counters { entry := c.counter_indexes[metric.str()] @@ -52,7 +52,7 @@ pub fn (mut c DefaultCollector) counter_increment(metric Metric) { } } -pub fn (mut c DefaultCollector) counter_decrement(metric Metric) { +pub fn (c &DefaultCollector) counter_decrement(metric Metric) { rlock c.counters { entry := c.counter_indexes[metric.str()] @@ -60,7 +60,7 @@ pub fn (mut c DefaultCollector) counter_decrement(metric Metric) { } } -pub fn (mut c DefaultCollector) counter_get(metric Metric) ?u64 { +pub fn (c &DefaultCollector) counter_get(metric Metric) ?u64 { return rlock c.counters { entry := c.counter_indexes[metric.str()] or { return none } @@ -77,7 +77,7 @@ pub fn (mut c DefaultCollector) histogram_register(metric Metric) { } } -pub fn (mut c DefaultCollector) histogram_add(value f64, metric Metric) { +pub fn (c &DefaultCollector) histogram_add(value f64, metric Metric) { entry := rlock c.histograms { c.histograms[metric.str()] } @@ -87,7 +87,7 @@ pub fn (mut c DefaultCollector) histogram_add(value f64, metric Metric) { } } -pub fn (mut c DefaultCollector) histogram_get(metric Metric) ?[]f64 { +pub fn (c &DefaultCollector) histogram_get(metric Metric) ?[]f64 { entry := rlock c.histograms { c.histograms[metric.str()] or { return none } } diff --git a/null.v b/null.v new file mode 100644 index 0000000..058a1bd --- /dev/null +++ b/null.v @@ -0,0 +1,26 @@ +module metrics + +[heap] +struct NullCollector {} + +pub fn new_null_collector() &NullCollector { + return &NullCollector{} +} + +pub fn (c &NullCollector) counter_register(value u64, metric Metric) {} + +pub fn (c &NullCollector) counter_increment(metric Metric) {} + +pub fn (c &NullCollector) counter_decrement(metric Metric) {} + +pub fn (c &NullCollector) counter_get(metric Metric) ?u64 { + return none +} + +pub fn (c &NullCollector) histogram_register(metric Metric) {} + +pub fn (c &NullCollector) histogram_add(value f64, metric Metric) {} + +pub fn (c &NullCollector) histogram_get(metric Metric) ?[]f64 { + return none +}