首页 > 解决方案 > Channel Worker 崩溃:崩溃前如何做一些任务?

问题描述

出于调试目的,当某些 Channel Worker 因错误而停止时,我需要执行一项任务(发送电子邮件)。

我没有找到可以编辑以在 SyncConsumer 或 AsyncConsumer 中添加 mi 任务的关闭方法。

频道==2.2.0 频道-redis==2.4.0

标签: djangopython-3.xdjango-channels

解决方案


对于一个完全通用的方法:

您可以尝试覆盖消费者__call__方法

async def __call__(self, receive, send):

     try: 
         await super().__call__(receive, send):
     except:
         .... do your stuff
         raise

推荐阅读