Файл Django Dumpdata содержит журналы отладки - PullRequest
0 голосов
/ 12 января 2019

Я сбрасываю некоторые данные из моего приложения django с помощью команды python manage.py dumpdata > db.json

К сожалению, db.json содержит несколько журналов запуска в первых строках файлов.

Файл выглядит так:

DEBUG $HOME=/home/web
DEBUG matplotlib data path /usr/local/lib/python3.5/dist-packages/matplotlib/mpl-data
DEBUG loaded rc file /usr/local/lib/python3.5/dist-packages/matplotlib/mpl-data/matplotlibrc
DEBUG matplotlib version 2.2.2
DEBUG interactive is False
DEBUG platform is linux
[{ ... then the json file ... }]

Я предполагаю, что это происходит из моей конфигурации журналов, но я не мог понять это.

Вот мой конфиг логов в setting.py:

LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,
    'filters': {
        'require_debug_false': {
            '()': 'django.utils.log.RequireDebugFalse',
        },
        'require_debug_true': {
            '()': 'django.utils.log.RequireDebugTrue',
        },
    },
    'formatters': {
        'verbose': {
            'format': '%(asctime)s %(levelname)s [%(module)s:%(funcName)s:%(lineno)d] %(message)s',
        },
        'simple': {
            'format': '%(levelname)s %(message)s',
        },
    },
    'handlers': {
        'console_simple': {
            'class': 'logging.StreamHandler',
            'filters': ['require_debug_true'],
            'formatter': 'simple',
            'level': 'DEBUG',
        },
        'console_verbose': {
            'class': 'logging.StreamHandler',
            'filters': ['require_debug_false'],
            'formatter': 'verbose',
            'level': 'INFO',
        },
    },
    'loggers': {
        'django.request': {
            'handlers': ['console_simple', 'console_verbose'],
            'level': 'ERROR',
            'propagate': False,
        },
    },
    'root': {
        'handlers': ['console_simple', 'console_verbose'],
        'level': 'DEBUG',
    },
}

Есть идеи?

1 Ответ

0 голосов
/ 12 января 2019

Это потому, что вы перенаправляете весь вывод команды в ваш файл. Команда dumpdata Django также принимает выходной параметр, в котором хранится сгенерированный файл: https://docs.djangoproject.com/en/2.1/ref/django-admin/#cmdoption-dumpdata-output

В основном вместо > file.json используйте --output file.json.

...