1. ホーム
  2. python

[解決済み] Pythonの例外をログに残すには?重複

2023-01-05 10:59:55

質問

Pythonで例外をログに記録するにはどうしたらいいですか?

私はいくつかのオプションを調べ、このコードを使用して実際の例外の詳細にアクセスできることを発見しました。

import sys
import traceback

try:
    1/0
except:
    exc_type, exc_value, exc_traceback = sys.exc_info()
    traceback.print_exception(exc_type, exc_value, exc_traceback)

どうにかして文字列 print_exception() を標準出力に投げて、それを記録できるようにしたいです。

どのように解決するのですか?

Python 3.5 では、exc_info 引数に例外のインスタンスを渡すことができます。

import logging
try:
    1/0
except Exception as e:
   logging.error('Error at %s', 'division', exc_info=e)