#!/usr/bin/env python3
+# -*- coding: utf-8 -*-
"""Utilities related to logging."""
"""
def __init__(self) -> None:
- self.counters: collections.Counter = collections.Counter()
super().__init__()
+ self.counters: collections.Counter = collections.Counter()
@overrides
def filter(self, record: logging.LogRecord) -> bool:
per_scope_logging_levels: str,
) -> None:
super().__init__()
- self.valid_levels = set(
- ['NOTSET', 'DEBUG', 'INFO', 'WARNING', 'ERROR', 'CRITICAL']
- )
+ self.valid_levels = set(['NOTSET', 'DEBUG', 'INFO', 'WARNING', 'ERROR', 'CRITICAL'])
self.default_logging_level = default_logging_level
self.level_by_scope = {}
if per_scope_logging_levels is not None:
file=sys.stderr,
)
continue
- self.level_by_scope[
- scope
- ] = DynamicPerScopeLoggingLevelFilter.level_name_to_level(level)
+ self.level_by_scope[scope] = DynamicPerScopeLoggingLevelFilter.level_name_to_level(
+ level
+ )
@overrides
def filter(self, record: logging.LogRecord) -> bool:
@overrides
def formatTime(self, record, datefmt=None):
- ct = MillisecondAwareFormatter.converter(
- record.created, pytz.timezone("US/Pacific")
- )
+ ct = MillisecondAwareFormatter.converter(record.created, pytz.timezone("US/Pacific"))
if datefmt:
s = ct.strftime(datefmt)
else:
def log_about_logging(
- logger, default_logging_level, preexisting_handlers_count, fmt, facility_name
+ logger,
+ default_logging_level,
+ preexisting_handlers_count,
+ fmt,
+ facility_name,
):
- level_name = logging._levelToName.get(
- default_logging_level, str(default_logging_level)
- )
+ level_name = logging._levelToName.get(default_logging_level, str(default_logging_level))
logger.debug(f'Initialized global logging; default logging level is {level_name}.')
- if (
- config.config['logging_clear_preexisting_handlers']
- and preexisting_handlers_count > 0
- ):
+ if config.config['logging_clear_preexisting_handlers'] and preexisting_handlers_count > 0:
msg = f'Logging cleared {preexisting_handlers_count} global handlers (--logging_clear_preexisting_handlers)'
logger.warning(msg)
logger.debug(f'Logging format specification is "{fmt}"')
if config.config['logging_debug_threads']:
- logger.debug(
- '...Logging format spec captures tid/pid (--logging_debug_threads)'
- )
+ logger.debug('...Logging format spec captures tid/pid (--logging_debug_threads)')
if config.config['logging_debug_modules']:
logger.debug(
'...Logging format spec captures files/functions/lineno (--logging_debug_modules)'
)
if config.config['logging_syslog']:
- logger.debug(
- f'Logging to syslog as {facility_name} with priority mapping based on level'
- )
+ logger.debug(f'Logging to syslog as {facility_name} with priority mapping based on level')
if config.config['logging_filename']:
logger.debug(f'Logging to filename {config.config["logging_filename"]}')
- logger.debug(
- f'...with {config.config["logging_filename_maxsize"]} bytes max file size.'
- )
+ logger.debug(f'...with {config.config["logging_filename_maxsize"]} bytes max file size.')
logger.debug(
f'...and {config.config["logging_filename_count"]} rotating backup file count.'
)
handler: Optional[logging.Handler] = None
# Global default logging level (--logging_level)
- default_logging_level = getattr(
- logging, config.config['logging_level'].upper(), None
- )
+ default_logging_level = getattr(logging, config.config['logging_level'].upper(), None)
if not isinstance(default_logging_level, int):
raise ValueError('Invalid level: %s' % config.config['logging_level'])