From 82c069dabfff10bb918dcd8e154612fe3baa870f Mon Sep 17 00:00:00 2001 From: niki Date: Thu, 15 Dec 2005 12:11:40 +0000 Subject: [PATCH] add comments and added/changed options that can be passed to collectd. --- src/Makefile.am | 7 +++++- src/collectd.c | 59 +++++++++++++++++++++++++--------------------- src/collectd.h | 34 +++++++++++++------------- src/quota_mnt.c | 5 ++-- src/quota_plugin.c | 29 ++++++++++++++++------- src/quota_plugin.h | 2 -- src/utils_debug.c | 3 +-- 7 files changed, 79 insertions(+), 60 deletions(-) diff --git a/src/Makefile.am b/src/Makefile.am index fe1076b7..11a08629 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -11,7 +11,11 @@ collectd_SOURCES = collectd.c collectd.h \ multicast.c multicast.h \ plugin.c plugin.h #collectd_CFLAGS = -DPLUGINDIR='"$(pkglibdir)"' -collectd_CPPFLAGS = -DLOCALSTATEDIR='"$(localstatedir)"' -DPLUGINDIR='"$(pkglibdir)"' +collectd_CPPFLAGS = +collectd_CPPFLAGS += -DSYSCONFDIR='"${sysconfdir}"' +collectd_CPPFLAGS += -DPKGLOCALSTATEDIR='"${localstatedir}/${PACKAGE_NAME}"' +collectd_CPPFLAGS += -DPIDFILE='"${localstatedir}/run/${PACKAGE_NAME}.pid"' +collectd_CPPFLAGS += -DPLUGINDIR='"${pkglibdir}"' collectd_LDFLAGS = -export-dynamic collectd_CFLAGS = -Werror collectd_LDADD = $(LIBLTDL) "-dlopen" self @@ -152,6 +156,7 @@ if BUILD_MODULE_USERS pkglib_LTLIBRARIES += users.la users_la_SOURCES = users.c users.h users_la_LDFLAGS = -module -avoid-version +users_la_CFLAGS = -Werror collectd_LDADD += "-dlopen" users.la collectd_DEPENDENCIES += users.la endif diff --git a/src/collectd.c b/src/collectd.c index 633d0230..9932fd90 100644 --- a/src/collectd.c +++ b/src/collectd.c @@ -120,15 +120,19 @@ void exit_usage (char *name) "Available options:\n" " General:\n" - " -d Base directory to use.\n" + " -C Configuration directory.\n" " Default: %s\n" - " -P Set the plugin-directory\n" + " -P PID File.\n" " Default: %s\n" - " -f Don't fork to the background\n" + " -M Module/Plugin directory.\n" + " Default: %s\n" + " -D Data storage directory.\n" + " Default: %s\n" + " -f Don't fork to the background.\n" #ifdef HAVE_LIBRRD - " -l Start in local mode (no network)\n" - " -c Start in client (sender) mode\n" - " -s Start in server (listener) mode\n" + " -l Start in local mode (no network).\n" + " -c Start in client (sender) mode.\n" + " -s Start in server (listener) mode.\n" #endif /* HAVE_LIBRRD */ #if COLLECT_PING " Ping:\n" @@ -138,7 +142,7 @@ void exit_usage (char *name) "\n%s %s, http://verplant.org/collectd/\n" "by Florian octo Forster \n" "for contributions see `AUTHORS'\n", - PACKAGE, DATADIR, PLUGINDIR, PACKAGE, VERSION); + PACKAGE, SYSCONFDIR, PIDFILE, PLUGINDIR, PKGLOCALSTATEDIR, PACKAGE, VERSION); exit (0); } @@ -238,8 +242,10 @@ int main (int argc, char **argv) pid_t pid; #endif - char *plugindir = NULL; - char *basedir = DATADIR; + char *confdir = SYSCONFDIR; + char *pidfile = PIDFILE; + char *plugindir = PLUGINDIR; + char *datadir = PKGLOCALSTATEDIR; int daemonize = 1; @@ -247,19 +253,15 @@ int main (int argc, char **argv) operating_mode = MODE_LOCAL; #endif - /* - * open syslog - */ + /* open syslog */ openlog (PACKAGE, LOG_CONS | LOG_PID, LOG_DAEMON); - /* - * read options - */ + /* read options */ while (1) { int c; - c = getopt (argc, argv, "d:fP:h" + c = getopt (argc, argv, "C:P:M:D:fh" #if HAVE_LIBRRD "csl" #endif /* HAVE_LIBRRD */ @@ -286,8 +288,17 @@ int main (int argc, char **argv) operating_mode = MODE_LOCAL; break; #endif /* HAVE_LIBRRD */ - case 'd': - basedir = optarg; + case 'C': + confdir = optarg; + break; + case 'P': + pidfile = optarg; + break; + case 'M': + plugindir = optarg; + break; + case 'D': + datadir = optarg; break; case 'f': daemonize = 0; @@ -300,10 +311,6 @@ int main (int argc, char **argv) fprintf (stderr, "Maximum of %i ping hosts reached.\n", MAX_PINGHOSTS); break; #endif /* COLLECT_PING */ - case 'P': - plugindir = optarg; - break; - case 'h': default: exit_usage (argv[0]); @@ -321,9 +328,9 @@ int main (int argc, char **argv) return (1); } - if (change_basedir (basedir)) + if (change_basedir (datadir)) { - fprintf (stderr, "Error: Unable to change to directory `%s'.\n", basedir); + fprintf (stderr, "Error: Unable to change to directory `%s'.\n", datadir); return (1); } @@ -395,9 +402,7 @@ int main (int argc, char **argv) #endif start_client (); - /* - * close syslog - */ + /* close syslog */ syslog (LOG_INFO, "Exiting normally"); closelog (); diff --git a/src/collectd.h b/src/collectd.h index 1614483a..0b63aa1a 100644 --- a/src/collectd.h +++ b/src/collectd.h @@ -97,6 +97,24 @@ # include #endif +#if HAVE_SYSLOG +# define syslog(...) syslog(__VA_ARGS__) +# if HAVE_OPENLOG +# define openlog(...) openlog(__VA_ARGS__) +# else +# define openlog(...) /**/ +# endif +# if HAVE_CLOSELOG +# define closelog(...) closelog(__VA_ARGS__) +# else +# define closelog(...) /**/ +# endif +#else +# define syslog(...) /**/ +# define openlog(...) /**/ +# define closelog(...) /**/ +#endif + #ifndef HAVE_RRD_H #undef HAVE_LIBRRD #endif @@ -124,22 +142,6 @@ #include #endif -#ifndef LOCALSTATEDIR -#define LOCALSTATEDIR "/opt/collectd/var" -#endif - -#ifndef DATADIR -#define DATADIR LOCALSTATEDIR"/lib/collectd" -#endif - -#ifndef PLUGINDIR -#define PLUGINDIR "/opt/collectd/lib/collectd" -#endif - -#ifndef PIDFILE -#define PIDFILE LOCALSTATEDIR"/run/collectd.pid" -#endif - #define MODE_SERVER 0x01 #define MODE_CLIENT 0x02 #define MODE_LOCAL 0x03 diff --git a/src/quota_mnt.c b/src/quota_mnt.c index 53e1f991..ed42c763 100644 --- a/src/quota_mnt.c +++ b/src/quota_mnt.c @@ -33,9 +33,8 @@ -/* *** *** *** local functions *** *** *** */ - - +/* *** *** *** ********************* *** *** *** */ +/* *** *** *** private functions *** *** *** */ #if 0 #if HAVE_GETMNTENT diff --git a/src/quota_plugin.c b/src/quota_plugin.c index 6dac92c0..eb39aed3 100644 --- a/src/quota_plugin.c +++ b/src/quota_plugin.c @@ -31,10 +31,10 @@ #define MODULE_NAME "quota" -/* *** *** *** local constants *** *** *** */ +/* *** *** *** ********************* *** *** *** */ +/* *** *** *** private constants *** *** *** */ static const char *quota_filename_template = MODULE_NAME "-%s.rrd"; - static char *quota_ds_def[] = { "DS:blocks:GAUGE:25:0:U", @@ -51,7 +51,13 @@ static char *quota_ds_def[] = }; static const int quota_ds_num = 10; -/* *** *** *** local functions *** *** *** */ +static void quota_submit(quota_t *q); +static void quota_init(void); +static void quota_read(void); +static void quota_write(char *host, char *inst, char *val); + +/* *** *** *** ********************* *** *** *** */ +/* *** *** *** private functions *** *** *** */ #define BUFSIZE 1024 static void @@ -70,6 +76,9 @@ quota_submit(quota_t *q) DBG("failed"); return; } + /* quota---- */ + /* quota-usrquota-niki-500-_img.rrd */ + /* the '/' are converted to '_'... */ n = name = (char *)smalloc(strlen(q->type) + 1 + strlen(q->name) + 1 + strlen(q->id) + 1 + strlen(q->dir) + 1); sstrncpy(n, q->type, strlen(q->type)+1); @@ -100,13 +109,14 @@ quota_submit(quota_t *q) } /* static void quota_submit(quota_t *q) */ #undef BUFSIZE -/* *** *** *** local plugin functions *** *** *** */ +/* *** *** *** **************************** *** *** *** */ +/* *** *** *** private plugin functions *** *** *** */ static void quota_init(void) { DBG_STARTFILE("quota debug file opened."); -} +} /* static void quota_init(void) */ static void quota_read(void) @@ -172,7 +182,7 @@ quota_read(void) quota_fs_freequota(quota); quota_mnt_freelist(list); -} +} /* static void quota_read(void) */ static void quota_write(char *host, char *inst, char *val) @@ -187,13 +197,14 @@ quota_write(char *host, char *inst, char *val) } rrd_update_file(host, file, val, quota_ds_def, quota_ds_num); -} +} /* static void quota_write(char *host, char *inst, char *val) */ -/* *** *** *** global functions *** *** *** */ +/* *** *** *** ******************** *** *** *** */ +/* *** *** *** public functions *** *** *** */ void module_register(void) { plugin_register(MODULE_NAME, quota_init, quota_read, quota_write); -} +} /* void module_register(void) */ diff --git a/src/quota_plugin.h b/src/quota_plugin.h index 6dea2aab..cb647859 100644 --- a/src/quota_plugin.h +++ b/src/quota_plugin.h @@ -24,8 +24,6 @@ #if !COLLECTD_QUOTA_PLUGIN_H #define COLLECTD_QUOTA_PLUGIN_H 1 -#include "common.h" - void module_register(void); #endif /* !COLLECTD_QUOTA_PLUGIN_H */ diff --git a/src/utils_debug.c b/src/utils_debug.c index db59525e..5b1900dd 100644 --- a/src/utils_debug.c +++ b/src/utils_debug.c @@ -23,7 +23,6 @@ #include "common.h" #include "utils_debug.h" -/* *** *** *** global variables *** *** *** */ #if COLLECT_DEBUG #define DEFAULT_FILENAME "collectd.log" @@ -32,7 +31,7 @@ static void cu_vdebug(const char *file, int line, const char *func, const char *format, va_list ap); /* if preemptive threads are used, these vars need some sort of locking! */ -/* pth is non-preemptive, so no locking is necessary (?) */ +/* pth is non-preemptive, so no locking is necessary */ static FILE *cu_debug_file = NULL; static char *cu_debug_filename = NULL; -- 2.30.2