Есть ли способ записать вывод в файл и отобразить на консоли / терминале с waf? - PullRequest
2 голосов
/ 14 февраля 2012

Прежде чем я слишком углублюсь в код и узнаю о модуле журналирования Python (похоже, это то, что использует waf), я подумал, что увижу, может кто-нибудь узнать быстрый ответ на этот вопрос.Я хочу отобразить вывод сборки на моей консоли / терминале, а также записать его в файл.Я (к сожалению) в среде Windows, и я бы предпочел не использовать mtee, так как он теряет красивый цветной текст.Есть ли какой-то встроенный способ с waf, о котором я не знаю?

1 Ответ

1 голос
/ 20 февраля 2012

Вы можете попробовать это для печати в файл журнала, а также стандартный вывод:

import sys, logging
from waflib import Logs
bld.logger = Logs.make_logger('test.log', 'build')
hdlr = logging.StreamHandler(sys.stdout)
formatter = logging.Formatter('%(message)s')
hdlr.setFormatter(formatter)
bld.logger.addHandler(hdlr)
...