return strbuf_printf(buf, "%" PRIu64, v.counter);
case METRIC_TYPE_FPCOUNTER:
return strbuf_printf(buf, GAUGE_FORMAT, v.fpcounter);
- case METRIC_TYPE_UP_DOWN_COUNTER:
- return strbuf_printf(buf, "%" PRId64, v.up_down_counter);
+ case METRIC_TYPE_UP_DOWN:
+ return strbuf_printf(buf, "%" PRId64, v.up_down);
case METRIC_TYPE_UP_DOWN_COUNTER_FP:
if (isnan(v.up_down_counter_fp)) {
return strbuf_print(buf, "nan");
// The rate of change is meaningful, the absolute value is not.
METRIC_TYPE_FPCOUNTER =
METRIC_ATTR_DOUBLE | METRIC_ATTR_CUMULATIVE | METRIC_ATTR_MONOTONIC,
- // METRIC_TYPE_UP_DOWN_COUNTER are absolute integer metrics that can
+ // METRIC_TYPE_UP_DOWN are absolute integer metrics that can
// (meaningfully) be summed up. Examples are filesystem space used and
// physical memory.
- METRIC_TYPE_UP_DOWN_COUNTER = METRIC_ATTR_CUMULATIVE,
+ METRIC_TYPE_UP_DOWN = METRIC_ATTR_CUMULATIVE,
// METRIC_TYPE_UP_DOWN_COUNTER_FP are absolute floating point metrics that can
// (meaningfully) be summed up.
METRIC_TYPE_UP_DOWN_COUNTER_FP = METRIC_ATTR_DOUBLE | METRIC_ATTR_CUMULATIVE,
(t == METRIC_TYPE_GAUGE) ? "gauge" \
: (t == METRIC_TYPE_COUNTER) ? "counter" \
: (t == METRIC_TYPE_FPCOUNTER) ? "fpcounter" \
- : (t == METRIC_TYPE_UP_DOWN_COUNTER) ? "up_down_counter" \
+ : (t == METRIC_TYPE_UP_DOWN) ? "up_down" \
: (t == METRIC_TYPE_UP_DOWN_COUNTER_FP) ? "up_down_counter_fp" \
: "unknown"
gauge_t gauge;
counter_t counter;
fpcounter_t fpcounter;
- up_down_counter_t up_down_counter;
+ up_down_counter_t up_down;
up_down_counter_fp_t up_down_counter_fp;
- // For collectd 5 compatiblity. Treated the same as up_down_counter.
+ // For collectd 5 compatiblity. Treated the same as up_down.
derive_t derive;
};
typedef union value_u value_t;
return 0;
}
- case METRIC_TYPE_UP_DOWN_COUNTER: {
- ce->values_gauge = (gauge_t)m->value.up_down_counter;
+ case METRIC_TYPE_UP_DOWN: {
+ ce->values_gauge = (gauge_t)m->value.up_down;
return 0;
}
case METRIC_TYPE_COUNTER:
case METRIC_TYPE_FPCOUNTER:
break;
- case METRIC_TYPE_UP_DOWN_COUNTER:
- *ret = (gauge_t)m->value.up_down_counter;
+ case METRIC_TYPE_UP_DOWN:
+ *ret = (gauge_t)m->value.up_down;
return 0;
case METRIC_TYPE_UP_DOWN_COUNTER_FP:
*ret = (gauge_t)m->value.up_down_counter_fp;
.want = NAN,
},
{
- .name = "up_down_counter",
- .first_value = (value_t){.up_down_counter = 10},
- .second_value = (value_t){.up_down_counter = 20},
+ .name = "up_down",
+ .first_value = (value_t){.up_down = 10},
+ .second_value = (value_t){.up_down = 20},
.first_time = TIME_T_TO_CDTIME_T(100),
.second_time = TIME_T_TO_CDTIME_T(110),
- .type = METRIC_TYPE_UP_DOWN_COUNTER,
+ .type = METRIC_TYPE_UP_DOWN,
.want = 20,
},
{
- .name = "decreasing up_down_counter",
- .first_value = (value_t){.up_down_counter = 1000},
- .second_value = (value_t){.up_down_counter = 215},
+ .name = "decreasing up_down",
+ .first_value = (value_t){.up_down = 1000},
+ .second_value = (value_t){.up_down = 215},
.first_time = TIME_T_TO_CDTIME_T(100),
.second_time = TIME_T_TO_CDTIME_T(110),
- .type = METRIC_TYPE_UP_DOWN_COUNTER,
+ .type = METRIC_TYPE_UP_DOWN,
.want = 215,
},
{
gauge_t want = cases[i].first_value.gauge;
if (IS_MONOTONIC(fam.type)) {
want = NAN;
- } else if (fam.type == METRIC_TYPE_UP_DOWN_COUNTER) {
- want = (gauge_t)cases[i].first_value.up_down_counter;
+ } else if (fam.type == METRIC_TYPE_UP_DOWN) {
+ want = (gauge_t)cases[i].first_value.up_down;
}
EXPECT_EQ_DOUBLE(want, got);
metric_family_t fam_usage = {
.name = "system.filesystem.usage",
.unit = "By",
- .type = METRIC_TYPE_UP_DOWN_COUNTER,
+ .type = METRIC_TYPE_UP_DOWN,
};
metric_family_t fam_utilization = {
.name = "system.filesystem.utilization",
metric_family_t fam_inode_usage = {
.name = "system.filesystem.inodes.usage",
.unit = "{inode}",
- .type = METRIC_TYPE_UP_DOWN_COUNTER,
+ .type = METRIC_TYPE_UP_DOWN,
};
metric_family_t fam_inode_utilization = {
.name = "system.filesystem.inodes.utilization",
if (report_usage) {
metric_family_append(&fam_usage, state_label, state_used,
- (value_t){.up_down_counter = blk_used * blocksize},
- &m);
+ (value_t){.up_down = blk_used * blocksize}, &m);
metric_family_append(&fam_usage, state_label, state_free,
- (value_t){.up_down_counter = blk_free * blocksize},
- &m);
+ (value_t){.up_down = blk_free * blocksize}, &m);
- metric_family_append(
- &fam_usage, state_label, state_reserved,
- (value_t){.up_down_counter = blk_reserved * blocksize}, &m);
+ metric_family_append(&fam_usage, state_label, state_reserved,
+ (value_t){.up_down = blk_reserved * blocksize}, &m);
}
if (report_utilization) {
}
if (report_usage) {
metric_family_append(&fam_inode_usage, state_label, state_used,
- (value_t){.up_down_counter = inode_used}, &m);
+ (value_t){.up_down = inode_used}, &m);
metric_family_append(&fam_inode_usage, state_label, state_free,
- (value_t){.up_down_counter = inode_free}, &m);
+ (value_t){.up_down = inode_free}, &m);
metric_family_append(&fam_inode_usage, state_label, state_reserved,
- (value_t){.up_down_counter = inode_reserved}, &m);
+ (value_t){.up_down = inode_reserved}, &m);
}
}
.name = "system.memory.usage",
.help = "Reports memory in use by state",
.unit = "By",
- .type = METRIC_TYPE_UP_DOWN_COUNTER,
+ .type = METRIC_TYPE_UP_DOWN,
};
up_down_counter_t total = 0;
.name = "system.memory.limit",
.help = "Total memory available in the system.",
.unit = "By",
- .type = METRIC_TYPE_UP_DOWN_COUNTER,
+ .type = METRIC_TYPE_UP_DOWN,
};
metric_family_metric_append(&fam_limit, (metric_t){
- .value.up_down_counter = total,
+ .value.up_down = total,
});
int status = plugin_dispatch_metric_family(&fam_limit);
} else if (strcasecmp("FPCOUNTER", value) == 0) {
m->family->type = METRIC_TYPE_FPCOUNTER;
} else if (strcasecmp("UP_DOWN_COUNTER", value) == 0) {
- m->family->type = METRIC_TYPE_UP_DOWN_COUNTER;
+ m->family->type = METRIC_TYPE_UP_DOWN;
} else if (strcasecmp("UP_DOWN_COUNTER_FP", value) == 0) {
m->family->type = METRIC_TYPE_UP_DOWN_COUNTER_FP;
} else {
case METRIC_TYPE_GAUGE:
strbuf_print(buf, " type=GAUGE");
break;
- case METRIC_TYPE_UP_DOWN_COUNTER:
+ case METRIC_TYPE_UP_DOWN:
strbuf_print(buf, " type=UP_DOWN_COUNTER");
break;
case METRIC_TYPE_UP_DOWN_COUNTER_FP:
ret_value->fpcounter = (fpcounter_t)strtod(value, &endptr);
break;
- case METRIC_TYPE_UP_DOWN_COUNTER:
- ret_value->up_down_counter = (up_down_counter_t)strtoll(value, &endptr, 0);
+ case METRIC_TYPE_UP_DOWN:
+ ret_value->up_down = (up_down_counter_t)strtoll(value, &endptr, 0);
break;
case METRIC_TYPE_UP_DOWN_COUNTER_FP:
state->last_value.fpcounter = (fpcounter_t)rate;
state->residual = 0;
break;
- case METRIC_TYPE_UP_DOWN_COUNTER:
- state->last_value.up_down_counter = (up_down_counter_t)floor(rate);
- state->residual = rate - ((gauge_t)state->last_value.up_down_counter);
+ case METRIC_TYPE_UP_DOWN:
+ state->last_value.up_down = (up_down_counter_t)floor(rate);
+ state->residual = rate - ((gauge_t)state->last_value.up_down);
break;
case METRIC_TYPE_UP_DOWN_COUNTER_FP:
state->last_value.up_down_counter_fp = (up_down_counter_fp_t)rate;
state->residual = 0;
break;
}
- case METRIC_TYPE_UP_DOWN_COUNTER: {
+ case METRIC_TYPE_UP_DOWN: {
up_down_counter_t delta = (up_down_counter_t)floor(delta_gauge);
- state->last_value.up_down_counter += delta;
+ state->last_value.up_down += delta;
state->residual = delta_gauge - ((gauge_t)delta);
break;
}
*ret_rate = ((gauge_t)diff) / ((gauge_t)interval);
return 0;
}
- case METRIC_TYPE_UP_DOWN_COUNTER: {
- up_down_counter_t diff =
- value.up_down_counter - state->last_value.up_down_counter;
+ case METRIC_TYPE_UP_DOWN: {
+ up_down_counter_t diff = value.up_down - state->last_value.up_down;
*ret_rate = ((gauge_t)diff) / ((gauge_t)interval);
return 0;
}
EXPECT_EQ_DOUBLE(cases[i].want.fpcounter, got.fpcounter);
EXPECT_EQ_UINT64(cases[i].want.fpcounter, state.last_value.fpcounter);
break;
- case METRIC_TYPE_UP_DOWN_COUNTER:
- EXPECT_EQ_UINT64(cases[i].want.up_down_counter, got.up_down_counter);
- EXPECT_EQ_UINT64(cases[i].want.up_down_counter,
- state.last_value.up_down_counter);
+ case METRIC_TYPE_UP_DOWN:
+ EXPECT_EQ_UINT64(cases[i].want.up_down, got.up_down);
+ EXPECT_EQ_UINT64(cases[i].want.up_down, state.last_value.up_down);
break;
case METRIC_TYPE_UP_DOWN_COUNTER_FP:
EXPECT_EQ_DOUBLE(cases[i].want.up_down_counter_fp,
return "COUNTER";
case METRIC_TYPE_FPCOUNTER:
return "FPCOUNTER";
- case METRIC_TYPE_UP_DOWN_COUNTER:
+ case METRIC_TYPE_UP_DOWN:
return "UP_DOWN_COUNTER";
case METRIC_TYPE_UP_DOWN_COUNTER_FP:
return "UP_DOWN_COUNTER_FP";
CHECK(json_add_string(g, "asDouble"));
CHECK(yajl_gen_double(g, m->value.fpcounter));
break;
- case METRIC_TYPE_UP_DOWN_COUNTER:
+ case METRIC_TYPE_UP_DOWN:
CHECK(json_add_string(g, "asInt"));
- CHECK(yajl_gen_integer(g, (long long int)m->value.up_down_counter));
+ CHECK(yajl_gen_integer(g, (long long int)m->value.up_down));
break;
case METRIC_TYPE_UP_DOWN_COUNTER_FP:
CHECK(json_add_string(g, "asDouble"));
break;
case METRIC_TYPE_COUNTER:
case METRIC_TYPE_FPCOUNTER:
- case METRIC_TYPE_UP_DOWN_COUNTER:
+ case METRIC_TYPE_UP_DOWN:
case METRIC_TYPE_UP_DOWN_COUNTER_FP:
CHECK(json_add_string(g, "sum"));
CHECK(sum(g, fam));
case METRIC_TYPE_FPCOUNTER:
CHECK(yajl_gen_double(g, m->value.fpcounter));
return 0;
- case METRIC_TYPE_UP_DOWN_COUNTER:
- CHECK(yajl_gen_integer(g, (long long int)m->value.up_down_counter));
+ case METRIC_TYPE_UP_DOWN:
+ CHECK(yajl_gen_integer(g, (long long int)m->value.up_down));
return 0;
case METRIC_TYPE_UP_DOWN_COUNTER_FP:
CHECK(yajl_gen_double(g, m->value.up_down_counter_fp));
case METRIC_TYPE_COUNTER:
dp->set_as_int((int64_t)m->value.counter);
return;
- case METRIC_TYPE_UP_DOWN_COUNTER:
- dp->set_as_int((int64_t)m->value.up_down_counter);
+ case METRIC_TYPE_UP_DOWN:
+ dp->set_as_int((int64_t)m->value.up_down);
return;
case METRIC_TYPE_FPCOUNTER:
dp->set_as_double(m->value.fpcounter);
return;
case METRIC_TYPE_COUNTER:
case METRIC_TYPE_FPCOUNTER:
- case METRIC_TYPE_UP_DOWN_COUNTER:
+ case METRIC_TYPE_UP_DOWN:
case METRIC_TYPE_UP_DOWN_COUNTER_FP:
set_sum(m, fam);
return;
}
break;
}
- case METRIC_TYPE_UP_DOWN_COUNTER: {
+ case METRIC_TYPE_UP_DOWN: {
char integer[64] = {0};
- ssnprintf(integer, sizeof(integer), "%" PRId64, m->value.up_down_counter);
+ ssnprintf(integer, sizeof(integer), "%" PRId64, m->value.up_down);
int status = json_string(gen, "int64Value") || json_string(gen, integer);
if (status != 0) {
static int format_metric_kind(yajl_gen gen, metric_t const *m) {
switch (m->family->type) {
case METRIC_TYPE_GAUGE:
- case METRIC_TYPE_UP_DOWN_COUNTER:
+ case METRIC_TYPE_UP_DOWN:
case METRIC_TYPE_UP_DOWN_COUNTER_FP:
return json_string(gen, "GAUGE");
case METRIC_TYPE_COUNTER:
case METRIC_TYPE_FPCOUNTER:
case METRIC_TYPE_UP_DOWN_COUNTER_FP:
return json_string(gen, "DOUBLE");
- case METRIC_TYPE_UP_DOWN_COUNTER:
+ case METRIC_TYPE_UP_DOWN:
case METRIC_TYPE_COUNTER:
return json_string(gen, "INT64");
case METRIC_TYPE_UNTYPED:
return EAGAIN;
}
break;
- case METRIC_TYPE_UP_DOWN_COUNTER:
+ case METRIC_TYPE_UP_DOWN:
break;
case METRIC_TYPE_UP_DOWN_COUNTER_FP:
if (!isfinite(m->value.up_down_counter_fp)) {
#define DS_TYPE_COUNTER METRIC_TYPE_COUNTER
#define DS_TYPE_GAUGE METRIC_TYPE_GAUGE
-#define DS_TYPE_DERIVE METRIC_TYPE_UP_DOWN_COUNTER
+#define DS_TYPE_DERIVE METRIC_TYPE_UP_DOWN
#define DS_TYPE_TO_STRING(t) \
(t == DS_TYPE_COUNTER) ? "counter" \
char *type = NULL;
switch (pfam->type) {
case METRIC_TYPE_GAUGE:
- case METRIC_TYPE_UP_DOWN_COUNTER:
+ case METRIC_TYPE_UP_DOWN:
case METRIC_TYPE_UP_DOWN_COUNTER_FP:
type = "gauge";
break;
"\n",
},
{
- .name = "METRIC_TYPE_UP_DOWN_COUNTER",
+ .name = "METRIC_TYPE_UP_DOWN",
.pfam =
{
.name = "unit_test",
- .type = METRIC_TYPE_UP_DOWN_COUNTER,
+ .type = METRIC_TYPE_UP_DOWN,
.metrics =
(prometheus_metric_t[]){
- {.value.up_down_counter = 42},
+ {.value.up_down = 42},
},
.metrics_num = 1,
},