Activities that fail with complex exceptions do not preserve inner exceptions

Aberta
#561 1 comentário 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
3/5
Tempo estimado
1-2 dias
Facilidade para iniciantes
52/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Pouca atividade
Stack de tecnologia
python

Direção de pesquisa

Comece pelo caminho do worker Python mostrado no traceback, especialmente em azure_functions_worker/dispatcher.py, nas proximidades de _handle__invocation_request. Reproduza a falha da atividade usando a cadeia de exceções fornecida e inspecione como a falha é serializada e registrada. Está concluído quando os logs incluírem tanto a InvalidOperationException externa quanto sua causa OverflowException.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

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

Linguagem predominante
Python
Estrelas
157
Forks
71
Métricas de merge de PRs
Nenhum PR com merge em 30d

Preparar o ambiente

Abrir no Codespaces

Inicia o contêiner de desenvolvimento do projeto no navegador, com a sua própria conta do GitHub.

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de Azure/azure-functions-durable-python

Todas as issues de Azure/azure-functions-durable-python

Issues semelhantes

Mais issues de Python

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.