Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Navitabs
rootMinLog2 - Leverancebeskrivelse
firsttabMinLog2
includeroottrue


Indhold


Table of Contents

Indledning

Minlog2 Opslag

...

MinLog 2
Installationsvejledning
Indhold
Indledning
Registrering
Opslag
Læsevejledning
Dokumenthistorik
Definitioner og forkortelser
Krav til miljø
Platform
Ændringer
Tilføjelser
Konfigurationsfiler
Database
Skemaer/brugere
Tabeller
Deployment
Kontrol

...

Minlog2 leveres som et projekt bestående af 2 3 webservice løsninger. En registreringsdel og en opslagsdel. Løsningerne bygges som ear filer og deployes til JBoss WildFly 8.2.1.Final. 

...

...

Registreringsdelen afvikles hos dNSP med adgang til MariaDB som skal indeholde databasen "stamdata".

...

Opslag

Opslagsdelen afvikles hos cNSP og kræver adgang til MariaDB med database "minlog2" og "stamdata".

I det følgende beskrives forudsætninger, samt skridt ved første installation og efterfølgende installationer.

...

Læsevejledning

Læseren forventes at have kendskab til National Sundheds-IT's platform NSP, samt generelt kendskab til Docker, WildFly applikation server, MariaDB og java.

...

Version

...

Dato

...

Ansvarlig

...

Beskrivelse

...

.

...

...

21-11-2017

...

Openminds

...

Ny webservice til borger

...

1.4

...

17-10-2017

...

Openminds

...

Tilføjet kommune data

...

1.3

...

28-09-2017

...

Openminds

...

Properties til OrganisationJob – kommunetabel fjernet.

...

1.2

...

06-09-2017

...

Openminds

...

Ehcache setup

...

1.1

...

10-08-2017

...

Openminds

...

Properties til CleanUp job. Kommunetabel.

...

1.0

...

15-06-2017

...

Openminds

...

Definitioner og forkortelser

Definition

Beskrivelse

NSP

Den nationale service platform (inden for sundheds-IT)

...

Installation

...

Løsningen afvikles på JBoss WildFly 8.2.1.Final med nedenstående konfiguration

Løsningen er udviklet med JDK 1.8 og er testet mod MariaDB version 10.x.

OBS ! CRL foretages af platformen – er slået fra i lookupid !!

...

Nedenstående skal ændres i konfiguration

...

MariaDB driver

Docker

Minlog2 Opslag består af et Docker images som pushes til NSP Docker Registry under navnet:

lookup

Docker Compose

Minlog2 Opslag leveres samtidig som et sæt af Docker Compose filer i mappenhttps://svn.nspop.dk/svn/components/minlog/trunk/compose.

For release x.y.z af Minlog2 Opslag findes Docker Compose filerne i mappenhttps://svn.nspop.dk/svn/components/minlog/tags/release-x.y.z/compose


Compose mappen  indeholder 5 undermapper:

MappeIndhold
configuration

Her ligger alle de konfigurationsfiler som det forventes af driften tilretter til det anvendte miljø.

Er delt op i 3 undermapper

consumer

lookup, Her laves konfigugration til Minlog2 Opslag

registration

databaseHer ligger databasefiler som det forventes at driften lægger på en NSP database
developmentHer ligger en Docker Compose fil til brug for udvikling. Se Guide til Udviklere.
testHer ligger en Docker Compose fil der kan starte Minlog2 i en standalone test konfiguration.
releaseHer ligger den Docker Compose fil som det forventes driften anvender på både test og produktionsmiljøerne.

Konfiguration

I mappenhttps://svn.nspop.dk/svn/components/minlog/trunk/compose/configuration/lookup findes følgende konfigurationsfiler:

FilIndhold
minlog2-ds.xmlKonfiguration af datasourses
minlog2-stam-ds.xmlKonfiguration af datasourses mod stamdata
minlog2/minlog2-lookup.propertiesKonfiguration af Minlog2 Opslag servicen
minlog2/idws-keystore.jksKeystore
minlog2/idws.propertiesKonfiguration af idws
minlog2/kommuner.jsonKommune opslysninger
log4j/log4j.propertiesLog opsætning af Minlog2 Opslag servicen
log4j/nspslalog-minlog2.properties

Filerne skal tilrettes til de forskellige miljøer hvorpå de installeres. Filerne indeholder en konfiguration der passer i en standalone test konfiguration.

Tilføjelser

Nedenstående er en yderligere beskrivelse af minlog2/minlog2-lookup.properties og minlog2/idws.properties.

Filen minlog2/minlog2-lookup.properties indeholder følgende indstillinger:

...

Nedenstående konfigurationsfiler skal tilføjes manuelt til jBoss. 

...

