From 6eeb983f1def29ba9286c87665abb655ca60419a Mon Sep 17 00:00:00 2001 From: Oliver Date: Fri, 11 Nov 2022 15:10:27 +1100 Subject: [PATCH] Adds 'outstanding task count' to the health API endpoint (#3920) --- InvenTree/InvenTree/api.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/InvenTree/InvenTree/api.py b/InvenTree/InvenTree/api.py index 8aa15be33c..51dcfe4fa6 100644 --- a/InvenTree/InvenTree/api.py +++ b/InvenTree/InvenTree/api.py @@ -6,6 +6,7 @@ from django.http import JsonResponse from django.utils.translation import gettext_lazy as _ from django_filters.rest_framework import DjangoFilterBackend +from django_q.models import OrmQ from rest_framework import filters, permissions from rest_framework.response import Response from rest_framework.serializers import ValidationError @@ -28,6 +29,11 @@ class InfoView(AjaxView): permission_classes = [permissions.AllowAny] + def worker_pending_tasks(self): + """Return the current number of outstanding background tasks""" + + return OrmQ.objects.count() + def get(self, request, *args, **kwargs): """Serve current server information.""" data = { @@ -36,6 +42,7 @@ class InfoView(AjaxView): 'instance': inventreeInstanceName(), 'apiVersion': inventreeApiVersion(), 'worker_running': is_worker_running(), + 'worker_pending_tasks': self.worker_pending_tasks(), 'plugins_enabled': settings.PLUGINS_ENABLED, 'active_plugins': plugins_info(), }