#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);
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;
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;
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) {
/* 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;
}
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;
}