X-Git-Url: https://git.octo.it/?p=collectd.git;a=blobdiff_plain;f=src%2Fprocesses.c;h=d73d24a2a064488c030b79040e98f26ad49239d5;hp=de03b343effce75666bcf2ce6e81b3aa8cd4770f;hb=77ca1a45bab2f6adf9301723d0db68e5813a6d98;hpb=8289f37f99c34515b83fdb1b1d5a3207595800e6 diff --git a/src/processes.c b/src/processes.c index de03b343..d73d24a2 100644 --- a/src/processes.c +++ b/src/processes.c @@ -685,7 +685,8 @@ static int ps_config(oconfig_item_t *ci) { #if KERNEL_LINUX || KERNEL_SOLARIS || KERNEL_FREEBSD if (strlen(c->values[0].value.string) > max_procname_len) { - WARNING("processes plugin: this platform has a %zu character limit " + WARNING("processes plugin: this platform has a %" PRIsz + " character limit " "to process names. The `Process \"%s\"' option will " "not work as expected.", max_procname_len, c->values[0].value.string); @@ -903,24 +904,24 @@ static void ps_submit_proc_list(procstat_t *ps) { plugin_dispatch_values(&vl); } - /* The ps->delay_* metrics are in nanoseconds per second. This factor converts - * them to a percentage. */ - gauge_t const delay_factor = 100.0 / 1000000000.0; + /* The ps->delay_* metrics are in nanoseconds per second. Convert to seconds + * per second. */ + gauge_t const delay_factor = 1000000000.0; struct { char *type_instance; gauge_t rate_ns; } delay_metrics[] = { - {"cpu", ps->delay_cpu}, - {"blkio", ps->delay_blkio}, - {"swapin", ps->delay_swapin}, - {"freepages", ps->delay_freepages}, + {"delay-cpu", ps->delay_cpu}, + {"delay-blkio", ps->delay_blkio}, + {"delay-swapin", ps->delay_swapin}, + {"delay-freepages", ps->delay_freepages}, }; for (size_t i = 0; i < STATIC_ARRAY_SIZE(delay_metrics); i++) { if (isnan(delay_metrics[i].rate_ns)) { continue; } - sstrncpy(vl.type, "percent", sizeof(vl.type)); + sstrncpy(vl.type, "delay_rate", sizeof(vl.type)); sstrncpy(vl.type_instance, delay_metrics[i].type_instance, sizeof(vl.type_instance)); vl.values[0].gauge = delay_metrics[i].rate_ns * delay_factor; @@ -1248,10 +1249,6 @@ static int ps_delay(process_entry_t *ps) { return 0; } -#else -static int ps_delay(__attribute__((unused)) process_entry_t *unused) { - return -1; -} #endif static void ps_fill_details(const procstat_t *ps, process_entry_t *entry) { @@ -1339,7 +1336,8 @@ static int ps_read_process(long pid, process_entry_t *ps, char *state) { /* Either '(' or ')' is not found or they are in the wrong order. * Anyway, something weird that shouldn't happen ever. */ if (name_start_pos >= name_end_pos) { - ERROR("processes plugin: name_start_pos = %zu >= name_end_pos = %zu", + ERROR("processes plugin: name_start_pos = %" PRIsz + " >= name_end_pos = %" PRIsz, name_start_pos, name_end_pos); return -1; } @@ -1573,7 +1571,7 @@ static char *ps_get_cmdline(long pid, if ((status < 0) || (((size_t)status) != sizeof(info))) { ERROR("processes plugin: Unexpected return value " "while reading \"%s\": " - "Returned %zd but expected %zu.", + "Returned %zd but expected %" PRIsz ".", path, status, buffer_size); return NULL; }