Konfiguration

Konfiguration sker i filerne i "compose/configuration" mappen, følger den normale komponent-standard og består af følgende filer:

Konfigurationsfil

Beskrivelse

sores.properties

Applikations-navngivning samt opsætning af
datakilde-strategi (xml eller database)
pegepind til datasource og/eller lokation af xml-filer

sdm-ds.xmlDefinition af datasource
log4j-sores.xmlOpsætning af log-niveau og -destination. Følger NSP-standard.

Properties

Forskellige konfigurationsparametre kan styres via properties i filen sores.properties.

Property

Beskrivelse

app.nameServices navn. Default "SOR Enkeltopslags Service".
app.name.shortServicens korte navn. Default: "sores"

sdm.db.jndi

Datasource til sor-databasen. Det er en pegepind over på den der er angivet i sdm-ds.xml.

sores.entityNameLookup.max.result.count

Et øvre grænse for, hvor mange entiteter, der kan returneres i operationen "entityNameLookup". Default er 5.

sores.retention.period

En skæringsdato for hvor hvor langt tilbage i tid der ligger historik for i cachen. Angives som duration i ISO-8601 formattet. Default er "P2Y" (2 år).

sores.cache.ttl

Værdi som angiver perioden, hvor en cache er Warm. Default er P2D (2 dage)

sores.startup.reload

Styring af om reload kaldes under initialisering af servicen. Funktionen er som default slået til og kan kun de-aktiveres ved at angive værdien til false.

sores.cache.file

Fil i containeren hvori cachen gemmes ved reload. Hvis databasen ikke er nyere end den allerede eksisterende cache, reloades kun fra filen. En fuld database-reload kan gennemtvinges ved at fjerne filen.

Overvågning

Servicen tilbyder i tilgift til NSPs standard-funktioner muligheden for at loade data i cache fra databasen:

Funktion

Beskrivelse

Eksempel-response

/statusNSP Standardfunktion. HTTP-response-code angiver servicens tilgængelighed

HTTP/1.1 200 OK
{
  "Version":"1.0.0",
  "Cache":"Cold",
  "CacheLoadTime":"-999999999-01-01T00:00",
  "Database":"Available",
  "Status":"Reload required"
}

/versionNSP Standardfunktion. Versions-nummeret sendes som response-text1.0.0
/reloadGenindlæser data fra databasen, hvis der er ændringer siden sidste indlæsning. Men kun hvis der ikke findes en cache-fil, eller hvis cache-filens indhold er ældre end databasen.'Reload done at 2020-04-01T12:00:00.000'

Status og forventet reaktion herpå

I strukturen returneret fra kald til "/status" fås følgende kombinationer


Database available

Database Unavailable

Cache ColdHTTP/1.1 200
Status: Reload required
HTTP/1.1 500
Status: Unable to load cache
Cache WarmHTTP/1.1 200
Status: OK
HTTP/1.1 200
Status: Degraded

Ved "Degraded" og "Unable to load cache" bør driften foretage fejlfinding af forbindelsen til datasourcen.

Ved "Reload required" afventes næste curl-kald fra cron-containeren, der trigger et reload, og driften behøver ikke gøre noget. Kald foretaget efter reloadet er kørt til ende, bør returnere "OK".

Cache-reload

SORES leveres med en docker-container, hvori et cron-job med fast interval kalder /reload på SORES-containeren.

Fejlfinding

Fejlfinding foregår ved gennemsyn af logfilerne. Der er ingen kendte fejl.

Oprydning

SORES bruger SOR registret i stamdata-databasen, og der er derfor ingen oprydning forbundet med SORES selv.
Logfiler håndteres efter NSP standard, og memory-cachen forsvinder, hvis servicen lukkes/genstartes.