1. Indhold
2. Indledning
Dette dokument beskriver, hvordan Kafka Consumer del af MinLog2 bygges.
Dokumentet kan med fordel læses sammen med dokumentet "arkitektur_design" for overordnet forståelse. Desuden henvises der undervejs til relevante dokumenter.
2.1. Læsevejledning
Læseren forventes at have kendskab til National Sundheds-IT's platform NSP, samt generelt kendskab til WildFly applikation server, MariaDB, Kafka 2.11-xx og java.
2.2. Dokumenthistorik
Version | Dato | Ansvarlig | Beskrivelse |
1.0 | 16-09-2019 | Openminds |
2.3. Definitioner og forkortelser
Definition | Beskrivelse |
NSP | Den nationale service platform (inden for sundheds-IT) |
3. Forudsætninger
Udover java (JDK 1.8), Kafka setup, WildFly, så kræver MinLog2 en databaser for at kunne afvikles lokalt
- MinLog2
Se evt forudsætninger for MinLog2 databasen her - https://www.nspop.dk/pages/viewpage.action?pageId=98456926#Registreringguidetiludviklere-Forudsætninger.
4. Byg
MinLog2 er et standard maven projekt og bygges med
mvn clean install |
Helt som standard fører det til et byg af modulet og resulterer i en war-fil som indeholder den kode, der skal deployes.
Som en del af bygget afvikles alle unit-tests. Der er ingen af disse unit-tests, der har afhængigheder til netværk, database eller lignende.
5. Kafka modul
Der findes 1 modul til consumer. Dette modul lytter på et kafka topic efter entries til MinLog2 og ved modtagelse indsættes de i databasen. Koden har taget udgangspunkt i Den Gode Brug af Kafka og følger dennes retningslinier.
Folder strukturen er standard JEE undtaget /etc/kafka.consumer.config.main der indeholder consumer.properties, module.xml og log4j fil. Disse skal kopieres til
<jboss>/modules/nsi/minlog2/kafka/consumer/config/main |
Modulet bygges med
mvn clean install |
Target folderen indeholder war arkivet klar til deployment (husk datasource minlog2-ds.xml genereret fra jee bygget)
<jboss>/standalone/deployments |
Producer delen af Kafka kan findes i registreringsdelen af MinLog2 - https://www.nspop.dk/x/XlXeBQ
5.1. Shared
Kode/konfiguration delt mellem registration, lookup og consumer. Se beskrivelse i MinLog2 - Min Log Opslag - Guide til udviklere#Shared