Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Vejledningen indeholder servicekrav til det omliggende miljø, herunder krav til operativsystem og standardapplikationer, som f.eks. applikationsservere, Java version mm., angivet på version og service pack-niveau. 

Vejledningen beskriver hvorledes servicen deployeres, herunder om der er krav om evt. genstart af server eller andre applikationer.

...

Læseren forventes at have kendskab til National Sundheds-IT’s platform NSP, samt generelt kendskab til WildFly applikation server, docker og Ubuntu Linux operativ system.
Hvor der i teksten er angivet <packing> refereres til topniveaufolderen for release-pakken med kildekode. Folderens navngivning afhænger af versionen på releaset.

Definitioner og referencer

Definition

Beskrivelse

LARLægemiddelallergiregisrering
SDSSundhedsdatastyrelsen
NSPDen nationale service platform (inden for sundheds-IT)
DriftsvejledningLAR Driftsvejledning

Docker image

LAR leveres som et docker image og kan hentes fra registry.nspop.dk/playground/larservice:snapshot. Der leveres eksempel på docker-compose.yml fil sammen med kildekoden. Compose filen kan findes i folderen compose/release i roden af kildekoden. I compose filen er der også refrence til eksempler på konfigurationsfiler. 

Krav til miljø

Krav til applikationsservere

...

Der stilles ingen krav til operativsystemet , ud over krav om, at Java er understøttet på operativsystemet.Ubuntu Linux bruges som operativsystem på NSP’en, og udviklingen af komponenten er foretaget på Ubuntu 16.04.udover at det skal være Linux og docker skal være installeret.

Krav til adgang til andre services

LAR servicen er afhægning af den bagvedliggende FHIR-baserede CAVE service. CAVE servicen er dokumenteret særskilt her: CAVE service. 

Krav til datahåndtering

LAR servicen behandler (videresender) personfølsomme informationer.

...

  • Antallet og størrelsen af samtidige læsninger af lægemiddelallergier.

  • Antallet af samtidige lægemiddelallergiregistreringer (skrivninger).

Deployment på Wildfly 8.2

Dette afsnit beskriver deploymentprocessen på WildFly 8.2.

I nuværende kode-base er følgende profiler forberedt:

...

Profilnavn

...

Profildefinitioner

...

Deployeringssti

...

larservice-war/src/test/conf

...

sds/larservice/configuration

NB! Deployeringsstien er relativ til <Wildfly>/modules/sds.

Deployment af LAR Service

OBS! Inden opstart af WildFly skal det sikres at properties og modul filer til servicen ligger i de applikationsspecifikke modul foldere på WildFly.

...

<packing>/larservice-war/target/larservice.war

Servicekomponenter der skal deployes til WildFly, skal kopieres til mappen ”deployments”. Hvis WildFly kører normalt starter den selv komponenten op. Er dette ikke tilfældet skal WildFly genstartes.

Konfiguration af LAR Service

Al konfiguration foregår ved redigering af de relevante properties filer under WildFly modules. Ved konfigurationsændringer bør servicen/WildFly genstartes.

Indholdet af de enkelte konfigurationsfiler, er beskrevet og forklaret i LAR Driftsvejledning.

Filer beskrevet i det følgende kan tilpasses.

Deployment af modul

WildFly module for LAR Service sættes op ved at kopiere filen:

...

Konfiguration

Filnavne og stier til disse tager udgangspunkt i hvor de er mounted i docker countaineren. 

Serviceconfiguration

Grundlæggende konfiguration foregår ved redigering af filen /pack/wildfly8/modules/sds/larservice/configuration/main/

...

application.properties

Konfiguration af LAR

larservice.properties

En skabelon for denne fil findes i:

...

<packing>/larservice-war/src/test/conf/larservice.properties

Filen redigeres inden den placeres på WildFly i:

...

/pack/wildfly8/modules/sds/larservice/configuration/main/

Yderligere information kan findes i LAR Driftsvejledning.

log4j-larservice-ws.xml

Konfigurerer logopsætningen for LAR.

En skabelon for log4j konfiguration findes i:

...

<packing>/larservice-war/src/test/conf/log4j-larservice-ws.xml

Filen redigeres inden den placeres på WildFly i:

...

/pack/wildfly8/modules/sds/larservice/configuration/main/

Konfiguration af NSP SLA log

NSP-util anvendes som en del af servicen og skal konfigureres. Eksempel på konfiguration-fil findes i:

...

<packing>/larservice-war/src/test/conf/
   log4j-nspslalog-lar.properties
   nspslalog-lar.properties

Filerne redigeres inden de placeres på WildFly i:

...

/pack/wildfly8/modules/sds/larservice/configuration/main/

Yderligere information kan findes i LAR Driftsvejledning.

Konfiguration

Property

Beskrivelse

cave.base.get

