.. http://docutils.sourceforge.net/docs/user/rst/quickref.html
django_dramatiq_charts 📊
=========================
Draw charts by `django_dramatiq <https://github.com/Bogdanp/django_dramatiq>`_ task history in db.
Chart types: `load <#load-chart>`_ and `timeline <#timeline-chart>`_.
.. image:: https://img.shields.io/pypi/dm/django_dramatiq_charts.svg?style=social
=============== ===============================================================
Python version 3.6+
License Apache-2.0
PyPI https://pypi.python.org/pypi/django_dramatiq_charts/
=============== ===============================================================
.. contents::
Installation
------------
::
$ pip install django-dramatiq-charts
Requirements:
* Django 2.2+
* dramatiq 1.11+
* django-dramatiq 0.10.0+
Guide
-----
Configuration
^^^^^^^^^^^^^
1. Add django_dramatiq_charts to installed apps after django_dramatiq app:
.. code-block:: python
INSTALLED_APPS = [
'django_dramatiq',
'django_dramatiq_charts',
'my_app',
# ...
]
2. Add lib views to your urls:
.. code-block:: python
from django_dramatiq_charts.views import load_chart, timeline_chart, clean_cache
urlpatterns = [
path('django_dramatiq_charts/load_chart/', load_chart, name='ddc_load_chart'),
path('django_dramatiq_charts/timeline_chart/', timeline_chart, name='ddc_timeline_chart'),
path('django_dramatiq_charts/clean_cache/', clean_cache, name='ddc_clean_cache'),
# ...
]
3. Configure lib in your project settings file:
.. list-table::
:header-rows: 1
* - Parameter
- Description
- Default
* - DJANGO_DRAMATIQ_CHARTS_PERM_FN
- users with access to the charts
- def fn(request): return request.user.is_superuser
* - DJANGO_DRAMATIQ_CHARTS_LOAD_QS_FILTER
- Additional queryset filter for load chart
- None
* - DJANGO_DRAMATIQ_CHARTS_TIMELINE_QS_FILTER
- Additional queryset filter for timeline chart
- None
* - DJANGO_DRAMATIQ_CHARTS_CACHE_FORM_DATA_SEC
- Minutes to cache choices of queue and actor form fields (False-like to disable)
- 4 hours
* - DJANGO_DRAMATIQ_CHARTS_CLEAN_CACHE_REDIRECT_URL
- Url for redirect to after clean cache
- None
Load chart
^^^^^^^^^^
**Shows the number of simultaneously executed actors in each time interval on timeline**
.. image:: docs/load_chart.png
Tasks running more than one day are not counted (assumed to be an error).
Timeline chart
^^^^^^^^^^^^^^
**Shows actors on timeline**
.. figure:: docs/timeline_chart.png
If the task duration is less than a second, this task is displayed on the chart with a duration of 1 second.
Release notes
-------------
History of important changes: `release_notes.rst <https://github.com/ikvk/django_dramatiq_charts/blob/master/docs/release_notes.rst>`_
Thanks
------
Thanks to all who helped develop this library:
`MilkyCake <https://github.com/MilkyCake>`_,
`lexa2907 <https://github.com/lexa2907>`_,
`python <https://www.python.org/>`_,
`django <https://www.djangoproject.com/>`_,
`plotly <https://plotly.com/python/>`_,
`jquery <https://jquery.com/>`_,
`select2 <https://select2.org/>`_,
`flaticon.com <https://www.flaticon.com/free-icons/bar-chart>`_
Raw data
{
"_id": null,
"home_page": "https://github.com/ikvk/django_dramatiq_charts",
"name": "django-dramatiq-charts",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": "django_dramatiq, chart, diagram, graph, dashboard, python3, python",
"author": "Vladimir Kaukin",
"author_email": "KaukinVK@ya.ru",
"download_url": "https://files.pythonhosted.org/packages/21/3c/54781f23910905cc99b153a3b4cb253bc6dbedf27792f51873f6cd15adbb/django_dramatiq_charts-0.4.0.tar.gz",
"platform": null,
"description": ".. http://docutils.sourceforge.net/docs/user/rst/quickref.html\r\n\r\ndjango_dramatiq_charts \ud83d\udcca\r\n=========================\r\n\r\nDraw charts by `django_dramatiq <https://github.com/Bogdanp/django_dramatiq>`_ task history in db.\r\n\r\nChart types: `load <#load-chart>`_ and `timeline <#timeline-chart>`_.\r\n\r\n.. image:: https://img.shields.io/pypi/dm/django_dramatiq_charts.svg?style=social\r\n\r\n=============== ===============================================================\r\nPython version 3.6+\r\nLicense Apache-2.0\r\nPyPI https://pypi.python.org/pypi/django_dramatiq_charts/\r\n=============== ===============================================================\r\n\r\n.. contents::\r\n\r\nInstallation\r\n------------\r\n::\r\n\r\n $ pip install django-dramatiq-charts\r\n\r\nRequirements:\r\n\r\n* Django 2.2+\r\n* dramatiq 1.11+\r\n* django-dramatiq 0.10.0+\r\n\r\nGuide\r\n-----\r\n\r\nConfiguration\r\n^^^^^^^^^^^^^\r\n\r\n1. Add django_dramatiq_charts to installed apps after django_dramatiq app:\r\n\r\n.. code-block:: python\r\n\r\n INSTALLED_APPS = [\r\n 'django_dramatiq',\r\n 'django_dramatiq_charts',\r\n 'my_app',\r\n # ...\r\n ]\r\n\r\n2. Add lib views to your urls:\r\n\r\n.. code-block:: python\r\n\r\n from django_dramatiq_charts.views import load_chart, timeline_chart, clean_cache\r\n\r\n urlpatterns = [\r\n path('django_dramatiq_charts/load_chart/', load_chart, name='ddc_load_chart'),\r\n path('django_dramatiq_charts/timeline_chart/', timeline_chart, name='ddc_timeline_chart'),\r\n path('django_dramatiq_charts/clean_cache/', clean_cache, name='ddc_clean_cache'),\r\n # ...\r\n ]\r\n\r\n3. Configure lib in your project settings file:\r\n\r\n.. list-table::\r\n :header-rows: 1\r\n\r\n * - Parameter\r\n - Description\r\n - Default\r\n * - DJANGO_DRAMATIQ_CHARTS_PERM_FN\r\n - users with access to the charts\r\n - def fn(request): return request.user.is_superuser\r\n * - DJANGO_DRAMATIQ_CHARTS_LOAD_QS_FILTER\r\n - Additional queryset filter for load chart\r\n - None\r\n * - DJANGO_DRAMATIQ_CHARTS_TIMELINE_QS_FILTER\r\n - Additional queryset filter for timeline chart\r\n - None\r\n * - DJANGO_DRAMATIQ_CHARTS_CACHE_FORM_DATA_SEC\r\n - Minutes to cache choices of queue and actor form fields (False-like to disable)\r\n - 4 hours\r\n * - DJANGO_DRAMATIQ_CHARTS_CLEAN_CACHE_REDIRECT_URL\r\n - Url for redirect to after clean cache\r\n - None\r\n\r\nLoad chart\r\n^^^^^^^^^^\r\n\r\n**Shows the number of simultaneously executed actors in each time interval on timeline**\r\n\r\n.. image:: docs/load_chart.png\r\n\r\nTasks running more than one day are not counted (assumed to be an error).\r\n\r\nTimeline chart\r\n^^^^^^^^^^^^^^\r\n\r\n**Shows actors on timeline**\r\n\r\n.. figure:: docs/timeline_chart.png\r\n\r\nIf the task duration is less than a second, this task is displayed on the chart with a duration of 1 second.\r\n\r\nRelease notes\r\n-------------\r\n\r\nHistory of important changes: `release_notes.rst <https://github.com/ikvk/django_dramatiq_charts/blob/master/docs/release_notes.rst>`_\r\n\r\nThanks\r\n------\r\n\r\nThanks to all who helped develop this library:\r\n\r\n`MilkyCake <https://github.com/MilkyCake>`_,\r\n`lexa2907 <https://github.com/lexa2907>`_,\r\n`python <https://www.python.org/>`_,\r\n`django <https://www.djangoproject.com/>`_,\r\n`plotly <https://plotly.com/python/>`_,\r\n`jquery <https://jquery.com/>`_,\r\n`select2 <https://select2.org/>`_,\r\n`flaticon.com <https://www.flaticon.com/free-icons/bar-chart>`_\r\n",
"bugtrack_url": null,
"license": "Apache-2.0",
"summary": "Charts for django_dramatic",
"version": "0.4.0",
"project_urls": {
"Homepage": "https://github.com/ikvk/django_dramatiq_charts"
},
"split_keywords": [
"django_dramatiq",
" chart",
" diagram",
" graph",
" dashboard",
" python3",
" python"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "95c907cc17710e5c71f3c015b2e7aa0315a5afda36cc9d0a86b4db91ab9ee416",
"md5": "0402164e387fe466a4c72d541201df24",
"sha256": "63c22152dde1a25b81b9341026cfac843c6aec1d4adb050902f4be1105ff929d"
},
"downloads": -1,
"filename": "django_dramatiq_charts-0.4.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "0402164e387fe466a4c72d541201df24",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 1157273,
"upload_time": "2025-09-01T06:31:47",
"upload_time_iso_8601": "2025-09-01T06:31:47.189562Z",
"url": "https://files.pythonhosted.org/packages/95/c9/07cc17710e5c71f3c015b2e7aa0315a5afda36cc9d0a86b4db91ab9ee416/django_dramatiq_charts-0.4.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "213c54781f23910905cc99b153a3b4cb253bc6dbedf27792f51873f6cd15adbb",
"md5": "fb1a3dedede7e55be542fc2642f895db",
"sha256": "870fdbbbf903f887c188a799f3f188e9383fecbf7639871a5276d394fd667fd3"
},
"downloads": -1,
"filename": "django_dramatiq_charts-0.4.0.tar.gz",
"has_sig": false,
"md5_digest": "fb1a3dedede7e55be542fc2642f895db",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 1151887,
"upload_time": "2025-09-01T06:31:48",
"upload_time_iso_8601": "2025-09-01T06:31:48.917816Z",
"url": "https://files.pythonhosted.org/packages/21/3c/54781f23910905cc99b153a3b4cb253bc6dbedf27792f51873f6cd15adbb/django_dramatiq_charts-0.4.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-09-01 06:31:48",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "ikvk",
"github_project": "django_dramatiq_charts",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"tox": true,
"lcname": "django-dramatiq-charts"
}