Lab 2.9: Reportando erro ao Orquestrador
A gestão de erros é parte essencial do desenvolvimento de qualquer aplicativo, e com automações isso não é diferente.
Através do código do robô podemos tratar e registrar os erros/exceções que acontecem durante a execução de nosso processo.
Código
Com os parâmetros configurados no Orquestrador, a possibilidade de erros por digitação de canais inválidos ou indisponíveis é alta.
Para reportar quando um erro ocorre durante a execução, vamos utilizar o método error() quando cair em uma exceção, assim o erro será registrado no Orquestrador, permitindo o monitoramento e análise posterior.
except Exception as ex:
logging.error(f"Erro ao coletar dados do canal {canal}: {ex}")
canais_falha += 1 # Incrementa contador de falha
# Salvando captura de tela do erro
bot.save_screenshot("erro.png")
# Dicionario de tags adicionais
tags = {"canal": canal}
# Registrando o erro
maestro.error(
task_id=execution.task_id,
exception=ex,
screenshot="erro.png",
tags=tags
)
Informação
Você pode usar integrações do Orquestrador combinadas, por exemplo, incluindo um alerta de erro logo após o registro do erro:
maestro.alert(
task_id=execution.task_id,
title="BotYoutube - Erro",
message=f"Erro ao coletar dados do canal {canal}: {ex}",
alert_type=AlertType.ERROR
)
Dica
No bloco de erros, podemos customizar as informações que serão enviadas, como captura de tela, anexos e tags. Saiba mais na documentação da BotCity.
Resultado
Ao criar uma nova tarefa, inclua o seguinte parâmetro incorreto para simular um erro na execução:
botcity_br,github,botcity-failed
Ao executar a tarefa, o canal botcity-failed não existe, o que causará um erro na automação.



