有没有办法只在用户登录时(可选择以超级用户身份)在Django设置中设置DEBUG = True
时以错误页面的方式显示错误页面? I.E,当用户登录时,让Django像DEBUG = True
一样工作吗?
由于DEBUG
是一个常量,我猜对于超级用户请求将其设置为True
不会起作用,并且会带来巨大的安全风险(你可能会忘记再次禁用它或竞争条件)可能会发生。)
有没有办法做到这一点?开发人员如何调试已经投入生产的网站? 我看到Sentry,但看起来好几天的工作才能在本地托管。我很感激django中的解决方案,Django错误页面总是足以调试我的应用程序中发生的错误(到目前为止)。
答案 0 :(得分:2)
以正确的方式设置Django日志确实是一个有用的建议。
您还可以在发生服务器错误时将Django配置为向站点管理员发送电子邮件。通过这种方式,可以在发生服务器错误时实时通知您。在电子邮件中,Django将为调试提供一些有用的信息(非常类似于DEBUG = True时显示的信息)。
有关详细信息,请参阅official documentation on the topic。
答案 1 :(得分:1)
设置django logger:
https://docs.djangoproject.com/en/1.7/topics/logging/
它是一个行业标准"对于这些事情,它为您提供了一系列广泛的日志记录选项,从遣散级别到分发方法