Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

Anchor
_Toc40578283
_Toc40578283



Table of Contents



Stamdata
Driftsvejledning

Anchor
_GoBack
_GoBack

Anchor
_Toc231888211
_Toc231888211
Formål

Dokument målrettet systemadministratorer og driftspersoner, som skal kunne håndtere driftsmæssige aspekter af komponenten.
Driftsvejledningen skal indeholde information om komponentens version, standard placering af logfiler og konfigurationsfiler, eksterne afhængigheder, og evt. krav til genstart af applikationer hvis komponenten bliver ikke-responsiv.
Start/stop vejledning for komponenten beskrives, herunder hvilke andre applikationer der evt. skal genstartes.
Kendte fejlkoder som skrives i logfiler dokumenteres, så disse evt. kan overvåges, og tillige danne baggrund for fejlsøgning. En generel læsevejledning til logfiler vedlægges.
Det bør angives hvorledes komponenten bedst lader sig overvåge, dvs. en generisk beskrivelse af overvågningen, der ikke er værktøjsafhængig.
Evt. specielle krav til backup beskrives, ligesom procedure ved reetablering af komponenten ud fra backup beskrives.

Anchor
_Toc231888212
_Toc231888212
Omfattede komponenter

Dette dokument omfatter driften af alle Stamdata importer komponenterne
Listen herunder beskriver hver komponent med type status URL og navnet på filen som skal deployes. Status URL'en kan løbende polles for at checke komponentens status. Status sider er beskrevet mere detaljeret senere i dokumentet.

Anchor
_Toc231888213
_Toc231888213
Stamdata importer komponenter

Anchor
_Toc231888214
_Toc231888214
Stamdata Data Importere

Hver stamdata importer ligger i sin egen WAR fil, hver importer har sin egen overvågnings URL, der enten fortæller om den enkelte importer er operationsdygtig (HTTP 200 OK), eller om der er fejl i importeren (HTTP 500 ERROR), Overvågningssiden vil give et bud på hvad fejlen er, dog bør man kigge i log-filen for at få alle detaljer med.

  • Type: Batch
  • Status Url: http://<hostname>:<port>/<komponent-navn>/
  • Filnavn: <komponent>.war

Anchor
_Toc231888215
_Toc231888215
Opdatering til nye versioner

Når nye versioner af Stamdata komponenterne udkommer, vil der medfølge release notes som forklarer database-migrering, rollback-procedure, service vinduer mv. Til installation af første version af stamdata komponenterne henvises til installationsguiden.

Anchor
_Toc231888216
_Toc231888216
Daglig Drift

Anchor
_Toc231888217
_Toc231888217
Stamdata Importere

Stamdataimporterne er en gruppe filparsere og batch jobs som indlæser og vedligeholder data fra forskellige registre og gemmer dem i en MySQL database.
Hver importer har sin egen inbox-mappe som automatisk oprettes når servicen startes. Roden for disse inboxmapper er:
<JBOSS_HOME>/domain/data/sdm4/
Komponenten kigger i sin inboxmappe for at se om der kommer nye filer til import. Det er driftens opgave at placere filer i inboxmapperne når tiden er inde for en opdatering. Hvilke filer der skal bruges og hvor ofte registrene skal opdateres er beskrevet i slutningen af dokumentet. Hver inbox er logisk navngivet efter den tilhørende importer.
Se afsnittet om overvågning for monitorering af servicen.

Anchor
_Toc231888218
_Toc231888218
Fremgangsmåde for indlæsning af nye data


Parserne forventer data at blive lagt i undermapper af deres rod-mappe, f.eks.:
<JBOSS_HOME>/domain/data/sdm4/<importer>/20120822T201121S231/<file.txt>
<JBOSS_HOME>/domain/data/sdm4/<importer>/20120822T201121S231/<file2.txt>
Undermappernes navne er underordnede. De importeres i leksikografisk orden,
og det vil derfor være oplagt at lægge dem så undermappernes navne er tids-
stempler som vist i eksemplet.
Skulle der ske en fejl under import, vil der blive lagt en fil ved navn
"LOCKED" i parserens inbox, f.eks.:
<JBOSS_HOME>/domain/data/sdm4/<importer>/LOCKED
Parseren vil ikke forsætte før denne fil er slettet manuelt. Fejl-beskeden kan findes i loggen.

Anchor
_Toc231888219
_Toc231888219
Eksempel for import af nye CPR-data

Her en et eksempel på strukturen for en parsers filsystem. I dette tilfælde er det CPR-parseren:
<JBOSS_HOME>/domain/data/sdm4/cprimporter/
Placeres filen 'D100312.L431101' (som er en typisk CPR Person fil) i inputmappen begynder parseren at stabilisere data. Man kan gå ind på komponentens monitoreringsside for at se status for import:
http://<hostname>:<port>/cprimporter/status
Her vil man kunne se om CPRimporteren kører, hvornår CPRimporteren sidst har kørt, og hvilken status den har.

