次のコードを使用して、警告をログに記録しました。
import logging
logging.captureWarnings(True)
formatter = logging.Formatter('%(asctime)s\t%(levelname)s\t%(message)s')
console_handler = logging.StreamHandler()
console_handler.setLevel(logging.DEBUG)
console_handler.setFormatter(formatter)
これは機能しますが、私のロギングフォーマッターは適用されず、警告は次のように表示されます。
WARNING:py.warnings:/home/joakim/.virtualenvs/masterload/local/lib/python2.7/site-packages/MySQL_python-1.2.3c1-py2.7-linux-x86_64.egg/MySQLdb/cursors.py:100: Warning:
InnoDB: ROW_FORMAT=DYNAMIC requires innodb_file_per_table.
予想される形式の代わりに:
2012-11-12 18:19:44,421 INFO START updating products
キャプチャされた警告メッセージに通常のフォーマットを適用するにはどうすればよいですか?