0

我一直在关注Django Logging 文档,但无法生成日志。所有这些都在 virtualenv 中。

我的 views.py 文件包含

import logging
logger = logging.getLogger(__name__)

def index(request):
    logger.debug('Index page')
    return render(request, 'app/index.html')

在 settings.py 我有:

LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,
    'handlers': {
        'file': {
            'level': 'DEBUG',
            'class': 'logging.FileHandler',
            'filename': '/pathtologfile/debug.log',
        },
    },
    'loggers': {
        '': {
            'handlers': ['file'],
            'level': 'DEBUG',
            'propagate': True,
        },
    },
}

当我导航到索引页面时,views.py 的日志文件中没有出现任何日志。

但是,如果我使用 django shell 执行以下命令,日志将显示在日志文件中:

>>>import logging
>>>logger = logging.getLogger(__name__)
>>>logger.debug('shell')

如何从 view.py(或任何相关文件)获取日志?

我尝试了以下没有结果:

我的设置有什么问题吗?任何地方甚至开始寻找调试这个?

4

1 回答 1

0

甚至我也面临同样的问题!只需使用以下设置:

LOGGING = {
    'version': 1,
    'disable_existing_loggers': True,
    'formatters': {
        'standard': {
            'format': '%(asctime)s [%(levelname)s] %(name)s: %(message)s'
        },
    },
    'handlers': {
        'default': {
            'level': 'DEBUG',
            'class': 'logging.FileHandler',
            'filename': 'debug.log',
        },
    },
    'loggers': {
        '': {
            'handlers': ['default'],
            'level': 'DEBUG',
            'propagate': True,
        },
    },
}

debug.log文件将在 django 项目的根文件夹中创建(manage.py 所在的位置)

于 2017-04-13T09:19:15.220 回答