Django. How to debug a deployed website without turning on Debug setting

后端 未结 1 334
南笙
南笙 2021-01-21 10:23

I have a little forum that is already deployed and working. I just found out something is wrong with the Twitter login and I need to debug it. Right now it returns a 500 page. I

相关标签:
1条回答
  • 2021-01-21 11:10
    1. Make sure you have access to the application logs and have properly configured the AdminEmailHandler.
    2. Make sure you've property configured ALLOWED_HOSTS. If you haven't configured it and set DEBUG=False you'll see a SuspiciousOperation raised.
    3. Double check that you have the incidentals covered. Bad database connection details will quickly cause 500 errors.
    4. Have you tried running it locally with DEBUG=False? That's often a quick way to find out about some more esoteric errors.

    To follow up based on the comments you'll need to turn DEBUG on in a somewhat live environment. The standard way to do this would be to have a separate staging environment from the live one. Since Heroku is being used you can easily spin up a separate environment and set DEBUG=True there. Then you'll see the full error pages, fix the error, and deploy to production where DEBUG=False.


    Another idea is to setup a third-party exception handling system like Raygun or Bugsnag. Adding this to the production application will give you reports when exceptions are thrown. This is a big upgrade over Django's default email-on-error behavior.

    0 讨论(0)
提交回复
热议问题