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

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

 



On Sat, Aug 8, 2009 at 3:32 PM, Michael Goldish<mgoldish@xxxxxxxxxx> wrote:
> 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?

On the main program execution we could add a OptionParser instance
that parses a --verbose flag, and we pass verbose to the logging
system config statement

logging_manager.configure_logging(KvmLoggingConfig(), verbose=True)

I will re-write the patch with that, thanks!

> ----- 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
>
> _______________________________________________
> Autotest mailing list
> Autotest@xxxxxxxxxxxxxxx
> http://test.kernel.org/cgi-bin/mailman/listinfo/autotest
>



-- 
Lucas Meneghel
--
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