django を1.7 から 1.9にversionUpしたら、migrationで

ValueError: Unable to configure handler 'null': Cannot resolve 'django.utils.log.NullHandler': No module named 'django.utils.log.NullHandler'; 'django.utils.log' is not a package
エラーになりました。 対処方法を備忘としてメモします。

参考サイト

Cannot resolve ‘django.utils.log.NullHandler’: [closed]

原因

上記の通り、

django.utils.log.NullHandler is actually alias to logging.NullHandler
Looks like it was removed in 1.9.
いうことで、logging.NullHandlerへのaliasが1.9から削除されています。

対処方法

自分は1.5?くらいから、移行していたせいか
settings.pyのLogHandlerの記述に、以下の記述があったので、

    'handlers': {
        'null': {
            'level': 'DEBUG',
            'class': 'django.utils.log.NullHandler',
        },
        'console': {
            'level': 'DEBUG',
            'class': 'logging.StreamHandler',
            'formatter': 'normal',
            'stream': sys.stdout
        },
    },

以下の通り編集したら、上手く動作しました。

    'handlers': {
        'null': {
            'level': 'DEBUG',
            'class': 'logging.NullHandler',
        },
        'console': {
            'level': 'DEBUG',
            'class': 'logging.StreamHandler',
            'formatter': 'normal',
            'stream': sys.stdout
        },
    },

以上です。

コメント