2022-09-15 16:49:58 +00:00
|
|
|
""" celery status """
|
2022-09-15 01:57:08 +00:00
|
|
|
from django.contrib.auth.decorators import login_required, permission_required
|
|
|
|
from django.template.response import TemplateResponse
|
|
|
|
from django.utils.decorators import method_decorator
|
|
|
|
from django.views import View
|
|
|
|
|
|
|
|
from bookwyrm.tasks import app as celery
|
|
|
|
|
|
|
|
|
|
|
|
# pylint: disable= no-self-use
|
|
|
|
@method_decorator(login_required, name="dispatch")
|
|
|
|
@method_decorator(
|
|
|
|
permission_required("bookwyrm.edit_instance_settings", raise_exception=True),
|
|
|
|
name="dispatch",
|
|
|
|
)
|
|
|
|
class CeleryStatus(View):
|
2022-09-15 16:49:58 +00:00
|
|
|
"""Are your tasks running? Well you'd better go catch them"""
|
2022-09-15 01:57:08 +00:00
|
|
|
|
|
|
|
def get(self, request):
|
2022-09-15 16:49:58 +00:00
|
|
|
"""See workers and active tasks"""
|
2022-09-15 01:57:08 +00:00
|
|
|
inspect = celery.control.inspect()
|
|
|
|
data = {"stats": inspect.stats(), "active_tasks": inspect.active()}
|
|
|
|
return TemplateResponse(request, "settings/celery.html", data)
|