Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGustavo Duarte <gustavo@GusHP.(none)>2013-04-02 19:19:30 (GMT)
committer Gustavo Duarte <gustavo@GusHP.(none)>2013-04-02 19:19:30 (GMT)
commit673298364682bde1ed9447dd55bdb6c4fd1f60f7 (patch)
treefc3dc2457723303b2b85a356732594cc4217bd0f
parentc2f574edf033d2e4c09bce8504a618f1c51831b8 (diff)
+ rename main file
-rw-r--r--stats-consolidation.conf8
-rwxr-xr-xstats_consolidation/stats_consolidation_run93
2 files changed, 101 insertions, 0 deletions
diff --git a/stats-consolidation.conf b/stats-consolidation.conf
new file mode 100644
index 0000000..61b6d89
--- /dev/null
+++ b/stats-consolidation.conf
@@ -0,0 +1,8 @@
+[main]
+db_user=root
+db_pass=gustavo
+db_name=statistics
+
+rrd_path=/var/lib/sugar-stats/rrd
+log_path=/var/log
+log_level=debug
diff --git a/stats_consolidation/stats_consolidation_run b/stats_consolidation/stats_consolidation_run
new file mode 100755
index 0000000..7e7d0a9
--- /dev/null
+++ b/stats_consolidation/stats_consolidation_run
@@ -0,0 +1,93 @@
+#!/usr/bin/env python
+
+# Copyright (C) 2012, Gustavo Duarte
+#
+# 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 argparse
+import ConfigParser
+import logging
+import logging.handlers
+import sys, os
+
+from stats_consolidation.db import *
+from stats_consolidation.rrd_files import *
+from stats_consolidation.consolidation import *
+
+
+parser = argparse.ArgumentParser()
+parser.add_argument('--config_file', required=False)
+
+args = parser.parse_args()
+
+
+_LOG_FORMAT='[%(asctime)s]-%(levelname)s-\'%(name)s\': %(message)s'
+_LOG_LEVEL = { 'debug': logging.DEBUG,
+ 'info': logging.INFO,
+ 'warning': logging.WARNING,
+ 'error': logging.ERROR,
+ 'critical': logging.CRITICAL}
+
+log=None
+
+def main():
+
+ config = ConfigParser.ConfigParser()
+ if (args.config_file == None):
+ config_file = "/etc/stats-consolidation.conf"
+ else:
+ config_file = args.config_file
+
+ config.read(config_file)
+
+ log_path = config.get('main', 'log_path')
+ log_level = config.get('main', 'log_level')
+ db_name = config.get('main', 'db_name')
+ db_user = config.get('main', 'db_user')
+ db_pass = config.get('main', 'db_pass')
+ rrd_path = config.get('main', 'rrd_path')
+ LOG_FILENAME = os.path.join(log_path,'stats-consolidation.log')
+
+ # Add the log message handler to the logger
+ handler = logging.handlers.RotatingFileHandler(LOG_FILENAME, maxBytes=10000000, backupCount=5)
+ log = logging.getLogger("stats-consolidation")
+ log.setLevel(_LOG_LEVEL[log_level])
+ log.addHandler(handler)
+
+ log.info('**************************************')
+ log.info(' Starting consolidation ')
+ log.info('**************************************')
+
+ try:
+ db = DB_Stats (db_name, db_user, db_pass)
+ db.create()
+ except Exception as e:
+ log.warning('Creating DB: %s', str(e))
+
+
+ try:
+ con = Consolidation(rrd_path, db)
+ con.process_rrds()
+ db.close()
+
+ log.info('**************************************')
+ log.info(' Finish consolidation ')
+ log.info('**************************************')
+ except Exception as e:
+ log.warning('Processing rrd file: %s', str(e))
+
+
+
+if __name__ == '__main__':
+ main()