Итак, когда я скопирую вставку следующие x раз в приглашение python, , он добавляет журнал x раз в конец указанного файла.Python logger: не будет перезаписывать исходный журнал?
Как я могу изменить код так, чтобы каждый раз, когда я копировать вставить это приглашение, я просто перезаписать существующий файл (код кажется не принимать mode = 'w'
варианта или я, кажется, не понимает его смысл)
def MinimalLogginf():
import logging
import os
paths = {'work': ''}
logger = logging.getLogger('oneDayFileLoader')
LogHandler = logging.FileHandler(os.path.join(paths["work"] , "oneDayFileLoader.log"), mode='w')
formatter = logging.Formatter('%(asctime)s %(levelname)s %(message)s')
LogHandler.setFormatter(formatter)
logger.addHandler(LogHandler)
logger.setLevel(logging.DEBUG)
#Let's say this is an error:
if(1 == 1):
logger.error('overwrite')
Так что я запустить его однажды: MinmalLoggingf()
Теперь я хочу новый файл журнала, чтобы перезаписать файл журнала, созданный на предыдущем прогоне:
MinmalLoggingf()
Решение с вращающимся журналом выглядит лучше, но как вы его используете? – user189035
Поскольку я не знаю, как ваша база кода действительно выполняется, или действительно что-нибудь о вашем прецеденте, это немного догадка .. но позвольте мне изменить и добавить пример, который может сработать. – advance512
Я действительно пытаюсь изучить этот материал. Я добавлю более подробный пример к вопросу (также для будущих читателей) – user189035