如何在控制台上获得回溯

时间:2014-10-10 09:53:59

标签: django

我在django视图中有这个:

import logging

from django.conf import settings

fmt = getattr(settings, 'LOG_FORMAT', None)
lvl = getattr(settings, 'LOG_LEVEL', logging.INFO)

logging.basicConfig(format=fmt, level=lvl)

@api_view(['GET', 'POST'])
def index(request):
    if request.GET.get("request_id"):
        logging.info("standard CMH request...")
        barf()
     # etc

在我的工作环境(DEBUG = True)中,当我从客户端应用程序通过REST访问相关页面时,会在控制台上打印:

mgregory$ foreman start
19:59:11 web.1  | started with pid 37371
19:59:11 web.1  | 2014-10-10 19:59:11 [37371] [INFO] Starting gunicorn 18.0
19:59:11 web.1  | 2014-10-10 19:59:11 [37371] [INFO] Listening at: http://0.0.0.0:5000 (37371)
19:59:11 web.1  | 2014-10-10 19:59:11 [37371] [INFO] Using worker: sync
19:59:11 web.1  | 2014-10-10 19:59:11 [37374] [INFO] Booting worker with pid: 37374
19:59:18 web.1  | standard CMH request...

实际发生的是barf()抛出异常,因为它没有定义。但这并没有出现在控制台日志中。

如何在DEBUG = True环境中将所有异常显示在控制台日志中?


补充:有什么理由说我在生产环境中没有这样做,DEBUG = False?我的生产环境不会给我发电子邮件,我想在日志中有这些例外,我想?

0 个答案:

没有答案