Coverage for qpdk / logger.py: 100%
8 statements
« prev ^ index » next coverage.py v7.13.4, created at 2026-03-14 10:27 +0000
« prev ^ index » next coverage.py v7.13.4, created at 2026-03-14 10:27 +0000
1"""Logging configuration for QPDK."""
3import sys
5from loguru import logger
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)
16def configure_logger(level: str = "INFO"):
17 """Configures the logger with a fancy format.
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 )
31# Initialize with default level
32configure_logger()
34__all__ = ["configure_logger", "logger"]