来自芹菜的Python信号

2024-05-04 11:06:33 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在运行一个芹菜任务,成功时运行子任务来发送信号。你知道吗

@celery.task(name='sendmail')
def send_async_email(msg):
    return mail.send(msg)

def send_mail(msg):
    // do some processing
    send_async_email.apply_async((msg,), link=send_email_signal.s(msg))

@celery.task
def send_email_signal(result, email_type, msg):
    email_sent_signal.send(msg, email_type=email_type)

signals.email_sent_signal.connect(track.track_emails_sent)

def track_emails_sent(msg):
    // adds logs to logging system

问题是当我发送电子邮件时,一切正常,但我在日志系统中看到重复条目。 我收到1封邮件,按预期,芹菜花send_email_signal跑了一次。但是在日志中我们有两个日志条目。 我有几个芹菜工人在芹菜箱里跑。想了解如何处理芹菜回调任务发送的python信号。你知道吗


Tags: sendtaskasyncsignal信号emaildeftype