Create a static method to configure logger 67/55867/2 0.41
authorCédric Ollivier <cedric.ollivier@orange.com>
Tue, 17 Apr 2018 07:48:15 +0000 (09:48 +0200)
committerCédric Ollivier <cedric.ollivier@orange.com>
Tue, 17 Apr 2018 07:50:51 +0000 (09:50 +0200)
It helps OPNFV Features to configure their multiple loggers as
self.logger is not suitable in case of multiple modules.

Change-Id: I5794a3e323d70abfdd85db89a9890488828efd88
Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
xtesting/core/feature.py

index 8474b8a..ed053e0 100644 (file)
@@ -40,16 +40,21 @@ class Feature(testcase.TestCase):
                 "Cannot get module name %s. Using %s as fallback",
                 kwargs, self.case_name)
             self.logger = logging.getLogger(self.case_name)
+        Feature.configure_logger(self.logger, self.result_file)
+
+    @staticmethod
+    def configure_logger(logger, result_file):
+        """Configure the logger to print in result_file."""
         handler = logging.StreamHandler()
         handler.setLevel(logging.WARN)
-        self.logger.addHandler(handler)
-        handler = logging.FileHandler(self.result_file)
+        logger.addHandler(handler)
+        handler = logging.FileHandler(result_file)
         handler.setLevel(logging.DEBUG)
-        self.logger.addHandler(handler)
+        logger.addHandler(handler)
         formatter = logging.Formatter(
             '%(asctime)s - %(name)s - %(levelname)s - %(message)s')
         handler.setFormatter(formatter)
-        self.logger.addHandler(handler)
+        logger.addHandler(handler)
 
     def execute(self, **kwargs):
         """Execute the Python method.