wxpython txt ctrlだけでなく、ファイルにもログインできますか?ファイルとwxpython txt ctrlにログインするpython
背景私はwxpython GUIベースのアプリケーションでpythonのテストファイルを列挙し、それらを実行します。 http://broadcoder.blogspot.com/2009/10/redirecting-python-logging-to.htmlの助けを借りて、私はpythonロギングメッセージをtxtctrlにリダイレクトすることができました。しかし、私はまた、ロギングメッセージをログファイルにリダイレクトすることも望みます。 私はこのような私のTESTFILESをインポートします。私は単にインポートログを使用して、私のログメッセージがTXT CTRLにリダイレクトされます私のTESTFILESのそれぞれにおいて
logging.info('Started')
testid = __import__(str)
reload(testid)
testOut = testid.main()
。ただし、テストログメッセージも、ファイル名に基づいてログファイルにリダイレクトされることをお勧めします。ログメッセージを両方にリダイレクトするにはどうすればよいですか? テストファイルでlogging.basicConfigを使用すると、メッセージは引き続きテキストctrlにのみ送られます。私がインポートするMy TestGUI.pyは、5つのpythonテストファイルを表しています。私はとValueErrorを得る
logger = logging.getLogger('')
fh = logging.FileHandler("log.html",mode='w')
formatter = logging.Formatter('%(message)s')
fh.setFormatter(formatter)
logger.addHandler(fh)
a= 5
b= 6
logging.info('a=5')
logging.info('b=6')
c= a+b
logging.info('adding b and c')
fh.close()
:I私のテストファイルのファイルでは、私は単に私がこのような何かを私のテストファイルでは、私のTestGUI.pyファイル内のIセットアップながら
self.logr = logging.getLogger('')
self.logr.setLevel(logging.INFO)
hdlr = WxLog(self.log)
hdlr.setFormatter(logging.Formatter('%(message)s '))
self.logr.addHandler(hdlr)
をロガーをインポートログを使用しますこのテストを複数回実行すると、クローズドファイルに対する/ O操作が実行されます。
一つロガーは、複数のハンドラを持つことができます!あなたはこれを簡単に達成することができます。 – shahjapan
Duhはこれについて忘れました – user974168
@shahjapan:あなたは答えとして答えを投稿してください。その後、OPはそれを受け入れて、残りの人がこの質問に答えてくれたことを知ります。それを読んで。はい、それは短い答えですが、それは答えです。 – tom10