ソースを参照

[update]new function restName in LogHandler

jinghao_wb 9 年 前
コミット
20e39bfd1a
2 ファイル変更47 行追加2 行削除
  1. 35 0
      Test/testLogHandler.py
  2. 12 2
      Util/LogHandler.py

+ 35 - 0
Test/testLogHandler.py

@@ -0,0 +1,35 @@
+# -*- coding: utf-8 -*-
+"""
+-------------------------------------------------
+   File Name:     testLogHandler
+   Description :
+   Author :        J_hao
+   date:          2017/8/2
+-------------------------------------------------
+   Change Activity:
+                   2017/8/2:
+-------------------------------------------------
+"""
+__author__ = 'J_hao'
+
+from Util.LogHandler import LogHandler
+
+
+# noinspection PyPep8Naming
+def testLogHandler():
+    """
+    test function LogHandler  in Util/LogHandler
+    :return:
+    """
+    log = LogHandler('test')
+    log.info('this is a log from test')
+
+    log.resetName(name='test1')
+    log.info('this is a log from test1')
+
+    log.resetName(name='test2')
+    log.info('this is a log from test2')
+
+
+if __name__ == '__main__':
+    testLogHandler()

+ 12 - 2
Util/LogHandler.py

@@ -62,6 +62,7 @@ class LogHandler(logging.Logger):
         formatter = logging.Formatter('%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s')
 
         file_handler.setFormatter(formatter)
+        self.file_handler = file_handler
         self.addHandler(file_handler)
 
     def __setStreamHandler__(self, level=None):
@@ -79,8 +80,17 @@ class LogHandler(logging.Logger):
             stream_handler.setLevel(level)
         self.addHandler(stream_handler)
 
+    def resetName(self, name):
+        """
+        reset name
+        :param name:
+        :return:
+        """
+        self.name = name
+        self.removeHandler(self.file_handler)
+        self.__setFileHandler__()
+
 
 if __name__ == '__main__':
-    log = LogHandler(__name__)
+    log = LogHandler('test')
     log.info('this is a test msg')
-    pass