{ "info": { "author": "Matthew Burkard", "author_email": "matthewjburkard@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", "Programming Language :: Python :: 3" ], "description": "# Chroma Logging\n### A wrapper to add color to the standard python logging module.\n\n![Demo](docs/chroma_demo.png)\n\n## Installation\nChroma Logging is on PyPI and can be installed with:\n```\npip install chromalogging\n```\n\n## Usage\nChroma Logging adds two features to the default logging module, colors\ncan be added to the log format string, and formatted arguments in a log\nmessage can be colored. The syntax to add colors in the format string is\n```$COLOR_NAME_HERE``` to add a color. ```$LEVEL``` refers to the color\nof the logging level for a log.\n```python\nlog_format = ('$GREEN[%(asctime)-s]'\n '$LEVEL[%(levelname)-s]'\n '$MAGENTA[%(filename)-s:%(lineno)-d]'\n '$LEVEL: %(message)s')\n```\n\nTo use, we use a chromalogging.ChromaFormatter rather than the\nlogging.Formatter.\n\n```python\nimport sys\nimport chromalogging as logging\n\nlog = logging.getLogger()\nlog_format = ('$GREEN[%(asctime)-s]'\n '$LEVEL[%(levelname)-s]'\n '$MAGENTA[%(filename)-s:%(lineno)-d]'\n '$LEVEL: %(message)s')\nformatter = logging.ChromaFormatter(log_format)\nhandler = logging.StreamHandler(stream=sys.stdout)\nhandler.setFormatter(formatter)\nlog.addHandler(handler)\n```\n\nAll supported colors:\n\n| Regular | Light |\n| -------- | ----------- |\n| $BLACK | $LI_BLACK |\n| $RED | $LI_RED |\n| $GREEN | $LI_GREEN |\n| $YELLOW | $LI_YELLOW |\n| $BLUE | $LI_BLUE |\n| $MAGENTA | $LI_MAGENTA |\n| $CYAN | $LI_CYAN |\n| $WHITE | $LI_WHITE |\n\nAdditionally ```$BOLD``` applies bold text and ```$RESET``` resets back\nto no colors unless ```use_bold``` is True, then it resets to bold text.\n\n### Formatted Arguments in a Log\nTo apply color to a formatted argument in a log use ```{}``` as a\nplaceholder for arguments. ChromaFormatter will substitute ```{}``` with\nany arguments passed in.\n```python\nlog.info('Format {}.', 10)\n```\n\n### Additional Configuration\nChromaFormatter has a dict called ```color_map``` to determine the\ncolors of parts of the log msg that can't be configured from the format\nstring passed into ChromaFormatter. Logging levels and the color of\nformatted arguments are set in color_map.\n\nBy default the colors are:\n\n| Category | Color |\n| -------- | ----------- |\n| DEBUG | BLUE |\n| INFO | Cyan |\n| WARNING | YELLOW |\n| ERROR | LIGHTRED_EX |\n| CRITICAL | RED |\n| ARGS | White |\n\nTo change color_map colors use colorama:\n```python\nformatter.color_map[chromalogging.INFO] = colorama.Fore.WHITE\nformatter.color_map[chromalogging.ARGS] = colorama.Fore.MAGENTA\n```\n\n## Applying to Existing Loggers\nIf you are using a third party module that uses the standard python\nlogging module you can apply a ChromaFormatter as such:\n```python\nimport sys\n\nimport chromalogging as logging\n\nlog_format = logging.get_default_format_msg()\nstream_formatter = logging.ChromaFormatter(log_format)\nstream_handler = logging.StreamHandler(stream=sys.stdout)\n\nflask_logger = logging.getLogger('werkzeug')\nwhile flask_logger.handlers:\n flask_logger.removeHandler(flask_logger.handlers.pop())\nflask_logger.addHandler(stream_handler)\n```", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://gitlab.com/mburkard/chroma-logging", "keywords": "", "license": "GNU General Public License v3 (GPLv3)", "maintainer": "", "maintainer_email": "", "name": "chromalogging", "package_url": "https://pypi.org/project/chromalogging/", "platform": "", "project_url": "https://pypi.org/project/chromalogging/", "project_urls": { "Homepage": "https://gitlab.com/mburkard/chroma-logging" }, "release_url": "https://pypi.org/project/chromalogging/1.0.1/", "requires_dist": null, "requires_python": "", "summary": "Wrapper for the Python logging module to add color.", "version": "1.0.1", "yanked": false, "yanked_reason": null }, "last_serial": 8346688, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "f5a52e6810d7607d74789d613177bf5b", "sha256": "22333404e2460cb38b8b2fe218b7c1886d1ba438cd53fbb608916836259415ee" }, "downloads": -1, "filename": "chromalogging-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "f5a52e6810d7607d74789d613177bf5b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4043, "upload_time": "2019-10-26T21:34:37", "upload_time_iso_8601": "2019-10-26T21:34:37.821665Z", "url": "https://files.pythonhosted.org/packages/98/e6/72497197eadce1ea56a44d18a14e84212d58f9d858d69b2db156607d71cd/chromalogging-0.0.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "1fa22fba3de495ea970a52674cd670c0", "sha256": "3c4ceec7e4385b322bfc530f63e684cf1b129931ae2d19be9cef6a3d0c8a82dd" }, "downloads": -1, "filename": "chromalogging-0.0.1.tar.gz", "has_sig": false, "md5_digest": "1fa22fba3de495ea970a52674cd670c0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3055, "upload_time": "2019-10-12T04:01:04", "upload_time_iso_8601": "2019-10-12T04:01:04.042785Z", "url": "https://files.pythonhosted.org/packages/00/76/43afbb6b43d0d7b3132e27807a89ed5f2388b61e088aa0d210e3debb35bd/chromalogging-0.0.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "feef738f4acafe39c5036299ea838da9", "sha256": "0a7680fc60237433600d8abe760c653e0fd9131d278865096b884d9e00c2b6c3" }, "downloads": -1, "filename": "chromalogging-0.0.2.tar.gz", "has_sig": false, "md5_digest": "feef738f4acafe39c5036299ea838da9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3108, "upload_time": "2019-10-19T01:06:41", "upload_time_iso_8601": "2019-10-19T01:06:41.906359Z", "url": "https://files.pythonhosted.org/packages/94/16/7b1e4bc5d5bee30f226c34425a15a2ca887e47259339759f495a99e89f5e/chromalogging-0.0.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "ef9c3c82053762ba766e81cc06ba2154", "sha256": "f1d344e1267e89af35b79d31af8d9bf63a1690b95f4555349f3630da5a1aba5f" }, "downloads": -1, "filename": "chromalogging-0.0.3.tar.gz", "has_sig": false, "md5_digest": "ef9c3c82053762ba766e81cc06ba2154", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3599, "upload_time": "2019-10-26T21:34:41", "upload_time_iso_8601": "2019-10-26T21:34:41.016595Z", "url": "https://files.pythonhosted.org/packages/1c/98/7c0e2c841c872b3355d9c9e88df771b54f6166eeed9e8fb0b5df0b169955/chromalogging-0.0.3.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "c365135c072feca65ded007e01ed8b02", "sha256": "844bbe143428a58e62f5cedd0d4a688aec7d2a90e920fe2d940870a415c8c849" }, "downloads": -1, "filename": "chromalogging-0.0.4.tar.gz", "has_sig": false, "md5_digest": "c365135c072feca65ded007e01ed8b02", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3514, "upload_time": "2019-10-27T17:04:42", "upload_time_iso_8601": "2019-10-27T17:04:42.771711Z", "url": "https://files.pythonhosted.org/packages/2e/da/3088d80c1b4081e1829e3b6bb651a51f825d07ba3ee64c136e3cd0cf0fa5/chromalogging-0.0.4.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "78fb94519baf953d7cc9f3924cda7a99", "sha256": "359ba9091facd4d7bcd754f5e067a2ea2a7dbd9677d502d5ad96165f9f9fa6a7" }, "downloads": -1, "filename": "chromalogging-0.0.5.tar.gz", "has_sig": false, "md5_digest": "78fb94519baf953d7cc9f3924cda7a99", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4205, "upload_time": "2019-11-06T03:04:22", "upload_time_iso_8601": "2019-11-06T03:04:22.315647Z", "url": "https://files.pythonhosted.org/packages/78/6d/9b6b2993895c9425def637315456dd000f99f5f55c8b0bea6c757e5f5849/chromalogging-0.0.5.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "b55461044d7d57c2585cf91a4f633645", "sha256": "5838858bfad817ba4a6ec9c732628fc6872ebe1bc65da64770337a12ed61493b" }, "downloads": -1, "filename": "chromalogging-0.0.6.tar.gz", "has_sig": false, "md5_digest": "b55461044d7d57c2585cf91a4f633645", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4257, "upload_time": "2019-11-07T00:27:54", "upload_time_iso_8601": "2019-11-07T00:27:54.397819Z", "url": "https://files.pythonhosted.org/packages/ae/53/8a386b6a5596d69b246b779693733e72aeb1efe7f2bfce8d9ccb117c38dd/chromalogging-0.0.6.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "7493028d2455d337f5ba5b637928ad2e", "sha256": "069d343513d1fc77184d4a7794cf17449be4c6e4ca295d587acec3924f5102df" }, "downloads": -1, "filename": "chromalogging-0.0.7.tar.gz", "has_sig": false, "md5_digest": "7493028d2455d337f5ba5b637928ad2e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4263, "upload_time": "2019-11-07T00:34:17", "upload_time_iso_8601": "2019-11-07T00:34:17.167880Z", "url": "https://files.pythonhosted.org/packages/dc/67/56accbb5541d3bac9630362e1b55f4cfa615414d66e23a5d2d216ad7459f/chromalogging-0.0.7.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.8": [ { "comment_text": "", "digests": { "md5": "5c323660c89ad7780f2326421c309d5c", "sha256": "6bfedb1161aa1967d00bc83cf16c06ed29c8eface366574ae981ab7202433381" }, "downloads": -1, "filename": "chromalogging-0.0.8.tar.gz", "has_sig": false, "md5_digest": "5c323660c89ad7780f2326421c309d5c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4253, "upload_time": "2019-11-16T20:48:13", "upload_time_iso_8601": "2019-11-16T20:48:13.025042Z", "url": "https://files.pythonhosted.org/packages/c1/94/a083e334a0fb40e3317622949214588e4c58cef67f6395b567bc9a58b8f3/chromalogging-0.0.8.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.9": [ { "comment_text": "", "digests": { "md5": "884fb1921bd97175441e6507b608af34", "sha256": "8c4231ba1b532f9da5f541abf8e40462f1ddacc6d19a60c2e2c7123ef15c2b04" }, "downloads": -1, "filename": "chromalogging-0.0.9.tar.gz", "has_sig": false, "md5_digest": "884fb1921bd97175441e6507b608af34", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4483, "upload_time": "2019-12-06T00:44:49", "upload_time_iso_8601": "2019-12-06T00:44:49.540198Z", "url": "https://files.pythonhosted.org/packages/cc/a3/4ad20685b51cbfae664fa775cfcb1e63c700bb5e7640030a1244b25edfad/chromalogging-0.0.9.tar.gz", "yanked": false, "yanked_reason": null } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "2f7e1043797e6283419cdc9696b6437f", "sha256": "15efc4db1eccb93d2c8659e469c38224bd1642b6473696d4334d05d6bab321fb" }, "downloads": -1, "filename": "chromalogging-0.1.0.tar.gz", "has_sig": false, "md5_digest": "2f7e1043797e6283419cdc9696b6437f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4483, "upload_time": "2019-12-09T02:14:05", "upload_time_iso_8601": "2019-12-09T02:14:05.488974Z", "url": "https://files.pythonhosted.org/packages/ba/6d/e52ed8ba213130a195cb4725827acfe64d74ae4fcf0d4f93eab97a7aa57b/chromalogging-0.1.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "adfff0f0b455ee89805c5108bd60e0b3", "sha256": "592438f081092f7526a324839a14f4896c941bb7ea985e2bf3fc1206d6042ee7" }, "downloads": -1, "filename": "chromalogging-0.1.1.tar.gz", "has_sig": false, "md5_digest": "adfff0f0b455ee89805c5108bd60e0b3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4991, "upload_time": "2020-02-07T02:11:20", "upload_time_iso_8601": "2020-02-07T02:11:20.537073Z", "url": "https://files.pythonhosted.org/packages/93/fd/ab12ad49b795f12ea2a4fbf3b92063021d69b7ad62c015aae00ffb8531bc/chromalogging-0.1.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "d5099a0a10aef23c4d50ee6d682073ab", "sha256": "788ec6ebaf93cbfc9ef511fdddafd921760119159378550de32fdb7d680ad47b" }, "downloads": -1, "filename": "chromalogging-0.1.2.tar.gz", "has_sig": false, "md5_digest": "d5099a0a10aef23c4d50ee6d682073ab", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5041, "upload_time": "2020-02-12T01:57:55", "upload_time_iso_8601": "2020-02-12T01:57:55.582533Z", "url": "https://files.pythonhosted.org/packages/9d/6d/93d89c2e14bc4deed11026f0124b2c18c7c7b0f160eaa4d7843cb751338b/chromalogging-0.1.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "d0ffa64ddd96c8bee15ee7b46dd38f4a", "sha256": "19b957caf882eba390decb8b83d56991631f8781175d62416c23d14e7516ac9b" }, "downloads": -1, "filename": "chromalogging-0.1.3.tar.gz", "has_sig": false, "md5_digest": "d0ffa64ddd96c8bee15ee7b46dd38f4a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5108, "upload_time": "2020-02-12T11:26:44", "upload_time_iso_8601": "2020-02-12T11:26:44.353698Z", "url": "https://files.pythonhosted.org/packages/12/dc/8d8e4a2babb1f2930bce25685a19de0b16f36e935419c31f6b2ce77fdaf0/chromalogging-0.1.3.tar.gz", "yanked": false, "yanked_reason": null } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "5a2cab07520eb1c98796eaa2d00a633c", "sha256": "ec981bbe1996b96ad4a4e3ee2ec30f8a0683aaac2e761810892af76c61bcfbfa" }, "downloads": -1, "filename": "chromalogging-0.1.5.tar.gz", "has_sig": false, "md5_digest": "5a2cab07520eb1c98796eaa2d00a633c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5521, "upload_time": "2020-08-01T16:04:16", "upload_time_iso_8601": "2020-08-01T16:04:16.839283Z", "url": "https://files.pythonhosted.org/packages/1b/53/1c4452a77af78a401c688bdeeb94fa416d32ed74b1f139eade4bd4e074b3/chromalogging-0.1.5.tar.gz", "yanked": false, "yanked_reason": null } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "28128ab5a8d0e78f75aaf11ce7d66931", "sha256": "cfdd1bc879167716b3334cf744a4cfac18c49ce0c4f7b7b149cbfefafd96a671" }, "downloads": -1, "filename": "chromalogging-0.1.6.tar.gz", "has_sig": false, "md5_digest": "28128ab5a8d0e78f75aaf11ce7d66931", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5074, "upload_time": "2020-09-30T23:09:20", "upload_time_iso_8601": "2020-09-30T23:09:20.647630Z", "url": "https://files.pythonhosted.org/packages/5e/86/aaf02314a87034cf441add55cc2f411323c5f76880e0b5a0c9fe88ac7315/chromalogging-0.1.6.tar.gz", "yanked": false, "yanked_reason": null } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "9732319f5a1af09310fb0f28067bb2e4", "sha256": "3cbbe492c88c474475aafa342993586b9f1019a554ec8f4a7cf9e14155098ce8" }, "downloads": -1, "filename": "chromalogging-1.0.0.tar.gz", "has_sig": false, "md5_digest": "9732319f5a1af09310fb0f28067bb2e4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6705, "upload_time": "2020-10-06T00:32:38", "upload_time_iso_8601": "2020-10-06T00:32:38.019906Z", "url": "https://files.pythonhosted.org/packages/b6/66/2b156059931f2bad7fb06a71beb17e984e44a6e181eac4734da5dfa6e7ba/chromalogging-1.0.0.tar.gz", "yanked": false, "yanked_reason": null } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "552cec6b614369098f4027a2f7730db0", "sha256": "50cfc611a5b5d2a4185ffae802920082608f0c55224ff736472efee29397344a" }, "downloads": -1, "filename": "chromalogging-1.0.1.tar.gz", "has_sig": false, "md5_digest": "552cec6b614369098f4027a2f7730db0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6710, "upload_time": "2020-10-06T00:47:21", "upload_time_iso_8601": "2020-10-06T00:47:21.978868Z", "url": "https://files.pythonhosted.org/packages/3f/f7/9a6fac885062a1edcaf7285965cdcafa9e89a7d2e888c9cb55f41d7eb283/chromalogging-1.0.1.tar.gz", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "552cec6b614369098f4027a2f7730db0", "sha256": "50cfc611a5b5d2a4185ffae802920082608f0c55224ff736472efee29397344a" }, "downloads": -1, "filename": "chromalogging-1.0.1.tar.gz", "has_sig": false, "md5_digest": "552cec6b614369098f4027a2f7730db0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6710, "upload_time": "2020-10-06T00:47:21", "upload_time_iso_8601": "2020-10-06T00:47:21.978868Z", "url": "https://files.pythonhosted.org/packages/3f/f7/9a6fac885062a1edcaf7285965cdcafa9e89a7d2e888c9cb55f41d7eb283/chromalogging-1.0.1.tar.gz", "yanked": false, "yanked_reason": null } ] }