{ "info": { "author": "Ben Bangert", "author_email": "ben@groovie.org", "bugtrack_url": null, "classifiers": [ "Intended Audience :: Developers", "Programming Language :: Python" ], "description": "=====\nzilch\n=====\n\n``zilch`` is a small library for recording and viewing exceptions from Python.\nThis library is inspired by (and uses several of the same functions from)\nDavid Cramer's Sentry_, but aims to implement just the core features in a\nsmaller code/feature footprint.\n\n\nRequirements\n============\n\n* simplejson_\n* WebError_\n\nOptional\n--------\n\n* ZeroMQ_ (For network based reporting)\n* SQLAlchemy_ (For the database backend recorder)\n* Pyramid_ and WebHelpers_ (For the recorder web UI)\n\n\nBasic Usage\n===========\n\nReporting an Exception\n----------------------\n\nIn the application that wants to report errors, import zilch and configure\nthe reporter to record directly to the database::\n \n from zilch.store import SQLAlchemyStore\n import zilch.client\n \n zilch.client.store = SQLAlchemyStore('sqlite:///exceptions.db')\n\n\nThen to report an exception::\n \n from zilch.client import capture_exception\n try:\n # do something that explodes\n except Exception, e:\n capture_exception()\n\nThe error will then be recorded in the database for later viewing.\n\n\nAdvanced Usage\n==============\n\nIn larger cluster scenarios, or where latency is important, the reporting of\nthe exception can be handed off to ZeroMQ_ to be recorded to a central\nrecorder over the network. Both the client and recording machine must have\nZeroMQ_ installed.\n\nTo setup the client for recording::\n\n import zilch.client\n\n zilch.client.recorder_host = \"tcp://localhost:5555\"\n\n\nThen to report an exception::\n \n from zilch.client import capture_exception\n try:\n # do something that explodes\n except Exception, e:\n capture_exception()\n\nThe exception will then be sent to the recorder_host listening at the\n``recorder_host`` specified.\n\n\nRecording Exceptions Centrally\n==============================\n\nThe recorder uses ZeroMQ_ to record exception reports delivered over the\nnetwork. To run the recorder host, on the machine recording them run::\n\n >> zilch-recorder tcp://localhost:5555 sqlite:///exceptions.db\n\nWithout a ``Recorder`` running, ZeroMQ_ will hold onto the messages until it\nis available. After which point, it will begin to block (In the future, an\noption will be added to configure the disk offloading of messages).\n\nThe recorder will create the tables necessary on its initial launch.\n\n\nViewing Recorded Exceptions\n===========================\n\n``zilch`` comes with a Pyramid_ web application to view the database of\nrecorded exceptions. Once you have installed Pyramid_ and WebHelpers_, you can\nrun the web interface by typing::\n\n >> zilch-web sqlite:///exceptions.db\n\nAdditional web configuration parameters are available to designate the\nhost/port that the web application should bind to (viewable by running\n``zilch-web`` with the ``-h`` option).\n\n\nLicense\n=======\n\n``zilch`` is offered under the MIT license.\n\n\nAuthors\n=======\n\n``zilch`` is made available by `Ben Bangert`.\n\n\nSupport\n=======\n\nzilch is considered feature-complete as the project owner (Ben Bangert) has\nno additional functionality or development beyond bug fixes planned. Bugs can\nbe filed on github, should be accompanied by a test case to retain current\ncode coverage, and should be in a Pull request when ready to be accepted into\nthe zilch code-base.\n\nFor a more full-featured error collector, Sentry_ now has a stand-alone client\nthat no longer requires Django called Raven_. ``zilch`` was created before\nRaven_ was available, and the author now uses Raven_ rather than ``zilch``\nmost of the time.\n\n\n.. _Raven: https://github.com/dcramer/raven\n.. _Pyramid: http://docs.pylonsproject.org/docs/pyramid.html\n.. _ZeroMQ: http://zeromq.org\n.. _Sentry: https://github.com/dcramer/sentry\n.. _simplejson: http://simplejson.github.com/simplejson/\n.. _WebError: http://pypi.python.org/pypi/WebError\n.. _SQLAlchemy: http://sqlalchemy.org\n.. _WebHelpers: http://sluggo.scrapping.cc/python/WebHelpers/index.html\n\n\n=====\nzilch\n=====\n\n0.1.3 (01/13/2012)\n==================\n\nFeatures\n--------\n\n- Applied pull request from Marius Gedminas to add prefix option support to the\n error view webapp.\n\n\n0.1.2 (08/07/2011)\n==================\n\nBug Fixes\n---------\n\n- Cleanup session at end of request.\n\n\n0.1.1 (07/25/2011)\n==================\n\nBug Fixes\n---------\n\n- Fix bug with webob imports in client.py\n\n\n0.1 (07/25/2011)\n================\n\nFeatures\n--------\n\n- Exception reporting via SQLAlchemy and/or ZeroMQ\n- Recording Store can be pluggable\n- WSGI Middleware to capture exceptions with WSGI/CGI environment data\n- Web User Interface for the recorder to view collected exceptions\n- Event tagging to record additional information per exception such as the\n Hostname, Application, etc.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/bbangert/zilch", "keywords": "zeromq exceptions errors reporter collector sqlalchemy", "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "zilch", "package_url": "https://pypi.org/project/zilch/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/zilch/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/bbangert/zilch" }, "release_url": "https://pypi.org/project/zilch/0.1.3/", "requires_dist": null, "requires_python": null, "summary": "Error/Exception collector and reporter", "version": "0.1.3" }, "last_serial": 802291, "releases": { "0.1.1": [ { "comment_text": "", "digests": { "md5": "372a8cb2052e70d9f7a64f0d4a1d0465", "sha256": "b68d815de8875130850d8f5a5612295a7ce479c87fb49fe46cd38e4b280f2312" }, "downloads": -1, "filename": "zilch-0.1.1.tar.gz", "has_sig": false, "md5_digest": "372a8cb2052e70d9f7a64f0d4a1d0465", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23012, "upload_time": "2011-07-25T20:18:46", "url": "https://files.pythonhosted.org/packages/2c/82/e24827ad6b16bd5531bc3a92617400d6ccf6a0b75d5ef4e9438ae78f3af1/zilch-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "761f9dc56c9f1e84f44546a4cbb4edce", "sha256": "1b956e2c2ffe243bc7fa1648c543b562da20eddf4ec496e6869f5df14e27ee39" }, "downloads": -1, "filename": "zilch-0.1.2.tar.gz", "has_sig": false, "md5_digest": "761f9dc56c9f1e84f44546a4cbb4edce", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23191, "upload_time": "2011-08-08T01:43:53", "url": "https://files.pythonhosted.org/packages/1d/34/d16337ee56425d1a8473d1d743557adf722485a6713f7c8112bb1e77aaf7/zilch-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "5a957c061de9fc49163fe5ce5746e07f", "sha256": "90475daeefd1e8845e69c2bf45ae5125fecf77b24b8bc31bbe39f29e792f43f5" }, "downloads": -1, "filename": "zilch-0.1.3.tar.gz", "has_sig": false, "md5_digest": "5a957c061de9fc49163fe5ce5746e07f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26445, "upload_time": "2012-01-13T20:49:14", "url": "https://files.pythonhosted.org/packages/c8/47/340ef993aea122ef5a307ed76529fd0c2fe70f59b2aac5ed0a66920437af/zilch-0.1.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "5a957c061de9fc49163fe5ce5746e07f", "sha256": "90475daeefd1e8845e69c2bf45ae5125fecf77b24b8bc31bbe39f29e792f43f5" }, "downloads": -1, "filename": "zilch-0.1.3.tar.gz", "has_sig": false, "md5_digest": "5a957c061de9fc49163fe5ce5746e07f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26445, "upload_time": "2012-01-13T20:49:14", "url": "https://files.pythonhosted.org/packages/c8/47/340ef993aea122ef5a307ed76529fd0c2fe70f59b2aac5ed0a66920437af/zilch-0.1.3.tar.gz" } ] }