Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django日志和错误的位置_Django - Fatal编程技术网

Django日志和错误的位置

Django日志和错误的位置,django,Django,我用nginx设置了django服务器,它在一些页面中出现403错误 我在哪里可以找到django日志?在哪里可以查看详细错误?在设置.py文件中设置。新的默认项目如下所示: # A sample logging configuration. The only tangible logging # performed by this configuration is to send an email to # the site admins on every HTTP 500 error whe

我用nginx设置了django服务器,它在一些页面中出现403错误

我在哪里可以找到django日志?在哪里可以查看详细错误?

设置.py
文件中设置。新的默认项目如下所示:

# A sample logging configuration. The only tangible logging
# performed by this configuration is to send an email to
# the site admins on every HTTP 500 error when DEBUG=False.
# See http://docs.djangoproject.com/en/dev/topics/logging for
# more details on how to customize your logging configuration.
LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,
    'filters': {
        'require_debug_false': {
            '()': 'django.utils.log.RequireDebugFalse'
        }
    },
    'handlers': {
        'mail_admins': {
            'level': 'ERROR',
            'filters': ['require_debug_false'],
            'class': 'django.utils.log.AdminEmailHandler'
        }
    },
    'loggers': {
        'django.request': {
            'handlers': ['mail_admins'],
            'level': 'ERROR',
            'propagate': True,
        },
    }
}
默认情况下,这些不会创建日志文件。如果您想要这些,您需要将
文件名
参数添加到
处理程序

    'applogfile': {
        'level':'DEBUG',
        'class':'logging.handlers.RotatingFileHandler',
        'filename': os.path.join(DJANGO_ROOT, 'APPNAME.log'),
        'maxBytes': 1024*1024*15, # 15MB
        'backupCount': 10,
    },
这将建立一个旋转日志,可以获得15 MB的大小,并保留10个历史版本

在上面的
loggers
部分中,您需要为应用程序的
处理程序添加
applogfile

'loggers': {
        'django.request': {
            'handlers': ['mail_admins'],
            'level': 'ERROR',
            'propagate': True,
        },
        'APPNAME': {
            'handlers': ['applogfile',],
            'level': 'DEBUG',
        },
    }
本例将把日志放在Django根目录下名为
APPNAME.log

的文件中,然后这些错误将在您指向它们的地方出现。默认情况下,它们往往会在杂草中消失,所以我总是先从良好的日志设置开始,然后再做其他事情

下面是一个非常好的基本设置示例:


编辑:新链接移动到:

添加到您的
设置。py

LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,
    'handlers': {
        'file': {
            'level': 'DEBUG',
            'class': 'logging.FileHandler',
            'filename': 'debug.log',
        },
    },
    'loggers': {
        'django': {
            'handlers': ['file'],
            'level': 'DEBUG',
            'propagate': True,
        },
    },
}
它将在您的根目录中创建一个名为
debug.log
的文件。

您在nginx和Django之间运行什么?古尼科恩?您正在使用supervisor吗?是否在settings.py文件中设置了DEBUG=True?如果是这样的话,如果错误看起来像这样,那么可能是django问题。如果403错误不是一条冗长的消息,那么我猜这是nginx的问题。如果是Django问题,请使用控制台启动Django服务器,然后转到给出错误的页面。希望控制台输出足以让您解决问题。请注意,Ian将其域重命名为
Ian.pizza
,因此这里是实际链接:在Apache2上,wsgi将尝试在
/var/www/debug.log
中创建一个文件。如果Django项目位于
/var/www/
目录之外,这将创建两个单独的文件。请改用
“文件名”:os.path.join(BASE\u DIR,'debug.log'),
。接受的答案对我不起作用。这适用于Django 2!我正在使用django 3.1,我得到了
内部服务器错误
。有新的解决方案吗?请执行
logger=logging.getLogger('APPNAME')
在这种情况下,您必须将此行添加到每个
views.py