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]

 



----- "Lucas Meneghel Rodrigues" <lookkas@xxxxxxxxx> wrote:

> 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!

OK, but then we should get rid of the 'debug' param in config.__init__().
I hope OptionParser won't make the code much longer.

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