From d446c451493cda9af89c9a645d5c03d9abdff21e Mon Sep 17 00:00:00 2001 From: Michal Chomo Date: Tue, 3 Dec 2019 12:42:23 +0100 Subject: [PATCH] update setup.py, update requests_futures, add gitignore --- .gitignore | 3 +++ README.md | 2 -- loggly/handlers.py | 10 ++++++---- loggly/tests/test_handlers.py | 8 ++++---- requirements.txt | 2 +- setup.py | 16 +++++++++++----- 6 files changed, 25 insertions(+), 16 deletions(-) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..cda7c7b --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +.idea/ +venv/ +environment/ diff --git a/README.md b/README.md index 3c3dfca..5c724f4 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,6 @@ Python Logging Loggly Handler ----------------------------- -[![Build Status](https://travis-ci.org/psquickitjayant/loggly-python-handler.png?branch=master)](https://travis-ci.org/psquickitjayant/loggly-python-handler) [![Coverage Status](https://coveralls.io/repos/psquickitjayant/loggly-python-handler/badge.svg)](https://coveralls.io/r/psquickitjayant/loggly-python-handler) - A simple Python logging Loggly handler that can be used to send to a Loggly Gen2 https endpoint. Borrowed the extra fields concept from the graypy logging library. Check out Loggly's [Python logging documentation](https://www.loggly.com/docs/python-http/) to learn more. ## Installation diff --git a/loggly/handlers.py b/loggly/handlers.py index 32e0d43..64976a1 100644 --- a/loggly/handlers.py +++ b/loggly/handlers.py @@ -1,7 +1,6 @@ import logging import logging.handlers -import socket import traceback from requests_futures.sessions import FuturesSession @@ -9,11 +8,14 @@ session = FuturesSession() -def bg_cb(sess, resp): +def response_callback(resp, *args, **kwargs): """ Don't do anything with the response """ pass +session.hooks['response'] = response_callback + + class HTTPSHandler(logging.Handler): def __init__(self, url, fqdn=False, localname=None, facility=None): logging.Handler.__init__(self) @@ -31,8 +33,8 @@ def get_full_message(self, record): def emit(self, record): try: payload = self.format(record) - session.post(self.url, data=payload.encode("utf-8"), background_callback=bg_cb) + session.post(self.url, data=payload.encode("utf-8")) except (KeyboardInterrupt, SystemExit): raise except: - self.handleError(record) \ No newline at end of file + self.handleError(record) diff --git a/loggly/tests/test_handlers.py b/loggly/tests/test_handlers.py index 5872082..3759d2b 100644 --- a/loggly/tests/test_handlers.py +++ b/loggly/tests/test_handlers.py @@ -4,6 +4,7 @@ import loggly.handlers as handlers + class TestLogglyHandler(unittest.TestCase): def setUp(self): handlers.session = self.session = Mock() @@ -29,9 +30,9 @@ def setUp(self): 'facility': 'record' } - def test_bg_cb(self): + def test_response_callback(self): """ the background callback should do nothing """ - handlers.bg_cb(None, None) + handlers.response_callback(None, None) def test_handler_init(self): """ it should create a configured handler """ @@ -73,8 +74,7 @@ def test_emit(self): handler.format.assert_called_once_with(self.record) - self.session.post.assert_called_once_with( - 'url', data='msg', background_callback=handlers.bg_cb) + self.session.post.assert_called_once_with('url', data='msg'.encode('utf-8')) def test_emit_interrupt(self): """ it should raise the interrupt """ diff --git a/requirements.txt b/requirements.txt index f6dbfc7..c356d50 100644 --- a/requirements.txt +++ b/requirements.txt @@ -2,4 +2,4 @@ coverage==3.7.1 flake8==2.1.0 mock==1.0.1 nose==1.3.0 -requests-futures==0.9.4 +requests-futures==0.9.9 diff --git a/setup.py b/setup.py index e71b52d..aa406f2 100644 --- a/setup.py +++ b/setup.py @@ -2,22 +2,28 @@ from setuptools import setup, find_packages +with open("README.md", "r") as fh: + long_description = fh.read() + setup( name="loggly-python-handler", - version='1.0.0', + version='1.0.1', description="Python logging handler that sends messages to Loggly", + long_description=long_description, + long_description_content_type="text/markdown", keywords="loggly logging handler https", - author="psquickitjayant", - author_email="jayantvarshney018@gmail.com", - url="https://github.com/psquickitjayant/loggly-python-handler/", + author="Loggly", + author_email="support@loggly.com", + url="https://github.com/loggly/loggly-python-handler/", license="MIT", packages=find_packages(), install_requires=[ - "requests-futures >= 0.9.4", + "requests-futures >= 0.9.9", ], include_package_data=True, platform='any', classifiers=[ + 'License :: OSI Approved :: MIT License', 'Development Status :: 4 - Beta', 'Intended Audience :: Developers' ]