Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 1 addition & 26 deletions msa_sdk/elk.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,33 +8,10 @@
from threading import Timer

from elasticsearch import Elasticsearch
from elasticsearch import RequestsHttpConnection
from elasticsearch import helpers as eshelpers
from elasticsearch.serializer import JSONSerializer


# Have a look at https://github.com/cmanaha/python-elasticsearch-logger
class EsSerializer(JSONSerializer):
"""
JSON serializer inherited from the elastic search JSON serializer.

Allows to serialize logs for a elasticsearch use.
Manage the record.exc_info containing an exception type.
"""

def default(self, data):
"""
Override the elasticsearch default method.

Allows to transform unknown types into strings.

:params data: The data to serialize before sending it to elastic search
"""
try:
return super(EsSerializer, self).default(data)
except TypeError:
return str(data)

class EsHandler(logging.Handler):
"""Elastic search handler."""

Expand Down Expand Up @@ -116,7 +93,6 @@ def __init__(self,
})
self.raise_on_indexing_exceptions = raise_on_indexing_exceptions
self.default_timestamp_field_name = default_timestamp_field_name
self.serializer = EsSerializer()
self._client = None
self._buffer = []
self._buffer_lock = Lock()
Expand All @@ -134,7 +110,6 @@ def __get_es_client(self):
http_auth=self.auth_details,
use_ssl=False,
verify_certs=False,
connection_class=RequestsHttpConnection,
serializer=self.serializer)
def test_es_source(self):
"""
Expand Down Expand Up @@ -223,4 +198,4 @@ def emit(self, record):
if len(self._buffer) >= self.buffer_size:
self.flush()
else:
self.__schedule_flush()
self.__schedule_flush()
2 changes: 1 addition & 1 deletion requirements.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
requests
elasticsearch==7.14.2
elasticsearch==8.16.0