Page History
...
Definitioner og forkortelser
Definition | Beskrivelse |
NSP | Den nationale service platform (inden for sundheds-IT) |
...
http://<server>:<port>/minlog1-registration/RegisterService |
DKS snitflade
DKS for Registration-service på minlog2 findes på følgende url'er.
http://<server>:<port>/minlog2-lookup/dksconfig http://<server>:<port>/minlog2-lookup/20241101/dksconfig http://<server>:<port>/minlog2-lookup/20250312/dksconfig |
http://<server>:<port>/minlog2-lookupid/dksconfig http://<server>:<port>/minlog2-lookupid/20241101/dksconfig http://<server>:<port>/minlog2-lookupid/20250312/dksconfig |
Følgende properties bruges i DKS til opbygning af endpoint.
# DCC Endpoint |
Funktionalitet
Servicene stiller metoder til rådighed til at registrere cpr relaterede hændelser.
Adgang er håndteret med IDCard. Der kan jf. Netic etableres blacklistning i HAProxy og/eller firewall på NSP'erne.
Håndtering af fejlsituationer
De eneste eksterne afhængigheder er til databaser. Det må derfor forventes, at den mest sandsynlige kilde til fejlsituationer er problemer med databaseadgang. Det forudsættes at databaseskema, tabeller og brugere herunder rettighederne er på plads:
...
Dette vil fremgå af overvågningsfladen og detaljer vil være tilgængelige i applikationsloggen. Yderligere fejl vil også kunne spores i applikationsloggen.
Logfiler
Registration og Lookup har eget sæt af logfiler – alle placeret i <jboss>/standalone/logs. SLA logning sker til en særlig fil – "nsputil-sla-minlog2.log". Derudover kan der forekomme logning til server.log.
...
https://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/PatternLayout.html
SLA log
nsputil-sla-minlog2.log indeholder SLA loggen. Loggen indeholder målepunkter for service- og Kafka kald. Kaldet til Kafka foregår inden for servicekaldet og har til formål at gøre det synligt, hvor tiden går.
...
2017-06-26 08:22:05,751 [default task-4] INFO dk.sdsd.nsp.slalogdata - LogPoint="DB_Operation" LogPointUniqId="lookupPersonName" StartTime="2017-06-26 08:22:05.750" EndTime="2017-06-26 08:22:05.750" Duration="767 microseconds" MessageId="AAABXOMQcV1mt6jYItbXz1NPU0k=" RequestSize=0 ReplySize=0 Result=OK ClientIP="<empty>" SOAPOperation="<empty>" SOAPEndpoint="<empty>" SOAPAction="<empty>" TargetSOAPOperation="<empty>" TargetSOAPEndpoint="<empty>" GenericCallParms(0)= { } 2017-06-26 08:22:05,773 [default task-4] INFO dk.sdsd.nsp.slalogdata - LogPoint="DB_Operation" LogPointUniqId="getLogStatements" StartTime="2017-06-26 08:22:05.141" EndTime="2017-06-26 08:22:05.773" Duration="632086 microseconds" MessageId="AAABXOMQcV1mt6jYItbXz1NPU0k=" RequestSize=0 ReplySize=0 Result=OK ClientIP="<empty>" SOAPOperation="<empty>" SOAPEndpoint="<empty>" SOAPAction="<empty>" TargetSOAPOperation="<empty>" TargetSOAPEndpoint="<empty>" GenericCallParms(0)= { } 2017-06-26 08:22:05,997 [default task-4] INFO dk.sdsd.nsp.slalogdata - LogPoint="minlog2.GetLogStatementsForCPRPerson" LogPointUniqId="minlog2.GetLogStatementsForCPRPerson" StartTime="2017-06-26 08:22:04.657" EndTime="2017-06-26 08:22:05.997" Duration="1340017 microseconds" MessageId="AAABXOMQcV1mt6jYItbXz1NPU0k=" RequestSize=0 ReplySize=0 Result=OK ClientIP="127.0.0.1" SOAPOperation="GetLogStatementsForCPRPerson" SOAPEndpoint="http://localhost:8080/minlog2-lookup/LookupService" SOAPAction="GetLogStatementsForCPRPerson" TargetSOAPOperation="<empty>" TargetSOAPEndpoint="<empty>" GenericCallParms(0)= { } |
Audit log
Audit-logning foretages med det officielle "NSP Audit API" modul.
Der laves audit-logning i:
...
Komponent | Kontekst | Type | Nøgle | Information |
|---|---|---|---|---|
| MinLog2 | LookupRequest | SensitivePersonalInformation | Caller | "Caller" hvem der har kaldt |
| MinLog2 | LookupRequest | SensitivePersonalInformation | Params | "Params" en json repræsentation af inputparametre |
| MinLog2 | addRegistrations | SensitivePersonalInformation | personIdentifier | cprnr. på den borger der bliver registreret data for |
| MinLog2 | addRegistrations | NonPersonalInformation | schemaVersion | Hvilken skemaversion af snitfladen der kaldes |
...
| Code Block | ||||||
|---|---|---|---|---|---|---|
| ||||||
{
"time": "2022-06-13T14:49:25.078Z",
"category": "dk.sds.nsp.audit.log.minlog2",
"audit": {
"timestamp": "2022-06-13T16:49:25.022+02:00",
"components": [
{
"component": "MinLog2",
"contexts": [
{
"context": "LookupRequest",
"information": [
{
"key": "Caller",
"type": "SPI",
"value": "46837428"
},
{
"key": "Parameters",
"type": "SPI",
"value": {
"cprNR": "1908931462",
"fraDato": 1655131705018,
"tilDato": 1655131795018,
"pageSize": 7,
"pageStartAfter": "c863eb15ad68e490794788e287e9a811738d1d337dd382c2cd1ad0b0"
}
}
]
}
]
}
]
},
"access": {
"code": 200,
"duration": 54,
"httpHeaders": {
"Content-Type": "text/xml; charset=UTF-8",
"SOAPAction": "\"http://nsi.dk/minlog/2014/05/23/ListLogStatements\""
},
"httpHost": "localhost",
"idCardAttributes": {
"medcom:CareProviderID": "46837428",
"medcom:CareProviderName": "Statens Serum Institut",
"medcom:ITSystemName": "Test",
"sosi:AuthenticationLevel": "3",
"sosi:IDCardID": "H/1xienuUQBuWN0tp09auw==",
"sosi:IDCardType": "system",
"sosi:IDCardVersion": "1.0.1"
},
"method": "POST",
"path": "/minlog1-lookup/MinlogService",
"query": "",
"port": 8081,
"protocol": "http",
"reqSize": 6286,
"resSize": 4706,
"soapHeaders": {
"Issuer": "TEST2-NSP-STS",
"MessageID": "AAABgV2KeRyT/Cd9qHFnA1NPU0k=",
"NameID": "SubjectDN={SERIALNUMBER=CVR:46837428-UID:27910135 + CN=Statens Serum Institut - Test VOCES, O=Statens Serum Institut // CVR:46837428, C=DK},IssuerDN={CN=TRUST2408 Systemtest XXXIV CA, O=TRUST2408, C=DK},CertSerial={1604144225}"
},
"threadId": "default task-88",
"time": "2022-06-13T16:49:25.022+02:00",
"stats": {
"handlerDuration": 1,
"RequestContentDuration": 0,
"ResponseContentDuration": 0,
"SecurityProtocolRequestDuration": 0,
"SecurityProtocolResponseDuration": 0,
"bufferAllocated": false,
"usedBuffers": 1,
"activeBuffersInPool": 1,
"idleBuffersInPool": 30
}
}
} |
Applikationslog
Filen minlog2-registration-application.log og minlog2-lookup-application.log indeholder applikationsloggen og kan benyttes i fejlsituationer og til statistik. På nuværende tidspunkt anvendes denne primært til logning i forbindelse med batchjob og indlæsning til cache.
...
Message producer pool empty. Consider increasing property producer.pool.count.
Konfigurationer
Databaseadgang konfigureres i datasource filer i:
...
Se i øvrigt installationsvejledningen.
Whitelisting
For at et anvender kan kalde en bestemt registration-snitflade, skal de whitelistes først. Dette gøres enten på deres CVR-nummer eller via et certifikats SSN som indsættes i whitelist-tabellen.
...
- registration
- registration_20210511
- registration_20230425
Batch job
Lookup applikationen indeholder følgende batchjobs:
...
Se i øvrigt Applikationslog
Backup
Der skal tages backup af minlog2 databasen og evt. konfigurationsfilerne nævnt i installationsvejledningen.
Belastning
Servicemålene herunder er for henholdsvis MinLog 2 RegistrationService og LookupService.
Service | Servicemål |
Svartider opdatering | 95 % af tilfældene ≤ 6,5 sek |
98 % af tilfældene ≤ 15,5 sek | |
Svartider forespørgsler | 95 % af tilfældene ≤ 2,5 sek |
98 % af tilfældene ≤ 5,5 sek |
Baggrund for vurdering af belastning
TBD