PropertyBeskrivelse
Opret folder
<JBoss>/modules/nsi/minlog2/registration/config/main/log4j
Hvor main indeholder filen module.xml med følgende indhold:
<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.1" name="nsi.minlog2.registration.config">
<resources>
<resource-root path="log4j"/>
<resource-root path="."/>
</resources>
</module>
Og log4j indeholder filen log4j.properties, der indeholder konfiguration af applikationsloggen og auditloggen herunder angivelse af, hvor der logges til. Se konfigurationsfiler.Opret folder
<JBoss>/modules/nsi/minlog2/lookup/config/main/log4j
<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.1" name="nsi.minlog2.lookup.config">
<resources>
<resource-root path="log4j"/>
<resource-root path="."/>
</resources>
</module>
Og log4j indeholder filen log4j.properties, der indeholder konfiguration af applikationsloggen og auditloggen herunder angivelse af, hvor der logges til. Se konfigurationsfiler

Filerne

  • log4j-nspslalog-minlog2.properties
  • nspslalog-minlog2.properties
  • kommuner.json
    gemmes i
    <JBoss>/standalone/configuration
    Disee indeholder konfiguration af NSPUtil log frameworket.
    Bemærk, at filernes navne ikke må ændres: NSPUtil filteret er i applikationen konfigureret til at benytte filen nspslalog-ecpr.properties.

    Filerne

  • minlog2-ds.xml
  • minlog2-stam-ds.xml
    gemmes i <JBoss>/standalone/deployments.
    De beskriver konfiguration af database til hhv. applikationen og adgange på virksomhedsniveau.

    Registrering
    applikations- og auditlog

    Opslag
    applikations- og auditlog

    SLA log

    Database

    Applikations properties

    Opret folder
    <Jboss>/standalone/configuration/minlog2/
    Filen minlog2.properties flyttes til ovenstående folder.
    Filen indeholder følgende indstillinger"

    sql.max.logevents.allowed.in.query=10000

    ", som

    angiver det maks antal logevent der kan søges på ved lookup. Overskrides denne, returneres en fejl med besked om at indsnævre søgningen

    .

    -"federation", som

    federation=test

    angiver hvilken SOSIFederation der initialiseres. Værdien kan være ”test” eller ”prod”

    "test" eller "prod".
    -"

    days.to.remain.persisted=730

    ",

    angiver hvor mange dage entries findes i DB. Værdien 730 er 2 år

    herefter slettes de i natlig kørsel

    -"

    sql.delete.batch.size=10000

    ",

    angiver størrelse på batch chunks ved sletning. Værdien 10000 angiver LIMIT på delete statement

    <ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="fef74684-5fae-44d8-bea0-62bb40cb8d24"><ac:plain-text-body><![CDATA-"cleanupjob.start.hour", angiver hvilken time-tid jobbet skal starte [1-23] \]></ac:plain-text-body></ac:structured-macro>
    <ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="823575f6-22d6-4042-be01-45188b386669"><ac:plain-text-body><![CDATA-"cleanupjob.start.minute", angiver hvilken minut-tid jobbet skal starte [0-59] \]></ac:plain-text-body></ac:structured-macro>
    <ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="c429cae9-d40c-46a5-bf8d-fb07dd991d38"><ac:plain-text-body><![CDATA-"organisationjob.start.hour", angiver hvilken time-tid jobbet skal starte [1-23] \]></ac:plain-text-body></ac:structured-macro>
    <ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="bee33f21-f249-47e4-aabf-1c8a11c1e4e0"><ac:plain-text-body><![CDATA[-"organisationjob.start.minute", angiver hvilken minut-tid jobbet skal starte [0-59]

    ]]></ac:plain-text-body></ac:structured-macro>

    Stamdata cache

    Filen ehcache.xml skal kopieres til <Jboss>/standalone/configuration/minlog2/
    Det skal nævnes at ehcache IKKE er en distribueret cache.

    sql.stamdata.notfound.error.message="Stamdata kunne ikke fremsøges"

    angiver fejlbesked hvis stamdata ikke kan fremsøges

    sleep.after.batch=10000

    angiver hvor mange ms der skal ventes inden næste "sql.delete.batch.size" slettes. 

    cleanupjob.runtime.max=25000

    angiver hvor lang tid hvert job må bruge. For at undgå timeout på HTTP-kald, er værdien pt. sat til 25 sekunder (25000 millisekunder)

    minutes.to.log.own.data=15

    angiver hvor mange minutter der går mellem log af egne data indenfor samme døgn. 

    skip.count.remaining=false

    angiver om optælling af manglende oprydning skal springes over eller ej. True betyder, at den springer optællingen over.

    parentalCustody.age.limit=15

    angiver aldersgrænse for hvornår en borger ikke længere kan claime forældremyndighed på et barn

    audience=https://minlog

    Minlogs audience streng

    powerofattorney.privileges=urn:dk:nspop:sts:minlog2:read

    Tilladte fuldmagtsstrenge. Hvis flere adskilles de af komma. Eksempel: urn:dk:nspop:sts:minlog2:read,urn:dk:nspop:sts:minlog:read

    whitelisting.cache.ttl=PT1M

    Time to live for whitelisting-cachen. Default 1 min.

    personinformation.url

    angiver URL til PersonInformation servicen

    personinformation.errorcount.duration

    angiver hvor lang tid tilbage der skal tælles fejl fra PersonInformation servicen (ifm. /monitor endpointet). Angives som duration i ISO-8601 formattet. Default er PT10M

    personinformation.error.tolerance

    Angiver antal fejl der tolereres fra PersonInformation servicen før /monitor endpointet angiver servicen som ikke tilgængelig. Default er 0

    personinformation.maxTotalConnections

    Angiver totale antal HttpClients forbindelser der kan åbnes

    personinformation.defaultMaxConnectionsPerRoute

    Angiver antal HttpClients forbindelser der kan åbnes pr. rute

    sores.endpoint

    angiver endpoint for SORES-servicen

    sores.error.tolerance

    angiver antal fejl der tolereres fra SORES servicen før status endpointet angiver servicen som ikke tilgængelig.

    sores.errorCountDuration

    angiver en specificering af hvor lang tid tilbage der skal tælles fejl fra SORES servicen. Angives som duration i ISO-8601 formattet.

    sores.maxTotalConnections

    Angiver totale antal HttpClients forbindelser der kan åbnes

    sores.defaultMaxConnectionsPerRoute

    Angiver antal HttpClients forbindelser der kan åbnes pr. rute

    yderinformation.endpoint

    angiver endpoint for YderInformation-servicen

    yderinformation.error.tolerance

    angiver antal fejl der tolereres fra servicen før status endpointet angiver servicen som ikke tilgængelig.

    yderinformation.errorCountDuration

    angiver en specificering af hvor lang tid tilbage der skal tælles fejl fra servicen. Angives som duration i ISO-8601 formattet.

    yderinformation.maxTotalConnections

    Angiver totale antal HttpClients forbindelser der kan åbnes

    yderinformation.defaultMaxConnectionsPerRoute

    Angiver antal HttpClients forbindelser der kan åbnes pr. rute

    minlog2.endpoint.lookup=http://localhost8081/minlog2-lookup

    Endpoint som bruges af DKS at angive Lookup service url, som bruges af DCC.

    minlog2.endpoint.lookupid=http:/localhost:8081/minlog2-lookupid

    Endpoint som bruges af DKS at angive LookupId service url, som bruges af DCC.


    Filen minlog2/idws.properties indeholder nedenstående properties.

    Tilret idws.properties filen: truststore.file==<Jboss>/standalone/configuration/minlog2/idws-truststore.jks
    samt evt. passwords til de 2 keystores.
    Filerne
    • idws.properties
    • idws-keystore.jks
    • idws-truststore.jks
      skal kopieres til <Jboss>/standalone/configuration/minlog2/
    PropertyBeskrivelse

    IDWS

    org.apache.ws.security.crypto.merlin.
    file=<Jboss>/standalone/configuration/minlog2/idws-
    keystore.type
    Keystore type. Skal være jks.
    org.apache.ws.security.crypto.merlin.

    ...

    Det er muligt at danne konfigurationsfiler svarende til et bestemt miljø fra maven.

    ...

    keystore.password
    Password til keystore.
    org.apache.ws.security.crypto.merlin.keystore.alias
    Keystore alias. Skal typisk være sosi:alias_system.
    org.apache.ws.security.crypto.merlin.file
    Sti til keystore.
    federationHvilket federation der skal anvendes. Skal enten være test eller prod.

    Database

    Der er kommet en ny tabel ifm. SDS-7688 til whitelisting. Den skal oprettes første gang whitelisting sættes i drift. Script til dette findes i git repository under:

    compose/database/07_whitelisting.sql

    Afvikling

    Minlog2 Opslag startes og stoppes med Docker Compose kommandoer.

    Standalone test

    For en standalone test af Minlog2 Opslag  hentes "compose" mappen for den ønskede version med Subversion og kommandoen "docker-compose up" køres i mappen "test".

    NSP Miljø

    På et NSP miljø hentes "compose" mappen for den ønskede version med Subversion og kommandoen "docker-compose up" køres i mappen "release".

    ...

    Der er udarbejdet sqlfiler til blandt andet oprettelse af minlog2 skema – find dem i …/shared/shared-configuration/src/main/resources/sql.

    ...

    Der skal være adgang til følgende MariaDB skemaer:

    • MinLog2
    • Stamdata

    Der skal oprettes brugere med tilstrækkelige privilegier og med adgang til skemaerne.

    ...

    I MinLog2 kan tabellerne oprettes via "initial_schema.sql".

    I stamdata forventes følgende tabeller – med indhold:

    • Autorisation
    • Organisation
    • v2_Person
    • Yder
    • Apotek

    ...

    Deployment af applikationerne via:

    Registrering
    applikation

    Filen
    registration-ear/target/minlog2-registration.ear
    skal kopieres til
    <JBoss>/standalone/deployments

    Opslag applikation

    Filen
    lookup-ear/target/minlog2-lookup.ear
    skal kopieres til
    <JBoss>/standalone/deployments

    ...

    Kontrol

    Installationen kan kontrolleres ved at kalde den indbyggede monitor del i de enkelte løsninger:

    http://<server>:<port>/minlog2-

    registration

    lookup/monitor?details

    http://<server>:<port>/minlog2-

    lookup

    lookupid/monitor?details

    Status bør være ok.