X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Futils_rrdcreate.c;h=47bf9f66961550d788f82ef160058681a670301a;hb=f6fa5e18f901664a445699b54cf0afe5a3078176;hp=c4e9d8ba9bdeb30778fcba3cecd98b4a63335e25;hpb=f50ada19dcd0dc6185dc4b410e721d46d1caba9f;p=collectd.git diff --git a/src/utils_rrdcreate.c b/src/utils_rrdcreate.c index c4e9d8ba..47bf9f66 100644 --- a/src/utils_rrdcreate.c +++ b/src/utils_rrdcreate.c @@ -153,7 +153,7 @@ static int rra_get (char ***ret, const value_list_t *vl, /* {{{ */ if (rra_num >= rra_max) break; - status = ssnprintf (buffer, sizeof (buffer), "RRA:%s:%3.1f:%u:%u", + status = ssnprintf (buffer, sizeof (buffer), "RRA:%s:%.10f:%u:%u", rra_types[j], cfg->xff, cdp_len, cdp_num); if ((status < 0) || ((size_t) status >= sizeof (buffer))) @@ -213,6 +213,10 @@ static int ds_get (char ***ret, /* {{{ */ type = "COUNTER"; else if (d->type == DS_TYPE_GAUGE) type = "GAUGE"; + else if (d->type == DS_TYPE_DERIVE) + type = "DERIVE"; + else if (d->type == DS_TYPE_ABSOLUTE) + type = "ABSOLUTE"; else { ERROR ("rrdtool plugin: Unknown DS type: %i", @@ -225,14 +229,14 @@ static int ds_get (char ***ret, /* {{{ */ sstrncpy (min, "U", sizeof (min)); } else - ssnprintf (min, sizeof (min), "%lf", d->min); + ssnprintf (min, sizeof (min), "%f", d->min); if (isnan (d->max)) { sstrncpy (max, "U", sizeof (max)); } else - ssnprintf (max, sizeof (max), "%lf", d->max); + ssnprintf (max, sizeof (max), "%f", d->max); status = ssnprintf (buffer, sizeof (buffer), "DS:%s:%s:%i:%s:%s", @@ -394,10 +398,9 @@ int cu_rrd_create_file (const char *filename, /* {{{ */ memcpy (argv + ds_num, rra_def, rra_num * sizeof (char *)); argv[ds_num + rra_num] = NULL; - assert (vl->time > 10); status = srrd_create (filename, (cfg->stepsize > 0) ? cfg->stepsize : vl->interval, - vl->time - 10, + (vl->time > 10) ? (vl->time - 10) : vl->time, argc, (const char **) argv); free (argv);