agora que todas as transformações individuais foram feitas nós conseguimos chegar no terceiro passo do nosso fluxo conseguimos enviar cada Registro para o sistema B Então temos aqui as transformações dentro do nosso forit usuário temos aqui que cada usuário tá chegando aqui da maneira adequada e fazendo suas transformações então Rafaelo H Wi e assim por diante e agora conseguimos buscar um componente hash V2 e fazer esse envio desse registro diretamente para esse RH V2 então o primeiro passo aqui vai ser buscar esse componente has V2 vou ligar o transforme né as transformações junto com rest e
aqui a gente vai enviar os dados de pessoa para esse endp eu vou pegar esses end points aqui e a gente vai começar as configurações então para fazer o acesso nós vamos utilizar esse endp aqui então temos o endp e a p que será utilizada novamente vamos utilizar de maneira estática durante o desenvolvimento e em breve quando finalizarmos o desenvolvimento vamos aplicar todas as boas práticas utilizando globals e accounts e deixando esses valores dinâmicos e globais então aqui vou buscar por esse end Point para testar minha aplicação copiar e colar aqui aqui eu vou mudar
o step name para ah envio de Registro para sistema b e eu posso colocar aqui um post maiúsculo no começo para identificar que o verbo a ser utilizado é um verbo post aqui a gente consegue agora por meio do B enviar o que as informações que devem ser enviadas para para end Point antes de fazer essas alterações eu tenho que voltar para meu Advanced settings e novamente assim como no primeiro caso permitir end points em Seguros Agora sim voltamos à configuração devemos de acordo com as nossas credenciais de acesso enviar um apq então aqui no
header da requisição eu vou criar aqui uma apq e vou colar como valor aí informação que eu quero enviar pro sistema B é informação que está chegando dentro de pessoa como já está tudo encapsulado dentro de pessoa eu consigo no Body enviar diretamente esse atributo dessa forma assim aqui eu preciso corrigir tá com um S só aqui então dentro do meu dião de entrada existe um atributo chamado pessoa e esse atributo pessoa inteiro todas as informações vão ser enviadas por meio do post aqui então ao confirmar temos aqui a mudança desse componente eu vou executar
esse pipeline e a gente vai acompanhar por meio das mensagens se a requisição deu sucesso ou se deu file então aqui em mensagens atualizar temos aqui transformações logo depois o post então aqui a gente tem ó invalid username or password então Possivelmente e deveríamos passar um umas credenciais de acesso de usuário e senha aqui vou colocar esses usuários e senhas E aí a gente vai testar de novo Vamos só ver o erro novamente justamente Então vou configurar e voltamos com esses valores de header já configurados Prontinho Essas são as credenciais de acesso temos nos headers
username com admin ERP e com 1 2 3 4 vou confirmar vou executar e vamos testar para ver se agora está funcionando a requisição atualizar temos aqui transformações post aqui ele já mudou então quer dizer que as credenciais de acesso estão corretas Mas é que ele tá dando o erro o seguinte esses campos são mandatórios confira o payload tente de novo sendo que ele está falando de Person aqui que tá acontecendo é o seguinte eu Pass aqui dentro do meu post no body da requisição mest pon pessoa mest ponto pessoa corresponde a esses valores aqui
então ele vai pegar esses valores aqui e fazer o post o que ele tá querendo na verdade é dentro de um atributo Person todas essas informações Então vou mudar esse pessoa para Person dessa forma e aqui eu vou enviar a minha mensagem inteira e não message P Person porque aqui ele vai enviar o atributo pessoa e não os valores do atributo em si então eu vou mudar aqui para Messa de ponto cifrão vou confirmar depois de fazer essas duas out ações e a gente vai tentar novamente atualiza post e aqui temos status 200 message Ok
a pessoa foi inserida no sistema RP então conseguimos efetuar a a nossa requisição de maneira adequada voltando ao nosso checklist aqui enviamos o registro para o sistema B da maneira que queríamos agora que isso foi feito é hora de aplicar boas práticas em todo o nosso fluxo Então vou cortar isso aqui e a gente vai começar a verificar todas essas boas práticas de desenvolvimento primeira delas validar chamadas externa e nesse caso temos um um um rest aqui não estamos validando Então vamos fazer essa verificação vamos buscar o componente Choice novamente e fazer aquela mesma sequência
da mesma forma que fizemos para no sistema A então a gente busca ativar esse logs faz a verificação do campo de erro caso tenha erro nós vamos retornar um erro padrão caso eu tenha sucesso nós vamos incrementar no sumarizados do forit puxei os logs começando pelo de sucesso sucesso sistema B vou buscar aqui como odise e eu vou copiar esse valor porque eu já vou configurar o log de uma vez Então no caso de sucesso na requisição do sistema B meu log vai ter o mesmo nome ele vai ser um info então aqui no log
sucesso sistema B log level info aqui eu posso só copiar e colar essa mensagem já para o caso de erro no sistema B nós vamos fazer a verificação a partir daquele atributo error da mesma forma que fizemos anteriormente então aqui erro S sistema b e aqui deveremos mudar essa expressão de zpf para buscar pelo atributo erro dentro do nosso payload caso tenha algum erro e deixa eu copiar isso aqui também ele vai seguir essa direção confirmado configuração dos logs agora e aqui por estar dentro de um forit eu vou colocar o log level warn e
não error porque aqui pode acontecer diversos tipos de de problema dentro do forit a gente quer e enviar o erro em si no momento da interrupção do pipeline aqui nesse sistema de mensagem eu posso fazer o seguinte eu vou colocar erro sistema B porém Além disso eu vou colocar aqui message P cifrão eu quero que lá na aba de monitoramento eu consiga ver essa mensagem do por sistema B deu erro então vou confirmar nós vamos voltar Aquele caso deixa eu reorganizar meu pipeline vou abaixar essa esse test mode e aqui no caso de sucesso eu
vou buscar um di de nerat fazer o incrementador do for it porque aqui a gente tá retornando 30 falhas mesmo dando sucesso na requisição para que a gente faça que fique 30 sucessos precisamos colocar no final desse desse process um atributo que indique que deu sucesso na requisição deu sucesso no processamento então aqui vamos incrementar somador de sucesso para fazer isso basta apenas colocar um atributo chamado success com uma chave definida como true então aqui vou confirmar an de fazer essa mudança eu posso executar novamente vou ver que vai mudar o meu sonorizador agora deram
30 sucessos e aqui a gente vai também marcar os casos de de falha cont erro e aí lembra daquele padrão que eu utilizei lá fora eu vou utilizar ele aqui também então para fazer esse padrão eu vou voltar pro pipeline principal clicando aqui no título vou copiar esse trow erro vou voltar pro meu One process e vou colar esse TR error aqui no fundo e apenas fazer algum tipo de mudança vamos lá a mudança vai ser aqui nós não estamos com erro ao consultar o registro aqui o erro é erro ao enviar registros para o
sistema b então enviar registros para ou au né para o sistema B aqui a mensagem é a mesma o erro ele vai buscar pelo erro caso não encontra ele coloca como erro desconhecido e aqui no payload ele vai colocar a mensagem que tá chegando Então vou confirmar vou mudar só o step name aqui erro ao enviar registros para sistema B Vou confirmar e a configuração desse componente aqui fizemos todas as validações externas então vindo voltando para cá a gente completou Esse passo de boas práticas de desenvolvimento Então vou cortar ele agora a gente precisa centralizar
os erros utilizando o One Exception e é uma coisa que já já estamos fazendo de certa forma mas vamos ver melhor um pouco sobre isso que é o seguinte como a gente tá dando o troll aqui dentro eh esse troll ele vai fazer com que nós sejamos redirecionados para o One inception do forit então aqui a gente precisa fazer um tratamento aqui dentro do meu on Exception do meu forit o primeiro passo de todos é colocar um log aqui é crucial pra gente botar um log Porque qualquer erro não esperado é que acontecer dentro do
nosso fluxo esse log vai ser capaz de configurar então aqui vou colocar aqui eu coloco como erro e aqui o nome desse log vai ser tratamentos de erro for it Posso copiar esse mesmo valor e colar aqui embaixo e começar a configuração o que tá acontecendo é o seguinte quando acontece algum erro no meu One process ele vai ser redirecionado para esse One Exception e aqui dentro vai acontecer alguma coisa como não estamos tratando esse erro seria interessante armazenar esse erro em algum lugar e reportar isso seja no resumo da execução seja enviar no e-mail
mas reportar para alguém o que tá acontecendo e não perder o erro simplesmente deixar batido o que vamos fazer aqui é o seguinte precisamos criar um resumo de execução para que quando aconteça esse erro ele não pare o for então não devo colocar um trow error dentro desse One Exception e ao mesmo tempo eu tenho informações sobre erro pra futura manutenção e aqui a gente começa a criar o resumo da execução do pipeline que é um fator crucial para realizar para fazer né De boa prática noen Então vamos finalizar aqui esse vídeo e vamos para
próxima aula para fazer apenas o resumo da execução juntamente com a centralização de erros do on Exception E aí nos vemos nos próximos vídeos e até até próxima