mirror of https://github.com/zulip/zulip.git
32 lines
995 B
Python
Executable File
32 lines
995 B
Python
Executable File
#!/usr/bin/env python
|
|
|
|
"""
|
|
Shows backlog count of ScheduledJobs of type Email
|
|
"""
|
|
|
|
from __future__ import absolute_import
|
|
from __future__ import print_function
|
|
|
|
from typing import Any
|
|
from django.conf import settings
|
|
from django.core.management.base import BaseCommand
|
|
|
|
from zerver.models import ScheduledJob
|
|
|
|
from datetime import datetime, timedelta
|
|
|
|
class Command(BaseCommand):
|
|
help = """Shows backlog count of ScheduledJobs of type Email
|
|
(The number of currently overdue (by at least a minute) email jobs)
|
|
|
|
This is run as part of the nagios health check for the deliver_email command.
|
|
Please note that this is only relevant to the SMTP-based email delivery (no Mandrill).
|
|
|
|
Usage: ./manage.py print_email_delivery_backlog
|
|
"""
|
|
|
|
def handle(self, *args, **options):
|
|
# type: (*Any, **Any) -> None
|
|
print(len(ScheduledJob.objects.filter(type=ScheduledJob.EMAIL,
|
|
scheduled_timestamp__lte=datetime.utcnow()-timedelta(minutes=1))))
|