Logger must be a singleton 45/34745/1
authorCédric Ollivier <cedric.ollivier@orange.com>
Wed, 26 Apr 2017 13:31:19 +0000 (15:31 +0200)
committerCédric Ollivier <cedric.ollivier@orange.com>
Mon, 15 May 2017 07:18:28 +0000 (09:18 +0200)
It avoids creating a python object for every message printed.

Change-Id: Ia42b59db9f7ce4eadc7e91da4d193db646b54d85
Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
(cherry picked from commit 0acb8eb018afd993c363c05da8a45091abc59fd9)

functest/utils/functest_logger.py

index 555e9c2..ba52829 100755 (executable)
@@ -41,6 +41,13 @@ ignore = ["paramiko",
 
 class Logger(object):
 
+    instance = None
+
+    def __new__(cls, logger_name):
+        if cls.instance is None:
+            cls.instance = object.__new__(cls)
+        return cls.instance
+
     def __init__(self, logger_name):
         self.setup_logging()
         self.logger = logging.getLogger(logger_name)