Anchor
_Toc231888220
_Toc231888220
Konfiguration af Stamdata importere


Hver importer har en default konfigurationsfil (default-config.properties) der er indlejret i war filen, de eneklte konfigurationsindstillinger kan overstyres ved af en miljø specifik konfigurationsfil (config.properties), der ligger i filsystemet på følgende lokation:
<JBOSS_HOME>/modules/sdm4/config/<komponent>/main/config.properties
Properties

jdbc.JNDIName

JNDI navn for datasourcen, der er konfigureret i JBOSS serveren, default: java:/SDMDS

sdm.dataDir

Folder navn hvor importeren kan finde datafilerne default: /pack/jboss/domain/data/sdm4

spooler.max.days.between.runs

Parameter til overvågning af om en importer har modtaget data indenfor et forventet interval. Hvis denne frist overskrides vil overvågningen rapportere fejl.

dk.nsi.dgws.sosi.dgwsLevels

Kommasepararet liste af DGWS niveauer som kan bruges når man tilgår denne service. F.eks dk.nsi.dgws.sosi.dgwsLevels=3,4

Default: 3


Anchor
_Toc231888221
_Toc231888221
Database

De enkelte stamdata importere er testet på en MySQL 5.5 database.

Anchor
_Toc231888222
_Toc231888222
Skema til stamdata importere

Skema til stamdata importere opdateres automatisk af de enkelte importere, via det indbyggede migrerings framework.
Det skal dog understreges at så lang tid de enkelte NSP services er direkte afhængige af tabel layoutet for stamdata importerne, og der samtidig skal være bagud kompatibilitet vil tabel layoutet ikke ændre sige for stamdata importerne – men kun være splittet ud i importer war filerne.

Anchor
_Toc231888223
_Toc231888223
Databaseopsætning

Følgende indstillinger bør sættes specielt i databasen, disse indstillinger konfigureres i mysql's konfigurationsfil.

Indstilling

Værdi

Beskrivelse

Max_allowed_packet

16M

CPR opslagsservices kan returnere en pæn mængde data, derfor er max_allowed_packet default værdien på 1M for lidt - det anbefales at sætte den til 16M.


Anchor
_Toc231888224
_Toc231888224
Backup

Alle tabeller i stamdatas database skal have daglig backup. Backup må ikke gemmes længere end 2 år pga. lovkrav.
Da der er tale om store mængder data er det vigtigt at holde for øje at det kan tage meget lang tid at genetablere et database image for stamdata.

Anchor
_Toc231888225
_Toc231888225
Backup af Data Manager input-filer

Alle filer fra dataset som lægges ind i Stamdata indbakker skal der laves backup af. Det vil sige at hver gang der f.eks. ankommer en ny fil fra CPR-registeret skal filen ligges i den pågældende parsers indbakke og samtidigt arkiveres. Hvordan filen arkiveres er op til driften, men filnavnet og dato for ankomst skal kunne spores.

Anchor
_Toc231888226
_Toc231888226
Overvågning

Anchor
_Toc231888227
_Toc231888227
Statussider

For hver komponent er der en status-side som periodisk kan kaldes for at tjekke om servicen kører. Hvis en service ikke kan overvåges via en simple status side vil det fremgå af dens driftsdokumentation.
Status sider fungerer over HTTP, og har følgende statuskoder:

200

Alt er OK.

500

Der er opstået en fejl, og driften bør undersøge komponentens log for fejlmeddelelser. Kan fejlen ikke opklares simpelt, bør driften kontakte support.


URL's for status sider kan findes tidligere i dette dokument.

Anchor
_Toc231888228
_Toc231888228
Speciel overvågning af SOR og SOR-Relationer importerne

Da SOR behandles af to forskellige importere, er det et problem for datakonsistensen, hvis den ene af disse to parsere fejler på et datasæt som den anden parser ikke fejler på.
Skulle en af de to parsere afvise en import, er det en hastesag at få rettet den fejl der resulterer i afvisningen i den anden parser, så de to registre kan komme i sync så hurtigt som muligt.

Anchor
_Toc231888229
_Toc231888229
Logning

Stamdata importerne på DoDi'en bruger ikke JBOSS logging, men her hver deres egen log konfiguration som placeres følgende:
<JBOSS_HOME>/modules/sdm4/config/<Importer navn>/main/
Her ligges en log4j.properties, der beskriver hvorledes importeren skal logge, samt konfiguration for SLA logging for netop denne komponent

