Как использовать ведение журнала с файловым файлом python и настроить имя файла журнала

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

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

Возможно ли установить это имя файла в скрипте python?

код python:

# set up logging logging.config.fileConfig(loginipath) logger = logging.getLogger('sLogger') # log something logger.debug('debug message') logger.info('info message') logger.warn('warn message') logger.error('error message') logger.critical('critical message') 

файл конфигурации ведения журнала:

 [loggers] keys=root,sLogger [handlers] keys=consoleHandler,fileHandler [formatters] keys=fileFormatter,consoleFormatter [logger_root] level=DEBUG handlers=consoleHandler [logger_sLogger] level=DEBUG handlers=consoleHandler,fileHandler qualname=sLogger propagate=0 [handler_consoleHandler] class=StreamHandler level=WARNING formatter=consoleFormatter args=(sys.stdout,) [handler_fileHandler] class=FileHandler level=DEBUG formatter=fileFormatter args=('logfile.log',) [formatter_fileFormatter] format=%(asctime)s - %(name)s - %(levelname)s - %(message)s datefmt= [formatter_consoleFormatter] format=%(levelname)s - %(message)s datefmt= 

  • python 2.x или 3.x
  • Python: «объект» не отображается при отправке электронной почты с использованием модуля smtplib
  • Вызовите exiftool из скрипта python?
  • Выделение int для строки в Python
  • Долгосрочные команды ssh в модуле python paramiko (и как их закончить)
  • Просмотр списка для циклов Python
  • Как разместить несколько импорта в одной строке в python
  • Как работает строка тройной кавычки Python?
  • 2 Solutions collect form web for “Как использовать ведение журнала с файловым файлом python и настроить имя файла журнала”

    Измените раздел handler_fileHandler следующим образом:

     [handler_fileHandler] class=FileHandler level=DEBUG formatter=fileFormatter args=('%(logfilename)s',) 

    а затем добавьте аргумент по defaults для вызова fileConfig

     logging.fileConfig(loginipath, defaults={'logfilename': '/var/log/mylog.log'}) 

    Попробуйте вызвать logging.config.dictConfig() после fileConfig() и просто установить имя файла.

    Python - лучший язык программирования в мире.