From 0e177eafbed026445e50da6a5992177521fb8212 Mon Sep 17 00:00:00 2001 From: TheSiahxyz <164138827+TheSiahxyz@users.noreply.github.com> Date: Thu, 2 Apr 2026 15:42:12 +0900 Subject: feat: add graceful shutdown with SIGTERM/SIGINT handlers to all services --- services/data-collector/src/data_collector/main.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'services/data-collector') diff --git a/services/data-collector/src/data_collector/main.py b/services/data-collector/src/data_collector/main.py index 608d6cd..171db52 100644 --- a/services/data-collector/src/data_collector/main.py +++ b/services/data-collector/src/data_collector/main.py @@ -11,6 +11,7 @@ from shared.logging import setup_logging from shared.metrics import ServiceMetrics from shared.models import Candle from shared.notifier import TelegramNotifier +from shared.shutdown import GracefulShutdown from data_collector.config import CollectorConfig @@ -83,10 +84,13 @@ async def run() -> None: symbols = config.symbols timeframe = config.timeframes[0] if config.timeframes else "1Day" + shutdown = GracefulShutdown() + shutdown.install_handlers() + log.info("starting", symbols=symbols, timeframe=timeframe, poll_interval=poll_interval) try: - while True: + while not shutdown.is_shutting_down: # Check if market is open try: is_open = await alpaca.is_market_open() -- cgit v1.2.3