Pythonで例外エラーが発生したファイル名と行番号を取得する方法

前に作成した「Pythonで独自の例外エラーを発生させる方法」で例外エラーが発生したファイルとその行番号がわかればデバッグ時や障害発生時に解決の手助けになるなぁと思い調べてみるとできることが判明したので、独自例外エラー発生処理に追加してみます。

Pythonで独自の例外エラーを発生させる方法
Pythonで例外エラーが発生した際に独自のエラーメッセージを付加して表示させるための拡張クラス(子クラス)です。基底クラス(親クラス)はExceptionクラスを指定して作成します。
スポンサーリンク

Pythonで例外が発生したファイル名と行番号を取得する

Pythonで例外が発生したファイル名と行番号を取得するにはsys.exc_info() で返される情報に現在の行番号(tb_lineno )が設定されています。

参考にさせていただいたのは以下の記事です。

https://www.northwind.mydns.jp/samples/blog/?p=1915

早速、この記事の内容を独自エラーに組み込んでみます。

組み込んだのは

の2行です。

これを実行すると

となり、ちゃんと例外エラーが発生したファイル名と行数が出力されています。

まとめ

Pythonで例外が発生したファイル名と行番号を取得するにはsys.exc_info()を利用すれば取得することができます。

タイトルとURLをコピーしました