From e7c0144ed65453c4960607c99579943cc5c21ff8 Mon Sep 17 00:00:00 2001 From: Raphael Osaze Eyerin Date: Fri, 15 Nov 2024 17:54:56 +0100 Subject: [PATCH] feat(elasticsearch): support local connection (#63) --- src/config.py | 1 + src/elasticsearch_utils.py | 14 +++++++++----- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/src/config.py b/src/config.py index 9b2dba280..e6daa1196 100644 --- a/src/config.py +++ b/src/config.py @@ -29,4 +29,5 @@ ES_USERNAME = os.getenv("ES_USERNAME") ES_PASSWORD = os.getenv("ES_PASSWORD") ES_INDEX = os.getenv("ES_INDEX") +ES_LOCAL_URL = os.getenv("ES_LOCAL_URL") ES_DATA_FETCH_SIZE = 10000 # No. of data to fetch and save from elastic-search diff --git a/src/elasticsearch_utils.py b/src/elasticsearch_utils.py index c45eb0bd5..f93463ca1 100644 --- a/src/elasticsearch_utils.py +++ b/src/elasticsearch_utils.py @@ -4,7 +4,7 @@ from elasticsearch.helpers import scan from loguru import logger -from src.config import ES_CLOUD_ID, ES_USERNAME, ES_PASSWORD, ES_DATA_FETCH_SIZE +from src.config import ES_CLOUD_ID, ES_USERNAME, ES_PASSWORD, ES_DATA_FETCH_SIZE, ES_LOCAL_URL class ElasticSearchClient: @@ -18,10 +18,14 @@ def __init__(self, self._es_username = es_username self._es_password = es_password self._es_data_fetch_size = es_data_fetch_size - self._es_client = Elasticsearch( - cloud_id=self._es_cloud_id, - http_auth=(self._es_username, self._es_password), - ) + + if ES_LOCAL_URL is not None and ES_CLOUD_ID is None: + self._es_client = Elasticsearch(ES_LOCAL_URL) + else: + self._es_client = Elasticsearch( + cloud_id=self._es_cloud_id, + http_auth=(self._es_username, self._es_password), + ) @property def es_client(self):