logging.info
でイベントをログに記録しても、Pythonターミナルに表示されません。
import logging
logging.info('I am info') # no output
対照的に、logging.warn
で記録されたイベントはターミナルに表示されます。
import logging
logging.warn('I am warning') # outputs "I am warning"
logging.info
をコンソールに出力するための環境レベルの変更はありますか?それぞれのPythonファイルに変更を加えないようにしたい。
ルートロガーは常にデフォルトで警告レベルに設定されます。電話してみて
logging.getLogger().setLevel(logging.INFO)
そして、あなたは元気でなければなりません。
@ztyxが言ったように、デフォルトのロガーレベルは警告です。より低いレベルに設定する必要があります
logging.basicConfig を使用して logger level を設定することにより、それを行うことができます。
logging.basicConfig(level=logging.DEBUG)
上記の解決策は私にとってはうまくいきませんでしたが、コード here はうまくいきました:
# set up logging to file
logging.basicConfig(level=logging.DEBUG,
format='%(asctime)s %(name)-12s %(levelname)-8s %(message)s',
datefmt='%m-%d %H:%M',
filename='/temp/myapp.log',
filemode='w')
# define a Handler which writes INFO messages or higher to the sys.stderr
console = logging.StreamHandler()
console.setLevel(logging.INFO)
# add the handler to the root logger
logging.getLogger('').addHandler(console)
(読みやすくするためにコードの一部を省略しました)