ソースを参照

core/log: do not attach multiple handlers to the same logger

logging.getLogger when given the same name twice, will return the same
object. Do not attach handler there every time, it will really open new
file, leading to multiplicated log entries and depleting file
descriptors.

QubesOS/qubes-issues#1697
Marek Marczykowski-Górecki 8 年 前
コミット
539a46ca9a
1 ファイル変更2 行追加0 行削除
  1. 2 0
      qubes/log.py

+ 2 - 0
qubes/log.py

@@ -125,6 +125,8 @@ def get_vm_logger(vmname):
     '''
 
     logger = logging.getLogger('vm.' + vmname)
+    if logger.handlers:
+        return logger
     handler = logging.FileHandler(
         os.path.join(LOGPATH, 'vm-{}.log'.format(vmname)))
     handler.setFormatter(formatter_log)