Coverage for /usr/local/lib/python3.10/site-packages/opal_common-0.0.0-py3.10.egg/opal_common/logging_utils/intercept.py: 79%

15 statements  

« prev     ^ index     » next       coverage.py v7.15.2, created at 2026-10-10 11:54 +0000

1import logging 

2 

3from loguru import logger 

4 

5 

6class InterceptHandler(logging.Handler): 

7 def emit(self, record): 

8 # Get corresponding Loguru level if it exists 

9 try: 

10 level = logger.level(record.levelname).name 

11 except ValueError: 

12 level = record.levelno 

13 

14 # Find caller from where originated the logged message 

15 frame, depth = logging.currentframe(), 2 

16 while frame.f_code.co_filename == logging.__file__: 

17 if frame.f_back is None: 17 ↛ 18line 17 didn't jump to line 18 because the condition on line 17 was never true

18 break 

19 frame = frame.f_back 

20 depth += 1 

21 

22 logger.opt(depth=depth, exception=record.exc_info).log( 

23 level, record.getMessage() 

24 )