Endpoint for get operationer mod CAVE servicen. F.eks. http://cave.sdsd.dk/cave/fhir/
cave.base.postEndpoint for post operationer mod CAVE servicen. F.eks. http://cave.sdsd.dk/cave/fhir/
treatmentRelation.enabledAngiver om integration med behandler relation er er slået til. Skal altid være true i produktion.
treatmentRelation.endpointEndpoint til behandler relation wsdl.
samtykke.enabled = trueAngiver om integration med samtykke er slået til. Skal altid være true i produktion.
samtykke.endpointEndpoint til MinSpærring.
minLog.enabledAngiver om integration til min log er slået til. Skal være true i produktion.
minLog.endpointEndpoint til min log.
minLog.read.textAngiver den tekst der skal skrives i min log ved læsning af oplysninger.
executor.maxThreadCountMaksimalt antal parrallele tråde der anvendes når min log, min spærring og behandlerrelation kaldes.
dgws.validation.disabledAngiver om DGWS validering skal slås fra. Skal altid være false i produktion.
idcard.versionAngiver krævede version af id kort. F.eks. 1.0.1.
sts.test.modeAngiver om det er test STS'en der skal anvendes. Skal altid være false i produktion.
idcard.max.age.hoursId kort maksimal alder. F.eks. 24
whitelist.id=dk.nsi.larserviceID navn til brug i whitelist database.
idcard.min.sec.level=4

Minimum security level på id kort. Skal være 4 i produktion.

NO_AUTHENTICATION = 1
USERNAME_PASSWORD_AUTHENTICATION = 2
VOCES_TRUSTED_SYSTEM = 3
MOCES_TRUSTED_USER = 4

log.config.file=log4j.propertiesLog4j kongigurationsfil.
treatment.relation.serviceprovider.nameIndsættes som ’Serviceprovider/Name’ i behandlingsrelationsservicens treatmentRelationRequestBody
treatment.relation.serviceprovider.vendorIndsættes som ’ServiceProvider/Vendor’ i behandlingsrelationsservicens treatmentRelationRequestBody
treatment.relation.serviceprovider.versionIndsættes som ’ServiceProvider/Version’ i behandlingsrelationsservicens treatmentRelationRequestBody
treatment.relation.lookup.timeinterval.start.offset

Angiver antallet af dage fra LAR-kaldtidspunktet, der skal indsættes som tidsstemplet ’RelationLookupTimeInterval/start’ i behandlingsrelationsservicens treatmentRelationRequestBody.

Negativt fortegn angiver antal dage før LAR-kaldtidspunktet.

treatment.relation.lookup.timeinterval.end.offset

Angiver antallet af dage fra LAR-kaldtidspunktet, der skal indsættes som tidsstemplet ’RelationLookupTimeInterval/end’ i behandlingsrelationsservicens treatmentRelationRequestBody.

Negativt fortegn angiver antal dage før LAR-kaldtidspunktet.

treatment.relation.timelimit.offsetAngiver antallet af dage fra LAR-kaldtidspunktet, der skal indsættes som tidsstemplet ’TimeLimit’ i behandlingsrelationsservicens treatmentRelationRequestBody.
treatment.relation.queryable.cvrIndsættes som ’QueryableCvr’ i behandlingsrelationsservicens treatmentRelationRequestBody
treatment.relation.external.reference.idIndsættes som ’ExternalReferenceId’ i behandlingsrelationsservicens treatmentRelationRequestBody
treatment.relation.acceptable.relationsKommasepareret liste af kategorier, der indsættes som ’AcceptableRelations/Relation’ i behandlingsrelationsservicens treatmentRelationRequestBody.
treatment.relation.followup.relationsKommasepareret liste af kategorier, der indsættes som ’FollowupRelations/Relation’ i behandlingsrelationsservicens treatmentRelationRequestBody.
consent.issuer = Lar serviceIssuer til HSUID header bruges i kald til MinSpærring
consent.responsibleOrganization = Kvalitets DriftResponsible organisation til brug i HSUID header.
app.name = LAR serviceApplikationsnavn
app.name.short = LARKort applikationsnavn.
app.endpoint=http://localhost:8090/larEndpoint til brug i DKS servlet.
sor.oidOID for sor. Skal være = urn:oid:1.2.208.176.1.1.
alive.failThreshold = 5Antal på hinanden fejlende kald til henholdsvis cave, MinLog, MinSpærring og behandler relation før servicens health url returnerer HTTP status 500.

Logfiler for LAR

LAR kan logge kald til følgende logs: En NSP-SLA-log og en applikationslog.

I default opsætningen logges udelukkende fejl til applikationsloggen.

Det er muligt at konfigurere placeringen af filerne, samt hvilket niveau de logger på, ved at redigere i filerne beskrevet ovenfor.

...

SLA-Log konfiguration

SLA-logning på LAR Service sker ved hjælpe af SLALoggingServletFilter konfigureret som et servlet filter.

Konfiguration af SLA-log findes i filen nspslalog-lar.properties samt den Log4j fil der står i nspslalog-lar.properties.

Log4j konfiguration

Log4j konfiguration findes i pack /wildfly8/modules/sds/larservice/configuration/main/log4j.properties

Opgradering af LAR

Når der kommer opgraderinger til en komponent, vil der medfølge en release-note, der beskriver hvad opgraderingen består af, samt hvilke handlinger der er nødvendige for at opgradere den deployerede komponent.

Afinstallation af servicen

Fjern service-komponenter under WildFly’ deployments/ folder:

...

larservice.war

Fjern properties filer under modul-folderen:

...

/pack/wildfly8/modules/sds/larservice/configuration/main/

Fjern eventuelt logfiler.