Django admin dashboard for arq. ARQ Django admin is a simple app that allows you to configure your queues in django's settings.py and show them in your admin dashboard.
- Install
arq-django-admin
(or download from PyPI):
pip install arq-django-admin
- Add
arq_admin
toINSTALLED_APPS
insettings.py
:
INSTALLED_APPS = (
'arq_admin',
# other apps
)
Make sure you added it before django.contrib.admin
, otherwise you won't be able to see a link in the top right corner.
- Configure your queues in Django's
settings.py
:
from arq.connections import RedisSettings
from arq.constants import default_queue_name
ARQ_QUEUES = {
default_queue_name: RedisSettings(
host='localhost',
port=6379,
database=0,
),
'arq:another_queue_name': RedisSettings(),
}
- Include
arq_admin.urls
in yoururls.py
:
from django.urls import include, path
urlpatterns = [
# <...>
path('arq/', include('arq_admin.urls')),
]
- If you use custom job serializer, you need to add deserializer to
settings.py
:
ARQ_DESERIALIZER_BY_QUEUE = {
'arq:another_queue_name': custom_job_deserializer,
}
- You can change timeout for job aborting:
ARQ_JOB_ABORT_TIMEOUT = 10