MCPcopy Index your code
hub / github.com/python/cpython / configure

Method configure

Lib/logging/config.py:533–686  ·  view source on GitHub ↗

Do the configuration.

(self)

Source from the content-addressed store, hash-verified

531 """
532
533 def configure(self):
534 """Do the configuration."""
535
536 config = self.config
537 if 'version' not in config:
538 raise ValueError("dictionary doesn't specify a version")
539 if config['version'] != 1:
540 raise ValueError("Unsupported version: %s" % config['version'])
541 incremental = config.pop('incremental', False)
542 EMPTY_DICT = {}
543 with logging._lock:
544 if incremental:
545 handlers = config.get('handlers', EMPTY_DICT)
546 for name in handlers:
547 if name not in logging._handlers:
548 raise ValueError('No handler found with '
549 'name %r' % name)
550 else:
551 try:
552 handler = logging._handlers[name]
553 handler_config = handlers[name]
554 level = handler_config.get('level', None)
555 if level:
556 handler.setLevel(logging._checkLevel(level))
557 except Exception as e:
558 raise ValueError('Unable to configure handler '
559 '%r' % name) from e
560 loggers = config.get('loggers', EMPTY_DICT)
561 for name in loggers:
562 try:
563 self.configure_logger(name, loggers[name], True)
564 except Exception as e:
565 raise ValueError('Unable to configure logger '
566 '%r' % name) from e
567 root = config.get('root', None)
568 if root:
569 try:
570 self.configure_root(root, True)
571 except Exception as e:
572 raise ValueError('Unable to configure root '
573 'logger') from e
574 else:
575 disable_existing = config.pop('disable_existing_loggers', True)
576
577 _clearExistingHandlers()
578
579 # Do formatters first - they don't refer to anything else
580 formatters = config.get('formatters', EMPTY_DICT)
581 for name in formatters:
582 try:
583 formatters[name] = self.configure_formatter(
584 formatters[name])
585 except Exception as e:
586 raise ValueError('Unable to configure '
587 'formatter %r' % name) from e
588 # Next, do filters - they don't refer to anything else, either
589 filters = config.get('filters', EMPTY_DICT)
590 for name in filters:

Callers 1

dictConfigFunction · 0.45

Calls 15

configure_loggerMethod · 0.95
configure_rootMethod · 0.95
configure_formatterMethod · 0.95
configure_filterMethod · 0.95
configure_handlerMethod · 0.95
_clearExistingHandlersFunction · 0.85
strFunction · 0.85
listClass · 0.85
_handle_existing_loggersFunction · 0.85
popMethod · 0.45
getMethod · 0.45
setLevelMethod · 0.45

Tested by

no test coverage detected