1. Indhold
2. Introduktion
2.1. Formål
Denne guide har som formål at give et overblik over, hvordan CAVE servicen kaldes.
2.2. Læsevejledning
Dette dokument er henvendt til driftspersonale på NSP'en.
Læseren forventes at have kendskab til National Sundheds-IT's platform NSP, samt generelt kendskab til WildFly applikation server, MariaDB og java.
2.3. Dokument historik
Dato |
Ansvarlig |
Beskrivelse |
---|---|---|
18/2-2018 | KvalitetsIT | Initiel version |
2.4. Definitioner og referencer
Reference |
Beskrivelse |
---|---|
REST | Representational State Transfer |
FHIR | Fast Health Interoperability Resources |
HAPI | HAPI-FHIR - Open Source FHIR implementation in Java |
3. Funktionalitet
CAVE servicen udstiller REST snitflader til at registrere og læse CAVE oplysninger.
4. Daglig drift
Servicen kræver ingen særlig daglig vedligehold.
Når nedenstående Jira er afklaret og implementeret så opdateres driftsvejledningen med hvordan data slettes i CAVE servicen.
- CAVE-59
- CAVE-58
>>> Når slette regler er afklaret, skal der stå en kort tekst omkring hvordan data slettes. <<<
5. Opslag i CAVE data
Er der, f.eks. i forbindelse med support, brug for at lave direkte opslag i CAVE data kan dette gøres ved hjælpe af CaveClient docker imaget. Dette image startes med to environment variable der angiver hvor selve CAVE servicen den kan tilgås. De to environment variable er CAVE_HOST og CAVE_PORT og angiver henholdsvis hostnavn på CAVE servicen og hvilken port den er tilgængelig på. I compose/test/docker-compose.yml er der eksempel på compose setup af dette image. Med udgangspunkt i compose/test/docker-compose.yml så er klienten tilgængelig på http://localhost:8081/cave-client/.
Opslag på CPR
For at lave et opslag baseret på en borgers CPR nummer.
- Der vælges patient i menuen til venstre og i search parameters vælges der identifier. I system indtastes "urn:oid:1.2.208.176.1.2" og code indtastes borgerens CPR nummer.
- ID for den fremfundne patient gemmes. Dette skal anvendes i forbindelse med fremfinding af alle cave registreringer.
- Der vælges AllergyIntolerance i menuen til venstre og i search parameters vælges der patient. I Ressource ID indsættes det ID der blev fremfundet i forrige punkt. I includes sættes der flueben i alle felterne. Dette samme under reverse includes.
- Resultatet er alle registreringer for en given borger.
Opslag på recorder / læge der har orpettet registreringen
For at lave et opslag baseret på en autorisationskode følges nedenstående.
- Der vælges practitioner i menuen til venstre og i search parameters vælges der identifier. I system indtastes "urn:oid:1.2.208.176.1.3" og code indtastes autorisationsnummer. Der sættes flueben i reverse includes.
- ID for den fremfundne PractitionerRole gemmes. PractitionerRole er kombinationen af practitioner og organization. Er der flere PractitionerRole elementer gemmes de alle. Dette skal anvendes i forbindelse med fremfinding af alle cave registreringer.
- Der vælges AllergyIntolerance i menuen til venstre og i search parameters vælges der recorder. I Ressource ID indsættes det ID der blev fremfundet i forrige punkt. I includes sættes der flueben i alle felterne. Dette samme under reverse includes. Hvis der er flere ID'er gentages søgningen pr. ID.
- Resultatet er alle de registreringer et givent autorisationsnummer har oprettet.
6. Overvågning
Servicen udstiller en status side. På denne side fremgår servicens versionsnummer samt status for adgang til databasen. Status siden kan tilgås via http://CAVE/cave/health
Eksempel på svar på fra status-siden.
HTTP/1.1 200 OK Connection: keep-alive X-Powered-By: Undertow/1 Server: WildFly/8 Transfer-Encoding: chunked Content-Type: application/json Date: Mon, 18 Feb 2019 08:01:04 GMT { "version": "0.0.1-SNAPSHOT", "database": "true"}
6.1. HTTP statuskode
Status-siden returnerer følgende status koder afhængig af servicens status.
200: Applikationen er sund
500: Der er opstået en fejl i applikationen. Det kan f.eks. være den ikke kan få adgang til databasen.
6.2. Fejlfinding
Såfremt der er problemer med adgang til servicens database, vises nedenstående fejl. Bemærk at den giver en HTTP statuskode 500.
HTTP/1.1 500 Internal Server Error Connection: keep-alive X-Powered-By: Undertow/1 Server: WildFly/8 Transfer-Encoding: chunked Content-Type: application/json Date: Mon, 18 Feb 2019 08:50:53 GMT { "version": "0.0.1-SNAPSHOT", "database": "false"}
Følgende årsager kan resultere i en statuskode 500.
- Hvis databasen ikke er tilgængelig. Databasen overvåges med en en simpel "select 1" forespørgsel.
- Andre ukende årsager
Hvis status-siden returnerer HTTP status 500 bør man tjekke applikationsloggen, da fejl logges her til.
Servicen kan genstartes ved at genstarte den docker container, som servicen den kører i.
7. Logfiler og fortolkning af disse
Alle logfiler findes i standard logfolderen på NSP platformen. Det vil sige at de findes i folderen /pack/wildfly8/standalone/log.
Nedenstående er de relevante logfiler.
Filnavn | Indhold |
---|---|
cave.log | Applikationslog fra CAVE servicen. |
hapi.log |
Log fra HAPI FHIR framework. |
8. Krav til backup m.m.
Der bør foretages backup af data på en forsvarlig måde, i tilfælde af behov for en genetablering af data. Disse skal opbevares på en forsvarlig måde, jfr. regler om personfølsomme data.