Debugger v Informatica: Session, Breakpoint, Verbose Data & Mapping

Jak jsme diskutovali v předchozích tématech, mapování je kolekce zdrojových a cílových objektů spojených dohromady sadou transformací. Tyto transformace se skládají ze sady pravidel, která definují datový tok a způsob načítání dat do cílů.

Co je Debugger?

Debugger je velmi užitečný nástroj v Informatica. Když provádíme mapování, Informatica provádí mapování na základě definované transformační logiky.

Jeho provádění je podobné provádění v dávkovém režimu, kde nevidíme mezivýsledky nebo jak se data mění z transformace na transformaci.

Mnohokrát dostáváme data do cíle, který není takový, jak jsme očekávali. S pomocí debuggeru jsme dokáže analyzovat, jak se data v rámci mapování pohybují. Můžeme analyzovat data řádek po řádku v debuggeru.

Použití ladicího programu vyžaduje instanci relace, ke spuštění mapování můžeme buď znovu použít existující relaci, která byla vytvořena dříve, nebo můžeme vytvořit novou instanci relace ladění. Vzhledem k tomu, že během ladění budou data načtena ze zdroje, máme možnost, co s těmito daty dělat.

  • Buď můžeme data zahodit nebo
  • Data lze načíst do cíle

Tyto možnosti lze nastavit během konfigurace ladicího programu.

Pro sledování ladicího programu jsou v Informatica Designer dvě okna

  • Target okno
  • Okno instance

V cílovém okně se zobrazí cílový záznam, který bude vložen do cílové tabulky. V okně instance můžete vybrat kteroukoli z instancí transformace mapování. Poté jsou v tomto okně viditelné všechny porty této transformace a můžete analyzovat data, jak se transformují.

Kroky použití debuggeru v mapování

Návrhář Informatica poskytuje funkci pro použití ladicího programu k ladění mapování. To znamená, že můžeme ladit a analyzovat jakékoli existující mapování. Požadavek na ladicí program je, že mapování by mělo být platné mapování.

Ve cvičení odladíme naše stávající mapování „m_emp_emp_target“, které jsme vytvořili dříve. V našich zdrojových datech zkontrolujeme konkrétní záznam zaměstnanec_jméno ='SCOTT'. Pro Scotta ověříme, zda jsou hodnoty načteny v Informatica a zda je záznam správně odeslán do cíle nebo ne.

Naše zdrojová data pro tabulku „emp“ vypadají takto.

Použijte Debugger v mapování

Pro jméno „SCOTT“ pomocí debuggeru zkontrolujeme, jaká hodnota pro sloupec „sal“ (plat) je načtena v Informatica.

Krok 1) Otevřete Informatica designer a v designeru otevřete mapování „m_emp_emp_target“ dvojitým kliknutím na něj. Otevře tabulky kvalifikátorů a cílů s definicemi mapování v nástroji Mapping Designer.

Použijte Debugger v mapování

Krok 2) Nyní spusťte debugger

  1. Klikněte na mapování možnost nabídky
  2. Z možností vyberte Debugger
  3. Vyberte možnost „spustit ladicí program“.

Použijte Debugger v mapování

Krok 3) V okně mapování ladění vyberte další

Použijte Debugger v mapování

Krok 4) V dalším okně získáte možnost vybrat typ relace. Můžete použít existující relaci, existující opakovaně použitelnou relaci nebo můžete vytvořit instanci relace ladění.

Když použijete existující relaci, Informatica použije dřívější relaci, kterou jste pro toto mapování vytvořili. Když vyberete vytvoření instance relace ladění, vytvoří se nová instance relace pro ladění.

V tomto příkladu vybereme existující opakovaně použitelnou instanci relace. Služba integrace bude výchozí.

  1. Vyberte možnost „použít existující instanci relace“.
  2. Klepněte na tlačítko Další

Použijte Debugger v mapování

Krok 5) V novém okně vás Informatica vyzve k výběru existující relace pro ladění.

Vyberte relaci „s_m_emp_emp_target“ a klikněte na tlačítko Další

Použijte Debugger v mapování

Krok 6) V dalším okně bude možnost „Vyhodit cílová data“, tuto možnost vybereme, protože během ladění nechceme načítat žádná data do naší cílové tabulky.

  1. Vyberte možnost „Zahodit cílová data“.
  2. Vyberte cílovou tabulku „emp_target“
  3. Klikněte na tlačítko Dokončit.

