django-celery-tracker


Namedjango-celery-tracker JSON
Version 2.1.0 PyPI version JSON
download
home_pagehttps://github.com/chris-allen/django-celery-tracker
SummaryCelery tracker for Django.
upload_time2023-07-17 16:21:34
maintainer
docs_urlNone
authorChris Allen
requires_python
licenseMIT
keywords celery django events monitoring tracker
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage
            =========================
Celery Tracker for Django
=========================

|build-status|

This django extension is intended for existing celery projects that want better monitoring of what's going on in their queue.

Usage
=====

To use this with your project, you need to:

1. Install django-celery-tracker:

.. code-block:: console

    $ pip install django-celery-tracker

1. Add ``django_celery_tracker`` to ``INSTALLED_APPS`` in your Django settings file:

.. code-block:: python

    INSTALLED_APPS = (
        ...
        'django_celery_tracker',
    )

1. Create the database tables by applying migrations:

.. code-block:: console

    $ python manage.py migrate django_celery_tracker

1. You will now have a record of all *future* celery tasks and their progress which can be queried like so:

.. code-block:: console

    $ python manage.py console
    ...
    >>> from django_celery_tracker.models import CeleryTask
    >>> CeleryTask.objects.all()
    <QuerySet [<CeleryTask: id=3d889396-daa2-4209-9348-9ec71bfb1262, name=api.taskapp.celery.debug_task>]

Dashboard
=========

Optionally, you can include a dashboard view that can only be accessed by admin users. To add the dashboard to your project, simply add the following to your ``urls.py``:

.. code-block:: python

    urlpatterns = [
        path("celery-tracker/", include("django_celery_tracker.urls")),
    ]

You can now visit ``http://site_url/celery-tracker`` to view the status of your tasks!

Disclaimer
==========

The datastore for a celery message queue is usually in-memory and highly-optimized (eg ``redis`` or ``rabbitmq``).  This django extension creates a database entry for every celery task that is created. You may want to periodically delete older entries if storage is an obstacle.

.. |build-status| image:: https://github.com/chris-allen/django-celery-tracker/actions/workflows/static_tests.yml/badge.svg
    :alt: Build status
    :target: https://github.com/chris-allen/django-celery-tracker/actions/workflows/static_tests.yml

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/chris-allen/django-celery-tracker",
    "name": "django-celery-tracker",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "celery django events monitoring tracker",
    "author": "Chris Allen",
    "author_email": "chris@apaxsoftware.com",
    "download_url": "https://files.pythonhosted.org/packages/b4/25/3aa257ea9e41a8d2ac896917173118e30182ed9b8fbbb63105ff6853cb67/django_celery_tracker-2.1.0.tar.gz",
    "platform": "any",
    "description": "=========================\nCelery Tracker for Django\n=========================\n\n|build-status|\n\nThis django extension is intended for existing celery projects that want better monitoring of what's going on in their queue.\n\nUsage\n=====\n\nTo use this with your project, you need to:\n\n1. Install django-celery-tracker:\n\n.. code-block:: console\n\n    $ pip install django-celery-tracker\n\n1. Add ``django_celery_tracker`` to ``INSTALLED_APPS`` in your Django settings file:\n\n.. code-block:: python\n\n    INSTALLED_APPS = (\n        ...\n        'django_celery_tracker',\n    )\n\n1. Create the database tables by applying migrations:\n\n.. code-block:: console\n\n    $ python manage.py migrate django_celery_tracker\n\n1. You will now have a record of all *future* celery tasks and their progress which can be queried like so:\n\n.. code-block:: console\n\n    $ python manage.py console\n    ...\n    >>> from django_celery_tracker.models import CeleryTask\n    >>> CeleryTask.objects.all()\n    <QuerySet [<CeleryTask: id=3d889396-daa2-4209-9348-9ec71bfb1262, name=api.taskapp.celery.debug_task>]\n\nDashboard\n=========\n\nOptionally, you can include a dashboard view that can only be accessed by admin users. To add the dashboard to your project, simply add the following to your ``urls.py``:\n\n.. code-block:: python\n\n    urlpatterns = [\n        path(\"celery-tracker/\", include(\"django_celery_tracker.urls\")),\n    ]\n\nYou can now visit ``http://site_url/celery-tracker`` to view the status of your tasks!\n\nDisclaimer\n==========\n\nThe datastore for a celery message queue is usually in-memory and highly-optimized (eg ``redis`` or ``rabbitmq``).  This django extension creates a database entry for every celery task that is created. You may want to periodically delete older entries if storage is an obstacle.\n\n.. |build-status| image:: https://github.com/chris-allen/django-celery-tracker/actions/workflows/static_tests.yml/badge.svg\n    :alt: Build status\n    :target: https://github.com/chris-allen/django-celery-tracker/actions/workflows/static_tests.yml\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Celery tracker for Django.",
    "version": "2.1.0",
    "project_urls": {
        "Homepage": "https://github.com/chris-allen/django-celery-tracker"
    },
    "split_keywords": [
        "celery",
        "django",
        "events",
        "monitoring",
        "tracker"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c0803c232d055edee40e239fb6b0eaa7b354af96d0dfb7e84901646937673799",
                "md5": "31fa518ae854e241e32818001a37021d",
                "sha256": "81451841b917b203f14c34ac68f933a49659fef431bfd2a2e6f20153621a181e"
            },
            "downloads": -1,
            "filename": "django_celery_tracker-2.1.0-py2.py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "31fa518ae854e241e32818001a37021d",
            "packagetype": "bdist_wheel",
            "python_version": "py2.py3",
            "requires_python": null,
            "size": 14917,
            "upload_time": "2023-07-17T16:21:32",
            "upload_time_iso_8601": "2023-07-17T16:21:32.637750Z",
            "url": "https://files.pythonhosted.org/packages/c0/80/3c232d055edee40e239fb6b0eaa7b354af96d0dfb7e84901646937673799/django_celery_tracker-2.1.0-py2.py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b4253aa257ea9e41a8d2ac896917173118e30182ed9b8fbbb63105ff6853cb67",
                "md5": "58b745f0afe094f190ae4ce1e1c90c2b",
                "sha256": "01f823f146ef3304601c301e5a08c01b4ddbdb9223c2414a38e950dbf0d22722"
            },
            "downloads": -1,
            "filename": "django_celery_tracker-2.1.0.tar.gz",
            "has_sig": false,
            "md5_digest": "58b745f0afe094f190ae4ce1e1c90c2b",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 18939,
            "upload_time": "2023-07-17T16:21:34",
            "upload_time_iso_8601": "2023-07-17T16:21:34.485113Z",
            "url": "https://files.pythonhosted.org/packages/b4/25/3aa257ea9e41a8d2ac896917173118e30182ed9b8fbbb63105ff6853cb67/django_celery_tracker-2.1.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-07-17 16:21:34",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "chris-allen",
    "github_project": "django-celery-tracker",
    "travis_ci": false,
    "coveralls": true,
    "github_actions": true,
    "tox": true,
    "lcname": "django-celery-tracker"
}
        
Elapsed time: 0.08796s