{ "info": { "author": "Michael Schurter", "author_email": "m@schmichael.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: Apache Software License" ], "description": "`Documentation `_ |\n`Package `_ |\n`Code `_\n\n.. image:: https://secure.travis-ci.org/schmichael/mmstats.png?branch=master\n :target: http://travis-ci.org/schmichael/mmstats/\n\n\nAbout\n=====\n\nMmstats is a way to expose and read diagnostic values and metrics for\napplications.\n\nThink of mmstats as /proc for your application and the readers as procps\nutilities.\n\nThis project is a Python implementation, but compatible implementations can be\nmade in any language (see Goals).\n\nDiscuss at https://groups.google.com/group/python-introspection\n\nGoals\n-----\n\n* Separate publishing/writing from consuming/reading tools\n* Platform/language independent (a Java writer can be read by a Python tool)\n* Predictable performance impact for writers via:\n\n * No locks (1 writer per thread)\n * No syscalls (after instantiation)\n * All in userspace\n * Reading has no impact on writers\n\n* Optional persistent (writer can sync anytime)\n* 1-way (Publish/consume only; mmstats are not management extensions)\n\nUsage\n=====\n\nRequirements\n------------\n\nCPython 2.6 or 2.7 (Windows is untested)\n\nPyPy (only tested in 1.7, should be faster in 1.8)\n\nUsing\n-----\n\n1. ``easy_install mmstats`` or ``pip install mmstats`` or if you've downloaded\n the source: ``python setup.py install``\n2. Then in your Python project create a sublcass of mmstats.MmStats like\n\n.. code-block:: python\n\n import mmstats\n\n class WebStats(mmstats.MmStats):\n status2xx = mmstats.CounterField(label='status.2XX')\n status3xx = mmstats.CounterField(label='status.3XX')\n status4xx = mmstats.CounterField(label='status.4XX')\n status5xx = mmstats.CounterField(label='status.5XX')\n last_hit = mmstats.DoubleField(label='timers.last_hit')\n\n3. Instantiate it once per process: (instances are automatically thread local)\n\n.. code-block:: python\n\n webstats = WebStats(label_prefix='web.stats.')\n\n4. Record some data:\n\n.. code-block:: python\n\n if response.status_code == 200:\n webstats.status2xx.inc()\n\n webstats.last_hit = time.time()\n\n5. Run ``slurpstats`` to read it\n6. Run ``mmash`` to create a web interface for stats\n7. Run ``pollstats -p web.stats.status 2XX,3XX,4XX,5XX /tmp/mmstats-*`` for a\n vmstat/dstat like view.\n8. Did a process die unexpectedly and leave around a stale mmstat file?\n ``cleanstats /path/to/mmstat/files`` will check to see which files are stale\n and remove them.\n\n\n.. include:: CHANGES.rst\n :end-before: 0.5.0", "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/schmichael/mmstats", "keywords": null, "license": "APLv2", "maintainer": null, "maintainer_email": null, "name": "mmstats", "package_url": "https://pypi.org/project/mmstats/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/mmstats/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/schmichael/mmstats" }, "release_url": "https://pypi.org/project/mmstats/0.8.0/", "requires_dist": null, "requires_python": null, "summary": "Stat, metric, and diagnostic publishing and consuming tools", "version": "0.8.0" }, "last_serial": 753952, "releases": { "0.3.10": [ { "comment_text": "", "digests": { "md5": "551b932d399808982775da43c7f3eee2", "sha256": "0bffb1d44927950b00a38f2579eba1b748d5ab335af061e36101215df6a79319" }, "downloads": -1, "filename": "mmstats-0.3.10.tar.gz", "has_sig": false, "md5_digest": "551b932d399808982775da43c7f3eee2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14348, "upload_time": "2011-11-29T01:10:46", "url": "https://files.pythonhosted.org/packages/f7/51/ee0b2f5cd2a4fbbe5688d509f43913de2c7bfc5a4843a5b6bbe4dcf38ae5/mmstats-0.3.10.tar.gz" } ], "0.3.12": [ { "comment_text": "", "digests": { "md5": "a35f43a34d40ca10b90e00e086bd6668", "sha256": "3ff592d3df09cb298ba1a1ab1dbb2b878e2abba6f1e56d43ef1fce1adfb2c220" }, "downloads": -1, "filename": "mmstats-0.3.12.tar.gz", "has_sig": false, "md5_digest": "a35f43a34d40ca10b90e00e086bd6668", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14324, "upload_time": "2011-11-30T02:27:07", "url": "https://files.pythonhosted.org/packages/4a/fe/1e2432e8c1411da7604d3231fc5e3c4306a4819e41fdf8979318b6091ab5/mmstats-0.3.12.tar.gz" } ], "0.3.4": [ { "comment_text": "", "digests": { "md5": "8f59ec7fd7438164d5779ecfcdf2bf1c", "sha256": "debc449a97daab6c5aca9e8860662b2a4cca0f97389a4b261aa76c962bba031d" }, "downloads": -1, "filename": "mmstats-0.3.4.tar.gz", "has_sig": false, "md5_digest": "8f59ec7fd7438164d5779ecfcdf2bf1c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10928, "upload_time": "2011-10-05T04:00:54", "url": "https://files.pythonhosted.org/packages/ae/96/ab630738a0d61e67b98ab88fd5e4bad11414b073fca42c7ff4235ae2d1b9/mmstats-0.3.4.tar.gz" } ], "0.3.6": [ { "comment_text": "", "digests": { "md5": "8dfaf0807cee39e5949864cc8eac1d20", "sha256": "9618946684dee77fa950c755b7b710bb59d7d9f13da162062ea48a45b7736a34" }, "downloads": -1, "filename": "mmstats-0.3.6.tar.gz", "has_sig": false, "md5_digest": "8dfaf0807cee39e5949864cc8eac1d20", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12751, "upload_time": "2011-11-11T07:07:42", "url": "https://files.pythonhosted.org/packages/68/da/5b7f99145f6a4129be3b7de017e5bf5e059e2a9e394db644e91f9dad2929/mmstats-0.3.6.tar.gz" } ], "0.3.7": [ { "comment_text": "", "digests": { "md5": "d359a13540f21f9df20d58e6d51bf0ee", "sha256": "a93288e17d0ef19da4458a8bb426c179100b5cd19ddcd8fa978bbd7883e4e832" }, "downloads": -1, "filename": "mmstats-0.3.7.tar.gz", "has_sig": false, "md5_digest": "d359a13540f21f9df20d58e6d51bf0ee", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14963, "upload_time": "2011-11-20T22:09:52", "url": "https://files.pythonhosted.org/packages/4a/3d/d831ef9f4baf4d02893a28ce1e660cee76c0df5f61e955b61ffa9c9ac376/mmstats-0.3.7.tar.gz" } ], "0.3.8": [ { "comment_text": "", "digests": { "md5": "c30b973d3cfb783921d40c607563f054", "sha256": "f6c16ecc68645924168c41ac6af4288e1c0c207ee1f5efefa950026df30e0628" }, "downloads": -1, "filename": "mmstats-0.3.8.tar.gz", "has_sig": false, "md5_digest": "c30b973d3cfb783921d40c607563f054", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15275, "upload_time": "2011-11-21T06:58:20", "url": "https://files.pythonhosted.org/packages/ef/6a/6bb0059fd1f5704eeb1b5c08ffd818034ea36c2d3b0381e4cd479d3a5b15/mmstats-0.3.8.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "06a8913395a5072bade16e55266f7214", "sha256": "23f0db7f09f42cb5d51fb561300776ed2d2a5ba485125734238478735df95d41" }, "downloads": -1, "filename": "mmstats-0.4.0.tar.gz", "has_sig": false, "md5_digest": "06a8913395a5072bade16e55266f7214", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16621, "upload_time": "2012-01-18T02:26:03", "url": "https://files.pythonhosted.org/packages/a8/01/d7014d0fd51fd450959f3b9e7f991a9845f6e08cfafceae02163806c6848/mmstats-0.4.0.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "f494668168c8fdca4f68fc21d21bbec7", "sha256": "d6bce7c00d3208e56beefb3231687b8f54489197654ceb241ce07bcf6f0ff3df" }, "downloads": -1, "filename": "mmstats-0.4.1.tar.gz", "has_sig": false, "md5_digest": "f494668168c8fdca4f68fc21d21bbec7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16750, "upload_time": "2012-01-31T23:07:26", "url": "https://files.pythonhosted.org/packages/ed/c0/be7828d32954c41c68af3f366c3cc21551f9683ec7283b7ea53dcfdb214c/mmstats-0.4.1.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "5786f53244d201dad9995a76686ec63f", "sha256": "acf9bac3e4b7fd7740c54b7b58db109d70e7ef8058c190b72c1a41380e42f6d5" }, "downloads": -1, "filename": "mmstats-0.5.0.tar.gz", "has_sig": false, "md5_digest": "5786f53244d201dad9995a76686ec63f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17729, "upload_time": "2012-02-26T05:10:38", "url": "https://files.pythonhosted.org/packages/4a/93/f3bccf86cb0f6cf8c88014d65c4fca4989d66d84a6e1419c2af02fc2c40e/mmstats-0.5.0.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "7c1ab36ce152545a478f5de66535f53e", "sha256": "f944b8a34030afcc6999cdf1db0215e7c4fd49b7039b6ef23708817d1460117e" }, "downloads": -1, "filename": "mmstats-0.6.0.tar.gz", "has_sig": false, "md5_digest": "7c1ab36ce152545a478f5de66535f53e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19721, "upload_time": "2012-03-09T07:02:45", "url": "https://files.pythonhosted.org/packages/2e/4b/5ba977f51e7de56a3905ed090c2ee04b496f1e8379ce234bc453cd523143/mmstats-0.6.0.tar.gz" } ], "0.6.1": [ { "comment_text": "", "digests": { "md5": "e0a2b311eb5fc54065d423f2e46981bb", "sha256": "8d7fb9d89e8d2eedceaa2755bea9fb371e4a76c03044859154d9c0fa9a9cab47" }, "downloads": -1, "filename": "mmstats-0.6.1.tar.gz", "has_sig": false, "md5_digest": "e0a2b311eb5fc54065d423f2e46981bb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19937, "upload_time": "2012-03-09T07:09:41", "url": "https://files.pythonhosted.org/packages/e0/8a/f90fdacff6ef30883d34e1b430a60cd0820350f6d0fc3d18b8d4ef0b242a/mmstats-0.6.1.tar.gz" } ], "0.6.2": [ { "comment_text": "", "digests": { "md5": "bbb9e5f9b1c704f8e4431a0a4c7c71a6", "sha256": "6cdb3c0f88ff1dab66466949872847c5b5faafbc5c6d92c38f4bd6310f07b747" }, "downloads": -1, "filename": "mmstats-0.6.2.tar.gz", "has_sig": false, "md5_digest": "bbb9e5f9b1c704f8e4431a0a4c7c71a6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 105678, "upload_time": "2012-03-24T01:38:44", "url": "https://files.pythonhosted.org/packages/31/dd/f681062f0e215f62381c3acff24809d26f508a30973a8e77db6b8b2311f4/mmstats-0.6.2.tar.gz" } ], "0.7.0": [ { "comment_text": "", "digests": { "md5": "2cbb21640ae30ffd5787a131e9ddfd77", "sha256": "2a26522b8969cdd09539c223b477b5bd2c6a2eb68a8c7fd5e7c69689a24f7738" }, "downloads": -1, "filename": "mmstats-0.7.0.tar.gz", "has_sig": false, "md5_digest": "2cbb21640ae30ffd5787a131e9ddfd77", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 103367, "upload_time": "2012-10-02T18:14:07", "url": "https://files.pythonhosted.org/packages/26/4b/6d407745bfa09afa9cd28feb814e3649ba0f1dd008a21dc3cffa6b6d9492/mmstats-0.7.0.tar.gz" } ], "0.7.1": [ { "comment_text": "", "digests": { "md5": "b56dafee4d33362c1f12353c056266a9", "sha256": "7f10cdc94fe02755391b3e1ec2c9963769147ed07e396e10b6e787c9049a39c1" }, "downloads": -1, "filename": "mmstats-0.7.1.tar.gz", "has_sig": false, "md5_digest": "b56dafee4d33362c1f12353c056266a9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 104345, "upload_time": "2012-11-19T23:25:01", "url": "https://files.pythonhosted.org/packages/ce/33/d390a6eb2d23dced85da6075c10f4ec7b49ca5b0bc8ca8f1d04a9888277c/mmstats-0.7.1.tar.gz" } ], "0.7.2": [ { "comment_text": "", "digests": { "md5": "2d5def4feef2e583e197ff654f22785a", "sha256": "bdc2fc9732506b641caa1c1e3eab2597764a394ff7ca32a5b6203a47f2e1a2b6" }, "downloads": -1, "filename": "mmstats-0.7.2.tar.gz", "has_sig": false, "md5_digest": "2d5def4feef2e583e197ff654f22785a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 104469, "upload_time": "2012-12-12T22:26:57", "url": "https://files.pythonhosted.org/packages/12/30/a9ecbad3548055709fb0cae903e0aed9178ae4437da7976a55d85ceb1897/mmstats-0.7.2.tar.gz" } ], "0.8.0": [ { "comment_text": "", "digests": { "md5": "6d794554d1fd2a9e878a12d6a72f3507", "sha256": "bf1a33e006d8e43f611dc8e499d6bd5eb515ccbfb7f175ecdcb1357cdabdfce9" }, "downloads": -1, "filename": "mmstats-0.8.0.tar.gz", "has_sig": false, "md5_digest": "6d794554d1fd2a9e878a12d6a72f3507", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 104530, "upload_time": "2013-04-25T20:49:31", "url": "https://files.pythonhosted.org/packages/50/0e/b7411245504bd4043a19dd265893e7502c9f7add8f7ba3b261e647defdd8/mmstats-0.8.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6d794554d1fd2a9e878a12d6a72f3507", "sha256": "bf1a33e006d8e43f611dc8e499d6bd5eb515ccbfb7f175ecdcb1357cdabdfce9" }, "downloads": -1, "filename": "mmstats-0.8.0.tar.gz", "has_sig": false, "md5_digest": "6d794554d1fd2a9e878a12d6a72f3507", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 104530, "upload_time": "2013-04-25T20:49:31", "url": "https://files.pythonhosted.org/packages/50/0e/b7411245504bd4043a19dd265893e7502c9f7add8f7ba3b261e647defdd8/mmstats-0.8.0.tar.gz" } ] }