From 569df0581e4d61e40ad032ccfc1c42deb2cf0516 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonas=20Sch=C3=A4fer?= Date: Sun, 26 Dec 2021 22:32:00 +0100 Subject: openmetrics/histograms: fix incorrect condition for bucketing The buckets thresholds are to be taken as "less than or equal to". The condition as written in the code did only "less than", not "less than or equal to". That's fixed now. --- util/statistics.lua | 2 +- util/statsd.lua | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'util') diff --git a/util/statistics.lua b/util/statistics.lua index a8401168..b76a7385 100644 --- a/util/statistics.lua +++ b/util/statistics.lua @@ -102,7 +102,7 @@ end function histogram_metric_mt:sample(value) -- According to the I-D, values must be part of all buckets for i, bucket in pairs(self) do - if "number" == type(i) and bucket.threshold > value then + if "number" == type(i) and bucket.threshold >= value then bucket.count = bucket.count + 1 end end diff --git a/util/statsd.lua b/util/statsd.lua index 25e03e38..b91e2a79 100644 --- a/util/statsd.lua +++ b/util/statsd.lua @@ -115,7 +115,7 @@ end function histogram_metric_mt:sample(value) -- According to the I-D, values must be part of all buckets for i, bucket in pairs(self) do - if "number" == type(i) and bucket.threshold > value then + if "number" == type(i) and bucket.threshold >= value then bucket.count = bucket.count + 1 self._impl:push_counter_delta(bucket._full_name, 1) end -- cgit v1.2.3