0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

pythonでのエラー発生時のログ出力方法

Posted at

背景

pythonでのデータ分析において、for分で処理を行うが一旦エラー発生も込みで全てに処理を実行し、後でエラーデータ案件に絞って処理を行いたい。

対処方法(chat gptを使用)

tracebackのモジュールを使用して例外処理を行う。
下記chat gpt提案のコードで解決。

import traceback

def process_item(item):
    # ここにエラーが発生する可能性のある処理を記述
    if item == 0:
        raise ValueError("ゼロの項目は処理できません")  # ゼロの項目に対してエラーを発生させる
    return 10 / item

items = [10, 0, 5, 0, 2]  # サンプルのアイテムリスト

for item in items:
    try:
        result = process_item(item)
        print(f"アイテム {item} の処理結果: {result}")
    except Exception as e:
        # エラーが発生した場合にエラーメッセージとスタックトレースを出力し、次のアイテムに進む
        tb = traceback.format_exc()
        print(f"アイテム {item} の処理中にエラーが発生しました: {e}")
        print(f"スタックトレース:\n{tb}")
        continue

ログをlinux環境で残したい場合は、linuxのリダイレクト機能を使用して下記で標準出力の内容をtxtに保存可能。

xxx.py > yyy.txt

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?