Coverage for fastagency/cli/logging.py: 100%
5 statements
« prev ^ index » next coverage.py v7.8.0, created at 2025-04-19 12:16 +0000
« prev ^ index » next coverage.py v7.8.0, created at 2025-04-19 12:16 +0000
1import logging 1abcdefghi
2from typing import Union 1abcdefghi
4from rich.console import Console 1abcdefghi
5from rich.logging import RichHandler 1abcdefghi
8def setup_logging(terminal_width: Union[int, None] = None) -> None: 1abcdefghi
9 logger = logging.getLogger("fastapi_cli") 1abcdefghi
10 console = Console(width=terminal_width) if terminal_width else None 1abcdefghi
11 rich_handler = RichHandler( 1abcdefghi
12 show_time=False,
13 rich_tracebacks=True,
14 tracebacks_show_locals=True,
15 markup=True,
16 show_path=False,
17 console=console,
18 )
19 rich_handler.setFormatter(logging.Formatter("%(message)s")) 1abcdefghi
20 logger.addHandler(rich_handler) 1abcdefghi
22 logger.setLevel(logging.INFO) 1abcdefghi
23 logger.propagate = False 1abcdefghi