Как использовать класс AdminEmailHandler для отправки писем администраторам с помощью задачи celery в django?
Я пытаюсь отправить письмо админам с помощью celery, переопределив текущий класс AdminEmailHandler в django
from django.utils.log import AdminEmailHandler
from celery import shared_task
class CeleryAdminEmailHanadler(AdminEmailHandler):
@shared_task(bind=True)
def celery_send(self,subject, message, *args, **kwargs):
super().send_mail(subject, message, *args, **kwargs)
def send_mail(self, subject, message, *args, **kwargs):
self.celery_send.delay(subject, message, *args, **kwargs)
всякий раз, когда функция celery_send выполняет функцию super().send_mail, возникает эта ошибка
Error('super(type, obj): obj must be an instance or subtype of type')
Traceback (most recent call last):
File "D:\cmms\env\lib\site-packages\celery\app\trace.py", line 451, in trace_task
R = retval = fun(*args, **kwargs)
File "D:\cmms\env\lib\site-packages\celery\app\trace.py", line 734, in __protected_call__
return self.run(*args, **kwargs)
File "D:\cmms\core\utils\log.py", line 7, in celery_send
super().send_mail(subject, message, *args, **kwargs)
TypeError: super(type, obj): obj must be an instance or subtype of type
Я использую это для ведения логов, чтобы отправлять письма администраторам о критических ошибках на сайте с помощью celery.