Я использую конфигурацию журналирования YAML - python (без фреймворка) для входа в консоль и файл, мой скрипт полностью работает с pycharm и консолью python, но не в терминале Windows, и мне это нужно для моего проекта (регистрацияв файл с датой регистрации), что я могу сделать еще, чтобы он работал в терминале Windows, пожалуйста?
- для запуска в консоли Python, которую я использую: runfile (' main .py', wdir = 'C: \ Program Files (x86) \ Jenkins \ workspace \ scenarii')
- для запуска в консоли Windows, которую я использую: python -m сценарии
файл log_config.yaml
handlers:
console:
class: logging.StreamHandler
level: DEBUG
formatter: simple
stream: ext://sys.stdout
file:
class: logging.handlers.TimedRotatingFileHandler
level: DEBUG
formatter: standard
filename: ../results/errors.log
when: midnight
backupCount: 20
encoding: utf8
файл setuplogging.py
class setupLogging:
path='../resources/log_config.yaml'
with open(path, 'rt') as f:
try:
config = yaml.safe_load(f.read())
logging.config.dictConfig(config)
except Exception as e:
print(e)
когда это работает, результаты (pycharm & python console):
2019-07-11 16:34:30 | __main__ | INFO | ******Hello*****
2019-07-11 16:24:49 | classes.frames.frameHome | INFO | version is up-to-date
2019-07-11 16:24:49 | classes.frames.frameHome | INFO | Connection OK
2019-07-11 16:24:49 | classes.frames.frameHome | INFO | ====== Test passed ======
[console - cmd] (мне нужно указать абсолютный путь в файле yaml и setupLoging.py) и не работает в конце концов
?[32m2019-07-17 13:12:23?[0m | ?[34mclasses.frames.frameHome?[0m | ?[30mINFO?[0m | ====== Test passed ======
[файл] файл журнала ничего не показывает
есть идеи, пожалуйста?