From patchwork Sat Aug 8 18:32:35 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Michael Goldish X-Patchwork-Id: 40190 Received: from vger.kernel.org (vger.kernel.org [209.132.176.167]) by demeter.kernel.org (8.14.2/8.14.2) with ESMTP id n78IWgPN015153 for ; Sat, 8 Aug 2009 18:32:42 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752818AbZHHSci (ORCPT ); Sat, 8 Aug 2009 14:32:38 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1752797AbZHHSci (ORCPT ); Sat, 8 Aug 2009 14:32:38 -0400 Received: from mx1.redhat.com ([66.187.233.31]:34572 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752793AbZHHSch (ORCPT ); Sat, 8 Aug 2009 14:32:37 -0400 Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254]) by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id n78IWbMJ019315; Sat, 8 Aug 2009 14:32:37 -0400 Received: from mail05.corp.redhat.com (zmail05.collab.prod.int.phx2.redhat.com [10.5.5.46]) by int-mx1.corp.redhat.com (8.13.1/8.13.1) with ESMTP id n78IWZ5W006123; Sat, 8 Aug 2009 14:32:35 -0400 Date: Sat, 8 Aug 2009 14:32:35 -0400 (EDT) From: Michael Goldish To: Lucas Meneghel Rodrigues Cc: kvm@vger.kernel.org, autotest@test.kernel.org Message-ID: <529841156.1662861249756355515.JavaMail.root@zmail05.collab.prod.int.phx2.redhat.com> In-Reply-To: <17046102.1662751249756185230.JavaMail.root@zmail05.collab.prod.int.phx2.redhat.com> Subject: Re: [PATCH] KVM test: Make kvm_config.py to use autotest logging MIME-Version: 1.0 X-Originating-IP: [10.5.5.71] X-Scanned-By: MIMEDefang 2.58 on 172.16.52.254 Sender: kvm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org 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" To: autotest@test.kernel.org Cc: kvm@vger.kernel.org, mgoldish@redhat.com, "Lucas Meneghel Rodrigues" 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 --- 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