]> git.ipfire.org Git - collecty.git/blobdiff - collectyd
Add plugin to collect traffic data from interfaces.
[collecty.git] / collectyd
index a67dc36cf08d12e8ff3446dec9ef5b42e1e9054d..32caafa064e8e9aa76df824b1e1565406bed74c1 100755 (executable)
--- a/collectyd
+++ b/collectyd
@@ -1,35 +1,48 @@
 #!/usr/bin/python
+###############################################################################
+#                                                                             #
+# collecty - A system statistics collection daemon for IPFire                 #
+# Copyright (C) 2012 IPFire development team                                  #
+#                                                                             #
+# 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 Free Software Foundation, either version 3 of the License, or           #
+# (at your option) any later version.                                         #
+#                                                                             #
+# This program is distributed in the hope that it will be useful,             #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
+# GNU General Public License for more details.                                #
+#                                                                             #
+# You should have received a copy of the GNU General Public License           #
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
+#                                                                             #
+###############################################################################
 
-import os
-import sys
-
-import daemon
 import optparse
+import sys
 
 import collecty
 
-c = collecty.Collecty()
-
-# Parse command line options
+# Parse command line options.
 op = optparse.OptionParser(usage="usage: %prog [options] <configfile1> ... <configfileN>")
-op.add_option("-d", "--daemon", action="store_true", default=False,
-               help="Run as a daemon in background.")
+op.add_option("-d", "--debug", action="store_true", default=False,
+               help="Enable debug logging.")
 (options, configfiles) = op.parse_args()
 
-if configfiles:
-       for file in configfiles:
-               c.read_config(file)
-else:
-       # Load default config file
-       c.read_config("/etc/collecty/collecty.conf")
+# Initialize the settings for this Collecty instance.
+settings = {
+       "debug" : options.debug,
+}
+
+# Initialize the application.
+c = collecty.Collecty(**settings)
 
-if not c.instances:
-       print >>sys.stderr, "Error: No instances were configured."
-       sys.exit(1)
+# Read all configuration files.
+for configfile in configfiles:
+       c.read_config(configfile)
 
-if options.daemon:
-       with daemon.DaemonContext(stdout=sys.stdout, stderr=sys.stderr):
-               c.run()
-else:
-       c.run()
+# Run.
+c.run()
 
+sys.exit(0)