From 5873f0abe6da5eeb14172b64da0430af285bebd0 Mon Sep 17 00:00:00 2001 From: Christophe Simonis Date: Wed, 12 Mar 2014 18:18:19 +0100 Subject: [PATCH] [FIX] add the logging handler only to the root logger. let the loggers propagate to allow more than one handler bzr revid: chs@openerp.com-20140312171819-bnj3md07w4le2m7m --- openerp/netsvc.py | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/openerp/netsvc.py b/openerp/netsvc.py index d96449cbf2b..6e477f3ea36 100644 --- a/openerp/netsvc.py +++ b/openerp/netsvc.py @@ -2,7 +2,7 @@ ############################################################################## # # OpenERP, Open Source Management Solution -# Copyright (C) 2004-2012 OpenERP SA () +# Copyright (C) 2004-2014 OpenERP SA () # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as @@ -149,7 +149,13 @@ class ColoredFormatter(DBFormatter): record.levelname = COLOR_PATTERN % (30 + fg_color, 40 + bg_color, record.levelname) return DBFormatter.format(self, record) +_logger_init = False def init_logger(): + global _logger_init + if _logger_init: + return + _logger_init = True + from tools.translate import resetlocale resetlocale() @@ -197,6 +203,8 @@ def init_logger(): formatter = DBFormatter(format) handler.setFormatter(formatter) + logging.getLogger().addHandler(handler) + # Configure handlers default_config = [ 'openerp.netsvc.rpc.request:INFO', @@ -233,11 +241,7 @@ def init_logger(): loggername, level = logconfig_item.split(':') level = getattr(logging, level, logging.INFO) logger = logging.getLogger(loggername) - logger.handlers = [] logger.setLevel(level) - logger.addHandler(handler) - if loggername != '': - logger.propagate = False for logconfig_item in default_config + pseudo_config + logconfig: _logger.debug('logger level set: "%s"', logconfig_item)