2016-11-07 2 views
3

Есть ли способ сделать Python logging создавать новый файл журнала каждый раз при запуске скрипта/приложения? Я просто пытаюсь создать журналы, чье имя является чем-то уникальным, как временная метка.Настройка Logger для создания нового файла при каждом запуске скрипта

Любая идея, как настроить регистратор для этого?

logging.config.dictConfig({ 
     'version': 1, 
     'disable_existing_loggers': False, 
     'handlers': { 
      "file": { 
       "level": "DEBUG", 
       "filename": "test.log", 
      }, 
     }, 
     'loggers': { 
      '': { 
       'handlers': ['file'], 
       'level': 'DEBUG', 
       'propagate': True 
      } 
     } 
    }) 
+0

Используйте [ 'RotatingFileHandler'] (https://docs.python.org/3/library/logging.handlers.html#rotatingfilehandler) и явно вызвать' вращатьс() 'метод в начале сценарий. – Evert

ответ

2

Я не использую dictConfig, но я нахожу успех, используя эту настройку.

logdatetime = time.strftime("%m%d") 
    logging.basicConfig(format='%(asctime)s:%(levelname)s:%(message)s', 
         filename='../chown_parser_' + logdatetime + '.log', 
         datefmt='%m/%d/%Y %I:%M:%S %p', 
         level=logging.INFO)