Versions Compared

Key

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

...

Projektet bygges med Maven og kræver Java 8 samt en MariaDB-installation for at kunne afvikle unit-tests.

Udover normalt tilgængelige Maven dependencies, afhænger projektet også af interne artefakter. Hvis disse artefakter ikke er udgivet (released) i den påkrævede version i NSP's Nexus repository, skal man selv udtjekke og bygge dem fra NSP's Subversion i den pågældende version. Artefakternes forskellige versioner vil være tilgængelige under et Subversion-tag. Disse artefakter er:

...

For at bygge projektet og dets deployables (war-filer) uden at køre unit-tests og integrationstestssamt afvikle unittests, anvendes følgende Maven kommando:

mvn clean install -DskipTests

Projektets deployables ender i target-mappen under de respektive moduler.

Afvikling af unit-tests

For at afvikle projektets unit-tests, skal en MariaDB-database-server være tilgængelig.

I udviklingssammenhæng er det lettest at køre MariaDB i en docker-container. Man kan starte MariaDB og automatisk få oprettet de nødvendige database-schemas vha. nedenstående kommando:

cd compose/development
docker-compose up skrdb

...

Alternativt kan projektet også bygges uden afvikling af test ved at anvende Maven-kommandoen:

mvn clean install -DskipTests

Afvikling af unit-tests

Unit-testene i projektet kan afvikles med følgende Maven-kommando:

...

Servicen er testet mod MariaDB version 10.1, som bliver brugt på NSP platformen.

Ved unittest anvendes en in-memory H2 database, som automatisk startes ved afvikling af tests. 

Krav til hardware

Der stilles ikke nogle særlige minimumskrav til hardware, men man skal forvente at bruge high-end hardware (både cpu, ram, netkort og diske) for at kunne opfylde de gældende svartidskrav på NSP.

...

Datamodellen styres vha. inkrementelle SQL-scripts, der kan findes under compose/database/db.

...

.

I produktion anvendes scripterne manuelt og skal køres på databasen i inkrementel rækkefølge baseret på filnavnet (først 00-__(...).sql, dernæst 01-V2__(...).sql, osv.). Hvert script må aldrig køres mere end én gang. Der gælder dog en undtagelse for ikke-versionerede scriptes, hvis filnavne indeholder med R, som står for Repeatable. Disse Repeatable scripter skal køres hver gang deres indhold (checksum) er blevet ændret, men de må først køres efter alle versionerede scripter er blevet kørt.

...

Se den officielle Log4j 2 dokumentation for alternativ konfiguration.

minlogclient.properties

SKR anvender MinLogProvider til at registrere logninger i MinLog2, og i den forbindelse skal Kafka properties for Min Log 2 konfigureres. 

Property

Beskrivelse

kafka.producer.bootstrap.serversKafka endpoint, som anvendes i forbindelse med kald til MinLog2
kafka.producer.client.idNavnet som SKR vil fremgå med i listen af Producers på et Kafka Cluster.
kafka.producer.key.serializerSerializer key for Kafka producer
kafka.producer.key.value.serializerSerializer value for Kafka producer
kafka.topic

Kafka topic som anvendes i forbindelse med kald til MinLog2


log4j-nspslalog.properties

...