Я заметил, что при использовании RotatingFileHandler записываются не все события, отправляемые в регистратор.
Если я перехожу на FileHandler, все записывается.
Если я установлю свой обработчик так:
cjson_handler = RotatingFileHandler('{}/cjson.log'.format(log_directory), maxBytes=1024, backupCount=2)
В файл журнала записывается только первое событие из приведенного ниже кода.
cjson_logger.info("system_info", extra={"CPU":cpu_details, "ROOT_USERS": users})
core_list_small = core_list[:int(len(core_list) / 2)]
cjson_logger.info("system_info", extra={"CPU": cpu_details_small, "ROOT_USERS": users})
Если я поменяю на:
cjson_handler = logging.FileHandler('{}/cjson.log'.format(log_directory))
Оба события записаны. Оба события используют один и тот же обработчик, но происходят очень близко друг к другу. Это как-то связано с тем, как вращение записей в журнал и обработчик файлов?
Есть ли что-то другое, что мне нужно сделать при записи нескольких событий в журнал с помощью вращающегося обработчика?