Skip to content

Commit 940a843

Browse files
Konstantin Schubertcmanaha
authored andcommitted
Schedule flush later (#17)
* Adding aws eleasticsearch authentication * Improve formatting * Re-use old elasticsearch client if active * Schedule flush non-recursively
1 parent 1d3b35f commit 940a843

File tree

1 file changed

+6
-7
lines changed

1 file changed

+6
-7
lines changed

cmreslogging/handlers.py

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -196,7 +196,6 @@ def __init__(self,
196196
self._client = None
197197
self._buffer = []
198198
self._timer = None
199-
self.__schedule_flush()
200199

201200
self._index_name_func = CMRESHandler._INDEX_FREQUENCY_FUNCION_DICT[self.index_name_frequency]
202201

@@ -278,7 +277,7 @@ def flush(self):
278277
self._timer.cancel()
279278
self._timer = None
280279

281-
if len(self._buffer) > 0:
280+
if self._buffer:
282281
try:
283282
actions = (
284283
{
@@ -298,15 +297,13 @@ def flush(self):
298297
raise exception
299298
self._buffer = []
300299

301-
self.__schedule_flush()
302-
303300
def close(self):
304301
""" Flushes the buffer and release any outstanding resource
305302
306303
:return: None
307304
"""
308-
self.flush()
309-
self._timer.cancel()
305+
if self._timer is not None:
306+
self.flush()
310307
self._timer = None
311308

312309
def emit(self, record):
@@ -322,7 +319,9 @@ def emit(self, record):
322319
if key not in CMRESHandler.__LOGGING_FILTER_FIELDS:
323320
rec[key] = "" if value is None else value
324321
rec[self.default_timestamp_field_name] = self.__get_es_datetime_str(record.created)
325-
326322
self._buffer.append(rec)
323+
327324
if len(self._buffer) >= self.buffer_size:
328325
self.flush()
326+
else:
327+
self.__schedule_flush()

0 commit comments

Comments
 (0)