{ "info": { "author": "Zeit Online", "author_email": "zon-backend@zeit.de", "bugtrack_url": null, "classifiers": [], "description": "=============\ncelery_zabbix\n=============\n\nSends task execution metrics to Zabbix: how many tasks were started and have\ncompleted successfully or with failure, and how many tasks are still in the\nqueues (supported only for broker redis). Tested against Zabbix-3.0.\n\nInspired by https://gitlab.com/kalibrr/celery-prometheus\n\n\nUsage\n=====\n\n* Run ``bin/celery zabbix --zabbix-nodename myhost.example.com --zabbix-server zabbix.example.com``.\n (Alternatively you can pass ``--zabbix-agent-config=/etc/zabbix/zabbix_agentd.conf``, then the values for server+nodename will be read from there.)\n* Import the corresponding `Zabbix Template`_ to set up the matching items.\n\n.. _`Zabbix Template`: https://github.com/ZeitOnline/celery_zabbix/blob/master/zbx_template_celery.xml\n\n\nItems\n=====\n\nThe following items will be sent every 60 seconds (pass ``--dump-interval=x`` to configure):\n\n* celery.task.started\n* celery.task.succeeded (with trigger > ``{$WARN_TASKS_FAILED}``)\n* celery.task.failed\n* celery.task.retried\n\nThese are counted from the time the monitoring process started,\nso you'll need to process them as delta on the Zabbix server.\n\n* celery.task.queuetime (only if ``task_send_sent_event`` is enabled)\n* celery.task.runtime\n\nThese are the median values and use the item type \"Numeric (float)\".\n\n\nQueue lengths\n=============\n\nIf you pass ``--queuelength-interval=x`` then every x seconds the queue lengths will be checked (NOTE: this only works with redis as the broker), and the following items will also be sent:\n\n* celery.queue[myqueuename]\n\nThese are gauge values, i.e. they contain the length as it was retrieved each\ntime, so they can go up and down.\n\n* celery.discover.queues\n\nThis is an auto-discovery item, together with the `Zabbix Template`_ this will create an item and trigger for each queue. On your host, create macros of the form ``{$WARN_QUEUE_LENGTH:myqueuename}`` to determine the trigger threshold.\n\n\nRun tests\n=========\n\nUsing `tox`_ and `py.test`_. Maybe install ``tox`` (e.g. via ``pip install tox``)\nand then simply run ``tox``.\n\n.. _`tox`: http://tox.readthedocs.io/\n.. _`py.test`: http://pytest.org/\n\n\ncelery_zabbix changes\n=====================\n\n1.0.4 (2019-06-26)\n------------------\n\n- Allow using agent config file and still overriding values on the commandline\n (Patch by Peter Radcliffe)\n\n\n1.0.3 (2018-03-23)\n------------------\n\n- Close redis connection we use for queue length checking after use\n\n- Catch exceptions in the dump_stats and check_queue_length threads\n\n\n1.0.2 (2018-03-21)\n------------------\n\n- Be defensive about missing `task.runtime`\n\n\n1.0.1 (2018-03-09)\n------------------\n\n- Fix typo in agent config parsing\n\n\n1.0.0 (2018-03-06)\n------------------\n\n- Initial release", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/zeitonline/celery_zabbix", "keywords": "", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "celery-zabbix", "package_url": "https://pypi.org/project/celery-zabbix/", "platform": "", "project_url": "https://pypi.org/project/celery-zabbix/", "project_urls": { "Homepage": "https://github.com/zeitonline/celery_zabbix" }, "release_url": "https://pypi.org/project/celery-zabbix/1.0.4/", "requires_dist": null, "requires_python": "", "summary": "Sends task execution metrics to Zabbix", "version": "1.0.4" }, "last_serial": 5451518, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "671c853cfa9e51214792810d9a0dc52b", "sha256": "38cff44e83cbf74648910b56d22841124332a76b65de4075a6101cee92152ee4" }, "downloads": -1, "filename": "celery_zabbix-1.0.0.tar.gz", "has_sig": false, "md5_digest": "671c853cfa9e51214792810d9a0dc52b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8082, "upload_time": "2018-03-06T14:13:29", "url": "https://files.pythonhosted.org/packages/fe/56/ada771428376ed588265a49b1be8b5e50abee5d3a9394241fd7f8214bef4/celery_zabbix-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "af13837e102d7e74395d6b2fcd277347", "sha256": "916d40bae6824864b2907492d546c8de6f909bdb6f62c2b0d7996ef0860a9527" }, "downloads": -1, "filename": "celery_zabbix-1.0.1.tar.gz", "has_sig": false, "md5_digest": "af13837e102d7e74395d6b2fcd277347", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8110, "upload_time": "2018-03-09T09:30:05", "url": "https://files.pythonhosted.org/packages/b1/fc/e6a8f25b656fbc5b80d76a304670f2794ce5863976e12b93ca2ba04ff382/celery_zabbix-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "4a6b4f26f76018cd5c37d468d6b3d7eb", "sha256": "317ed859dc2f40b9f42716f58309ccebf932e07b58a123e8da6302c45a571e96" }, "downloads": -1, "filename": "celery_zabbix-1.0.2.tar.gz", "has_sig": false, "md5_digest": "4a6b4f26f76018cd5c37d468d6b3d7eb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8221, "upload_time": "2018-03-21T14:16:52", "url": "https://files.pythonhosted.org/packages/1c/55/e399060488cfae976b42db57623e5c545b9d669bc1691da60a7c55ddf939/celery_zabbix-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "70224f7fd3495cd2bd8e94935e67034d", "sha256": "b93317947e770279dca96dc5a9d7c69f35ca1ac556b45af7998907faafe3f4e5" }, "downloads": -1, "filename": "celery_zabbix-1.0.3.tar.gz", "has_sig": false, "md5_digest": "70224f7fd3495cd2bd8e94935e67034d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8341, "upload_time": "2018-03-23T12:02:41", "url": "https://files.pythonhosted.org/packages/48/fc/e6943563c374d3b195ab72997b18745143259c80f3b5861461b39fd48173/celery_zabbix-1.0.3.tar.gz" } ], "1.0.4": [ { "comment_text": "", "digests": { "md5": "4a1ae95b2e55a5f2a5283adbbbcb52ef", "sha256": "b035c58013ffec0ea4ea3e9c14701eba2d1b75e588ab7cfd6b3a7a6c4477b62d" }, "downloads": -1, "filename": "celery_zabbix-1.0.4.tar.gz", "has_sig": false, "md5_digest": "4a1ae95b2e55a5f2a5283adbbbcb52ef", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8536, "upload_time": "2019-06-26T12:57:19", "url": "https://files.pythonhosted.org/packages/4d/f2/6e1b3a0b0b285f9fb9fcd7f16fec4232c4d41a937fa23f197ba530c004f9/celery_zabbix-1.0.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "4a1ae95b2e55a5f2a5283adbbbcb52ef", "sha256": "b035c58013ffec0ea4ea3e9c14701eba2d1b75e588ab7cfd6b3a7a6c4477b62d" }, "downloads": -1, "filename": "celery_zabbix-1.0.4.tar.gz", "has_sig": false, "md5_digest": "4a1ae95b2e55a5f2a5283adbbbcb52ef", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8536, "upload_time": "2019-06-26T12:57:19", "url": "https://files.pythonhosted.org/packages/4d/f2/6e1b3a0b0b285f9fb9fcd7f16fec4232c4d41a937fa23f197ba530c004f9/celery_zabbix-1.0.4.tar.gz" } ] }