From 9ce0ea32a81cdec7efd1e49f8a4f236137c38e8b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Luis?= Date: Sat, 3 Feb 2018 04:20:29 +0300 Subject: [PATCH 1/4] Update formatter.py Remove `bytes` function in order to avoid problems with `python>3.4`. --- logstash/formatter.py | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/logstash/formatter.py b/logstash/formatter.py index f5c4424..d4c52e5 100644 --- a/logstash/formatter.py +++ b/logstash/formatter.py @@ -3,6 +3,7 @@ import socket import sys from datetime import datetime + try: import json except ImportError: @@ -10,7 +11,6 @@ class LogstashFormatterBase(logging.Formatter): - def __init__(self, message_type='Logstash', tags=None, fqdn=False): self.message_type = message_type self.tags = tags if tags is not None else [] @@ -27,8 +27,7 @@ def get_extra_fields(self, record): 'args', 'asctime', 'created', 'exc_info', 'exc_text', 'filename', 'funcName', 'id', 'levelname', 'levelno', 'lineno', 'module', 'msecs', 'msecs', 'message', 'msg', 'name', 'pathname', 'process', - 'processName', 'relativeCreated', 'thread', 'threadName', 'extra', - 'auth_token', 'password') + 'processName', 'relativeCreated', 'thread', 'threadName', 'extra') if sys.version_info < (3, 0): easy_types = (basestring, bool, dict, float, int, long, list, type(None)) @@ -82,7 +81,8 @@ def serialize(cls, message): if sys.version_info < (3, 0): return json.dumps(message) else: - return bytes(json.dumps(message), 'utf-8') + return str(json.dumps(message)) + class LogstashFormatterVersion0(LogstashFormatterBase): version = 0 @@ -115,7 +115,6 @@ def format(self, record): class LogstashFormatterVersion1(LogstashFormatterBase): - def format(self, record): # Create message dict message = { From ad7f108814b297b6dd5b3cc82bb2a7a718449aa3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Luis?= Date: Sat, 3 Feb 2018 04:22:19 +0300 Subject: [PATCH 2/4] Update handler_tcp.py As now we aren't using `bytes` wit have to remove `b` decorator. --- logstash/handler_tcp.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/logstash/handler_tcp.py b/logstash/handler_tcp.py index cc687bd..bb945a2 100644 --- a/logstash/handler_tcp.py +++ b/logstash/handler_tcp.py @@ -22,4 +22,4 @@ def __init__(self, host, port=5959, message_type='logstash', tags=None, fqdn=Fal self.formatter = formatter.LogstashFormatterVersion0(message_type, tags, fqdn) def makePickle(self, record): - return self.formatter.format(record) + b'\n' + return self.formatter.format(record) + '\n' From acee185f3f7571a88a3e7273cf7ca391aad0f83a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Luis?= Date: Sat, 3 Feb 2018 04:27:23 +0300 Subject: [PATCH 3/4] Update setup.py It's missing for the `amqp` handler. --- setup.py | 1 + 1 file changed, 1 insertion(+) diff --git a/setup.py b/setup.py index 3329e91..522066e 100644 --- a/setup.py +++ b/setup.py @@ -2,6 +2,7 @@ setup( name='python-logstash', packages=['logstash'], + install_requires=['pika'], version='0.4.7', description='Python logging handler for Logstash.', long_description=open('README.rst').read(), From 0fc9c220857c7a14bff4b8fd71b33f40236d4756 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Luis?= Date: Sat, 3 Feb 2018 04:28:36 +0300 Subject: [PATCH 4/4] Update formatter.py --- logstash/formatter.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/logstash/formatter.py b/logstash/formatter.py index d4c52e5..e4ec2d3 100644 --- a/logstash/formatter.py +++ b/logstash/formatter.py @@ -27,7 +27,9 @@ def get_extra_fields(self, record): 'args', 'asctime', 'created', 'exc_info', 'exc_text', 'filename', 'funcName', 'id', 'levelname', 'levelno', 'lineno', 'module', 'msecs', 'msecs', 'message', 'msg', 'name', 'pathname', 'process', - 'processName', 'relativeCreated', 'thread', 'threadName', 'extra') + 'processName', 'relativeCreated', 'thread', 'threadName', 'extra', + 'auth_token', 'password' + ) if sys.version_info < (3, 0): easy_types = (basestring, bool, dict, float, int, long, list, type(None))