{ "info": { "author": "4teamwork AG", "author_email": "mailto:info@4teamwork.ch", "bugtrack_url": null, "classifiers": [], "description": "supervisor-haproxy\n==================\n\n``supervisor-haproxy`` is a supervisor event listener for notifying HaProxy\nwhen the status of programs change.\n\nBy actively notifying HaProxy we can avoid that HaProxy sends requests to\nservers which are down or will be down shortly for maintenance.\n\nThe event listener listens to supervisors ``PROCESS_STATE`` events and sends\nstatus updates to HaProxy via an admin-level stats socket.\n\n\nConfiguration\n-------------\n\nWhen the egg ``supervisor-haproxy`` is installed, the supervisor event listener\nis created as console script ``supervisor-haproxy``.\nIt needs to be configured in the supervisor configuration and requires the\nhaproxy stats socket and the program infos in order to work correctly.\n\nThe program infos have the form ``supervisorProgram:HaProxyBackend/HaProxyServer``,\nfor example ``instance2:plone04/plone0402`` and tell the event listener which\nprogram in supervisor is which backend server in haproxy.\n\nFirst configure a stats socket in the **haproxy config**:\n\n.. code::\n\n global\n stats socket ipv4@127.0.0.1:8801 level admin\n\nthen configure the supervisor haproxy event listener in the **supervisor config**:\n\n.. code:: ini\n\n [eventlistener:HaProxy]\n command = .../bin/supervisor-haproxy tcp://localhost:8801 instance1:plone01/plone0101 instance2:plone01/plone0102\n events = PROCESS_STATE\n process_name=HaProxy\n\nExample using buildout for configuring supervisor:\n\n.. code:: ini\n\n [supervisor]\n plugins +=\n supervisor-haproxy\n eventlisteners +=\n HaProxy PROCESS_STATE ${buildout:bin-directory}/supervisor-haproxy [tcp://localhost:8801 instance1:plone01/plone0101 instance2:plone01/plone0102]\n\n\n\nDevelopment / Tests\n-------------------\n\nFor development and running tests you need to install:\n\n- `tox `_ in order to run the tests.\n- `docker `_ so that the tests can set up a haproxy\n for testing against.\n\nAfter installing `tox` and `docker` you can clone the repository and run the\ntests with the `tox` command:\n\n.. code:: bash\n\n $ git clone git@github.com:4teamwork/supervisor-haproxy.git\n $ cd supervisor-haproxy\n $ tox\n\nWhile running the tests, the haproxy in docker will be bound to the port ``9902``,\nso you need to make sure that this port is available.\n\n\nLinks\n-----\n\n- Github: https://github.com/4teamwork/supervisor-haproxy\n- Issues: https://github.com/4teamwork/supervisor-haproxy/issue\n- Pypi: http://pypi.python.org/pypi/supervisor-haproxy\n\n\nCopyright\n---------\n\nThis package is copyright by `4teamwork `_.\n\n``supervisor-haproxy`` is licensed under GNU General Public License, version 2.\n\nChangelog\n=========\n\n\n1.1.0 (2017-06-09)\n------------------\n\n- Avoid high CPU load problem when connection to HaProxy fails. [jone]\n\n\n1.0.0 (2016-09-30)\n------------------\n\n- Initial implementation\n [jone]", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/4teamwork/supervisor-haproxy", "keywords": "", "license": "GPL2", "maintainer": "", "maintainer_email": "", "name": "supervisor-haproxy", "package_url": "https://pypi.org/project/supervisor-haproxy/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/supervisor-haproxy/", "project_urls": { "Homepage": "https://github.com/4teamwork/supervisor-haproxy" }, "release_url": "https://pypi.org/project/supervisor-haproxy/1.1.0/", "requires_dist": null, "requires_python": "", "summary": "supervisor eventlistener for notifying haproxy", "version": "1.1.0" }, "last_serial": 5823530, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "a088af476c3870f7c61a79de551a99af", "sha256": "abf249eeee7b5f1d7fa23f33d6c970c77aed4d31b336c76e10b5e4ff6bd598f6" }, "downloads": -1, "filename": "supervisor-haproxy-1.0.0.tar.gz", "has_sig": false, "md5_digest": "a088af476c3870f7c61a79de551a99af", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13452, "upload_time": "2016-09-30T16:04:30", "url": "https://files.pythonhosted.org/packages/1b/f6/1c79fbd7af3a9799aefe4f527ef0e1243fc49150948d00e2e61a1befdb2b/supervisor-haproxy-1.0.0.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "9fc93a2a0f86c9c78b54ec44fb5c7997", "sha256": "96b4c9d553ac6bcc66ff2b9e99164f79f74e04de8fd7bd9328f754931e97f63d" }, "downloads": -1, "filename": "supervisor-haproxy-1.1.0.tar.gz", "has_sig": false, "md5_digest": "9fc93a2a0f86c9c78b54ec44fb5c7997", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15477, "upload_time": "2017-06-09T06:49:20", "url": "https://files.pythonhosted.org/packages/e3/af/7910f3d6b7a37de8f8e78b427e97b0f205b6ef19f9b3ef858f7831f8dd14/supervisor-haproxy-1.1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "9fc93a2a0f86c9c78b54ec44fb5c7997", "sha256": "96b4c9d553ac6bcc66ff2b9e99164f79f74e04de8fd7bd9328f754931e97f63d" }, "downloads": -1, "filename": "supervisor-haproxy-1.1.0.tar.gz", "has_sig": false, "md5_digest": "9fc93a2a0f86c9c78b54ec44fb5c7997", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15477, "upload_time": "2017-06-09T06:49:20", "url": "https://files.pythonhosted.org/packages/e3/af/7910f3d6b7a37de8f8e78b427e97b0f205b6ef19f9b3ef858f7831f8dd14/supervisor-haproxy-1.1.0.tar.gz" } ] }