Debugger in Informatica: sessie, breekpunt, uitgebreide gegevens en mapping

Zoals we in eerdere onderwerpen hebben besproken, is een mapping een verzameling bron- en doelobjecten die met elkaar zijn verbonden door een reeks transformaties. Deze transformaties bestaan ​​uit een reeks regels die de gegevensstroom definiëren en hoe de gegevens in de doelen worden geladen.

Wat is foutopsporing?

Debugger is een erg handig hulpprogramma in Informatica. Wanneer we de mapping uitvoeren, voert Informatica de mapping uit op basis van de gedefinieerde transformatielogica.

De uitvoering ervan is vergelijkbaar met de uitvoering in batchmodus, waarbij we de tussenresultaten niet kunnen zien, of hoe de gegevens worden gewijzigd van transformatie naar transformatie.

Vaak krijgen we de gegevens in het doel die niet zijn zoals we hadden verwacht. Met behulp van debugger kunnen we kan analyseren hoe de gegevens binnen de mapping bewegen. We kunnen de gegevens rij voor rij analyseren in een debugger.

Voor het gebruik van debugger is een sessie-instantie vereist. We kunnen een bestaande sessie die eerder is gemaakt hergebruiken om de mapping uit te voeren, of we kunnen een nieuwe debug-sessie-instantie maken. Omdat tijdens het debuggen de gegevens uit de bron worden opgehaald, hebben we de mogelijkheid wat we met die gegevens moeten doen.

  • Of we kunnen de gegevens weggooien, of
  • De gegevens kunnen in het doel worden geladen

Deze opties kunnen worden ingesteld tijdens de configuratie van de debugger.

Om de debugger te monitoren, zijn er twee vensters in Informatica Designer

  • Target venster
  • Instantievenster

In het doelvenster wordt het doelrecord weergegeven dat in de doeltabel wordt ingevoegd. In het exemplaarvenster kunt u elk van de transformatie-instanties van de toewijzing selecteren. Daarna zijn alle poorten van die transformatie zichtbaar in dit venster en kunt u de gegevens analyseren en zien hoe deze worden getransformeerd.

Stappen voor het gebruik van debugger in een mapping

Informatica Designer biedt de mogelijkheid om de debugger te gebruiken voor het debuggen van toewijzingen. Het betekent dat we elke bestaande mapping kunnen debuggen en analyseren. De vereiste voor de debugger is dat de mapping een geldige mapping moet zijn.

In de oefening zullen we fouten opsporen in onze bestaande mapping “m_emp_emp_target” die we eerder hebben gemaakt. In onze brongegevens zullen we controleren op een bepaald record met de naam werknemer_naam ='SCOTT'. Voor Scott zullen we verifiëren dat de waarden worden opgehaald in Informatica en of het record correct naar het doel wordt gepusht of niet.

Onze brongegevens voor de “emp”-tabel zien er als volgt uit.

Gebruik Debugger in een mapping

Voor de ename “SCOTT” zullen we met behulp van debugger controleren welke waarde voor de kolom “sal” (salaris) wordt opgehaald in de Informatica.

Stap 1) Open Informatica Designer en open in Designer de mapping “m_emp_emp_target” door er dubbel op te klikken. Het opent de bron van de qualifier en target definitietabellen die mapping in Mapping Designer tonen.

Gebruik Debugger in een mapping

Stap 2) Start nu de debugger

  1. Klik op de toewijzingen menu optie
  2. Selecteer Debugger uit de opties
  3. Selecteer de optie “start debugger”.

Gebruik Debugger in een mapping

Stap 3) Selecteer Volgende in het foutopsporingstoewijzingsvenster

Gebruik Debugger in een mapping

Stap 4) In het volgende venster krijgt u een optie om het sessietype te selecteren. U kunt een bestaande sessie of een bestaande herbruikbare sessie gebruiken, of u kunt een exemplaar van een foutopsporingssessie maken.

Wanneer u de bestaande sessie gebruikt, zal Informatica de eerdere sessie gebruiken die u voor deze mapping hebt gemaakt. Wanneer u de optie Foutopsporingssessie maken selecteert, wordt er een nieuw sessie-exemplaar gemaakt voor foutopsporing.

In dit voorbeeld selecteren we een bestaande herbruikbare sessie-instantie. De integratieservice is de standaard.

  1. Selecteer de optie “gebruik een bestaand sessie-exemplaar”.
  2. Klik volgende

Gebruik Debugger in een mapping

Stap 5) In het nieuwe venster zal Informatica u vragen de bestaande sessie voor foutopsporing te selecteren.

Selecteer de sessie “s_m_emp_emp_target” en klik op de knop Volgende

Gebruik Debugger in een mapping

