Логгер django.request не распространяется в root?

Используя Django 1.5.1:

DEBUG = False

LOGGING = {
    'version': 1,
    'disable_existing_loggers': True,
    'formatters': {
        'verbose': {
            'format': '%(levelname)s %(asctime)s %(module)s %(message)s'
        },
    },
    'handlers': {
        'console': {
            'level': 'DEBUG',
            'class': 'logging.StreamHandler',
            'formatter': 'verbose',
        },
    },
    'loggers': {
        # root logger
        '': {
            'handlers': ['console'],
        },
        #'django.request': {
        #    'handlers': ['console'],
        #    'level': 'DEBUG',
        #    'propagate': False,
        #},
    }
}

Если я раскомментирую закомментированные строки и вызову представление, которое имеет1/0трассировка выводится на консоль:

ERROR 2013-11-29 13:33:23,102 base Internal Server Error: /comment/*******/
Traceback (most recent call last):
  ...
  File "*****/comments/views.py", line 10, in post
    1/0
ZeroDivisionError: integer division or modulo by zero
WARNING 2013-11-29 13:33:23,103 csrf Forbidden (CSRF cookie not set.): /comment/******/
[29/Nov/2013 13:33:23] "POST /comment/******/ HTTP/1.0" 500 27

Но если строки остаются закомментированными, трассировка не выводится на консоль, просто:

[29/Nov/2013 13:33:23] "POST /comment/******/ HTTP/1.0" 500 27

Я думал, что еслиdjango.request logger не настроен, он будет распространяться на корневой logger, который выводит все на консоль.

Я не'не могу найти какую-либо информацию, котораяdjango.request особенный.

Почему это не такт работаешь?

Вот Я читаю:

До Django 1.5 настройка LOGGING всегда перезаписывала конфигурацию регистрации Django по умолчанию. Начиная с Django 1.5, можно получить проектконфигурация логирования объединена с Djangos по умолчанию, следовательно, вы можете решить, хотите ли вы добавить или заменить существующую конфигурацию.

Если для ключа disable_existing_loggers в LOGGING dictConfig задано значение True (по умолчанию), конфигурация по умолчанию полностью переопределяется. Кроме того, вы можете переопределить некоторые или все регистраторы, установив для disable_existing_loggers значение False.

В :django/utils/log.py

# Default logging for Django. This sends an email to the site admins on every
# HTTP 500 error. Depending on DEBUG, all other log records are either sent to
# the console (DEBUG=True) or discarded by mean of the NullHandler (DEBUG=False).
DEFAULT_LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,
    'filters': {
        'require_debug_false': {
            '()': 'django.utils.log.RequireDebugFalse',
        },
        'require_debug_true': {
            '()': 'django.utils.log.RequireDebugTrue',
        },
    },
    'handlers': {
        'console':{
            'level': 'INFO',
            'filters': ['require_debug_true'],
            'class': 'logging.StreamHandler',
        },
        'null': {
            'class': 'django.utils.log.NullHandler',
        },
        'mail_admins': {
            'level': 'ERROR',
            'filters': ['require_debug_false'],
            'class': 'django.utils.log.AdminEmailHandler'
        }
    },
    'loggers': {
        'django': {
            'handlers': ['console'],
        },
        'django.request': {
            'handlers': ['mail_admins'],
            'level': 'ERROR',
            'propagate': False,
        },
        'py.warnings': {
            'handlers': ['console'],
        },
    }
}

Так по умолчаниюdjango.request имеетpropagate = False, Но в моем случае у меня есть.'disable_existing_loggers': True

Ответы на вопрос(3)

Ваш ответ на вопрос