Gerenciar e monitorar erros nos projetos de automação RPA torna-se cada vez mais importante, conforme a sua operação escala. É crucial entender os erros das execuções dos robôs para minimizá-los ou dar o devido direcionamento, de acordo com o que aconteceu. Vamos entender neste artigo como fazer esse gerenciamento, a importância de monitorar sua automação e como fazer isso.
Gerenciamento de automação RPA
Automações RPA podem ter diversas etapas para atender os requisitos de um processo. Precisamos entender como essas etapas devem funcionar e o que é importante para as áreas envolvidas, desde o time que solicitou a demanda, a área usuária, até o time de desenvolvimento. E neste mapeamento, devemos incluir também quais são os erros que podem acontecer, pois alguns deles já são até esperados de acontecer.
Precisamos ter clara a ideia de que o RPA vai falhar de qualquer forma. O que não podemos deixar de fazer é monitorar para que a reação aos erros sejam mais rápidas e eficientes e que as pessoas corretas saibam o que aconteceu e onde está o problema, para que possam atuar na correção. Ou seja, precisamos ter uma forma eficaz de comunicar o erro.
⚠️ Saiba mais sobre a importância da orquestração em: Orquestração RPA
Gerenciamento de erros de automação RPA
Se conhecemos bem o processo e existe uma boa documentação atualizada sobre como as coisas devem ser feitas e onde as falhas podem acontecer, já podemos prever formas de lidar com esses erros em nosso robô.
⚠️ Saiba mais em: Erros comuns nos primeiros passos com Python RPA
E é interessante também entender os tipos de erros que podem acontecer com uma automação. Um erro pode estar relacionado a forma como o código foi desenvolvido, ou ao sistema que faz parte do processo que passou por alguma atualização e precisa de outras formas de acesso ou de transferência de dados, entre muitos outros.
Como registrar erros para monitoramento no BotCity Orquestrador
Para criar o registro do erro no seu robô, você precisa se conectar ao BotCity Orquestrador e, para que isso aconteça, você deverá começar pela instalação do SDK. Isso pode variar de acordo com a linguagem de programação que estiver utilizando e para mais detalhes consulte a documentação. Neste exemplo, vamos utilizar Python.
No seu terminal, execute o seguinte comando:
pip install botcity-maestro-sdk
E lembre-se de adicionar ao arquivo requirements.txt a dependência da nova biblioteca instalada, por exemplo:
botcity-maestro-sdk>=0.3.3,<1.0
Após isso, faça a importação da biblioteca no seu código:
from botcity.maestro import *
E adicione os seguintes comandos:
# Desabilitando erros caso não exista conexão com o Maestro BotMaestroSDK.RAISE_NOT_CONNECTED = False # Instanciando o Maestro SDK maestro = BotMaestroSDK.from_sys_args() # Buscando os detalhes da tarefa atual sendo executada execution = maestro.get_execution()
É uma boa prática que seu código esteja dentro de uma estrutura de try/catch ou try/except, dependendo da linguagem de programação. Isso significa que o que estiver dentro do try, tentará ser executado e, caso aconteça alguma exceção, será direcionado ao bloco de código do except.
Para você criar um registro de um erro, adicione o seguinte trecho de código:
except Exception as ex: maestro.error( task_id=execution.task_id, exception=ex )
Você também pode configurar para erros diferentes, por exemplo: ZeroDivisionError, ImportError, entre tantos outros. Ou até mesmo criar exceções customizadas se necessário. Isso pode ser uma boa prática para legibilidade do seu código e das regras de negócio que precisam ser atendidas no projeto.
Como verificar o erro pela tarefa
Caso você tenha feito a configuração acima, você pode acompanhar se algum erro aconteceu de algumas formas. A primeira delas seria dentro da própria tarefa. Na fila de tarefas, clique no ID da tarefa que deseja acompanhar.
Dentro dela, uma das opções na parte superior da tela será “Errors”. Clique nela e será possível visualizar mais detalhes, caso algum erro tenha ocorrido.
Clique no erro que quer entender mais detalhadamente e você terá novas informações sobre ele. Caso queira ainda mais informações, você pode clicar no botão identificado como “View”.
Essa tela é bastante interessante por trazer em detalhes o que aconteceu com o erro, inclusive StackTrace, Tags, Arquivos e Screenshots, caso tenham sido configurados para serem adicionados. Veremos mais para frente como fazer isso.
Como verificar o erro pela tela “Errors”
Na categoria “Automation Control”, clique na opção “Errors” no menu da lateral esquerda do BotCity Orquestrador. Dessa forma você terá acesso aos erros.Verifique os filtros para facilitar que encontre o que está sendo analisado. Por exemplo: ID da tarefa, repositório, nome da automação e período.
Identifique o erro que precisa ser analisado, clique para que seja expandido e clique no botão “View”:
Assim você também terá mais detalhes sobre o que aconteceu para que analise de maneira efetiva o que precisa ser feito e onde está o erro especificamente.
Como receber notificações dos erros no e-mail
Os erros configurados da maneira como mostramos neste artigo e em nossa documentação sobre erros podem ser notificados por e-mail. Para ativar essa opção, clique no seu nome no canto superior direito e escolha a opção “Profile”. Após isso, clique na opção “Notifications” do menu da lateral esquerda. Você terá algumas opções para receber a notificação e uma delas estará identificada como “New error event”.
Essa possibilidade facilita bastante o gerenciamento da automação e a comunicação do time para que seja visto de maneira rápida o que aconteceu e qual foi a automação afetada. E para acessar a tela, basta clicar nas opções de links disponibilizadas neste mesmo e-mail.
Outras configurações de erro
Além das orientações passadas, como mencionamos, você também pode ter um screenshot da tela quando o erro acontecer e anexar arquivos relacionados ao erro caso seja necessário. Essas informações são parâmetros a mais na função. Acompanhe a seguir como adicioná-los.
Como adicionar captura de tela para analisar o erro
Você precisará acrescentar o parâmetro “screenshot” na função “error”. Abaixo temos um exemplo:
try: div = 0 / 0 except Exception as error: file_path = '/home/test/screenshot.png' maestro.error( task_id=task.id, exception=error, screenshot=file_path )
Como adicionar anexos para analisar o erro
Você precisará acrescentar o parâmetro “attachments” na função “error”. Abaixo temos um exemplo:
try: div = 0 / 0 except Exception as error: attachments_files = ['/home/test/error.png', '/home/test/test.txt'] maestro.error( task_id=task.id, exception=error, attachments=attachments_files )
Como testar a funcionalidade
Para fazer na prática tudo o que informamos, você pode criar a sua conta gratuita, seguir o passo a passo e aproveitar para testar no seu caso de uso esse gerenciamento de erros. E participe da nossa comunidade para troca de experiências sobre o universo da automação RPA.