Coverage for qpdk / logger.py: 100%

8 statements  

« prev     ^ index     » next       coverage.py v7.13.4, created at 2026-03-14 10:27 +0000

1"""Logging configuration for QPDK.""" 

2 

3import sys 

4 

5from loguru import logger 

6 

7# Fancy formatting for the logger 

8# You can customize this further if needed 

9FANCY_FORMAT = ( 

10 "<green>{time:YYYY-MM-DD HH:mm:ss.SSS}</green> | " 

11 "<level>{level: <8}</level> | " 

12 "<cyan>{name}</cyan>:<cyan>{function}</cyan>:<cyan>{line}</cyan> - <level>{message}</level>" 

13) 

14 

15 

16def configure_logger(level: str = "INFO"): 

17 """Configures the logger with a fancy format. 

18 

19 Args: 

20 level: The logging level to use. 

21 """ 

22 logger.remove() # Remove default handler 

23 logger.add( 

24 sys.stderr, 

25 format=FANCY_FORMAT, 

26 level=level, 

27 colorize=True, 

28 ) 

29 

30 

31# Initialize with default level 

32configure_logger() 

33 

34__all__ = ["configure_logger", "logger"]