{ "info": { "author": "KurisuD", "author_email": "KurisuD@pypi.darnand.net", "bugtrack_url": null, "classifiers": [ "License :: Public Domain", "Operating System :: OS Independent", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3 :: Only", "Topic :: System :: Logging" ], "description": "# pap_logger\n\n## A 'pr\u00eat-\u00e0-porter' logger with a sysout StreamHandler and optionally, a SysLogHandler \u2225 a TimedRotatingFileHandler\n\n### Installation\n```bash\npython3 -m pip install pap_logger\n```\n\n### Compatibility information\n\nThis module has only been tested with Python 3.5 under GNU/Linux, 3.7 under Windows and MacOS.\n\n### Usage\n```python\nfrom pap_logger import PaPLogger\npap = PaPLogger()\n```\n\nCalling PaPLogger initialize the logging module root logger.\n\nYou can access the root logger via the logger property, and can as well log directly using the logging functions.\n\nThe logging level can be changed at runtime by setting the PaPLogger level property.\n\n```python\nfrom pap_logger import *\npap = PaPLogger()\npap.logger.info(\"Hello from pap logger\")\npap.logger.warning(\"Default level is WARNING\")\npap.level = INFO\npap.logger.info(\"This in an informational Hello from pap logger\")\n# 2019-01-03 18:28:14.767 JST : Default level is WARNING\n# 2019-01-03 18:28:14.767 JST [ INFO] : This in an informational Hello from pap logger\n\n# or\n\nimport logging\nfrom pap_logger import PaPLogger\npap = PaPLogger()\nlogging.info(\"Hello from pap logger\")\nlogging.warning(\"Default level is WARNING\")\npap.level = logging.INFO\nlogging.info(\"This in an informational Hello from pap logger\")\n# 2019-01-03 18:28:14.767 JST : Default level is WARNING\n# 2019-01-03 18:28:14.767 JST [ INFO] : This in an informational Hello from pap logger\n```\n\nAs shown in above examples, the formatting used by the sysout StreamHandler changes with the logging level.\n\nSetting the level to WARNING, INFO or DEBUG will provide additional contextual informations on the sysout StreamHandler.\n\nThis change of formatting is only made on the sysout StreamHandler.\n\nThe idea behind this choice is that end-users of your application don't normally run above WARNING.\n\nThis behavior can however be overriden by setting the verbose_fmt property to True or False:\n```python\nfrom pap_logger import *\npap = PaPLogger()\npap.verbose_fmt = True\npap.logger.info(\"Hello from pap logger\")\npap.logger.warning(\"Default level is WARNING\")\npap.level = INFO\npap.logger.info(\"This in an informational Hello from pap logger\")\n# 2019-01-03 19:48:43.364 JST [ WARNING] : Default level is WARNING\n# 2019-01-03 19:48:43.364 JST [ INFO] : This in an informational Hello from pap logger\n```\n\nBoth level and verbose_fmt can be set when calling PaPLogger:\n```python\nfrom pap_logger import *\npap = PaPLogger(level=INFO, verbose_fmt=True)\npap.logger.info(\"Hello from pap logger\")\npap.logger.warning(\"Default level is WARNING\")\npap.logger.info(\"This in an informational Hello from pap logger\")\n# 2019-01-03 19:53:04.272 JST [ INFO] : Hello from pap logger\n# 2019-01-03 19:53:04.273 JST [ WARNING] : Default level is WARNING\n# 2019-01-03 19:53:04.273 JST [ INFO] : This in an informational Hello from pap logger\n```\n\nLogging simultaneously to a SysLogHandler and/or a TimedRotatingFileHandler is possible.\nBoth logging are activated at run time (only) by setting the corresponding properties:\n\n```python\nfrom pathlib import Path\nfrom pap_logger import *\npap = PaPLogger(level=INFO, verbose_fmt=True)\n# Setting a log file path will activate the TimedRotatingFileHandler\npap.log_file = Path(\"/var/log/new_log_file_name\")\n# A string works too\npap.log_file = \"/var/log/new_log_file_name\"\n# Setting it to None will remove the TimedRotatingFileHandler\npap.log_file = None\n# Setting a hostname will activate the SysLogHandler\npap.syslog_host = \"your_syslog_server\"\n# Setting it to None will remove the SysLogHandler\npap.syslog_host = None\n# The log file can be prefixed by the hostname for cases where logging source identification is necessary.\n# When activated, the hostname is also written in the logs.\npap.logfile_with_hostname = True\n```\n\nThe SysLogHandler will only log records with level WARNING or above and always in a verbose format.\n\nThe TimedRotatingFileHandler is rotating by default every day, and 15 days of logs are kept.\n\nThese values can only be changed when instantiating PaPLogger:\n```python\nfrom pathlib import Path\nfrom pap_logger import *\npap = PaPLogger(level=INFO, verbose_fmt=True, when='W6', backup_count=4)\npap.log_file = Path(\"/var/log/new_log_file_name\")\n```\n\nPlease refer to [TimedRotatingFileHandler](https://docs.python.org/3/library/logging.handlers.html#logging.handlers.TimedRotatingFileHandler)\n\nA demonstration of usage examples is given in the function _pap_logger_example.\n\nPlease run `python3 -m pap_logger` and refer to the source code.\n\n### Exception raised and error handling\n\nAssertionError occurs if you modify this module and change the level too early in the PaPLogger's `__init__`.\n\n#### TimedRotatingFileHandler:\nPermissionError is _NOT_ raised when logging to a directory where the user doesn't have permissions to create inodes.\n\nIn such cases, the exception is catched, an error is logged, and the TimedRotatingFileHandler isn't added to the logger.\n\n#### SysLogHandler\nNetwork errors are _NOT_ raised when logging to an unreachable syslog server.\n\nIn such cases, the exception is catched, an error is logged, and the SysLogHandler isn't added to the logger.\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/KurisuD/pap_logger", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "pap-logger", "package_url": "https://pypi.org/project/pap-logger/", "platform": "", "project_url": "https://pypi.org/project/pap-logger/", "project_urls": { "Homepage": "https://github.com/KurisuD/pap_logger" }, "release_url": "https://pypi.org/project/pap-logger/0.0.9/", "requires_dist": [ "pathlib", "pytz" ], "requires_python": "", "summary": "A 'pr\u00eat-\u00e0-porter' logger", "version": "0.0.9" }, "last_serial": 4774778, "releases": { "0.0.3": [ { "comment_text": "", "digests": { "md5": "937b4f007db3a99135ddbcc10188ddbc", "sha256": "22276d9b821d4a849dcdc5e7ded9d434c58fc5a1857c4e9bbb1fcfd1229cb601" }, "downloads": -1, "filename": "pap_logger-0.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "937b4f007db3a99135ddbcc10188ddbc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6425, "upload_time": "2019-01-03T12:32:57", "url": "https://files.pythonhosted.org/packages/ed/80/173b5e6bc9ed4d05e20db9b1ff2cfcaddf4539d88dfc9823d22921c14c33/pap_logger-0.0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0e28f7e859758ac4618a7de20ec90540", "sha256": "5efa7db93276607a440e7f1a9b315bccf5db7a1ad94c1940d4d6861ae1527764" }, "downloads": -1, "filename": "pap_logger-0.0.3.tar.gz", "has_sig": false, "md5_digest": "0e28f7e859758ac4618a7de20ec90540", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5848, "upload_time": "2019-01-03T12:32:59", "url": "https://files.pythonhosted.org/packages/a3/22/ff358c647d11a1bb96ab07e1e9863e079b6ca4d768efeb6ccd8babba1f87/pap_logger-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "b241032aba20140a334b548ab2392bd9", "sha256": "7aa4cbba9bcfc3a4eb7a0e1ab553f6eeb38b912d404745e351e62bea1b0b5e9d" }, "downloads": -1, "filename": "pap_logger-0.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "b241032aba20140a334b548ab2392bd9", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6716, "upload_time": "2019-01-19T00:08:30", "url": "https://files.pythonhosted.org/packages/d4/5d/55f56fd6bc5f303da4ece7f5d9cac6dda6a9dfdbae67ca4fea05374453a0/pap_logger-0.0.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7ff70e3df6407b477671529e55b0d3cf", "sha256": "7ce21b55dd8de19031a6fe061121e01f4f4e8310bf405a8a159f379322729dcd" }, "downloads": -1, "filename": "pap_logger-0.0.4.tar.gz", "has_sig": false, "md5_digest": "7ff70e3df6407b477671529e55b0d3cf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5922, "upload_time": "2019-01-19T00:08:31", "url": "https://files.pythonhosted.org/packages/a2/b7/f6b677ade172a1956a06e704dbff86cfee692f074dca5ece9c8edaeced52/pap_logger-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "da54533a8cac63ef54f79eff92db3c87", "sha256": "e574ff97b5155684862e1f0c4e4d6f601205d7ccb5bfef4d2d1af872d1a7dbd8" }, "downloads": -1, "filename": "pap_logger-0.0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "da54533a8cac63ef54f79eff92db3c87", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6850, "upload_time": "2019-01-19T13:51:41", "url": "https://files.pythonhosted.org/packages/9f/b6/67432695c630ddfa08f1a55181ba4dbfe473b8cd73de3d22f72488064c7f/pap_logger-0.0.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "fcccfd233d5e3e925bfad534d9457a10", "sha256": "c95bb388d583a4e881a3b280df2f76585bd44f91b081293b5e4ac1d17793c966" }, "downloads": -1, "filename": "pap_logger-0.0.5.tar.gz", "has_sig": false, "md5_digest": "fcccfd233d5e3e925bfad534d9457a10", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6052, "upload_time": "2019-01-19T13:51:43", "url": "https://files.pythonhosted.org/packages/e7/94/eef57ae5c51fae4cf0de8aa1003e2bc124f5ce4e56831058f94a017d5349/pap_logger-0.0.5.tar.gz" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "859bf833c910aec010c89e4a83cef7dd", "sha256": "261d3ca595bb7f1888a43fbb570715e1cabb318337095b9aad5f043c04c6e41f" }, "downloads": -1, "filename": "pap_logger-0.0.6-py3-none-any.whl", "has_sig": false, "md5_digest": "859bf833c910aec010c89e4a83cef7dd", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6850, "upload_time": "2019-01-19T13:56:17", "url": "https://files.pythonhosted.org/packages/e5/da/545a1674a5c5330f159343eb747e698494cae1d929c574d3f10ba2b3c006/pap_logger-0.0.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "83f4e1d1822efdbd1a524b88a47c965a", "sha256": "5884fee0e53d7105165b6ac427767bee4d2d0aff93f5ec8c4af8fc27a13049dc" }, "downloads": -1, "filename": "pap_logger-0.0.6.tar.gz", "has_sig": false, "md5_digest": "83f4e1d1822efdbd1a524b88a47c965a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6051, "upload_time": "2019-01-19T13:56:19", "url": "https://files.pythonhosted.org/packages/89/14/233432d8c66241dc7dc28635d5ec458725118eab6db73583f4195eff2c4b/pap_logger-0.0.6.tar.gz" } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "a55b830973fe7fe5d27e72124d1a58a7", "sha256": "eec9439fa9ce8a94456e0f1ccc4714644481db7357e240b3811fc098bd077431" }, "downloads": -1, "filename": "pap_logger-0.0.7-py3-none-any.whl", "has_sig": false, "md5_digest": "a55b830973fe7fe5d27e72124d1a58a7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6857, "upload_time": "2019-01-19T14:27:51", "url": "https://files.pythonhosted.org/packages/47/e6/4450c2e31a367fd33fb5ae5fa4f69e2ab8cb161a6b3b1aec4e3cd27fa082/pap_logger-0.0.7-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2f03e994103980581598ea08d83f0f93", "sha256": "dfb62cb404ea15992a5e8a49ead620d8bbd37601b8af9bdecc8d498cfb5bbc4c" }, "downloads": -1, "filename": "pap_logger-0.0.7.tar.gz", "has_sig": false, "md5_digest": "2f03e994103980581598ea08d83f0f93", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6109, "upload_time": "2019-01-19T14:27:53", "url": "https://files.pythonhosted.org/packages/2e/4b/d0bf877b145fe27f21f2ce2e2e93bdc23760da76d7a51a8136df424720df/pap_logger-0.0.7.tar.gz" } ], "0.0.9": [ { "comment_text": "", "digests": { "md5": "7b2981f17806c344f293d24407eaa04a", "sha256": "9640026c4859cdb4df67298e7ad79a0920ba65ed278a5ec407f2c3aaf395541a" }, "downloads": -1, "filename": "pap_logger-0.0.9-py3-none-any.whl", "has_sig": false, "md5_digest": "7b2981f17806c344f293d24407eaa04a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6927, "upload_time": "2019-02-03T14:07:13", "url": "https://files.pythonhosted.org/packages/0e/1b/d2bdcd1eb49c4170106362bf065d8151ef407734db3fd47d3ca3311dc8ab/pap_logger-0.0.9-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9633d78fdf485ce9cdfaaed2134b2c43", "sha256": "aa165dfb175664da4a67bba34cee03923334db26692fd563b3e6c244a143af5c" }, "downloads": -1, "filename": "pap_logger-0.0.9.tar.gz", "has_sig": false, "md5_digest": "9633d78fdf485ce9cdfaaed2134b2c43", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6160, "upload_time": "2019-02-03T14:07:15", "url": "https://files.pythonhosted.org/packages/9c/bf/cbcf56e18d62fedcd08f7709d8d4b6fc877669917e27c4c196705555779f/pap_logger-0.0.9.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "7b2981f17806c344f293d24407eaa04a", "sha256": "9640026c4859cdb4df67298e7ad79a0920ba65ed278a5ec407f2c3aaf395541a" }, "downloads": -1, "filename": "pap_logger-0.0.9-py3-none-any.whl", "has_sig": false, "md5_digest": "7b2981f17806c344f293d24407eaa04a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6927, "upload_time": "2019-02-03T14:07:13", "url": "https://files.pythonhosted.org/packages/0e/1b/d2bdcd1eb49c4170106362bf065d8151ef407734db3fd47d3ca3311dc8ab/pap_logger-0.0.9-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9633d78fdf485ce9cdfaaed2134b2c43", "sha256": "aa165dfb175664da4a67bba34cee03923334db26692fd563b3e6c244a143af5c" }, "downloads": -1, "filename": "pap_logger-0.0.9.tar.gz", "has_sig": false, "md5_digest": "9633d78fdf485ce9cdfaaed2134b2c43", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6160, "upload_time": "2019-02-03T14:07:15", "url": "https://files.pythonhosted.org/packages/9c/bf/cbcf56e18d62fedcd08f7709d8d4b6fc877669917e27c4c196705555779f/pap_logger-0.0.9.tar.gz" } ] }