Hoje vamos abordar a parte de captura de informações no Log (com um exemplo de erro).

 

Passo 1: Criar Job

Vamos criar um novo Job. Clique com o botão direito em: job Design-> create Job. Crie o nome do Job com o nome: Captura_Informacao. Depois clique no botão Finish.

Como_capturar_informacoes_img1-483x405 Capturando informações das execuções dos seus trabalhos

 

Na área do Designer arraste o componente tRowGenerator e o componente tFileOutputDelimited.

Como_capturar_informacoes_img2-540x158 Capturando informações das execuções dos seus trabalhos

 

Faça a ligação entre os componentes: com o botão direito no componente tRowGenerator no pop-up Row depois main; dê um clique Duplo no componente tFileOutputDelimited.
No campo File Name informe o diretório e o nome do arquivo, crie um diretório novo.
No Advanced Settings desmarque a opção Create directory if does not exist.
A ideia é forçar um erro do componente.

Como_capturar_informacoes_img3-540x183 Capturando informações das execuções dos seus trabalhos

 

De um duplo clique no tRowGenerator, e vamos criar 2 colunas, empresa e número.

Como_capturar_informacoes_img4-540x58 Capturando informações das execuções dos seus trabalhos

 

 

Clique no botão Ok, aperte F6 para executar o Job, para a criação do nosso exemplo de erro.

Como_capturar_informacoes_img5-540x295 Capturando informações das execuções dos seus trabalhos

 

Passo 2: Adicionando componentes monitoração e mensagens.

No Palette procure o componente TDIe e arraste para a área de designer. Clique com o botão direito no componente tFileOutputDelimited, na opção trigger on componente Error faça a ligação com o componente TDIe.

Como_capturar_informacoes_img6-540x294 Capturando informações das execuções dos seus trabalhos

 

O TDIe tem a função de encerrar o processo em caso de erro. Procure o componente tWarn e arraste para a área de designer. Na área do designer, clique com o botão direito, vá na opção Triger on Subjob ok e ligue com o componente tRowGenerator.

Como_capturar_informacoes_img7-540x385 Capturando informações das execuções dos seus trabalhos

 

Agora vamos adicionar o componente tLogCatcher e o componente tLogRow na área de designer, depois vamos ligar os dois componentes.

Clique com o botão direito no componente tLogCatcher va na opção row main e faça a ligação com o componente tLogRow.

Como_capturar_informacoes_img8-540x399 Capturando informações das execuções dos seus trabalhos

 

Aperte F6 para executar o job. Veremos que uma linha de log foi gerada no tLogCatcher e foi mandada no tLogRow.

Como_capturar_informacoes_img9-540x381 Capturando informações das execuções dos seus trabalhos

Adicione o componente tMsgBox na área de design e vamos ligar o componente tRowGenerator com o tMsgBox.

Clique com o botão direito tRowGenerator va na opção triger On Subjob ok e faça a ligação com o
tMsgBox.

Como_capturar_informacoes_img10 Capturando informações das execuções dos seus trabalhos

Clique o F6 para executar o Job, e observe o fluxo do processo. O tMsgBox não foi adicionado, pois como o job deu erro a mensagem não foi ativada.

Agora vamos configurar as variáveis de contexto, clique duas vezes no componente tMsgBox e va na aba Context(captura_informacao) e crie a variável msg_erro, como na imagem abaixo.

Como_capturar_informacoes_img11-540x64 Capturando informações das execuções dos seus trabalhos

 

Va na aba component e no campo message, inclua a variável context.msg_erro.

Como_capturar_informacoes_img12-540x190 Capturando informações das execuções dos seus trabalhos

Passo 3: Correção do erro e executando o job.

De um clique duplo no componente tFileOutputDelimited, va em Advance Sentings, marque o checkbox na opção create directory if does not exists.

Como_capturar_informacoes_img13 Capturando informações das execuções dos seus trabalhos

 

Salve as alterações e aperte F6 e execute o job.

Como_capturar_informacoes_img14-540x320 Capturando informações das execuções dos seus trabalhos

Conclusão

Vimos um modelo simples para captura de log de execução, geração de mensagem e resolução do problema usando o Talend.

BY Alexandre Menezes, Analista de Business Intelligence
© Cetax Consultoria 2016