Použijte Debugger v mapování

Pomocí výše uvedených kroků jsme nakonfigurovali a spustili ladicí program. Nyní můžeme odladit mapování.

Krok 7) Ladicí program se spustil, ale nenačetl žádné řádky ze zdroje. Během ladění načítá data ze zdroje řádek po řádku. Chcete-li začít, načtěte první řádek ze zdroje

  1. Vyberte možnost mapování z nabídky
  2. Vyberte možnost debuggeru
  3. Vyberte možnost další instance

Použijte Debugger v mapování

Krok 8) V okně instance uvidíte první načtený záznam ze zdrojového kvalifikátoru.

Použijte Debugger v mapování

Pokud analyzujete okno instance, zobrazí se první záznam – řádek s názvem „SMITH“. Toto není záznam, který hledáme. Můžeme tedy přejít k další instanci.

Krok 9) Přejít na další instanci (pro přesun na další řádek)

  • Stiskněte tlačítko F10 (zkratka pro přechod na další instanci, místo přechodu na možnost mapování a poté možnost ladění)

Po přesunutí do další instance se okno dat v instanci změní na další záznam.

Použijte Debugger v mapování

Krok 10) Stiskněte tlačítko F10, dokud se nedostanete k požadovanému záznamu zaměstnance „SCOTT“. Jakmile dosáhnete tohoto bodu, okno instance bude vypadat jako níže

Použijte Debugger v mapování

Toto je příklad, který jsme hledali. Takže v okně instance můžeme analyzovat data. Zda přichází správně, nebo chybí nějaká hodnota.

Ve zdrojových datech byly podrobnosti o zaměstnanci „SCOTT“ jako job = „ANALYST“, id manažera = „7566“, sal „3000“.

A v debuggeru jsme pro zaměstnance „SCOTT“ analyzovali všechny tyto detaily a shodují se se zdrojovými daty, takže máme jistotu, že záznamy byly správně načteny kvalifikátorem zdroje.

Použití bodu přerušení v ladicím programu

Když hledáme konkrétní řádek dat jako v předchozím příkladu, pak namísto přechodu na každou instanci zdrojových dat můžeme definovat body přerušení.

Bod přerušení je stav nebo sada podmínek definovaných během konfigurace ladění tak, že když se tato podmínka stane pravdivou, ladicí program se zastaví v této konkrétní instanci.

Pokud například definujeme deptno=20 v bodě přerušení, pak kdykoli pro záznam, pokud je tato podmínka pravdivá, pak se ladicí program zastaví na této instanci dat.

Krok 1) Chcete-li nakonfigurovat bod přerušení

  1. Přejděte do nabídky mapování
  2. Vyberte možnost debuggeru
  3. Vyberte možnost „upravit body přerušení“.

Použití bodu přerušení v Debuggeru

Krok 2) Zobrazí se okno „upravit bod přerušení“, jak je uvedeno níže

Použití bodu přerušení v Debuggeru

Krok 3) V okně bodu přerušení klikněte na tlačítko Přidat

Použití bodu přerušení v Debuggeru

Krok 4) V novém okně

  1. Vyberte SQ_EMP jako instanci
  2. Vyberte tlačítko OK

Použití bodu přerušení v Debuggeru

Krok 5) Předchozí okno bude vypadat následovně

Použití bodu přerušení v Debuggeru

Krok 6) Máte bod přerušení, nyní musíte definovat podmínku bodu přerušení. Chcete-li definovat podmínku přerušení

  1. Klikněte na ikonu „přidat novou podmínku“.

Použití bodu přerušení v Debuggeru

Objeví se nový řádek na kartě podmínky. Zde můžeme konfigurovat podmínku.

Krok 7) V tabulce stavu

  1. V rozevíracím seznamu portů vyberte možnost „ENAME“ (protože ladíme záznam ename='SCOTT')
  2. Do pole hodnoty zadejte hodnotu „SCOTT“.
  3. Vyberte tlačítko OK

Použití bodu přerušení v Debuggeru

Krok 8) Nyní spusťte ladicí program, jak je uvedeno v předchozím tématu

Přejděte do nabídky mapování -> vyberte možnost debuggeru -> vyberte spustit ladicí program -> vyberte instanci relace

Krok 9) Jakmile je debugger spuštěn

  1. Vyberte nabídku mapování
  2. Vyberte možnost debuggeru
  3. Vyberte možnost pokračovat

