2017-04-08 9 views
0

FileHandlerを使用して竜巻アクセスログをファイルに書き出しますが、同じログがstdoutに出力されます。竜巻:ファイルログもstdoutに書き込まれます

from tornado.options import define, options 

options.logging = None 
options.parse_command_line() 

access_log = logging.getLogger('tornado.access') 
access_log.setLevel(logging.INFO) 
handler = logging.FileHandler(log_path) 
access_log.addHandler(handler) 

// stdout:: 
INFO:tornado.access:200 GET/(ip) 0.93ms 

ログファイルに書き込みますが、なぜそれもstdoutに出力されるのかわかりません。

答えて

0

Pythonのロギングフレームワークは、ロガーの階層に基づいています。 tornado.accessに記録されているものは、デフォルトでルートロガーに伝播されます(デフォルトでstderrに移動します)。アクセスログが重複しないようにするには、

access_log.propagate = False 
を設定します。
関連する問題