<logging, Python> ipythonでのlogging

ちと、threadingを使っていたら、どのスレッドが何しているのか?知りたくなり、ロギングloggingしてみた。
したら、ipythonでは、ちと一工夫必要だったのでメモっち。

簡単にいうと、下記をスクリプトに盛り込む。

import logging
logging.disable(logging.FATAL)
# logging.disable(logging.NOTSET)
logger = logging.getLogger(__name__)
logger.setLevel(logging.DEBUG)
logging.basicConfig(format='[%(asctime)s] %(levelname)s %(process)d %(thread)d %(threadName)s %(lineno)d %(funcName)s %(message)s', level=logging.DEBUG)

logging.basicConfig(level=logging.DEBUG)だけでは、levelDEBUGにならず、 logging.debug('hage')が出力されない。

なので、ロガーloggerオブジェクトを生成して、.setLevel(logging.DEBUG)が必要。
どうしてかは、難しいので、よくわからんが、、、

参考にさせてもらったところ。
note.crohaco.net

http://momijiame.tumblr.com/post/41503983502/python-の-logging-力を高める
momijiame.tumblr.com

d.hatena.ne.jp

threading – スレッドによる並列処理を管理する - Python Module of the Week