def notifyChannel(self, name, level, msg): from service.web_services import common log = logging.getLogger(tools.ustr(name)) if level == LOG_DEBUG_RPC and not hasattr(log, level): fct = lambda msg, *args, **kwargs: log.log(logging.DEBUG_RPC, msg, *args, **kwargs) setattr(log, LOG_DEBUG_RPC, fct) level_method = getattr(log, level) if isinstance(msg, Exception): msg = tools.exception_to_unicode(msg) msg = tools.ustr(msg).strip() if level in (LOG_ERROR,LOG_CRITICAL): msg = common().get_server_environment() + '\n' + msg result = msg.split('\n') if len(result)>1: for idx, s in enumerate(result): level_method('[%02d]: %s' % (idx+1, s,)) elif result: level_method(result[0])
def notifyChannel(self, name, level, msg): warnings.warn( "notifyChannel API shouldn't be used anymore, please use " "the standard `logging` module instead", PendingDeprecationWarning, stacklevel=2) from service.web_services import common from tools.misc import ustr log = logging.getLogger(ustr(name)) if level in [LOG_DEBUG_RPC, LOG_TEST] and not hasattr(log, level): fct = lambda msg, *args, **kwargs: log.log( getattr(logging, level.upper()), msg, *args, **kwargs) setattr(log, level, fct) level_method = getattr(log, level) if isinstance(msg, Exception): msg = tools.exception_to_unicode(msg) try: msg = tools.ustr(msg).strip() if level in (LOG_ERROR, LOG_CRITICAL) and tools.config.get_misc( 'debug', 'env_info', False): msg = common().exp_get_server_environment() + "\n" + msg result = msg.split('\n') except UnicodeDecodeError: result = msg.strip().split('\n') try: if len(result) > 1: for idx, s in enumerate(result): level_method('[%02d]: %s' % ( idx + 1, s, )) elif result: level_method(result[0]) except IOError: # TODO: perhaps reset the logger streams? #if logrotate closes our files, we end up here.. pass except Exception: # better ignore the exception and carry on.. pass
def notifyChannel(self, name, level, msg): _logger.warning( "notifyChannel API shouldn't be used anymore, please use " "the standard `logging` module instead.") from service.web_services import common log = logging.getLogger(__name__ + '.deprecated.' + ustr(name)) if level in [LOG_TEST] and not hasattr(log, level): fct = lambda msg, *args, **kwargs: log.log(getattr(logging, level.upper()), msg, *args, **kwargs) setattr(log, level, fct) level_method = getattr(log, level) if isinstance(msg, Exception): msg = exception_to_unicode(msg) try: msg = ustr(msg).strip() if level in (LOG_ERROR, LOG_CRITICAL): # and tools.config.get_misc('debug','env_info',False): msg = common().exp_get_server_environment() + "\n" + msg result = msg.split('\n') except UnicodeDecodeError: result = msg.strip().split('\n') try: if len(result)>1: for idx, s in enumerate(result): level_method('[%02d]: %s' % (idx+1, s,)) elif result: level_method(result[0]) except IOError: # TODO: perhaps reset the logger streams? #if logrotate closes our files, we end up here.. pass except Exception: # better ignore the exception and carry on.. pass