【问题标题】:Django logging: how do i add logging to django classes and see output in runserver?Django 日志记录:如何将日志记录添加到 django 类并在运行服务器中查看输出?
【发布时间】:2014-01-22 14:28:51
【问题描述】:

我想做一些简单的 printf 风格调试,看看 Django 的 models/base.py 中发生了什么。

所以在我的 settings.py 中,我将“控制台”处理程序连接到“django”记录器:

LOGGING = {
    'version': 1,
    'disable_existing_loggers': True,
    'formatters': {
        'verbose': {
            'format': '%(levelname)s %(asctime)s %(module)s %(process)d %(thread)d %(message)s'
        },
        'simple': {
            'format': '%(levelname)s %(message)s'
        },
    },
    'filters': {
        'require_debug_false': {
            '()': 'django.utils.log.RequireDebugFalse'
        }
    },
    'handlers': {
        'mail_admins': {
            'level': 'ERROR',
            'filters': ['require_debug_false'],
            'class': 'django.utils.log.AdminEmailHandler'
        },
        'console': {
            'level': 'DEBUG',
            'class': 'logging.StreamHandler',
            'formatter': 'simple'
        }
    },
    'loggers': {
        'django': {
            'handlers': ['console'],
            'propagate': True,
            'level': 'DEBUG',
        },
        'django.request': {
            'handlers': ['mail_admins'],
            'level': 'ERROR',
            'propagate': True,
        },
    }
}

在 models/base.py 我有:

    def _save_table(self, raw=False, cls=None, force_insert=False,
                force_update=False, using=None, update_fields=None):
    """
    Does the heavy-lifting involved in saving. Updates or inserts the data
    for a single table.
    """
    logging.debug("IN SAVE TABLE")

但是当我运行时

python manage.py runserver

当我看到 django 的调试输出时,我没有看到我刚刚添加的行。

我做错了什么?

【问题讨论】:

    标签: python django logging


    【解决方案1】:

    根据我的经验,我们需要声明我们使用的记录器,因此考虑到这一点 - 以下应该可以工作:

    logger = logging.getLogger('django')
    logger.error('error')
    logger.info('info')
    logger.debug('debug')
    

    【讨论】:

      猜你喜欢
      • 2015-12-15
      • 1970-01-01
      • 2011-09-16
      • 1970-01-01
      • 2020-11-07
      • 2011-04-06
      • 2020-04-02
      • 2011-06-18
      • 1970-01-01
      相关资源
      最近更新 更多