| 18 | |
| 19 | |
| 20 | class LoggingHandler(logging.Handler): |
| 21 | def __init__(self, use_color: bool) -> None: |
| 22 | super().__init__() |
| 23 | self.use_color = use_color |
| 24 | |
| 25 | def emit(self, record: logging.LogRecord) -> None: |
| 26 | level_msg = color.format_color( |
| 27 | f'[{record.levelname}]', |
| 28 | LOG_LEVEL_COLORS[record.levelname], |
| 29 | self.use_color, |
| 30 | ) |
| 31 | output.write_line(f'{level_msg} {record.getMessage()}') |
| 32 | |
| 33 | |
| 34 | @contextlib.contextmanager |
no outgoing calls