{ "info": { "author": "Greenhouse AI team", "author_email": "ai@greenhousegroup.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "Python Logging Handler\n-----------------------------\n\nA simple Python logging handler that can be used to send to a https endpoint. Borrowed the extra fields concept from the graypy logging library.\n\n## History\nThis repository if originally forked from (https://github.com/varshneyjayant/loggly-python-handler)\n\n## Installation\nDownload the repository using pip\n\n sudo pip install loggly-python-handler\n\n## Use in python\n### Configuration\n\nCreate a Configuration file python.conf and add RocketChatHandler to Configuration File.\n\n [handlers]\n keys=RocketChatHandler\n\n [handler_RocketChatHandler]\n class=oxomo.handlers.RocketChatHandler\n formatter=jsonFormat\n args=('ROCKETCHAT_WEBHOOK_URL','POST')\n\n [formatters]\n keys=jsonFormat\n\n [loggers]\n keys=root\n\n [logger_root]\n handlers=RocketChatHandler\n level=ERROR\n\n [formatter_jsonFormat]\n format={ \"loggerName\":\"%(name)s\", \"asciTime\":\"%(asctime)s\", \"fileName\":\"%(filename)s\", \"logRecordCreationTime\":\"%(created)f\", \"functionName\":\"%(funcName)s\", \"levelNo\":\"%(levelno)s\", \"lineNo\":\"%(lineno)d\", \"time\":\"%(msecs)d\", \"levelName\":\"%(levelname)s\", \"message\":\"%(message)s\"}\n datefmt=\n\n### Use Configuration in python file\n\n import logging\n import logging.config\n import oxomo.handlers\n\n logging.config.fileConfig('python.conf')\n logger = logging.getLogger('myLogger')\n\n logger.error('Test Error Log')\n\n## Optionally log uncaught exceptions as errors\n\n def sysexcept_handler(type, value, tb):\n logger.error(\"Uncaught exception: {0}\".format(str(value)))\n sys.__excepthook__(type, value, tb)\n sys.excepthook = sysexcept_handler\n\n## Use in Django\n\n### settings.py\n\n LOGGING = {\n 'version': 1,\n 'disable_existing_loggers': False,\n 'formatters': {\n 'verbose': {\n 'format': '%(levelname)s %(asctime)s %(module)s %(process)d %(thread)d %(message)s'\n },\n 'simple': {\n 'format': '%(levelname)s %(message)s'\n },\n 'json': {\n 'format': '{ \"loggerName\":\"%(name)s\", \"asciTime\":\"%(asctime)s\", \"fileName\":\"%(filename)s\", \"logRecordCreationTime\":\"%(created)f\", \"functionName\":\"%(funcName)s\", \"levelNo\":\"%(levelno)s\", \"lineNo\":\"%(lineno)d\", \"time\":\"%(msecs)d\", \"levelName\":\"%(levelname)s\", \"message\":\"%(message)s\"}',\n },\n },\n 'handlers': {\n 'console': {\n 'class': 'logging.StreamHandler',\n 'level': 'DEBUG',\n 'formatter': 'verbose',\n },\n 'oxomo': {\n 'class': 'oxomo.handlers.RocketChatHandler',\n 'level': 'INFO',\n 'formatter': 'json',\n 'url': 'ROCKETCHAT_WEBHOOK_URL',\n },\n },\n 'loggers': {\n 'django': {\n 'handlers': ['console', ],\n 'level': os.getenv('DJANGO_LOG_LEVEL', 'INFO'),\n },\n 'your_app_name': {\n 'handlers': ['console', 'oxomo'],\n 'level': 'INFO',\n },\n },\n }\n\n### views.py\n\n import logging\n\n logger = logging.getLogger(__name__)\n\n def logging_example(request):\n \"\"\"logging example\n \"\"\"\n logger.debug('this is DEBUG message.')\n logger.info('this is INFO message.')\n logger.warning('this is WARNING message.')\n logger.error('this is ERROR message.')\n logger.critical('this is CRITICAL message.')\n\n return Response({}, status=status.HTTP_200_OK)", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://gitlab.com/greenhousegroup/ai/libraries/oxomo/", "keywords": "logging handler https", "license": "", "maintainer": "", "maintainer_email": "", "name": "oxomo", "package_url": "https://pypi.org/project/oxomo/", "platform": "", "project_url": "https://pypi.org/project/oxomo/", "project_urls": { "Homepage": "https://gitlab.com/greenhousegroup/ai/libraries/oxomo/" }, "release_url": "https://pypi.org/project/oxomo/0.1.2/", "requires_dist": null, "requires_python": "", "summary": " Python logging handler that sends messages to HTTPS endpoints.", "version": "0.1.2" }, "last_serial": 5144282, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "c518895774519b01d5836dc94c49736a", "sha256": "dd341e0daaa775f613ffa2b1b9426237292a336561f4acb6120b4c208f9dfe45" }, "downloads": -1, "filename": "oxomo-0.1.0.tar.gz", "has_sig": false, "md5_digest": "c518895774519b01d5836dc94c49736a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4702, "upload_time": "2019-04-12T10:40:17", "url": "https://files.pythonhosted.org/packages/c5/46/44bf8548afe58207e23852f1170b67ccef6d6e123d5b41b5d8f71b5680a5/oxomo-0.1.0.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "6ad8fc19427e865336c98b1b6f1a5f20", "sha256": "7eaf8d3764f0a47642edbbe3b7dc1e70c303b38e85b25624b78ff77b0f34c39d" }, "downloads": -1, "filename": "oxomo-0.1.2.tar.gz", "has_sig": false, "md5_digest": "6ad8fc19427e865336c98b1b6f1a5f20", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3817, "upload_time": "2019-04-15T11:42:49", "url": "https://files.pythonhosted.org/packages/07/8c/7adfb49b52bcbb5b96ee80cf094d59837024ef1bf212c0db6d281a781005/oxomo-0.1.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6ad8fc19427e865336c98b1b6f1a5f20", "sha256": "7eaf8d3764f0a47642edbbe3b7dc1e70c303b38e85b25624b78ff77b0f34c39d" }, "downloads": -1, "filename": "oxomo-0.1.2.tar.gz", "has_sig": false, "md5_digest": "6ad8fc19427e865336c98b1b6f1a5f20", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3817, "upload_time": "2019-04-15T11:42:49", "url": "https://files.pythonhosted.org/packages/07/8c/7adfb49b52bcbb5b96ee80cf094d59837024ef1bf212c0db6d281a781005/oxomo-0.1.2.tar.gz" } ] }