Re: [PATCH] KVM test: Make kvm_config.py to use autotest logging

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



How can we set the verbosity level for stand-alone execution, e.g.
enable/disable debug output when running ./kvm_config.py kvm_tests.cfg?

----- Original Message -----
From: "Lucas Meneghel Rodrigues" <lmr@xxxxxxxxxx>
To: autotest@xxxxxxxxxxxxxxx
Cc: kvm@xxxxxxxxxxxxxxx, mgoldish@xxxxxxxxxx, "Lucas Meneghel Rodrigues" <lmr@xxxxxxxxxx>
Sent: Saturday, August 8, 2009 8:37:14 PM (GMT+0200) Auto-Detected
Subject: [PATCH] KVM test: Make kvm_config.py to use autotest logging

Make kvm_config.py be able to use the autotest logging
infrastructure even in stand alone mode. This way we
get the ability of having selective debug mode, and
just use the cleaner logging.[debuglevel]('message')
syntax instead of resorting to hardcoded [LEVEL]
strings in any message.

Signed-off-by: Lucas Meneghel Rodrigues <lmr@xxxxxxxxxx>
---
 client/tests/kvm/kvm_config.py |   26 ++++++++++++++++++--------
 1 files changed, 18 insertions(+), 8 deletions(-)

diff --git a/client/tests/kvm/kvm_config.py b/client/tests/kvm/kvm_config.py
index 7ff7a07..e2cf5be 100755
--- a/client/tests/kvm/kvm_config.py
+++ b/client/tests/kvm/kvm_config.py
@@ -1,7 +1,8 @@
 #!/usr/bin/python
-import re, os, sys, StringIO
+import logging, re, os, sys, StringIO
 import common
 from autotest_lib.client.common_lib import error
+from autotest_lib.client.common_lib import logging_config, logging_manager
 
 """
 KVM configuration file utility functions.
@@ -9,6 +10,12 @@ KVM configuration file utility functions.
 @copyright: Red Hat 2008-2009
 """
 
+class KvmLoggingConfig(logging_config.LoggingConfig):
+    def configure_logging(self, results_dir=None, verbose=False):
+        super(KvmLoggingConfig, self).configure_logging(use_console=True,
+                                                        verbose=verbose)
+
+
 class config:
     """
     Parse an input file or string that follows the KVM Test Config File format
@@ -413,11 +420,11 @@ class config:
                         if self.debug and not restricted:
                             self.__debug_print("", "Leaving file %s" % words[1])
                     else:
-                        print ("WARNING: Cannot include %s -- "
-                               "file not found" % filename)
+                        logging.warning("Cannot include %s -- file not found",
+                                        filename)
                 else:
-                    print ("WARNING: Cannot include %s because no file is "
-                           "currently open" % words[1])
+                    logging.warning("Cannot include %s because no file is "
+                                    "currently open", words[1])
 
             # Parse multi-line exceptions
             # (the block is parsed for each dict separately)
@@ -462,7 +469,7 @@ class config:
             str = "%-50s ---> %s" % (str1, str2)
         else:
             str = str1
-        print str
+        logging.debug(str)
 
 
     def __modify_list_variants(self, list, name, dep_list, add_to_shortname):
@@ -519,12 +526,15 @@ if __name__ == "__main__":
         filename = sys.argv[1]
     else:
         filename = os.path.join(os.path.dirname(sys.argv[0]), "kvm_tests.cfg")
+    # Here we configure the stand alone program to use the autotest
+    # logging system.
+    logging_manager.configure_logging(KvmLoggingConfig(), verbose=True)
     list = config(filename, debug=True).get_list()
     i = 0
     for dict in list:
-        print "Dictionary #%d:" % i
+        logging.debug("Dictionary #%d:", i)
         keys = dict.keys()
         keys.sort()
         for key in keys:
-            print "    %s = %s" % (key, dict[key])
+            logging.debug("    %s = %s", key, dict[key])
         i += 1
-- 
1.6.2.5

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux