| 7 | |
| 8 | |
| 9 | class InterceptHandler(logging.Handler): |
| 10 | def emit(self, record): |
| 11 | # Get corresponding Loguru level if it exists. |
| 12 | try: |
| 13 | level = logger.level(record.levelname).name |
| 14 | except ValueError: |
| 15 | level = record.levelno |
| 16 | |
| 17 | # Find caller from where originated the logged message. |
| 18 | frame, depth = inspect.currentframe(), 0 |
| 19 | while frame and (depth == 0 or frame.f_code.co_filename == logging.__file__): |
| 20 | frame = frame.f_back |
| 21 | depth += 1 |
| 22 | |
| 23 | logger.opt(depth=depth, exception=record.exc_info).log(level, record.getMessage()) |
| 24 | |
| 25 | |
| 26 | def test_formatting(writer): |
no outgoing calls
searching dependent graphs…