Stap 6) In het volgende venster zal er een optie zijn “Doelgegevens weggooien”. We selecteren deze optie omdat we tijdens het debuggen geen gegevens in onze doeltabel willen laden.

  1. Selecteer de optie ‘Doelgegevens weggooien’.
  2. Selecteer doeltabel “emp_target”
  3. Klik op de knop Voltooien.

Gebruik Debugger in een mapping

Met de bovenstaande stappen hebben we de debugger geconfigureerd en gestart. Nu kunnen we de mapping debuggen.

Stap 7) De debugger is gestart, maar heeft geen rijen uit de bron opgehaald. Tijdens het debuggen worden de gegevens rij voor rij opgehaald uit de bron. Om te beginnen, haalt u de eerste rij op uit de bron

  1. Selecteer de toewijzingsoptie in het menu
  2. Selecteer debugger-optie
  3. Selecteer de optie Volgende exemplaar

Gebruik Debugger in een mapping

Stap 8) In het instancevenster ziet u het eerste opgehaalde record uit de bronkwalificatie.

Gebruik Debugger in een mapping

Als u het instance window analyseert, zal het de eerste record tonen – ename “SMITH” row. Dit is niet de record die we zoeken. Dus we kunnen naar de volgende instance.

Stap 9) Naar de volgende instantie gaan (naar de volgende rij gaan)

  • Druk op de F10-knop (snelkoppeling om naar het volgende exemplaar te gaan, in plaats van naar de kaartoptie en vervolgens de debugger-optie te gaan)

Nadat u naar het volgende exemplaar bent gegaan, verandert het venster met gegevens in het exemplaar naar het volgende record.

Gebruik Debugger in een mapping

Stap 10) Blijf op de F10-knop drukken totdat u het vereiste record van de “SCOTT”-werknemer bereikt. Zodra u dat punt bereikt, ziet het instantievenster eruit zoals hieronder weergegeven

Gebruik Debugger in een mapping

Dit is het exemplaar waarnaar we op zoek waren. In het instantievenster kunnen we de gegevens dus analyseren. Of het nu correct komt, of dat er een waarde ontbreekt.

In de brongegevens waren de gegevens van de werknemer “SCOTT” als volgt: baan = “ANALYST”, manager-id = “7566”, salaris “3000.”

En in de debugger hebben we voor de werknemer "SCOTT" al deze details geanalyseerd en ze komen overeen met de brongegevens, dus we zijn er zeker van dat de records correct zijn opgehaald door de bronkwalificatie.

Breekpunt gebruiken in debugger

Wanneer we naar een bepaalde rij gegevens zoeken, zoals in het vorige voorbeeld, kunnen we in plaats van naar elk exemplaar van de brongegevens te gaan, breekpunten definiëren.

Een breekpunt is een voorwaarde of een set van een voorwaarde die is gedefinieerd tijdens de configuratie van het debuggen, zodat wanneer die voorwaarde waar wordt, de debugger stopt bij dat specifieke exemplaar.

Als we bijvoorbeeld deptno=20 in een breekpunt definiëren, zal de debugger telkens wanneer voor een record deze voorwaarde waar is, stoppen bij dat exemplaar van gegevens.

Stap 1) Om het breekpunt te configureren

  1. Ga naar het toewijzingsmenu
  2. Selecteer debugger-optie
  3. Selecteer de optie “breekpunten bewerken”.

Breekpunt gebruiken in Debugger

Stap 2) U zult een venster “breekpunt bewerken” zien, zoals hieronder weergegeven

Breekpunt gebruiken in Debugger

Stap 3) Klik in het breekpuntvenster op de knop Toevoegen

Breekpunt gebruiken in Debugger

Stap 4) In het nieuwe venster

  1. Selecteer de SQ_EMP als exemplaar
  2. Selecteer de OK-knop

Breekpunt gebruiken in Debugger

Stap 5) Het vorige venster ziet er uit zoals hieronder weergegeven

Breekpunt gebruiken in Debugger

Stap 6) Je hebt een breekpunt, nu moet je de breekpuntvoorwaarde definiëren. Om de breekpuntvoorwaarde te definiëren

  1. Klik op het pictogram “Nieuwe voorwaarde toevoegen”.

Breekpunt gebruiken in Debugger

Er verschijnt een nieuwe rij op het tabblad Conditie. Hier kunnen we de voorwaarde configureren.

Stap 7) In de conditietabel

  1. Selecteer in de vervolgkeuzelijst 'ENAME' (aangezien we fouten opsporen voor record ename='SCOTT')
  2. Voer in het waardevak de waarde “SCOTT” in.
  3. Selecteer de OK-knop

Breekpunt gebruiken in Debugger

Stap 8) Start nu de debugger zoals vermeld in het vorige onderwerp

Ga naar het kaartmenu -> selecteer debugger-optie -> selecteer start-foutopsporing -> selecteer sessie-instantie

