[rhmessaging-commits] rhmessaging commits: r2159 - mgmt/cumin/python/cumin.

rhmessaging-commits at lists.jboss.org rhmessaging-commits at lists.jboss.org
Tue Jun 24 16:28:59 EDT 2008


Author: justi9
Date: 2008-06-24 16:28:59 -0400 (Tue, 24 Jun 2008)
New Revision: 2159

Modified:
   mgmt/cumin/python/cumin/__init__.py
   mgmt/cumin/python/cumin/util.py
Log:
Add a log-level command line option.



Modified: mgmt/cumin/python/cumin/__init__.py
===================================================================
--- mgmt/cumin/python/cumin/__init__.py	2008-06-24 19:44:41 UTC (rev 2158)
+++ mgmt/cumin/python/cumin/__init__.py	2008-06-24 20:28:59 UTC (rev 2159)
@@ -144,6 +144,13 @@
         return False
 
 class CuminConfig(Config):
+    __log_levels = {
+        "debug": logging.DEBUG,
+        "info": logging.INFO,
+        "warning": logging.WARNING,
+        "error": logging.ERROR
+        }
+
     def __init__(self):
         super(CuminConfig, self).__init__()
 
@@ -167,9 +174,13 @@
 
         lpath = os.path.join(self.home, "log", "cumin.log")
         summ = ("PATH", "Log to file at PATH")
-        self.add_param("log-file",  str, lpath, summ)
+        self.add_param("log-file", str, lpath, summ)
 
-        summ = "Enable debug mode"
+        summ = ("LEVEL", "Log messages at or above LEVEL " +
+                "('debug', 'info', 'warning', 'error')")
+        self.add_param("log-level", str, "warning", summ)
+
+        summ = "Enable debug mode; print debug logging to console"
         self.add_param("debug", bool, False, summ)
 
     def init(self):
@@ -185,6 +196,24 @@
 
         mlog = logging.getLogger("mint")
 
+        level = self.get_log_level()
+        formatter = logging.Formatter \
+            ("%(asctime)s %(levelname)-8s %(message)s")
+
+        log.setLevel(level)
+        mlog.setLevel(level)
+
+        try:
+            handler = logging.FileHandler(self.log_file)
+            handler.setLevel(level)
+            handler.setFormatter(formatter)
+
+            log.addHandler(handler)
+            mlog.addHandler(handler)
+        except IOError, e:
+            clog.warn("Can't write to log file '%s': %s" % \
+                          (self.log_file, e))
+
         if self.debug:
             level = logging.DEBUG
             formatter = logging.Formatter("%(name)-12s - %(message)s")
@@ -198,21 +227,13 @@
 
             log.addHandler(handler)
             mlog.addHandler(handler)
-        else:
-            level = logging.WARN
-            formatter = logging.Formatter \
-                ("%(asctime)s %(levelname)-8s %(message)s")
 
-            log.setLevel(level)
-            mlog.setLevel(level)
-
-            try:
-                handler = logging.FileHandler(self.log_file)
-                handler.setLevel(level)
-                handler.setFormatter(formatter)
-
-                log.addHandler(handler)
-                mlog.addHandler(handler)
-            except IOError, e:
-                clog.warn("Can't write to log file '%s': %s" % \
-                              (self.log_file, e))
+    def get_log_level(self):
+        try:
+            level = self.__log_levels[self.log_level.lower()]
+        except KeyError:
+            log.warn("Level '%s' is unknown; setting level to 'warning'" % \
+                         self.log_level)
+            level = logging.WARNING
+        
+        return level

Modified: mgmt/cumin/python/cumin/util.py
===================================================================
--- mgmt/cumin/python/cumin/util.py	2008-06-24 19:44:41 UTC (rev 2158)
+++ mgmt/cumin/python/cumin/util.py	2008-06-24 20:28:59 UTC (rev 2159)
@@ -126,7 +126,7 @@
                     opt = "--%s %s" % (param.name, param.summary[0])
                     text = param.summary[1]
 
-                main = "    %-15s  %s" % (opt, text)
+                main = "    %-18s  %s" % (opt, text)
                 extra = ""
 
                 if param.default not in (None, False):
@@ -134,7 +134,7 @@
 
                 if len(main) + len(extra) > 79:
                     print main
-                    print "    %15s  %s" % ("", extra)
+                    print "    %18s  %s" % ("", extra)
                 else:
                     print main, extra
 




More information about the rhmessaging-commits mailing list