Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Navitabs
rootSEB importer - Leverancebeskrivelse (draft)
includeroottrue


Indholdsfortegnelse

...

Code Block
languagetext
Inbox is locked: Inbox[/data/importers/sebimporter]

Last import started at: 2021-09-21T09:27:35.000+02:00 and ended at: 2021-09-21T09:27:35.000+02:00. Processing took 0 seconds. Outcome was FAILURE

Modus operandi

Når importeren bliver sat i gang med at køre, så kigger den på alle filer som ligger tilgængelige. Den har ikke nogle krav til navne, men vil processere dem i rækkefølge sorteret efter navn.

For hver zip fil den processerer, der checker den at alle forventede CSV filer er indeholdt, før at den fortsætter. For hver at disse CSV filer, så checker den at alle forventede headers er tilgængelige i filen, før at den går igang med rent faktisk at parse en fil. Når en CSV fil er parsed, så skriver den alt data til databasen, før at den fortsætter til den næste CSV fil i zip filen.

Når der skrives til databasen, så holder importeren øje med, om den entitet allerede eksisterer i databasen. Hvis den er, så vil den lukke den gamle række først, før at den skriver den nye række. Hvis en entitet ikke er blevet opdateret under kørslen, så vil den blive lukket. Dette sker fordi at importeren forventer, at det er et fuldt udtræk af den nuværende status på entiteterne i SOR, og derved vil CSV fileren indeholde alle nuværende og fremtidige aktive entiteter. Optræder de ikke i CSV filen, så er enheden ikke længere aktiv, og skal derfor lukkes.

Fejlsituationer

Der er en række fejl som kan optræde, i forbindelse med eksekveringen af importeren. Her er en liste over de forskellige fejl muligheder, og hvordan de kan løses.

...

Zip filen med alle CSV filer der skal importeres, kan ikke læses. Enten er filen korrupt (fejl i overførelsen), eller også har importeren ikke tilladelse til at læse filen.

...

Der er en ekstra fil i zip filen, som importeren ikke forventer. Dette kan skyldes at backenden ved en fejl pakker ekstra filer med i zip filen, eller måske er det en fil som skal importeres, men som importeren ikke kender til endnu.

...

Der mangler en eller flere filer i zip filen. Dette kan skyldes en fejl i backenden, at en fil er blevet misset i genereringen og pakningen af filer, eller også er det en fil type som helt er udgået.

...

En CSV fil kan ikke læses, hvilket der kan være mange årsager til. Det kan skyldes encoding af filen (der forventes UTF-8 BOM), filen er korrupt, og andre I/O relaterede fejl.

...

Hvis det er et felt som er udgået, så skal importeren opdateres hurtigst muligt for ikke længere at forvente feltet. Hvis ikke, så skal backenden opdateres hurtigst muligt, således at det manglende felt kommer med over i fremtidige kørsler.

...

Hvis det er felter som importeren er forventet at kende til, så skal importeren opdateres hurtigst muligt. Det kunne type på at versionerne af importer og backend er kommet ud af sync. Ellers kan det være felter som er udgået/unødvendige, og fejlen kan ignoreres.

...

Logning

Importeren bruger to forskellige logs.

...