Stap 9) Zodra debugger is gestart

  1. Selecteer het toewijzingsmenu
  2. Selecteer debugger-optie
  3. Selecteer de optie Doorgaan

Breekpunt gebruiken in Debugger

De debugger gaat naar elke instantie van de rij zelf en controleert op de voorwaarde “ename=SCOTT”. Voor het record waarvoor deze voorwaarde waar is, stopt de debugger bij die instantie. Dus als het gegevensvolume hoog is, kunt u in plaats van voor elk exemplaar van de bronrecord te gaan, een breekpunt configureren en direct naar dat record springen.

Breekpunt gebruiken in Debugger

Zodra de Informatica klaar is met het doorlopen van alle instances, wordt de debugger automatisch gestopt. Als u de gegevens opnieuw wilt analyseren, moet u de debugger opnieuw starten.

Tracering in Informatica

Wanneer u een sessie uitvoert voor een mapping, wordt er een sessielogboek gegenereerd. Het bevat de details van de uitvoering, zoals

  • Tijdstip van de evenementen
  • Fout details
  • Individuele transformatiestatistieken enz.

Binnen de transformaties van een mapping kunt u configureren en instellen hoeveel details Informatica naar het sessielogboek schrijft.

Er zijn vier niveaus die kunnen worden ingesteld voor tracering binnen de transformaties.

Verschillende logmodi Activiteiten in verschillende logmodi
Normaal In de normale modus schrijft Informatica over de transformatie-initialisatie en statusinformatie, aangetroffen fouten en vat de sessieresultaten samen.
Beknopt In Terse Mode schrijft Informatica alleen over initialisatie-informatie en foutdetails. Terse mode schrijft minimale details in het sessielogboek.
Uitgebreide initialisatie In de Verbose Initialization-modus schrijft Informatica de loggegevens op dezelfde manier als in de normale modus. Daarnaast worden ook de gebruikte gegevens- en indexbestanden en transformatiestatistieken beschreven.
Uitgebreide gegevens Bij uitgebreide gegevens schrijft Informatica een logboek vergelijkbaar met uitgebreide initialisatie, maar schrijft daarnaast ook alle gegevens die door de transformatie gaan.

Note: Standaard is het traceringsniveau ingesteld op normaal, het wordt aanbevolen om de verbose datamodus alleen te gebruiken wanneer u de mapping debugt. De beknopte modus kan worden gebruikt om de prestaties te verbeteren, omdat deze de minimale details schrijft. Dus de overhead van het schrijven van log zal minimaal zijn.

Hoe u het traceerniveau in een transformatie instelt

Stap 1) Open de toewijzing in Informatica Designer waarvoor u het traceringsniveau wilt instellen

Traceringsniveau instellen in een transformatie

Stap 2) Double klik op de transformatie (Source Qualifier-transformatie “SQ_EMP”)

Het opent het bewerkingstransformatievenster.

Traceringsniveau instellen in een transformatie

Stap 3) In het bewerkingstransformatievenster

  1. Klik op het tabblad Eigenschappen
  2. Selecteer de optie Traceringsniveau
  3. Selecteer in de vervolgkeuzelijst Uitgebreide gegevens
  4. Selecteer de OK-knop

Traceringsniveau instellen in een transformatie

Stap 4) Sla de mapping op en voer de mapping uit (gebruik de sneltoets ctrl+s om de mapping op te slaan)

Stap 5) Om het logboek te bekijken

  1. Open werkstroommonitor en selecteer de sessie die in de laatste stap is uitgevoerd
  2. Klik op de optie “sessielogboek” om het sessielogboek voor de mapping te openen

Traceringsniveau instellen in een transformatie

Hierdoor wordt het sessielogboekvenster voor de mapping geopend

Het sessielogboek geeft details over hoe uw sessie is uitgevoerd. Het geeft de timingdetails weer wanneer de uitvoering is gestart en gestopt. Het geeft het basisidee over de prestaties. Het vermeldt welke databaseverbinding u gebruikt, welk parameterbestand u gebruikt. Het vat ook de bron en doelen samen door te vermelden hoeveel bronrecords zijn opgehaald, hoeveel records in het doel zijn geladen, etc.

Traceringsniveau instellen in een transformatie

Stap 6) Scroll naar beneden in het logboek. Daar ziet u aanvullende logboekgegevens, waaronder de gegevensrecords.

Traceringsniveau instellen in een transformatie

Op deze manier kunt u het traceringsniveau in toewijzingen instellen om de aanvullende details voor foutopsporing vast te leggen.

In deze zelfstudie hebt u geleerd hoe u de debugger instelt, configureert en uitvoert, en hoe u het traceringsniveau in toewijzingen instelt. Met deze opties kunt u fouten in de toewijzingen opsporen.