{ "info": { "author": "Nuno Khan", "author_email": "nunok7@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Framework :: Django :: 1.10", "Framework :: Django :: 1.8", "Framework :: Django :: 1.9", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.2", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Topic :: Software Development :: Build Tools" ], "description": "# django-celery-inspect\n\nDjango reusable-app that uses Celery Inspect command to monitor workers via the [Django REST Framework](https://github.com/tomchristie/django-rest-framework).\n\nThe main idea is to be able to monitor celery workers from another external service or server via a REST API and figure out if they are running or not by using celery's own [Inspect API]\n(http://docs.celeryproject.org/en/latest/userguide/workers.html#inspecting-workers).\n\n## Quick start\n\n1. Install:\n\n\t\tpip install django-celery-inspect\n\n2. Add \"celery_inspect\" to your INSTALLED_APPS setting like this:\n\n\t\tINSTALLED_APPS = [\n\n ...\n 'celery_inspect',\n ]\n\n3. Add the following to your urls.py:\n\n\t\turl(r'^api/v1/celery-inspect/', include('celery_inspect.urls', namespace='celery_inspect')),\n\n4. If you Desire to use DRF's Authentication to protect these endpoints (Optional).\n\n\t\tREST_FRAMEWORK = {\n\t\t 'DEFAULT_AUTHENTICATION_CLASSES': (\n\t\t\t'rest_framework.authentication.TokenAuthentication',\n\t\t ),\n\t\t 'DEFAULT_PERMISSION_CLASSES': (\n\t\t\t'rest_framework.permissions.IsAuthenticated',\n\t\t ),\n\t\t}\n\n## Usage:\n\n1. http://localhost:8000/api/v1/celery-inspect/ping/\n\n\t\t{\n\t\t\t\"worker2@localhost:8000\": {\n\t\t\t \"ok\": \"pong\"\n\t\t\t},\n\t\t\t\"worker1@localhost:8000\": {\n\t\t\t \"ok\": \"pong\"\n\t\t\t}\n \t}\n\n2. http://localhost:8000/api/v1/celery-inspect/active/\n\n {\n \"worker2@localhost:8000\": [],\n \"worker1@localhost:8000\": []\n }\n\n3. http://localhost:8000/api/v1/celery-inspect/registered/\n\n {\n \"worker2@localhost:8000\": [\n \"core.tasks.db_backup\",\n \"core.tasks.send_queued_emails\",\n \"yy.tasks.assign_to_mongo\",\n \"xx.tasks.check_for_new_registered\",\n \"xx.tasks.create_and_associate_manager\",\n \"qq.celery.debug_task\"\n ],\n \"worker1@localhost:8000\": [\n \"core.tasks.db_backup\",\n \"core.tasks.send_queued_emails\",\n \"yy.tasks.assign_to_mongo\",\n \"xx.tasks.check_for_new_registered\",\n \"xx.tasks.create_and_associate_manager\",\n \"qq.celery.debug_task\"\n ]\n }\n\n4. http://localhost:8000/api/v1/celery-inspect/scheduled/\n\n {\n \"worker2@localhost:8000\": [],\n \"worker1@localhost:8000\": []\n }\n\n\n\n### If for some reason you can only deal with status codes (This feature will only work if you have django-celery installed)\n\n1. http://localhost:8000/api/v1/celery-inspect/active-status/\n\n - Returns 200 if all workers in WorkerState are up.\n - Returns 404 if workers are down (WorkerState != then inspect()).\n - Returns 501 if djcelery a.k.a django-celery is not installed.", "description_content_type": null, "docs_url": null, "download_url": "https://github.com/psychok7/django-celery-inspect/tarball/v0.2.1", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/psychok7/django-celery-inspect", "keywords": "django,django-rest-framework,celery,inspection,monitoring,python", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "django-celery-inspect", "package_url": "https://pypi.org/project/django-celery-inspect/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/django-celery-inspect/", "project_urls": { "Download": "https://github.com/psychok7/django-celery-inspect/tarball/v0.2.1", "Homepage": "https://github.com/psychok7/django-celery-inspect" }, "release_url": "https://pypi.org/project/django-celery-inspect/0.2.1/", "requires_dist": [ "celery (>=3.0)", "djangorestframework (>=3.3.1)" ], "requires_python": "", "summary": "Django Reusable app that uses Celery Inspect command to monitor workers/tasks via the Django REST Framework", "version": "0.2.1" }, "last_serial": 2658402, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "5bcef55d0f472f2e88fb45defd6c79b4", "sha256": "947dbeeef3cadcd0a3391c6cdac4ceb2f65378459082c6db01898824ed9a706e" }, "downloads": -1, "filename": "django_celery_inspect-0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "5bcef55d0f472f2e88fb45defd6c79b4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8148, "upload_time": "2017-02-18T16:28:22", "url": "https://files.pythonhosted.org/packages/5d/cc/eeac548e3871c7fc800c36683c3c55cfe41750780557765bbc8b581ad261/django_celery_inspect-0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "41baf22c4f729dd3b4374380eaf8fab0", "sha256": "7d96fa81edce4b2d67299e8cb9e34b04343d15a2a9a9be4695bfc14644c45035" }, "downloads": -1, "filename": "django-celery-inspect-0.1.tar.gz", "has_sig": false, "md5_digest": "41baf22c4f729dd3b4374380eaf8fab0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4695, "upload_time": "2017-02-18T16:28:23", "url": "https://files.pythonhosted.org/packages/e1/f2/59a69aa42a408ddee2223d81e34aac19b7bf5220ff6693bf8ddd1cad2222/django-celery-inspect-0.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "55c3af9e16f4974d9687ebc96fa0385d", "sha256": "8ff8a4fd458400ef97e16fc50fe061340bd3ffa3f018b7586cfbcef22620ffd9" }, "downloads": -1, "filename": "django_celery_inspect-0.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "55c3af9e16f4974d9687ebc96fa0385d", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9071, "upload_time": "2017-02-20T16:59:10", "url": "https://files.pythonhosted.org/packages/f2/00/d1fafc87dd63ffe7f7f65646aa170e3cecafc2a1264583e9f7a4a3b659c4/django_celery_inspect-0.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7e4965623f3a91f519acced15259c282", "sha256": "3712728bd87a142a17a777abf6c14bf90ffd383e4e013001c3e5463dda99df7b" }, "downloads": -1, "filename": "django-celery-inspect-0.2.tar.gz", "has_sig": false, "md5_digest": "7e4965623f3a91f519acced15259c282", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5389, "upload_time": "2017-02-20T16:59:13", "url": "https://files.pythonhosted.org/packages/07/31/34d84ba8e5c27c4f03de4e2b58df446b768342f434ee562268b6ec910268/django-celery-inspect-0.2.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "84afaa2f7d2adf550e6558a813211408", "sha256": "31da8603dd2ef9214e01bf0501429fbcd326346de2023d2104068d248fbb99f4" }, "downloads": -1, "filename": "django_celery_inspect-0.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "84afaa2f7d2adf550e6558a813211408", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9117, "upload_time": "2017-02-21T17:38:49", "url": "https://files.pythonhosted.org/packages/1c/1a/5065c1da51098404ba3bbd7dbf29d8137c94f9cb397caaed4be3914a286f/django_celery_inspect-0.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bd4203056c5fd9aa5677afc50e4feac1", "sha256": "5b824bae357ef86696b09a0e654c5a5769e66ebee7546e0c61d17136476c7f42" }, "downloads": -1, "filename": "django-celery-inspect-0.2.1.tar.gz", "has_sig": false, "md5_digest": "bd4203056c5fd9aa5677afc50e4feac1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5412, "upload_time": "2017-02-21T17:38:51", "url": "https://files.pythonhosted.org/packages/7f/a0/6f669b367d58e41e0c37e2e4f74445cfb8d6c5d0fc692cb0cd0c7edbc798/django-celery-inspect-0.2.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "84afaa2f7d2adf550e6558a813211408", "sha256": "31da8603dd2ef9214e01bf0501429fbcd326346de2023d2104068d248fbb99f4" }, "downloads": -1, "filename": "django_celery_inspect-0.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "84afaa2f7d2adf550e6558a813211408", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9117, "upload_time": "2017-02-21T17:38:49", "url": "https://files.pythonhosted.org/packages/1c/1a/5065c1da51098404ba3bbd7dbf29d8137c94f9cb397caaed4be3914a286f/django_celery_inspect-0.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bd4203056c5fd9aa5677afc50e4feac1", "sha256": "5b824bae357ef86696b09a0e654c5a5769e66ebee7546e0c61d17136476c7f42" }, "downloads": -1, "filename": "django-celery-inspect-0.2.1.tar.gz", "has_sig": false, "md5_digest": "bd4203056c5fd9aa5677afc50e4feac1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5412, "upload_time": "2017-02-21T17:38:51", "url": "https://files.pythonhosted.org/packages/7f/a0/6f669b367d58e41e0c37e2e4f74445cfb8d6c5d0fc692cb0cd0c7edbc798/django-celery-inspect-0.2.1.tar.gz" } ] }