From 1f36a62d3496e8703dc513cd856c5359d5020f81 Mon Sep 17 00:00:00 2001 From: tpv Date: Thu, 2 Jul 2026 09:26:21 -0700 Subject: [PATCH] added init monitor for shared logic --- src/monitor_utils/runner.py | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/src/monitor_utils/runner.py b/src/monitor_utils/runner.py index 0794ff5..d170ff2 100644 --- a/src/monitor_utils/runner.py +++ b/src/monitor_utils/runner.py @@ -8,12 +8,18 @@ from aioproxies import AioProxies from curl_cffi.requests import AsyncSession from motor.motor_asyncio import AsyncIOMotorCollection +from aioproxies import AioProxies from monitor_utils.constants import ( EXPECTED_TASK_ERRORS, FLAG_WEBHOOK_MAP, BUCKET_WEBHOOK_MAP, ) -from monitor_utils.config import get_config, is_production, DevelopmentMode +from monitor_utils.config import ( + get_config, + is_production, + set_logger_levels, + DevelopmentMode, +) from monitor_utils.models import ( Product, ProductMetadata, @@ -27,9 +33,20 @@ from monitor_utils.database import get_collection LOGGER = logging.getLogger(__name__) +def init_monitor( + monitor_name: str, development_mode: DevelopmentMode +) -> tuple[list[str], AsyncIOMotorCollection, AioProxies]: + set_logger_levels() + category_names, _, collection = setup_config( + monitor_name=monitor_name, development_mode=development_mode + ) + proxies = AioProxies.from_file("proxies.txt") + return category_names, collection, proxies + + def setup_config( monitor_name: str, development_mode: DevelopmentMode -) -> tuple[list[str], dict, AsyncIOMotorCollection]: +) -> tuple[list[str], dict[int], AsyncIOMotorCollection]: use_production = is_production(development_mode) config, _ = get_config( monitor_name=monitor_name,