Conforme discutimos nos tópicos anteriores, um mapeamento é uma coleção de objetos de origem e de destino vinculados por um conjunto de transformações. Essas transformações consistem em um conjunto de regras, que definem o fluxo de dados e como os dados são carregados nos destinos.
O que é o depurador?
O Debugger é um utilitário muito útil na Informatica. Quando executamos o mapeamento, a Informatica o executa com base na lógica de transformação definida.
Sua execução é semelhante à execução do modo em lote, em que não podemos ver os resultados intermediários ou como os dados estão sendo modificados de transformação em transformação.
Muitas vezes obtemos os dados no destino, o que não é o que esperávamos. Com a ajuda do depurador, podemos analisar como os dados estão se movendo no mapeamento. Podemos analisar os dados linha por linha em um depurador.
Neste tutorial - você aprenderá
- Etapas para usar o depurador em um mapeamento
- Usando ponto de interrupção no depurador
- Rastreamento na Informatica
- Como definir o nível de rastreamento em uma transformação
O uso do depurador requer uma instância de sessão, podemos reutilizar uma sessão existente que foi criada anteriormente para executar o mapeamento ou podemos criar uma nova instância de sessão de depuração. Já que durante a depuração os dados serão obtidos da fonte, temos a opção do que fazer com esses dados.
- Podemos descartar os dados ou
- Os dados podem ser carregados no destino
Essas opções podem ser definidas durante a configuração do depurador.
Para monitorar o depurador, existem duas janelas no designer Informatica
- Janela alvo
- Janela de instância
Na janela de destino, é mostrado o registro de destino que será inserido na tabela de destino. Na janela de instância, você pode selecionar qualquer uma das instâncias de transformação do mapeamento. Depois disso, todas as portas dessa transformação ficam visíveis nesta janela, e você pode analisar os dados, como eles estão sendo transformados.
Etapas para usar o depurador em um mapeamento
O designer da Informatica fornece o recurso para usar o depurador para depurar mapeamentos. Isso significa que podemos depurar e analisar qualquer mapeamento existente. O requisito para o depurador é que o mapeamento seja válido.
No exercício, iremos depurar nosso mapeamento existente "m_emp_emp_target" que criamos anteriormente. Em nossos dados de origem, verificaremos um registro específico de employee_name = 'SCOTT'. Para Scott, verificaremos se os valores são buscados na Informatica e se o registro é enviado ao destino corretamente ou não.
Nossos dados de origem para a tabela "emp" têm esta aparência.
Para o ename "SCOTT", usando o depurador, verificaremos se o valor da coluna "sal" (salário) foi buscado na Informatica.
Etapa 1 - Abra o designer Informatica e, no designer, abra o mapeamento "m_emp_emp_target" clicando duas vezes nele. Ele abrirá o qualificador de código-fonte e as tabelas de definição de destino mostrando o mapeamento dentro do Mapping Designer.
Etapa 2 - Agora inicie o depurador
- Clique na opção de menu de mapeamentos
- Selecione Debugger nas opções
- Selecione a opção "iniciar depurador"
Etapa 3 - Selecionar próximo na janela de mapeamento de depuração
Etapa 4 - Na próxima janela, você terá a opção de selecionar o tipo de sessão. Você pode usar uma sessão existente, uma sessão reutilizável existente ou pode criar uma instância de sessão de depuração.
Ao usar a sessão existente, a Informatica usará a sessão anterior que você criou para este mapeamento. Ao selecionar a criação de instância de sessão de depuração, uma nova instância de sessão será criada para depuração.
Neste exemplo, selecionaremos a instância de sessão reutilizável existente. O serviço de integração será o padrão.
- Selecione a opção "usar uma instância de sessão existente"
- Clique próximo
Etapa 5 - Na nova janela, a Informatica solicitará que você selecione a sessão existente para a depuração.
Selecione a sessão "s_m_emp_emp_target" e clique no botão próximo
Passo 6 - Na próxima janela haverá uma opção "Descartar dados de destino", selecionamos esta opção porque durante a depuração não queremos carregar nenhum dado em nossa tabela de destino.
- Selecione a opção "Descartar dados do alvo".
- Selecione a tabela de destino "emp_target"
- Clique no botão Concluir.
Com as etapas acima, configuramos e iniciamos o depurador. Agora podemos depurar o mapeamento.
Etapa 7 - O depurador foi iniciado, mas não buscou nenhuma linha da fonte. Durante a depuração, ele busca dados da fonte linha por linha. Para começar a buscar a primeira linha da fonte
- Selecione a opção de mapeamentos do menu
- Selecione a opção do depurador
- Selecione a próxima opção de instância
Etapa 8 - Na janela da instância, você verá o primeiro registro obtido do qualificador de origem.
Se você analisar a janela da instância, ela mostrará a primeira linha de registro - ename "SMITH". Este não é o registro que procuramos. Portanto, podemos passar para a próxima instância.
Etapa 9 - Para ir para a próxima instância (para mover para a próxima linha)
- Pressione o botão F10 (atalho para ir para a próxima instância, em vez de ir para a opção de mapeamento e depois para a opção de depurador)
Depois de passar para a próxima instância, os dados na janela da instância mudarão para o próximo registro.
Passo 10 - Continue pressionando o botão F10, até chegar ao registro necessário de funcionário "SCOTT". Depois de chegar a esse ponto, a janela da instância será como mostrado abaixo
Esta é a instância que procurávamos. Portanto, na janela da instância, podemos analisar os dados. Se está vindo corretamente ou algum valor está faltando.
Nos dados de origem, os detalhes do funcionário "SCOTT" eram como job = "ANALYST", manager id = "7566", sal "3000."
E no depurador, para o funcionário "SCOTT", analisamos todos esses detalhes, e eles estão combinando com os dados de origem, portanto, temos a certeza de que os registros foram buscados corretamente pelo qualificador de origem.
Usando ponto de interrupção no depurador
Quando estamos procurando por uma linha específica de dados como no exemplo anterior, em vez de ir para cada instância de dados de origem, podemos definir pontos de interrupção.
Um ponto de interrupção é uma condição ou conjunto de uma condição definida durante a configuração da depuração de forma que, quando essa condição se torna verdadeira, o depurador é interrompido para essa instância específica.
Por exemplo, se definirmos deptno = 20 em um ponto de interrupção, sempre que for um registro se esta condição for verdadeira, o depurador irá parar nessa instância de dados.
Etapa 1 - Para configurar o ponto de interrupção
- Vá para o menu de mapeamentos
- Selecione a opção do depurador
- Selecione a opção "editar pontos de interrupção"
Etapa 2 - Você verá uma janela "editar ponto de interrupção", conforme mostrado abaixo
Passo 3 - Na janela do breakpoint, clique no botão adicionar
Etapa 4 - Na nova janela
- Selecione o SQ_EMP como instância
- Selecione o botão OK
Etapa 5 - A janela anterior será semelhante à mostrada abaixo
Passo 6 - Você tem um breakpoint, agora você tem que definir a condição do breakpoint. Para definir a condição do ponto de interrupção
- Clique no ícone "adicionar nova condição"
Uma nova linha na guia de condição aparecerá. Aqui podemos configurar a condição.
Etapa 7 - na tabela de condições
- No menu suspenso de portas, selecione a opção "ENAME" (como estamos depurando para o registro ename = 'SCOTT')
- Na caixa de valor, insira o valor "SCOTT."
- Selecione o botão OK
Etapa 8 - Agora inicie o depurador conforme mencionado no tópico anterior
Vá para o menu de mapeamento -> selecione a opção do depurador -> selecione iniciar o depurador -> selecione a instância da sessão
Etapa 9 - Assim que o depurador for iniciado
- Selecione o menu de mapeamentos
- Selecione a opção do depurador
- Selecione a opção de continuar
O depurador irá para cada instância da própria linha e verificará a condição "ename = SCOTT". O registro para o qual esta condição é verdadeira, o depurador irá parar nessa instância. Portanto, quando o volume de dados é alto, em vez de ir para cada instância do registro de origem, você pode configurar um ponto de interrupção e pular diretamente para esse registro.
Depois que a Informatica terminar de passar por todas as instâncias, o depurador será interrompido automaticamente. Se você deseja analisar os dados novamente, é necessário reiniciar o depurador novamente.
Rastreamento na Informatica
Sempre que você executa uma sessão para um mapeamento, um log de sessão é gerado. Consiste nos detalhes da execução como
- Tempo dos eventos
- Detalhes do erro
- Estatísticas de transformação individuais, etc.
Dentro das transformações de um mapeamento, você pode configurar e definir quantos detalhes a Informatica grava no log da sessão.
Existem quatro níveis que podem ser definidos para rastrear dentro das transformações.
Diferentes modos de registro |
Atividades em diferentes modos de registro |
|
|
|
|
|
|
|
|
Nota : Por padrão, o nível de rastreamento é definido como normal, é recomendado usar o modo de dados detalhados apenas quando você estiver depurando o mapeamento. O modo conciso pode ser usado para melhorar o desempenho, pois grava os detalhes mínimos. Portanto, a sobrecarga de gravação do log será mínima.
Como definir o nível de rastreamento em uma transformação
Etapa 1 - Abra o mapeamento no designer Informatica, para o qual você deseja definir o nível de rastreamento
Etapa 2 - Clique duas vezes na transformação (transformação do Qualificador de Origem "SQ_EMP")
Ele abrirá a janela de edição de transformação.
Etapa 3 - Na janela de edição de transformação
- Clique na guia de propriedades
- Selecione a opção de nível de rastreamento
- No menu suspenso, selecione Dados detalhados
- Selecione o botão OK
Etapa 4 - Salve o mapeamento e execute-o (use o atalho de teclado ctrl + s para salvar o mapeamento)
Etapa 5 - Para visualizar o log
- Abra o monitor de fluxo de trabalho e selecione a sessão que foi executada na última etapa
- Clique na opção "log da sessão" para abrir o log da sessão para o mapeamento
Isso abrirá a janela de registro da sessão para o mapeamento
O log da sessão fornece detalhes sobre como sua sessão foi executada. Ele fornece os detalhes de tempo quando a execução foi iniciada e interrompida. Ele fornece a ideia básica sobre o desempenho. Ele menciona qual conexão de banco de dados você está usando, qual arquivo de parâmetro você está usando. Ele também resume sobre a origem e os destinos, mencionando quantos registros de origem foram buscados, quantos registros foram carregados no destino, etc.
Etapa 6 - Role para baixo no log e você pode ver detalhes adicionais do log capturados, incluindo os registros de dados.
Dessa forma, você pode definir o nível de rastreamento em mapeamentos para capturar os detalhes adicionais para depuração.
Neste tutorial, você aprendeu como definir, configurar e executar o depurador e como definir o nível de rastreamento em mapeamentos. Essas opções fornecem a capacidade de depurar os mapeamentos.