X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fvmem.c;h=b1c02a67a0c0f73568b6469902b99632327feae2;hb=5a223866595c0d7eb032c3c4fc3c7cd148e59f99;hp=56997bf14f54f0a812a3cdb7c5cc17b4b867b517;hpb=ba2ee9aec4c0454eed8f29b4c6ce96c6fc372346;p=collectd.git diff --git a/src/vmem.c b/src/vmem.c index 56997bf1..b1c02a67 100644 --- a/src/vmem.c +++ b/src/vmem.c @@ -150,8 +150,16 @@ static int vmem_read (void) if (strncmp ("nr_", key, strlen ("nr_")) == 0) { char *inst = key + strlen ("nr_"); - value_t value = { .gauge = gauge }; - submit_one (NULL, "vmpage_number", inst, value); + if (strcmp(inst, "dirtied") == 0 || strcmp(inst, "written") == 0) + { + value_t value = { .derive = counter }; + submit_one (NULL, "vmpage_action", inst, value); + } + else + { + value_t value = { .gauge = gauge }; + submit_one (NULL, "vmpage_number", inst, value); + } } /* @@ -214,6 +222,19 @@ static int vmem_read (void) value_t value = { .derive = counter }; submit_one (inst, "vmpage_action", "refill", value); } + else if (strncmp ("pgsteal_kswapd_", key, strlen ("pgsteal_kswapd_")) == 0) + { + char *inst = key + strlen ("pgsteal_kswapd_"); + value_t value = { .derive = counter }; + submit_one (inst, "vmpage_action", "steal_kswapd", value); + } + else if (strncmp ("pgsteal_direct_", key, strlen ("pgsteal_direct_")) == 0) + { + char *inst = key + strlen ("pgsteal_direct_"); + value_t value = { .derive = counter }; + submit_one (inst, "vmpage_action", "steal_direct", value); + } + /* For backwards compatibility (somewhen before 4.2.3) */ else if (strncmp ("pgsteal_", key, strlen ("pgsteal_")) == 0) { char *inst = key + strlen ("pgsteal_");