X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fdaemon%2Fcollectd.c;h=2fce643d8d83113b8090cb16aa024786f4a6829e;hb=2ce1db8202b1eba6da45b347c0c81a508f8c088a;hp=6f299174ad8ea38af32fc630d47f208905864dea;hpb=82c9b0daf5ff90d01f4a4371f11727cd613e4b01;p=collectd.git diff --git a/src/daemon/collectd.c b/src/daemon/collectd.c index 6f299174..2fce643d 100644 --- a/src/daemon/collectd.c +++ b/src/daemon/collectd.c @@ -35,8 +35,6 @@ #include #include -#include - #if HAVE_LOCALE_H # include #endif @@ -54,7 +52,6 @@ */ char hostname_g[DATA_MAX_NAME_LEN]; cdtime_t interval_g; -int pidfile_from_cli = 0; int timeout_g; #if HAVE_LIBKSTAT kstat_ctl_t *kc; @@ -196,7 +193,7 @@ static int change_basedir (const char *orig_dir) while ((dirlen > 0) && (dir[dirlen - 1] == '/')) dir[--dirlen] = '\0'; - if (dirlen <= 0) { + if (dirlen == 0) { free (dir); return (-1); } @@ -332,9 +329,7 @@ static int do_init (void) } #endif - plugin_init_all (); - - return (0); + return plugin_init_all (); } /* int do_init () */ @@ -388,8 +383,7 @@ static int do_loop (void) static int do_shutdown (void) { - plugin_shutdown_all (); - return (0); + return plugin_shutdown_all (); } /* int do_shutdown */ #if COLLECT_DAEMON @@ -554,15 +548,14 @@ int main (int argc, char **argv) break; case 'T': test_readall = 1; - global_option_set ("ReadThreads", "-1"); + global_option_set ("ReadThreads", "-1", 1); #if COLLECT_DAEMON daemonize = 0; #endif /* COLLECT_DAEMON */ break; #if COLLECT_DAEMON case 'P': - global_option_set ("PIDFile", optarg); - pidfile_from_cli = 1; + global_option_set ("PIDFile", optarg, 1); break; case 'f': daemonize = 0; @@ -729,12 +722,19 @@ int main (int argc, char **argv) /* * run the actual loops */ - do_init (); + if (do_init () != 0) + { + ERROR ("Error: one or more plugin init callbacks failed."); + exit_status = 1; + } if (test_readall) { if (plugin_read_all_once () != 0) + { + ERROR ("Error: one or more plugin read callbacks failed."); exit_status = 1; + } } else { @@ -745,7 +745,11 @@ int main (int argc, char **argv) /* close syslog */ INFO ("Exiting normally."); - do_shutdown (); + if (do_shutdown () != 0) + { + ERROR ("Error: one or more plugin shutdown callbacks failed."); + exit_status = 1; + } #if COLLECT_DAEMON if (daemonize)