- blogs:
- cles::blog
« LODEINFO に注意 :: 情報処理学会の全国大会の現地開催が中止に »
2020/02/21

Python で Exception の情報をログに吐き出す

Python で Exception の情報をログに吐き出す方法が分からなくていろいろと試行錯誤したのでメモ。
とりあえず logging *1 を使う場合には、引数に exc_info=True をつけてやれば、ログに Exception が発生した位置と Stack Trace 、Exception の内容が記録されるようになるようです。
サンプルとしてはこんな感じでしょうか。
from logging import getLogger, basicConfig, Formatter, DEBUG, INFO
from logging.handlers import TimedRotatingFileHandler
basicConfig(
level=INFO,
format='%(asctime)s %(levelname)-8s %(message)s',
datefmt='%Y-%m-%d %H:%M:%S',
handlers=[TimedRotatingFileHandler('log.txt', when = 'midnight')]
)
logger = getLogger(__name__)
try:
raise ValueError("error!")
except:
logger.info("Exception caught!", exc_info=True)
上記をコンソールで実行した場合、以下のような感じでログを残すことができます。
2020-02-21 00:20:31 INFO Exception caught!
Traceback (most recent call last):
File "<stdin>", line 2, in <module>
ValueError: error!
トラックバックについて
Trackback URL:
お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/11560
Trackbacks
このエントリにトラックバックはありません
Comments
愛のあるツッコミをお気軽にどうぞ。[policy]
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
コメントはありません
Comments Form
コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。
OpenID を使ってログインすることができます。
« LODEINFO に注意 :: 情報処理学会の全国大会の現地開催が中止に »
サイト内検索
検索ワードランキング
へぇが多いエントリ
閲覧数が多いエントリ
1 . Solr-rubyで複数のドキュメントを一括Post(32987)
2 . Windows 10 で勝手にログアウトされないようにする(31856)
3 . Word で数式がグレーアウトされていて挿入できないときは(26738)
4 . リモートデスクトップで Alt + PrtSc と同じことをするには(22182)
5 . Visual Studio 2017/2019 で scanf() がエラー(C4996)になるときは(21462)
2 . Windows 10 で勝手にログアウトされないようにする(31856)
3 . Word で数式がグレーアウトされていて挿入できないときは(26738)
4 . リモートデスクトップで Alt + PrtSc と同じことをするには(22182)
5 . Visual Studio 2017/2019 で scanf() がエラー(C4996)になるときは(21462)
cles::blogについて
Referrers