Estoy intentando mostrar estadísticas sobre los "django-celery-results" Necesito una lista para usar con chartjs.

last_records = TaskResult.objects.filter(task_name='scraper.tasks.send_game', date_created__day=20).order_by("-date_created")[:100]
queryset = last_records.annotate(date=TruncMinute('date_created')).values("date_created").annotate(created_count=Count('id'))

Hice esta consulta, sin embargo, no devuelve la respuesta correcta. Hay muchos registros, por eso lo limito a 100 registros. Para usar chartjs correctamente, necesito una lista de la fecha con la hora y cuántos registros hay de ella. Necesito algo como esto:

[{'date_created': '2021-02-20 10:49'), 'count': 2}, ...]
0
Sharpless512 21 feb. 2021 a las 10:57

1 respuesta

La mejor respuesta

Lo resolvió con esto:

five_minutes_ago = datetime.datetime.now() + datetime.timedelta(minutes=-120)

last_records = TaskResult.objects.filter(
            task_name='scraper.tasks.send_game', date_done__gte=five_minutes_ago
            ).annotate(date=TruncMinute('date_done')).values("date").annotate(
                amount=Count('id')
            ).order_by("-date")
0
Sharpless512 21 feb. 2021 a las 08:33