Debugger i Informatica: Session, Breakpoint, Verbose Data & Mapping
Som vi diskuterade i tidigare ämnen är en kartläggning en samling käll- och målobjekt som är länkade samman av en uppsättning transformationer. Dessa transformationer består av en uppsättning regler, som definierar dataflödet och hur data laddas in i målen.
Vad är Debugger?
Debugger är ett mycket praktiskt verktyg i Informatica. När vi kör mappningen, kör Informatica mappningen baserat på den definierade transformationslogiken.
Dess exekvering liknar körning av batchläge där vi inte kan se mellanresultaten, eller hur data ändras från transformation till transformation.
Många gånger får vi data i målet vilket inte är som vi förväntat oss. Med hjälp av debugger, vi kan analysera hur data rör sig inom kartläggningen. Vi kan analysera data rad för rad i en debugger.
Användningen av debugger kräver en sessionsinstans, vi kan antingen återanvända en befintlig session som skapades tidigare för att köra mappningen, eller så kan vi skapa en ny debugsessionsinstans. Eftersom data kommer att hämtas från källan under felsökningen, så vi har möjligheten att göra med den datan.
- Antingen kan vi kassera uppgifterna eller
- Data kan laddas in i målet
Dessa alternativ kan ställas in under konfigurationen av felsökaren.
För att övervaka felsökaren finns det två fönster i Informatica designer
- Target fönster
- Instansfönster
I målfönstret visas målposten som kommer att infogas i måltabellen. I instansfönstret kan du välja vilken som helst av transformationsinstanserna för mappningen. Efter det är alla portar för den transformationen synliga i det här fönstret, och du kan analysera data, hur den omvandlas.
Steg för att använda debugger i en mappning
Informatica-designern tillhandahåller funktionen för att använda felsökaren för att felsöka mappningar. Det betyder att vi kan felsöka och analysera alla befintliga kartläggningar. Kravet för felsökaren är att mappningen ska vara en giltig mappning.
I övningen kommer vi att felsöka vår befintliga m_emp_emp_target som vi skapade tidigare. I våra källdata kommer vi att leta efter en viss post med anställd_namn ='SCOTT'. För Scott kommer vi att verifiera att värdena hämtas i Informatica och om posten har skjutits till målet korrekt eller inte.
Våra källdata för "emp"-tabellen ser ut så här.
För ename "SCOTT", med hjälp av debugger kommer vi att kontrollera att vilket värde för kolumnen "sal" (lön) hämtas i Informatica.
Steg 1) Öppna Informatica designer och i designer öppna kartläggningen "m_emp_emp_target" genom att dubbelklicka på den. Det kommer att öppna källkods- och måldefinitionstabeller som visar mappning inuti Mapping Designer.
Steg 2) Starta nu felsökaren
- Klicka på mappningar menyalternativ
- Välj Debugger från alternativen
- Välj alternativet "starta debugger".
Steg 3) Välj nästa i felsökningsmappningsfönstret
Steg 4) I nästa fönster får du ett alternativ att välja sessionstyp. Du kan använda befintlig session, befintlig återanvändbar session, eller så kan du skapa en felsökningssessionsinstans.
När du använder den befintliga sessionen kommer Informatica att använda den tidigare sessionen som du skapade för denna mappning. När du väljer skapa felsökningssessionsinstans skapas en ny sessionsinstans för felsökning.
I det här exemplet kommer vi att välja befintlig återanvändbar sessionsinstans. Integreringstjänsten kommer att vara standard.
- Välj alternativet "använd en befintlig sessionsinstans".
- Klicka på nästa
Steg 5) I det nya fönstret kommer Informatica att uppmana dig att välja den befintliga sessionen för felsökningen.
Välj sessionen "s_m_emp_emp_target" och klicka på knappen Nästa
Steg 6) I nästa fönster kommer det att finnas ett alternativ "Kassera måldata", vi väljer detta alternativ eftersom vi under felsökningen inte vill ladda någon data i vår måltabell.
- Välj alternativet "Kassera måldata."
- Välj måltabell "emp_target"
- Klicka på knappen Slutför.
Med stegen ovan har vi konfigurerat och startat felsökaren. Nu kan vi felsöka kartläggningen.
Steg 7) Felsökaren har startat, men den har inte hämtat några rader från källan. Under felsökning hämtar den data från källan rad för rad. För att börja hämta första raden från källan
- Välj mappningsalternativ från menyn
- Välj felsökningsalternativ
- Välj nästa instansalternativ
Steg 8) I instansfönstret kommer du att se den första hämtade posten från källkvalifieraren.
Om du analyserar instansfönstret kommer det att visa den första posten – döp raden till "SMITH". Det här är inte skivan vi letar efter. Så vi kan gå vidare till nästa instans.
Steg 9) För att gå till nästa instans (för att flytta till nästa rad)
- Tryck på F10-knappen (genväg för att gå till nästa instans, istället för att gå till mappningsalternativ och sedan felsökningsalternativ)
Efter att ha flyttat till nästa instans kommer data i instansfönstret att ändras till nästa post.
Steg 10) Fortsätt att trycka på F10-knappen tills du kommer till önskad post för "SCOTT"-anställd. När du når den punkten kommer instansfönstret att se ut som visas nedan
Det här är instansen som vi letade efter. Så i instansfönstret kan vi analysera data. Oavsett om det kommer korrekt, eller om något värde saknas.
I källdata var uppgifterna om "SCOTT"-anställd som jobb = "ANALYST", chefs-id = "7566", sal "3000."
Och i debuggern, för den anställde "SCOTT" har vi analyserat alla dessa detaljer, och de matchar källdata, så vi är säkra på att posterna hämtades korrekt av källkvalificeraren.
Använder brytpunkt i debugger
När vi letar efter en viss rad med data som i föregående exempel, kan vi istället för att gå till varje instans av källdata definiera brytpunkter.
En brytpunkt är ett villkor eller en uppsättning av ett villkor som definieras under konfigurationen av felsökning så att när det villkoret blir sant stoppar felsökningen till den specifika instansen.
Till exempel om vi definierar deptno=20 i en brytpunkt, då för en post, om detta villkor är sant, kommer avlusaren att stanna till den instansen av data.
Steg 1) För att konfigurera brytpunkten
- Gå till mappningsmenyn
- Välj felsökningsalternativ
- Välj alternativet "redigera brytpunkter".
Steg 2) Du kommer att se ett "redigera brytpunkt"-fönster som visas nedan
Steg 3) Klicka på knappen Lägg till i brytpunktsfönstret
Steg 4) I det nya fönstret
- Välj SQ_EMP som instans
- Välj OK-knappen
Steg 5) Det föregående fönstret kommer att se ut som visas nedan
Steg 6) Du har en brytpunkt, nu måste du definiera brytpunktsvillkoret. För att definiera brytpunktsvillkor
- Klicka på ikonen "lägg till nytt villkor".
En ny rad under villkorsflik kommer att visas. Här kan vi konfigurera tillståndet.
Steg 7) I tillståndstabellen
- I portrullgardinsmenyn väljer du alternativet "ENAME" (eftersom vi felsöker för posten ename='SCOTT')
- Ange värdet "SCOTT" i värderutan.
- Välj OK-knappen
Steg 8) Starta nu felsökaren som nämndes i föregående avsnitt
Gå till kartläggningsmenyn -> välj felsökningsalternativ -> välj starta debugger -> välj sessionsinstans
Steg 9) När debugger har startat
- Välj mappningsmeny
- Välj felsökningsalternativ
- Välj alternativet fortsätt
Debuggern kommer att gå till varje instans av raden själv och kommer att leta efter villkoret "ename=SCOTT". Posten för vilken detta villkor är sant, kommer felsökaren att stoppa på den instansen. Så när datavolymen är hög kan du istället för att gå för varje instans av källpost konfigurera en brytpunkt och du kan direkt hoppa till den posten.
När Informatica är klar med att gå igenom alla instanser stoppas felsökningen automatiskt. Om du vill analysera data igen måste du starta om debuggern igen.
Spårning i Informatica
När du kör en session för en mappning genereras en sessionslogg. Den består av detaljerna i utförandet som
- Tidpunkt för händelserna
- Detaljer om felet
- Individuell transformationsstatistik mm.
Inuti transformationerna av en mappning kan du konfigurera och ställa in hur mycket detaljer Informatica skriver i sessionsloggen.
Det finns fyra nivåer som kan ställas in för spårning inuti transformationerna.
Olika logglägen | Aktiviteter i olika logglägen |
---|---|
Vanligt | I normalt läge skriver Informatica om transformationsinitieringen och statusinformation, påträffade fel och sammanfattar sessionsresultatet. |
Koncis | I Terse Mode skriver Informatica endast om initialiseringsinformation och feldetaljer. Terse mode skriver minsta detaljer i sessionsloggen. |
Utförlig initiering | I Verbose Initialization-läge skriver Informatica loggdetaljerna som liknar normalt läge och skriver dessutom om data och indexfiler som används och transformationsstatistik. |
Utförlig data | I Verbose data skriver Informatica logg som liknar verbose initialisering men skriver dessutom alla data som passerar genom transformationen. |
Anmärkningar: Som standard är spårningsnivån inställd på normal, det rekommenderas att endast använda utförligt dataläge när du felsöker mappningen. Det kortfattade läget kan användas för att förbättra prestandan, eftersom det skriver de minsta detaljerna. Så omkostnaden för skrivloggen kommer att vara minimal.
Hur man ställer in spårningsnivån i en transformation
Steg 1) Öppna mappningen i Informatica designer, för vilken du vill ställa in spårningsnivån
Steg 2) Double klicka på transformationen (Source Qualifier-transformation "SQ_EMP")
Det kommer att öppna fönstret för redigering av transformation.
Steg 3) I fönstret för redigering av transformation
- Klicka på egenskapsfliken
- Välj alternativet Spårningsnivå
- Välj Utförlig data från rullgardinsmenyn
- Välj OK-knappen
Steg 4) Spara mappningen och kör mappningen (använd ctrl+s kortkommando för att spara mappningen)
Steg 5) För att se loggen
- Öppet arbetsflödesövervakare och välj den session som kördes i det sista steget
- Klicka på alternativet "sessionslogg" för att öppna sessionsloggen för mappningen
Detta öppnar sessionsloggfönstret för mappningen
Sessionsloggen ger information om hur din session utfördes. Den ger information om tidpunkten när exekveringen startade och stoppades. Det ger den grundläggande idén om föreställningen. Den nämner vilken databasanslutning du använder, vilken parameterfil du använder. Den sammanfattar också om källan och målen genom att nämna hur många källposter som hämtades, hur många poster som laddades in i målet, etc.
Steg 6) Bläddra ner i loggen så kan du se ytterligare loggdetaljer inhämtade inklusive dataposterna.
På detta sätt kan du ställa in spårningsnivån i mappningar för att fånga ytterligare detaljer för felsökning.
I den här handledningen har du lärt dig hur du ställer in, konfigurerar och kör felsökaren och hur du ställer in spårningsnivå i mappningar. Dessa alternativ ger dig möjlighet att felsöka mappningarna.