Почему использование логирования в django приводит к повреждению лог-файлов?
Когда я использовал ведение журнала в своем проекте django, я обнаружил, что после 2-3 запросов на отмазку файл журнала становится поврежденным. Почему
в файле settings.py
LOGGING = {
'version': 1,
'disable_existing_loggers': True,
'formatters': {
'standard': {
'format': '%(asctime)s %(levelname)-8s [%(pathname)s:%(lineno)d] [%(funcName)s] [%(message)s]'
}
},
'handlers': {
'console_handler': {
'level': 'DEBUG',
'class': 'logging.StreamHandler',
'formatter': 'standard',
},
'info_handler': {
'level': 'INFO',
'class': 'logging.handlers.TimedRotatingFileHandler',
'formatter': 'standard',
'filename': os.path.join(INFO_LOG_DIR, 'info.log'),
'when': 'midnight',
'backupCount': 30,
'encoding': 'UTF-8',
},
'error_handler': {
'level': 'ERROR',
'class': 'logging.handlers.TimedRotatingFileHandler',
'formatter': 'standard',
'filename': os.path.join(ERROR_LOG_DIR, 'error.log'),
'when': 'midnight',
'backupCount': 30,
'encoding': 'UTF-8',
},
'homework': {
'level': 'DEBUG',
'class': 'logging.handlers.RotatingFileHandler',
'formatter': 'standard',
'filename': os.path.join(HOMEWORK_LOG_DIR, 'homework.log'),
'maxBytes': 1024 * 1024 * 10,
'backupCount': 100,
'encoding': 'UTF-8',
}
},
'loggers': {
'data_analysis': {
'handlers': ['console_handler', 'info_handler', 'error_handler'],
'level': 'DEBUG',
'propagate': True,
},
'homework': {
'handlers': ['homework', 'console_handler'],
'level': 'DEBUG',
'propagate': True,
}
},
}
в другом файле py:
log = logging.getLogger("data_analysis")
Но после отправки нескольких запросов файл журнала выглядит следующим образом
python версия: 3.6.8 django версия: 3.2.3
Часть моего проекта использует многопоточность, но при тестировании я закомментировал многопоточный код
Я хочу иметь возможность нормально регистрироваться
После многих попыток я обнаружил, что обновление pycharm до новой версии может решить вышеуказанную проблему, и я обновил pycharm до последней версии 2024.1.1, чтобы решить проблему