Anchor
_Toc231888230
_Toc231888230
SLA-Log punkter


Wiki Markup
For at sikre en struktureret logning på tværs af de forskellige services, benyttes nsp-util også til SLA-Logning fra sdm4 importerne.
Der logges fra 2 logpunkter pr. importer ét punkt fra sdm4-core og ét fra selve importeren, sdm4-core er delt for alle importere og der dannes én linje for hver gang en importer startes.
En log fra sdm4-core ser ud som nedenfor:
03-06-2013 13:34:46,752 \[pool-10-thread-1\] INFO  dk.sdsd.nsp.slalogdata - LogPoint="<span style="color: #ff0000">&lt;importernavn&gt;</span>.ParserExecutor" LogPointUniqId="SDM4CORE_ENTRY" StartTime="2013-06-03 13:34:45.650" EndTime="2013-06-03 13:34:46.752" Duration="1101893 microseconds" MessageId="vitaminimporter-1370259285650" RequestSize=0 ReplySize=0 Result=OK ClientIP="<empty>" SOAPOperation="<empty>" SOAPEndpoint="<empty>" SOAPAction="<empty>" TargetSOAPOperation="<empty>" TargetSOAPEndpoint="<empty>" GenericCallParms(0)= \{  \}
\\
Fra de enkelte importere logges følgene pr datasæt:
03-06-2013 13:34:46,750 \[pool-10-thread-1\] INFO  dk.sdsd.nsp.slalogdata - LogPoint="<span style="color: #ff0000">&lt;importernavn&gt;</span>.process" LogPointUniqId="SDM4. <span style="color: #ff0000">&lt;importernavn&gt;</span>.process" StartTime="2013-06-03 13:34:45.782" EndTime="2013-06-03 13:34:46.750" Duration="967593 microseconds" MessageId="vitaminimporter-1370259285650" RequestSize=0 ReplySize=0 Result=OK ClientIP="<empty>" SOAPOperation="<empty>" SOAPEndpoint="<empty>" SOAPAction="<empty>" TargetSOAPOperation="<empty>" TargetSOAPEndpoint="<empty>" GenericCallParms(2)= \{ ("input","/pack/jboss/domain/data/sdm4/vitaminimporter/vitaminer") , ("processed_records","634") \}
GenericCallParms indeholder altid "input" som peger på input folderen samt "processed_records" som indeholder antal indsatte eller ændrede records i databasen.
MessageID indeholder en unik id for kørslen således man kan kæde sdm4-core loggen sdm4-importeren sammen pr. kørsel.


Anchor
_Toc231888231
_Toc231888231
Fejlsøgning

Opstår der en fejlsituation i en komponent, skal driften undersøge den pågældende komponents logfil for loghændelser på ERROR-niveau. F.eks. i tilfælde af at komponenten ikke kan forbinde til databasen. Visse andre fejl er ikke-kritiske. Det vil sige at komponenten kan forsætte med at fungere. De bliver også logget på ERROR-niveau da der hændelsen bør undersøges. Komponenterne vil i så vid udstrækning som muligt forsøge at forsætte på trods af fejl.
Anvendes Splunk til indeksere logfiler bør alle de konfigurerede filer indekseres. Der kan opsættes alarmer i Splunk som aktiveres hvis en hændelse med ERROR-niveau logges. Dette niveau anvendes udelukkende ved alvorlige fejl. Der udover er også hændelser på WARN-niveau interessante da de f.eks. fortæller om folk forsøger at tilgå servicen uden tilladelse ol.

Anchor
_Toc231888232
_Toc231888232
Anchor
_Toc263424147
_Toc263424147
Liste af Registre

Hvert register har sin egen registerspecifikations fil som ligger i register mappen sammen med dokumentationen.

Anchor
_Toc231888233
_Toc231888233
Ændringslog

Kilden til dette dokument kan findes på:
https://svn.nspop.dk/svn/trifork/sdm4-core/trunk/doc/Driftsvejledning.docx

Version

Dato

Ændring

Ansvarlig

1.0

2011-04-28

Initielt Dokument

Trifork

1.1

2011-09-12

Opdateret med CPR services

Trifork

1.2

2012-06-18

Tilføjet informationer om schema opdateringer, samt mysql settings og v2 parsere

Trifork

1.3

2012-08-22

Opdateret med opsplitning af stamdata importere i moduler, samt JBOSS 7 konfiguration på DoDi

Trifork

1.4

2012-08-24

Fjernet al dokumentation der ikke er Importer specifik

Trifork

1.5

2013-06-03

Tilføjet afsnit om sla-log

Trifork

1.6

2014-01-09

Opdateret kilde link

Trifork KPN