summaryrefslogtreecommitdiff
path: root/services/portfolio-manager/src/portfolio_manager
diff options
context:
space:
mode:
Diffstat (limited to 'services/portfolio-manager/src/portfolio_manager')
-rw-r--r--services/portfolio-manager/src/portfolio_manager/main.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/services/portfolio-manager/src/portfolio_manager/main.py b/services/portfolio-manager/src/portfolio_manager/main.py
index 0214099..6cf248f 100644
--- a/services/portfolio-manager/src/portfolio_manager/main.py
+++ b/services/portfolio-manager/src/portfolio_manager/main.py
@@ -9,6 +9,7 @@ from shared.healthcheck import HealthCheckServer
from shared.logging import setup_logging
from shared.metrics import ServiceMetrics
from shared.notifier import TelegramNotifier
+from shared.shutdown import GracefulShutdown
from portfolio_manager.config import PortfolioConfig
from portfolio_manager.portfolio import PortfolioTracker
@@ -83,6 +84,9 @@ async def run() -> None:
snapshot_loop(db, tracker, notifier, config.snapshot_interval_hours, log)
)
+ shutdown = GracefulShutdown()
+ shutdown.install_handlers()
+
GROUP = "portfolio-manager"
CONSUMER = "portfolio-1"
log.info("service_started", stream=ORDERS_STREAM)
@@ -113,7 +117,7 @@ async def run() -> None:
metrics.errors_total.labels(service="portfolio-manager", error_type="processing").inc()
try:
- while True:
+ while not shutdown.is_shutting_down:
messages = await broker.read_group(ORDERS_STREAM, GROUP, CONSUMER, count=10, block=1000)
for msg_id, msg in messages:
try: