aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Willmann <dwillmann@sysmocom.de>2018-10-11 17:55:28 +0200
committerDaniel Willmann <dwillmann@sysmocom.de>2018-10-24 16:37:05 +0200
commit0c878fd4f5b5029704b57fee63ecf8f07c8fdedf (patch)
treeddd91559b215aec28461673148eba812467d5071
parent7a2ec6e118275da360efb3d36cdac730b6bcb437 (diff)
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
-rw-r--r--src/stats_statsd.c19
1 files 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 */