Felsöka datauppgifter
I det här avsnittet beskrivs problem som kan uppstå när du arbetar med datauppgifter och hur du felsöker.
Felsöka miljöfel
När en datauppgift stöter på ett miljöfel, till exempel timeout, nätverksfel eller anslutningsfel, kommer datauppgiften att göra om operationen automatiskt. Om felet inte åtgärdas efter ett nytt försök, slutar datauppgiften att köras och visar status Fel med ett felmeddelande.
-
Mellanlagringsuppgifter med datakällor som bara är tillgängliga via Gateway för dataflytt:
Ett oändligt antal försök görs att utföra åtgärden med 5-sekundersintervall.
Om avbrottet är långt fördubblas intervallet tills ett intervall på 1800 uppnåtts.
-
Mellanlagringsuppgifter med datakällor som är åtkomliga utan Gateway för dataflytt, lagringsuppgifter, omvandlingsuppgifter och datamartuppgifter:
Tre försök görs att utföra åtgärden med 1-sekundersintervall.
Gör följande:
-
Åtgärda felet med hjälp av felmeddelandet.
-
Läs in eller återuppta driften av datauppgiften.
Felsöka problem med en specifik tabell
När en datauppgift stöter på ett fel när den skriver till en specifik tabell, fortsätter datauppgiften att köras. Den felaktiga tabellen kommer att visa status Fel med ett felmeddelande.
-
Åtgärda felet med hjälp av felmeddelandet.
-
Läs in tabellen som var felaktig.
Felsöka CDC-problem
Mellanlagringsdatauppgifter med uppdateringsläget fullständig laddning och CDC kan stöta på CDC-relaterade problem som påverkar hela uppgiften och som inte kan åtgärdas genom att ladda specifika tabeller. Exempel på problem är saknade händelser, problem som orsakas av omorganisering av källdatabasen eller fel när källdatabashändelser läses in.
För att lösa den typen av problem kan du ladda alla tabeller till målet.
- Stoppa datauppgiften och alla uppgifter som använder den.
-
Öppna datauppgiften och välj fliken Övervaka.
-
Klicka på ... och sedan på Ladda mål.
Då laddas alla tabeller till målet med släpp-skapa och alla insamlingar av ändringsdata startas om från och med nu.
-
Lagringsuppgifter som förbrukar mellanlagringsdatauppgiften kommer att laddas via jämför och tillämpa vid deras nästa körning så att de synkas. Befintlig historik kommer att bevaras. Typ 2-historik kommer att uppdateras för att återspegla ändringar efter att laddningen och jämförelseprocessen har utförts.
Tidsmarkören för från-datumet i typ 2-historiken kommer att återspegla laddningsdatumet och inte nödvändigtvis det datum då ändringen skedde i källan.
-
Livevyer för lagring kommer inte att vara tillförlitliga under ladda mål-åtgärden och fram till dess att lagringen är synkad. Lagringsplatsen kommer att vara helt synkad när:
-
Alla tabeller laddas om med jämför och tillämpa,
-
En ändringscykel utförs för varje tabell.
-
Ladda alla tabeller till målet
NULL-värden i primärnyckelkolumnen
Du kan få ett felmeddelande när du utför en datauppgift: Unknown execution error - NULL result in a non-nullable column.
Möjlig orsak
Kolumner som används som primärnycklar får inte innehålla NULL-värden, och ska vara icke-nullbara.
Föreslagen åtgärd
Lägg till ett uttryck i källdatauppgiften som konverterar alla NULL-värden till ett värde, t.ex. 0.
Du kan också välja att använda en annan kolumn som primärnyckel.
Castingfel när du använder Redshift som dataplattform
Du kan få följande fel eller liknande när du använder Redshift som dataplattform: det gick inte att hitta en konverteringsfunktion från "okänd" till tecken som varierar"
Möjlig orsak
Det saknas casting av ett konstant uttryck. Detta kan hända oftare i datamarter på grund av den högre komplexiteten hos den slutliga frågan.
Föreslagen åtgärd
Casta det konstanta uttrycket som text.
Exempel:
Tvetydiga kolumnnamn
När du registrerar data baserat på en vy som skapats i en Qlik Talend Data Integration-pipeline kan vyn innehålla kolumner som genererats av Qlik Talend Data Integration. Namnen på dessa kolumner, som börjar med hdr__, är reserverade. När en kolumn med ett reserverat namn används i en lagringsuppgift kommer lagringsuppgiften att skapa kolumner med samma reserverade namn, vilket leder till en namnkonflikt. Du kan t.ex. ha två kolumner med namnet hdr__key_hash.
Mer information om reserverade kolumnnamn i vyer finns i Vyer.
Föreslagen åtgärd
Byt namn på kolumnen som kommer från uppgiften för registrerade data i lagringsdatauppgiften. Byt till exempel namn på hdr__key_hash till my__key_hash.
Felsöka en datauppgift baserat på Gateway för dataflytt
Du kan få information om mellanlagringsoperationer för datauppgifter baserat på Gateway för dataflytt genom att inspektera loggfiler. Du kan också ställa in loggningsnivån. Loggar finns tillgängliga när datauppgiften har slutfört sin första körning.
För att visa loggfiler behöver du någon av följande behörigheter i utrymmet där datauppgiften finns:
-
Ägare
-
Kan styra
Du behöver också någon av följande behörigheter i utrymmet där datagatewayen finns:
- Kan använda
- Kan redigera
- Kan hantera
Visa loggfiler
Öppna loggvisaren genom att klicka på Visa loggar i en mellanlagringsdatauppgift baserat på Gateway för dataflytt. Du kan välja vilken loggfil du vill visa under Replikera motorloggar. Du kan rulla till början och slutet av filen med och .
Ställa in loggningsalternativ
Du kan ställa in loggningsnivån för olika operationer för replikering under Loggningsalternativ.
Lagring av trace- och verbose-loggning i minnet
När loggningsnivån är inställd på "Trace" eller "Verbose" kan du ange att Qlik Talend Data Integration ska spara loggningsinformationen i minnet tills ett fel inträffar. När ett fel upptäcks börjar Qlik Talend Data Integration skriva till de fysiska loggarna och fortsätter att göra det under några minuter efter det att felet först inträffade.
Om inget fel inträffar innan det allokerade minnet är förbrukat tömmer Qlik Talend Data Integration minnesbufferten och börjar om.
Det här alternativet är användbart för uppgifter som misslyckas oförutsägbart och utan någon uppenbar anledning. Problemet med att kontinuerligt skriva stora mängder information till loggarna är dubbelt:
- Om du kör i loggningsläget "Trace" eller "Verbose" tar det tillgängliga diskutrymmet snabbt slut (om inte loggningsinställningarna har konfigurerats för att förhindra detta).
- Att kontinuerligt skriva stora mängder data till loggarna påverkar prestandan.
Så här använder du detta alternativ
- Markera rutan "Lagra spårning/omfattande loggning i minnet, men skriv till loggarna om ett fel uppstår" längst upp på fliken.
- I fältet Tilldela minne upp till (MB) anger du hur mycket minne du vill avsätta för att lagra loggningsinformation.
Ställa in loggningsnivåer
Du kan ställa in följande nivåer:
-
1. Fel
Visa felmeddelanden.
-
2. Varning
Visa varningar.
-
3. Info
Visa informationsmeddelanden.
-
4. Felsökning
Visa ytterligare information för felsökning.
-
5. Detaljerad felsökning
Visa detaljerad information för felsökning.
I de högre nivåerna ingår alltid meddelandena från de lägre nivåerna. Därför skrivs bara felmeddelanden till loggen om du väljer Fel. Men om du väljer Info tas informationsmeddelanden, varningar och felmeddelanden med. Generellt kan nivåerna Felsökning och Detaljerad felsökning generera stora mängder loggdata.
Du kan använda Global för att ställa in samma nivå för alla operationer, eller ställa in nivån individuellt för varje operation.
-
Källa - fullständig inläsning
Loggar aktivitet med anknytning till fullständig laddning-operationer i datakällan. Hit hör SELECT-satser som körs mot källtabellerna före fullständig laddning.
-
Källa - CDC
Loggar aktivitet med anknytning till CDC-operationer i datakällan.
Anteckning om varningOm detta sätts till nivån Detaljerad felsökning genereras mycket stora mängder data till loggen. -
Källa – data
Detaljerad loggning av datakällaktivitet med anknytning till fullständig laddning- och CDC-operationer.
-
Mål – fullständig inläsning
Loggar aktivitet med anknytning till fullständig laddning-operationer på målet.
-
Mål - CDC
Loggar aktivitet med anknytning till CDC-operationer på målet.
-
Mål – ladda upp
Loggar aktivitet när filer överförs till målet.
-
Utökad CDC
Detaljerad loggning av CDC-aktivitet, till exempel synkronisering och lagring av transaktioner.
-
Resultat
Loggar fördröjningsvärden för källa och mål.
-
Metadata
Loggar aktivitet med anknytning till läsning av metadata och ändringar av metadata. Replikeringsuppgiftens status loggas också.
-
Infrastruktur
Loggar infrastrukturinformation, filsystemoperationer och uppgiftshantering.
-
Omvandling
Loggar information med anknytning till omvandlingar som utförs.
Hämta diagnosfiler
Du kan hämta ett diagnospaket, uppgiftsloggar och en minnesrapport till stöd vid problemlösning av replikeringsuppgiften med anknytning till mellanlagringsuppgiften. Du kan bara hämta en post i taget.
-
I loggvisaren klickar du på Hämta för att expandera.
-
Välj vilken post du vill hämta.
-
Klicka på Hämta.
Filen kommer antingen att laddas ner till din dator eller så kommer du att bli ombedd att spara den, beroende på din webbläsarinställningar.
Felsöka en datauppgift som inte används Gateway för dataflytt
Du kan få information om mellanlagringsoperationer för datauppgifter som inte använder Gateway för dataflytt genom att inspektera loggfiler. Du kan också ställa in loggningsnivån. Loggar finns tillgängliga när datauppgiften har slutfört sin första körning. Du kan visa uppgiftsloggar och serverloggar.
Visa uppgiftsloggar
För att visa uppgiftsloggar behöver du någon av följande behörigheter i utrymmet där datauppgiften finns:
-
Ägare
-
Kan styra
Du behöver också någon av följande behörigheter i utrymmet där datagatewayen finns:
- Kan använda
- Kan redigera
- Kan hantera
Öppna loggvisaren genom att klicka på Visa uppgiftsloggar i en mellanlagringsdatauppgift som inte använder Gateway för dataflytt. Du kan välja vilken loggfil du vill visa under Replikera motorloggar. Du kan rulla till början och slutet av filen med och .
Du kan ställa in loggningsnivån för olika operationer för replikering under Loggningsalternativ. Mer information finns här Ställa in loggningsalternativ.
Visning av loggar över datarörelser
För att visa datarörelseloggar behöver du ha rollen Data Admin eller Tenant Admin.
Öppna loggvisaren genom att klicka på Visa loggar över datarörelser i en mellanlagringsuppgift som inte använder Gateway för dataflytt. Mer information om loggarna finns i Visa och ladda ner loggfiler.