diff --git a/template/{{ part_dir }}/src/utils/logging.py.jinja b/template/{{ part_dir }}/src/utils/logging.py.jinja index 06e0f4d..218fcd5 100644 --- a/template/{{ part_dir }}/src/utils/logging.py.jinja +++ b/template/{{ part_dir }}/src/utils/logging.py.jinja @@ -1,5 +1,7 @@ import logging - +{% if 'aiogram_bot' in backend_services %}from importlib.util import find_spec +from pathlib import Path +{% endif %} from rich.console import Console from rich.logging import RichHandler from rich.traceback import install @@ -10,8 +12,12 @@ console = Console(width=env.log.console_width, color_system="auto", force_termin def setup_logging() -> None: -{% if 'aiogram_bot' in backend_services %} from aiogram.dispatcher import router # noqa: PLC0415 - +{% if 'aiogram_bot' in backend_services %} aiogram = find_spec("aiogram") + suppress = ( + [str(Path(aiogram.origin).parent / "dispatcher")] + if aiogram and aiogram.origin + else [] + ) {% endif %} logging.basicConfig( level=env.log.level_external, format="", @@ -26,7 +32,7 @@ def setup_logging() -> None: omit_repeated_times=False, show_time=env.log.show_time, {%- if 'aiogram_bot' in backend_services %} - tracebacks_suppress=[router], + tracebacks_suppress=suppress, {%- endif %} ) ],