import traceback try: ... except: log.error(traceback.format_exc()) raise
例外は、こまめにチェックするよりも、あえてチェックしない方が良いことがある。
とくに、例外をcatchしておいて、結局自作の情報量が少ない例外を再送出するのは最悪。
エラーが起きたらログだけ取って、例外自体はそのまま上に流したい場合は、exceptブロックの中でraiseする。Webアプリにありがちなシチュエーション。
traceback.format_exc()は超便利だけどすぐ忘れるのでここにメモしとく。