Použití bodu přerušení v Debuggeru

Ladicí program přejde na každou instanci řádku sám a zkontroluje podmínku „ename=SCOTT“. Záznam, pro který je tato podmínka pravdivá, se ladicí program v této instanci zastaví. Takže když je objem dat vysoký, můžete místo toho, abyste šli pro každou instanci zdrojového záznamu, nakonfigurovat bod přerušení a můžete na tento záznam přímo přejít.

Použití bodu přerušení v Debuggeru

Jakmile Informatica dokončí všechny instance, ladicí program se automaticky zastaví. Pokud chcete data znovu analyzovat, musíte znovu restartovat ladicí program.

Trasování v Informatica

Kdykoli spustíte relaci pro mapování, vygeneruje se protokol relace. Skládá se z detailů provedení jako

  • Načasování událostí
  • Detaily chyby
  • Individuální transformační statistiky atd.

Uvnitř transformací mapování můžete nakonfigurovat a nastavit, kolik podrobností Informatica zapisuje do protokolu relace.

Existují čtyři úrovně, které lze nastavit pro trasování uvnitř transformací.

Různé režimy protokolování Činnosti v různých režimech protokolu
Normální V normálním režimu Informatica píše o inicializaci transformace a stavových informacích, zjištěných chybách a shrnuje výsledky relací.
Terse V krátkém režimu Informatica píše pouze o inicializačních informacích a podrobnostech o chybách. Režim Terse zapisuje minimální podrobnosti do protokolu relace.
Podrobná inicializace V režimu podrobné inicializace zapisuje Informatica podrobnosti protokolu podobně jako v normálním režimu a navíc zapisuje také použité datové a indexové soubory a statistiky transformace.
Podrobné údaje V podrobných datech Informatica zapisuje protokol podobný podrobné inicializaci, ale navíc také zapisuje všechna data, která projdou transformací.

Hodnocení: Ve výchozím nastavení je úroveň trasování nastavena na normální, režim podrobných dat se doporučuje používat pouze při ladění mapování. Stručný režim lze použít ke zlepšení výkonu, protože zapisuje minimální detaily. Takže režie zápisu protokolu bude minimální.

Jak nastavit úroveň trasování v transformaci

Krok 1) Otevřete mapování v Návrháři Informatica, pro které chcete nastavit úroveň trasování

Nastavte úroveň trasování v transformaci

Krok 2) Double klikněte na transformaci (transformace kvalifikátoru zdroje „SQ_EMP“)

Otevře se okno editace transformace.

Nastavte úroveň trasování v transformaci

Krok 3) V okně editace transformace

  1. Klepněte na kartu vlastností
  2. Vyberte možnost Úroveň trasování
  3. Z rozbalovací nabídky vyberte Podrobná data
  4. Vyberte tlačítko OK

Nastavte úroveň trasování v transformaci

Krok 4) Uložte mapování a spusťte mapování (pro uložení mapování použijte klávesovou zkratku ctrl+s)

Krok 5) Chcete-li zobrazit protokol

  1. Otevřená monitor pracovního postupu a vyberte relaci, která byla provedena v posledním kroku
  2. Kliknutím na možnost „protokol relace“ otevřete protokol relace pro mapování

Nastavte úroveň trasování v transformaci

Tím se otevře okno protokolu relace pro mapování

Protokol relace poskytuje podrobnosti o tom, jak byla vaše relace provedena. Poskytuje podrobnosti o načasování při spuštění a zastavení provádění. Poskytuje základní představu o výkonu. Uvádí, jaké připojení k databázi používáte, jaký soubor parametrů používáte. Shrnuje také zdroj a cíle tím, že uvádí, kolik zdrojových záznamů bylo načteno, kolik záznamů bylo načteno do cíle atd.

Nastavte úroveň trasování v transformaci

Krok 6) Přejděte v protokolu dolů a uvidíte zachycené další podrobnosti protokolu včetně datových záznamů.

Nastavte úroveň trasování v transformaci

Tímto způsobem můžete nastavit úroveň trasování v mapování pro zachycení dalších podrobností pro ladění.

V tomto tutoriálu jste se naučili, jak nastavit, nakonfigurovat a spustit debugger a jak nastavit úroveň trasování v mapování. Tyto možnosti vám poskytují možnost ladit mapování.