{ "info": { "author": "Krzysztof Warunek", "author_email": "krzysztof@warunek.net", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "License :: OSI Approved :: MIT License", "Operating System :: POSIX", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.0", "Programming Language :: Python :: 3.1", "Programming Language :: Python :: 3.2", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4" ], "description": "zookeeper_monitor\n==================\n\n|image0|_ |image1|_\n\n.. |image0| image:: https://api.travis-ci.org/kwarunek/zookeeper_monitor.png?branch=master\n.. _image0: https://travis-ci.org/kwarunek/zookeeper_monitor\n.. |image1| image:: https://landscape.io/github/kwarunek/zookeeper_monitor/master/landscape.svg?style=flat\n.. _image1: https://landscape.io/github/kwarunek/zookeeper_monitor\n\nModule lets you call ZooKeeper commands - four letters commands over TCP - https://zookeeper.apache.org/doc/r3.1.2/zookeeperAdmin.html#sc_zkCommands. It also has built-in web monitor. Based on Tornado, compatibile with Python 2.7.x, 3.x and above. It doesn't require zookeeper, nor zookeeper's headers (since it doesn't utilize zkpython).\n\nInstallation\n------------\n\nIt can be installed from pypi or directly from git repository.\n\n.. code-block:: bash\n\n pip install zookeeper_monitor\n\n #or\n\n git clone https://github.com/kwarunek/zookeeper_monitor.git\n cd zookeeper_monitor/\n python setup.py install\n\nUsage\n------------\n\nExample:\n\n.. code-block:: python\n\n from zookeeper_monitor import zk\n\n @tornado.gen.coroutine\n def some_coroutine()\n host = zk.Host('zookeeper.addr.ip', 2181)\n # you can run each command as a coroutine example:\n # get srvr data\n srvr_data = yield host.srvr()\n # get stat data\n stat_data = yield host.stat()\n # get server state\n ruok = yield host.ruok()\n # stop zookeeper\n yield host.kill()\n\n\nYou can wrap it to sync code if you are not using tornado\n\n.. code-block:: python\n\n from tornado.ioloop import IOLoop\n\n IOLoop.instance().run_sync(some_coroutine)\n\n\nWeb monitor\n-----------\n\nTo run web monitor you need to provide configuration, if you don't, it will used `localhost:2181` by default.\n\n.. code-block:: bash\n\n python -m zookeeper_monitor.web\n\n # with configuration file\n python -m zookeeper_monitor.web -c /somepath/cluster.json\n\n # to see available options\n python -m zookeeper_monitor.web --help\n\n\nNext you navigate to http://127.0.0.1:8080/ (or whatever you specified).\n\nConfiguration\n-------------\n\nDefining cluster `cluster.json` (json or yaml)\n\n.. code-block:: json\n\n {\n \"name\": \"brand-new-zookeeper-cluster\",\n \"hosts\": [\n {\"addr\": \"10.1.15.1\", \"port\": 2181, \"dc\":\"eu-west\"},\n {\"addr\": \"10.2.31.2\", \"port\": 2181, \"dc\":\"us-east\"},\n {\"addr\": \"10.1.12.3\", \"port\": 2181, \"dc\":\"eu-west\"}\n ]\n }\n\n\n* name (string) - cluster name.\n* hosts (list) - List of hosts running ZooKeeper connected in cluster:\n\n - addr (string): IP or domain, mandatory\n - port (int): ZooKeeper port, optional, default 2181\n - dc (string): datacenter/location name, optional\n \nScreenshots\n-----------\n\nCluster view\n|image22|_\n\n.. |image22| image:: https://cloud.githubusercontent.com/assets/670887/5609840/172c1e38-94aa-11e4-92e5-9b4e8a06632c.png\n.. _image22: https://cloud.githubusercontent.com/assets/670887/5609840/172c1e38-94aa-11e4-92e5-9b4e8a06632c.png\n\nNode stat view\n|image23|_\n\n.. |image23| image:: https://cloud.githubusercontent.com/assets/670887/5609842/1be19584-94aa-11e4-8cd1-5df63c1bfaaf.png\n.. _image23: https://cloud.githubusercontent.com/assets/670887/5609842/1be19584-94aa-11e4-8cd1-5df63c1bfaaf.png\n\nLicense\n-------\nMIT\n\nTODO\n----\n- more tests\n- more stats in webmonitor\n- parse zookeeper version\n- new commands in zookeeper 3.3 and 3.4\n- parse output of dump, reqs\n\nChangelog\n---------\n\n0.3.0 - implemented `mntr`, credits to `Robb Wagoner `_\n\n0.2.5 - implemented `with_timeout`, handlers get_template, py3.3 gen.Task in Host, css colors\n\n0.2.4 - separate getter template/static dir\n\n0.2.3 - fix import in py3 web\n\n0.2.2 - clean ups: pylint, README, classifiers\n\n0.2.1 - fix package, fix tests\n\n0.2.0 - implement more commands, updated docs\n\n0.1.2 - **release** - pypi\n\n0.1.1 - clean up\n\n0.1.0 - public standalone\n\n0.0.3 - 0.0.9 - refactor, tests\n\n0.0.2 - working draft\n\n0.0.1 - initial concept", "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/kwarunek/zookeeper_monitor", "keywords": "zookeeper,tcp,tornado", "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "zookeeper_monitor", "package_url": "https://pypi.org/project/zookeeper_monitor/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/zookeeper_monitor/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/kwarunek/zookeeper_monitor" }, "release_url": "https://pypi.org/project/zookeeper_monitor/0.3.0/", "requires_dist": null, "requires_python": null, "summary": "Zookeeper's four letters command wrapper and web monitor.", "version": "0.3.0" }, "last_serial": 1890309, "releases": { "0.2.1": [ { "comment_text": "", "digests": { "md5": "f5e81dc5a437e768bde58bab91b00085", "sha256": "5206851ea23c6228d63721c66b5acededc7810413c8b46eff1663de71364a5d9" }, "downloads": -1, "filename": "zookeeper_monitor-0.2.1.tar.gz", "has_sig": false, "md5_digest": "f5e81dc5a437e768bde58bab91b00085", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18530, "upload_time": "2015-01-03T16:51:51", "url": "https://files.pythonhosted.org/packages/e6/11/cd565e6d9c26b4109ce4250a3793d798e26fc1bafe64bfe12054c22935de/zookeeper_monitor-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "8a11b7bc0c0587817c284fc4bbd5ca38", "sha256": "e3536ca8848af4b9e6899555de3dd3527feca8bf31f24059c0409280f927acbf" }, "downloads": -1, "filename": "zookeeper_monitor-0.2.2.tar.gz", "has_sig": false, "md5_digest": "8a11b7bc0c0587817c284fc4bbd5ca38", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19308, "upload_time": "2015-01-05T06:25:06", "url": "https://files.pythonhosted.org/packages/e9/b1/cd02040bebb86fecfc4f87a5c3d69cf7fe93a2f7b1cf8dbea40f3107c135/zookeeper_monitor-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "c96372e43aff28a2cadb0b50c2a2355c", "sha256": "5d059bc208ca3caea28556a4ce6622c000eb88132769e706f8f75955b2856109" }, "downloads": -1, "filename": "zookeeper_monitor-0.2.3.tar.gz", "has_sig": false, "md5_digest": "c96372e43aff28a2cadb0b50c2a2355c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19327, "upload_time": "2015-01-08T15:57:55", "url": "https://files.pythonhosted.org/packages/f4/4e/dc11bd40c050973c34557f6130ae1ec774be1fa9137988459b7021a1c55d/zookeeper_monitor-0.2.3.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "ec09ab5c569adf1fa9ccc0e0c91b0b5c", "sha256": "842d5eede35f46d865fe546d5a1ea0f1b53f9f931541858960c8c415fb4b622d" }, "downloads": -1, "filename": "zookeeper_monitor-0.2.4.tar.gz", "has_sig": false, "md5_digest": "ec09ab5c569adf1fa9ccc0e0c91b0b5c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19436, "upload_time": "2015-01-09T09:22:33", "url": "https://files.pythonhosted.org/packages/f6/1b/4badc95689fe7c2e90d669f70e3ab034358ae1e20719f8dd32238b57ae70/zookeeper_monitor-0.2.4.tar.gz" } ], "0.2.5": [ { "comment_text": "", "digests": { "md5": "948c113385db6513f292143b7bd7f182", "sha256": "9955f3f88a698d9ee4881a1311d71ace8678f8dbcd477f8130b48fb7675eb4b1" }, "downloads": -1, "filename": "zookeeper_monitor-0.2.5.tar.gz", "has_sig": false, "md5_digest": "948c113385db6513f292143b7bd7f182", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19671, "upload_time": "2015-01-09T12:46:17", "url": "https://files.pythonhosted.org/packages/92/cb/6b3a1d5d4a37d68ec2af5c5b0b63d75b783aceac90fee4f16e83884666a5/zookeeper_monitor-0.2.5.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "7fa5c447e9308264e14190a2011fcadc", "sha256": "5fbfc7afeb4e7f075e5074b5532071e4a27f5072a4c05b5b294835fc61398d66" }, "downloads": -1, "filename": "zookeeper_monitor-0.3.0.tar.gz", "has_sig": false, "md5_digest": "7fa5c447e9308264e14190a2011fcadc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18196, "upload_time": "2016-01-05T21:53:18", "url": "https://files.pythonhosted.org/packages/c5/b6/b9bba0d2fc045ec803a9da0a6257cf05ec6c165b84b3fbf2e3110f86427d/zookeeper_monitor-0.3.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "7fa5c447e9308264e14190a2011fcadc", "sha256": "5fbfc7afeb4e7f075e5074b5532071e4a27f5072a4c05b5b294835fc61398d66" }, "downloads": -1, "filename": "zookeeper_monitor-0.3.0.tar.gz", "has_sig": false, "md5_digest": "7fa5c447e9308264e14190a2011fcadc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18196, "upload_time": "2016-01-05T21:53:18", "url": "https://files.pythonhosted.org/packages/c5/b6/b9bba0d2fc045ec803a9da0a6257cf05ec6c165b84b3fbf2e3110f86427d/zookeeper_monitor-0.3.0.tar.gz" } ] }