diff --git a/ingestor/ingestor.py b/ingestor/ingestor.py index 528bf0f..268a520 100644 --- a/ingestor/ingestor.py +++ b/ingestor/ingestor.py @@ -3,7 +3,8 @@ from os import getenv from copy import deepcopy from typing import Dict, Any -from sientia_do.notifications.handlers import NotificationHandler +from sientia_do.notifications.handlers import CoreNotificationHandler as NotificationHandler +from sientia_do.temporal.utils.logger import get_logger from ingestor.managers.ingestor_manager import IngestorManager @@ -23,6 +24,10 @@ class Ingestor: HEARTBEAT_TTL (int): Time-to-live for heartbeats in seconds. Defaults to 20. HOSTNAME (str): Identifier for the current pod or host. Defaults to "localhost". POLL_INTERVAL (int): Interval in seconds for polling operations. Defaults to 5. + MONGODB_URL (str): URL of the MongoDB server. Defaults to "localhost:27017". + MONGODB_USERNAME (str): Username for the MongoDB server. Defaults to "sientia". + MONGODB_PASSWORD (str): Password for the MongoDB server. Defaults to "sientia". + MONGODB_DATABASE (str): Name of the MongoDB database. Defaults to "sientia". Attributes: kafka_servers (list): List of Kafka server addresses. redis_host (str): Hostname of the Redis server. @@ -50,17 +55,18 @@ class Ingestor: self.heartbeat_ttl = int(getenv("HEARTBEAT_TTL", "20")) self.pod_id = getenv("HOSTNAME", "localhost") self.poll_interval = int(getenv("POLL_INTERVAL", "5")) - mongo_url = getenv("MONGODB_URL", 'localhost:27017') - mongo_username = getenv("MONGODB_USERNAME", 'sientia') - mongo_password = getenv("MONGODB_PASSWORD", 'sientia') - self.mongo_database = getenv("MONGODB_DATABASE", 'sientia') + mongo_url = getenv("MONGODB_URL", "localhost:27017") + mongo_username = getenv("MONGODB_USERNAME", "sientia") + mongo_password = getenv("MONGODB_PASSWORD", "sientia") + self.mongo_database = getenv("MONGODB_DATABASE", "sientia") self.mongo_connection_string = f"mongodb://{mongo_username}:{mongo_password}@{mongo_url}" self.kafka_servers = kafka_servers.split(",") self.logger = None self.init_logger() self.notification_handler = NotificationHandler( - servers=self.kafka_servers, + connection_string=self.mongo_connection_string, + database=self.mongo_database, logger=self.logger, project_name="OPC_INGESTOR" ) diff --git a/requirements.txt b/requirements.txt index 47e8725..f7e0a73 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,5 +1,5 @@ asyncua==1.1.5 redis -git+ssh://git@github.com/Aignosi/sientia-dataops-library.git@1.2.0 +git+ssh://git@github.com/Aignosi/sientia-dataops-library.git@1.3.0 prometheus_client pymongo \ No newline at end of file