From 0c878fd4f5b5029704b57fee63ecf8f07c8fdedf Mon Sep 17 00:00:00 2001 From: Daniel Willmann Date: Thu, 11 Oct 2018 17:55:28 +0200 Subject: stats_statsd: Send all stat_items as gauges When sending a statsd metric we need to specify a type which can be a "g"auge, "c"ounter, "t"imer, "h"istogram, and "m"eter. We used to just pass the stat_item unit into this field, but that is the unit of the metric (Seconds for a timer, % for utilization, ...). Change the type field so stat_items are sent as "g"auges. Note that negative values don't seem to be supported by statsd. Change-Id: Ia16270d36c9a14521594de4b99a48c83e4ac07d4 --- src/stats_statsd.c | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/src/stats_statsd.c b/src/stats_statsd.c index 5ae25702..c3f739e2 100644 --- a/src/stats_statsd.c +++ b/src/stats_statsd.c @@ -184,20 +184,17 @@ static int osmo_stats_reporter_statsd_send_item(struct osmo_stats_reporter *srep const struct osmo_stat_item_group *statg, const struct osmo_stat_item_desc *desc, int64_t value) { - const char *unit = desc->unit; - - if (unit == OSMO_STAT_ITEM_NO_UNIT) { - unit = "g"; - if (value < 0) - osmo_stats_reporter_statsd_send(srep, + if (value < 0) { + return osmo_stats_reporter_statsd_send(srep, statg->desc->group_name_prefix, statg->idx, - desc->name, 0, unit); + desc->name, 0, "g"); + } else { + return osmo_stats_reporter_statsd_send(srep, + statg->desc->group_name_prefix, + statg->idx, + desc->name, value, "g"); } - return osmo_stats_reporter_statsd_send(srep, - statg->desc->group_name_prefix, - statg->idx, - desc->name, value, unit); } #endif /* !EMBEDDED */ -- cgit v1.2.3