X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fswap.c;h=f9debc1b595a4e405bc3b11fad25716b2db2245c;hb=10075e6fe3c384b73c2dd398a1435f8d10e56654;hp=f03a5a9ef930186ecf7e4461b795fff6918da039;hpb=79d36d9eb61ac09f253769feff144383b2b665c9;p=collectd.git diff --git a/src/swap.c b/src/swap.c index f03a5a9e..f9debc1b 100644 --- a/src/swap.c +++ b/src/swap.c @@ -36,26 +36,13 @@ # include #endif -#if KERNEL_LINUX || HAVE_LIBKSTAT || defined(VM_SWAPUSAGE) || HAVE_LIBKVM || HAVE_LIBSTATGRAB -# define SWAP_HAVE_READ 1 -#else -# define SWAP_HAVE_READ 0 +#if HAVE_STATGRAB_H +# include #endif #undef MAX #define MAX(x,y) ((x) > (y) ? (x) : (y)) -static data_source_t data_source[1] = -{ - {"value", DS_TYPE_GAUGE, 0, 1099511627776.0} -}; - -static data_set_t data_set = -{ - "swap", 1, data_source -}; - -#if SWAP_HAVE_READ #if KERNEL_LINUX /* No global variables */ /* #endif KERNEL_LINUX */ @@ -76,6 +63,10 @@ int kvm_pagesize; #elif HAVE_LIBSTATGRAB /* No global variables */ +/* #endif HAVE_LIBSTATGRAB */ + +#else +# error "No applicable input method." #endif /* HAVE_LIBSTATGRAB */ static int swap_init (void) @@ -111,7 +102,7 @@ static int swap_init (void) NULL)) /* errstr */ == NULL) { - syslog (LOG_ERR, "swap plugin: kvm_open failed."); + ERROR ("swap plugin: kvm_open failed."); return (-1); } /* #endif HAVE_LIBKVM */ @@ -133,11 +124,12 @@ static void swap_submit (const char *type_instance, double value) vl.values = values; vl.values_len = 1; vl.time = time (NULL); - strcpy (vl.host, hostname); - strcpy (vl.plugin, "swap"); - strncpy (vl.type_instance, type_instance, sizeof (vl.type_instance)); + sstrncpy (vl.host, hostname_g, sizeof (vl.host)); + sstrncpy (vl.plugin, "swap", sizeof (vl.plugin)); + sstrncpy (vl.type, "swap", sizeof (vl.type)); + sstrncpy (vl.type_instance, type_instance, sizeof (vl.type_instance)); - plugin_dispatch_values ("swap", &vl); + plugin_dispatch_values (&vl); } /* void swap_submit */ static int swap_read (void) @@ -156,7 +148,9 @@ static int swap_read (void) if ((fh = fopen ("/proc/meminfo", "r")) == NULL) { - syslog (LOG_WARNING, "memory: fopen: %s", strerror (errno)); + char errbuf[1024]; + WARNING ("memory: fopen: %s", + sstrerror (errno, errbuf, sizeof (errbuf))); return (-1); } @@ -182,7 +176,11 @@ static int swap_read (void) } if (fclose (fh)) - syslog (LOG_WARNING, "memory: fclose: %s", strerror (errno)); + { + char errbuf[1024]; + WARNING ("memory: fclose: %s", + sstrerror (errno, errbuf, sizeof (errbuf))); + } if ((swap_total == 0LL) || ((swap_free + swap_cached) > swap_total)) return (-1); @@ -203,8 +201,9 @@ static int swap_read (void) if (swapctl (SC_AINFO, &ai) == -1) { - syslog (LOG_ERR, "swap plugin: swapctl failed: %s", - strerror (errno)); + char errbuf[1024]; + ERROR ("swap plugin: swapctl failed: %s", + sstrerror (errno, errbuf, sizeof (errbuf))); return (-1); } @@ -238,7 +237,7 @@ static int swap_read (void) swap_submit ("used", swap_alloc); swap_submit ("free", swap_avail); - swap_submit ("reserved", swap_resv - swap_alloc); + swap_submit ("reserved", swap_resv); /* #endif HAVE_LIBKSTAT */ #elif defined(VM_SWAPUSAGE) @@ -303,14 +302,9 @@ static int swap_read (void) return (0); } /* int swap_read */ -#endif /* SWAP_HAVE_READ */ void module_register (void) { - plugin_register_data_set (&data_set); - -#if SWAP_HAVE_READ plugin_register_init ("swap", swap_init); plugin_register_read ("swap", swap_read); -#endif /* SWAP_HAVE_READ */ -} +} /* void module_register */