X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fload.c;h=c9f130b7864609bf31b68aad4dfc4b4508a7e2e6;hb=e4b274ed754af52196d3390b8ce101a7f94e318a;hp=7be594d15f26bd8b9a7de2c08f9b93b12716eff1;hpb=dc80c73c20ef0e69c3850fd9679a827ad79e61a1;p=collectd.git diff --git a/src/load.c b/src/load.c index 7be594d1..c9f130b7 100644 --- a/src/load.c +++ b/src/load.c @@ -1,6 +1,6 @@ /** * collectd - src/load.c - * Copyright (C) 2005,2006 Florian octo Forster + * Copyright (C) 2005-2007 Florian octo Forster * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the @@ -23,12 +23,6 @@ #include "common.h" #include "plugin.h" -#if defined(HAVE_GETLOADAVG) || defined(KERNEL_LINUX) || defined(HAVE_LIBSTATGRAB) -# define LOAD_HAVE_READ 1 -#else -# define LOAD_HAVE_READ 0 -#endif - #ifdef HAVE_SYS_LOADAVG_H #include #endif @@ -41,19 +35,6 @@ #endif #endif /* defined(HAVE_GETLOADAVG) */ -static data_source_t dsrc[3] = -{ - {"shortterm", DS_TYPE_GAUGE, 0.0, 100.0}, - {"midterm", DS_TYPE_GAUGE, 0.0, 100.0}, - {"longterm", DS_TYPE_GAUGE, 0.0, 100.0} -}; - -static data_set_t ds = -{ - "load", 3, dsrc -}; - -#if LOAD_HAVE_READ static void load_submit (gauge_t snum, gauge_t mnum, gauge_t lnum) { value_t values[3]; @@ -100,7 +81,7 @@ static int load_read (void) char errbuf[1024]; WARNING ("load: fopen: %s", sstrerror (errno, errbuf, sizeof (errbuf))); - return; + return (-1); } if (fgets (buffer, 16, loadavg) == NULL) @@ -109,7 +90,7 @@ static int load_read (void) WARNING ("load: fgets: %s", sstrerror (errno, errbuf, sizeof (errbuf))); fclose (loadavg); - return; + return (-1); } if (fclose (loadavg)) @@ -122,7 +103,7 @@ static int load_read (void) numfields = strsplit (buffer, fields, 8); if (numfields < 3) - return; + return (-1); snum = atof (fields[0]); mnum = atof (fields[1]); @@ -143,19 +124,16 @@ static int load_read (void) lnum = ls->min15; load_submit (snum, mnum, lnum); -#endif /* HAVE_LIBSTATGRAB */ +/* #endif HAVE_LIBSTATGRAB */ + +#else +# error "No applicable input method." +#endif return (0); } -#endif /* LOAD_HAVE_READ */ -void module_register (modreg_e load) +void module_register (void) { - if (load & MR_DATASETS) - plugin_register_data_set (&ds); - -#if LOAD_HAVE_READ - if (load & MR_READ) - plugin_register_read ("load", load_read); -#endif + plugin_register_read ("load", load_read); } /* void module_register */