禁用芹菜的Django调试 [英] Disable Django Debugging for Celery

查看:102
本文介绍了禁用芹菜的Django调试的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

是否可以为Django中的特定应用设置DEBUG = False?当启用调试时,Celery有一个已知内存泄漏。我有一个开发服务器,我想要Celery作为一个服务运行,没有调试,所以它不会泄漏内存,但我想让我的其余的Django应用程序使用调试,所以错误将在测试时显示。

Is it possible to set DEBUG=False for only a specific app in Django? Celery has a known memory leak when debugging is enabled. I have a development server where I want Celery to run as a service, without debugging so it doesn't leak memory, but I want the rest of my Django app to use debugging so errors will be shown when testing.

推荐答案

芹菜没有内存泄漏,这就是Django的工作原理:

Celery doesn't have a memory leak, it's how Django works:

启用DEBUG Django将每个执行的SQL语句追加到 django.db.connection.queries ,这将在长时间运行的进程环境中增长无限。

When DEBUG is enabled Django appends every executed SQL statement to django.db.connection.queries, this will grow unbounded in a long running process environment.

我想你可以使用一个黑客:

I guess you could use a hack like:

if "celeryd" in sys.argv:
    DEBUG = False

这篇关于禁用芹菜的Django调试的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