2012-02-14 13 views
2

コードをあまりにも掘り下げてPythonのロギングモジュール(これはwafが使用しているものと思われる)について学ぶ前に、誰かがこの質問に対する素早い答えを知っているかどうかわかりました。私は自分のコンソール/端末上のビルドからの出力を表示したいだけでなく、それをファイルに記録させたいのです。私は(残念なことに)Windows環境では、私はむしろそれは素晴らしい色のテキストを失うので、mteeを使用したいと思います。私が気付いていないwafと一体の方法がありますか?出力をファイルに記録し、wafでコンソール/端末に表示する方法はありますか?

答えて

1

あなたはそれが標準出力だけでなく、ログファイルに印刷しようとすることができます

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) 
+0

に割り当てる 'bld.logger'は(Context.exec_commandへの引数の出力を可能にするような)副作用を持っています –

関連する問題