Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Activities that fail with complex exceptions do not preserve inner exceptions

オープン
#561 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
3/5
見積もり時間
1〜2日
初心者へのやさしさ
52/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
静か
技術スタック
python

調査の方向性

traceback に示されている Python worker のパスから始め、特に azure_functions_worker/dispatcher.py の _handle__invocation_request 付近を確認します。提供された例外チェーンを使ってアクティビティの失敗を再現し、その失敗がどのようにシリアル化され、ログに記録されるかを調べます。ログに外側の InvalidOperationException と、その原因である OverflowException の両方が含まれれば完了です。

索引モデルが issue の本文から書いたものです。

説明

bug fixed-in-v2 P2

🐛 Describe the bug

When an activity fails with a complex exception (exception derived from inner exception), the inner exception is not preserved to the logs

🤔 Expected behavior

Inner exceptions should be logged as well as outer

☕ Steps to reproduce
Function code:


@bp.activity_trigger(input_name="instance2")
def raise_complex_exception(instance2: str) -> str:
    global attempt_count
    if instance2 not in attempt_count:
        attempt_count[instance2] = 1
        raise InvalidOperationException(f"This activity failed") from OverflowException(
            "More information about the failure")
    return "This activity succeeded"

Output:

[2025-07-10T22:27:53.159Z] Executed 'Functions.raise_complex_exception' (Failed, Id=be9eec7c-214e-4c34-9570-4d123863f196, Duration=35ms)
[2025-07-10T22:27:53.160Z] System.Private.CoreLib: Exception while executing function: Functions.raise_complex_exception. System.Private.CoreLib: Result: Failure
Exception: InvalidOperationException: This activity failed
Stack:   File "C:\Program Files\Microsoft\Azure Functions Core Tools\workers\python\3.11/WINDOWS/X64\azure_functions_worker\dispatcher.py", line 671, in _handle__invocation_request
    call_result = await self._loop.run_in_executor(
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...

⚡If deployed to Azure
N/A

主要言語
Python
スター
157
フォーク
70
PR マージ指標
30日以内にマージされた PR はありません

環境構築

Codespaces で開く

このプロジェクトの開発コンテナを、あなたの GitHub アカウントでブラウザ上に起動します。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

Azure/azure-functions-durable-python のほかの issue

Azure/azure-functions-durable-python の issue をすべて見る

似ている issue

Python の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。