如何在 AWS EC2 中调试 Django 应用程序 运行

How to debug an Django application running in AWS EC2

我在 AWS Elastic Beanstalk 上部署了一个 django 应用程序并完成了 运行。 有些端点运行良好,但有人说 <h1>Server Error (500)</h1>

发生错误的端点在我的本地环境中运行良好,但当我在 AWS 上 运行 时出现上述错误。 所以我要调试为什么会出错... 请帮我! 注意:我有 ssh 访问权限。我检查了/var/log/目录,但没有发现应用程序的日志记录错误。

您可能遗漏了很多东西。我要做的前两件事是:

  1. 正如@sanNeck 所建议的那样,尝试将 Debug=True 放入您的设置中(在生产中不推荐),这会给您提示错误。
  2. 检查您是否已在 ElasticBeanStalk 上正确安装所有包。尝试从控制台提取错误日志并尝试查找任何丢失的包。
  1. 在边栏中查找 Elastic Beanstalk 日志:

  2. 下载完整日志:

  3. 开头为 eb-engine.log

  4. 在该文件的“尾部”(靠近底部)查找 [ERROR] 行。根据短语“执行清理逻辑

    ,这将是显而易见的
    2021/07/18 23:56:16.414159 [ERROR] An error occurred during execution of ...
    
    2021/07/18 23:56:16.414169 [INFO] Executing cleanup logic
    2021/07/18 23:56:16.414270 [INFO] CommandService Response: ...

这会告诉您错误的原因,或者它会告诉您查看其他文件之一以获取更多信息。

必须下载日志进行调试,这很烦人。为了节省时间,您只需要知道下载后不需要解压缩;只需双击文件即可查看,无需解压。