Ir para o conteúdo

Lab 11: Reportar erro ao Orquestrador

A gestão de erros é parte essencial do desenvolvimento de qualquer aplicativo e com automações isso não é diferente.

No código do robô pode ser feito o tratamento e registro de erros e exceções que acontecem durante a execução de um processo.

error-view

Reportar erros ao Orquestrador BotCity Maestro

Altere o código para tratar erros como username ou password incorretos ao realizar o login no site. Utilize o método error() do BotCity Maestro SDK no bloco except.

Junto ao reporte do erro, envie uma captura de tela no momento em que ocorreu o erro com o método save_screenshot() e adicione tags que são informações adicionais que podem ser enviadas em forma de dicionário.

Também atribua os valores para as variáveis de finalização de tarefa finish_status e finish_message, informando o erro no processo.

except Exception as e:
    # print("Erro ao executar o bot")
    # print(e)

    # Grava uma captura de tela
    bot.save_screenshot("captura.png")

    # Define quais informações extras 
    # serão carregadas no Orquestrador BotCity Maestro
    tags = {
        "username": username,
        "password": password,
        }

    # Registre o erro
    maestro.error(
        task_id=execution.task_id,
        exception=e,
        tags=tags,
        screenshot="captura.png"
    )

    # Define status de finalização da tarefa com falha
    finish_status = AutomationTaskFinishStatus.FAILED
    finish_message = "Tarefa bot-recrutador finalizada com falha"

Para saber mais sobre as customizações no reporte de erros, como captura de tela, anexos e tags, acesse a documentação clicando aqui

Testar o envio de erros

Para testar o envio de erros para o Orquestrador BotCity Maestro siga as instruções abaixo:

  • Crie uma nova tarefa no Orquestrador BotCity Maestro.
  • Altere os parâmetros de username ou senha com valores incorretos.
  • Aguarde a execução

Isso fará com que uma exceção seja lançada, gerando um erro similar a este:

tarefa com erro erro stacktrace screenshot tags