gpt4 book ai didi

django - 我的 Django/uWSGI vassal 的堆栈跟踪记录在哪里?

转载 作者:行者123 更新时间:2023-12-03 19:49:49 29 4
gpt4 key购买 nike

我将我的 Django 站点作为 UWSGI 皇帝的附庸来运行。我创建了 /etc/uwsgi-emperor/vassals/mysite.ini如下:

[uwsgi]
socket = /var/opt/mysite/uwsgi.sock
chmod-socket = 775
chdir = /opt/mysite
master = true
virtualenv = /opt/mysite_virtualenv
env = DJANGO_SETTINGS_MODULE=mysite.settings
module = mysite.wsgi:application
uid = www-data
gid = www-data
processes = 1
threads = 1
plugins = python3,logfile
logger = file:/var/log/uwsgi/app/mysite.log
vacuum = true

但我得到的唯一日志是这样的:
[pid: 2887|app: 0|req: 7/7] 1.2.3.4 () {52 vars in 936 bytes} [Fri Oct 13 20:46:04 2017] POST /mysite/login/ => generated 27 bytes in 2453 msecs (HTTP/1.1 500) 4 headers in 126 bytes (2 switches on core 0)
[pid: 2887|app: 0|req: 8/8] 1.2.3.4 () {44 vars in 702 bytes} [Fri Oct 13 20:52:24 2017] GET / => generated 1561 bytes in 2 msecs (HTTP/1.1 200) 4 headers in 124 bytes (2 switches on core 0)

500 错误的堆栈跟踪在哪里? (是否有我需要启用的模块?)

最佳答案

问题是 Django 没有将日志发送到任何地方。你需要:

  • 在 settings.py
  • 中定义 LOGGING
  • send logs to UWSGI with logging.StreamHandler

  • 通常会出现在控制台中的任何堆栈跟踪现在都将出现在 UWSGI 日志文件中。

    例如:
    LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,
    'handlers': {
    'console': {
    'level': 'DEBUG',
    'filters': None,
    'class': 'logging.StreamHandler',
    },
    },
    'loggers': {
    'django': {
    'handlers': ['console'],
    'level': 'DEBUG',
    },
    },
    }

    有关其他日志记录选项(过滤器、格式化...),请参阅 https://docs.djangoproject.com/en/1.11/topics/logging/#configuring-logging (感谢 solarissmoke 的链接)。

    关于django - 我的 Django/uWSGI vassal 的堆栈跟踪记录在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46737986/

    29 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com