Page History
Indhold
| Table of Contents |
|---|
Komponenter
Dette dokument dækker følgende komponenter på NSP:
...
- Type: Webservlet
- Filnavn: ddtv-batch-service.war
- Url: <serverurl>/ddtv-batch-service
Status-url: <serverurl>/ddtv-batch-service/status
Alarm-url: <serverurl>/ddtv-batch-service/alarm
Konfiguration
Servicekonfiguration
Grundlæggende konfiguration af alle services foregår ved redigering i filen application.properties. For den enkelte service placeres filen i følgende WildFly modul:
...
Property | Beskrivelse | Påkrævet | Default værdi |
|---|---|---|---|
| datasource.ddtv.jndi-name | Navn på jboss datasource (defineret i ddtv-ds.xml) | Ja | java:jboss/datasources/ddtv-ds |
| sores.url | URL til SORES servicen | Ja | http://test1.ekstern-test.nspop.dk:8080/sores/ |
| sores.connectTimeout | Connection timeout i millisekunder for SORES integrationen | Ja | 10000 |
| personinformation.url | URL til PersonInformation servicen | Ja | http://test1-cnsp.ekstern-test.nspop.dk:8080/stamdata-personinformation/v1 |
| personinformation.connectionTimeout | Connection timeout i millisekunder for PersonInformation integrationen | Ja | 10000 |
| personinformation.errorcount.duration | Specificering af hvor lang tid tilbage der skal tælles fejl fra PersonInformation servicen (ifm /status endpointet). Angives som duration i ISO-8601 formattet. | Ja | PT10M (10 minutter) |
| personinformation.cprstatuscodes | Kommasepareret liste af statuskoder i CPR stamdata, der anses som ACTIVE | Ja | 1,3,70 |
| httpclient.pooling.totalconnections | Totale antal HttpClients forbindelser der kan åbnes | Nej | 200 |
| httpclient.pooling.maxconnections.pr.route | Antal HttpClients forbindelser der kan åbnes pr. rute | Nej | 20 |
| scan.citizens.target.age | Alder i år for automatisk tilmelding af borgere | Ja | 22 |
| scan.citizens.days.before | Antal dage før fødselsdag for automatisk tilmelding af borgere | Ja | 7 |
| scan.citizens.execution.duration | Hvor længe skal scan citizens jobbet køre | Ja | PT10M (10 minutter) |
| scan.citizens.abort.duration | Hvor længe skal der gå fra sidste afvikling af scan citizens jobbet før det afbrydes og et nyt kan starte | Ja | PT30M (30 minutter) |
| remind.citizens.batchsize | Hvor mange personer skal påmindelsesjobbet maksimalt fremsøge fra databasen ad gangen | Ja | 10 |
| remind.citizens.delay.duration | Hvor lang tid skal der gå fra første digital post eller sidste påmindelse til en ny påmindelse sendes | Ja | P10D (10 dage) |
| remind.citizens.execution.duration | Hvor længe skal påmindelsesjobbet køre | Ja | PT10M (10 minutter) |
| remind.citizens.reminder.limit | Hvor mange reminders må der sendes til samme borger | Ja | 1 |
| remind.citizens.abort.duration | Hvor længe skal der gå fra sidste afvikling af påmindelsesjobbet før det afbrydes og et nyt kan starte | Ja | PT30M (30 minutter) |
| digital.post.batchsize | Hvor mange personer skal digital post jobbet maksimalt fremsøge fra databasen ad gangen | Ja | 10 |
| digital.post.execution.duration | Hvor længe skal digital post jobbet køre | Ja | PT10M (10 minutter) |
| digital.post.endpoint | URL til Digital Post Adapter send servicen | Ja | http://test1-cnsp.ekstern-test.nspop.dk:8080/digitalpost/2024/05/29/send |
| edi.message.batchsize | Hvor mange personer skal EDI jobbet maksimalt fremsøge fra databasen ad gangen | Ja | 10 |
| edi.message.execution.duration | Hvor længe skal EDI jobbet køre | Ja | PT10M (10 minutter) |
| edi.message.abort.duration | Hvor længe skal der gå fra sidste afvikling af EDI jobbet før det afbrydes og et nyt kan starte | Ja | PT30M (30 minutter) |
| cleanup.batchsize | Hvor mange borgere skal oprydningsjobbet maksimalt rydde op ad gangen | Ja | 20 |
| cleanup.deceased.retention.days | Hvor mange dage skal en person være afdød før data fjernes fra databasen | Ja | 365 |
| cleanup.unresponsive.retention.days | Hvor mange dage der gå før data slettes for en person, der har modtaget digital post, uden at reagere på det | Ja | 730 |
| cleanup.execution.duration | Hvor længe skal cleanup jobbet køre | Ja | PT10M (10 minutter) |
| cleanup.abort.duration | Hvor længe skal der gå fra sidste afvikling af cleanup jobbet før det afbrydes og et nyt kan starte | Ja | PT30M (30 minutter) |
| sts.endpoint | Endpoint for STS'en. Anvendes i forbindelse med DGWS kald til Digital Post Adapteren | Ja | http://test1-cnsp.ekstern-test.nspop.dk:8080/sts/services/NewSecurityTokenService |
| sts.keystore | Keystore med certifikat til DGWS kald | Ja | NSP_Test_Service_Consumer_sds.p12 |
| sts.keystore.password | Password til keystore med certifikat til DGWS kald | Ja | Test1234 |
| idcard.subject.name | Organisation som certifikat er udstedt til | Ja | Sundhedsdatastyrelsen |
| idcard.subject.id | CVR-nummer på organisation, som certifikat er udstedt til | Ja | 33257872 |
| idcard.system.name | Navn på system som foretager DGWS kald ti Digital Post Adapteren | Ja | DDTV |
log4j konfiguration
Log4j konfiguration for alle services findes i samme bibliotek som servicekonfigurationen
Se yderligere opsætning i installationsvejledningen.
Overvågning
Alle DDTV services udstiller en overvågningsside, som findes i listen af komponenter.
Fortolkning af overvågningsside
Overvågningssiderne returnerer enten:
- HTTP 200, hvis servicen i øjeblikket kører fint.
- HTTP 503, hvis der er opstået en fejl der kræver indgriben.
Audit-logning
Hvert servicekald medfører en ny indgang i auditloggen, som kan være udfyldt med følgende komponenter, afhængig af konteksten:
...
| Code Block | ||||||
|---|---|---|---|---|---|---|
| ||||||
{
"time": "2023-06-12T11:42:23.664Z",
"category": "dk.sds.nsp.audit.log.idsas",
"audit": {
"timestamp": "2023-06-12T13:42:22.972+02:00",
"components": [
{
"component": "IDSAS",
"contexts": [
{
"context": "createBlurring",
"information": [
{
"key": "cpr",
"type": "RPI",
"value": "1234567890"
},
{
"key": "cvr",
"type": "NPI",
"value": "33257872"
}
]
}
]
}
]
},
"access": {
"code": 200,
"duration": 95,
"httpHeaders": {
"Content-Type": "text/xml;charset=UTF-8",
"SOAPAction": "CreateBlurring"
},
"httpHost": "localhost",
"idCardAttributes": {
"medcom:CareProviderID": "33257872",
"medcom:CareProviderName": "Sundhedsdatastyrelsen",
"medcom:ITSystemName": "Service Consumer Test",
"medcom:UserAuthorizationCode": "6QF17",
"medcom:UserRole": "7170",
"sosi:AuthenticationLevel": "4",
"sosi:IDCardID": "SIjvZBkfZ1yAWSpYFcLpvw==",
"sosi:IDCardType": "user",
"sosi:IDCardVersion": "1.0.1"
},
"method": "POST",
"path": "/idsas/20230601/service",
"query": "",
"port": 8080,
"protocol": "http",
"reqSize": 7204,
"resSize": 211,
"soapHeaders": {
"FlowID": "72111931-fe3b-4956-bea3-20e8c5be9ce0",
"Issuer": "TEST1-NSP-STS",
"MessageID": "76315a15-0fb2-4df7-9e3e-53a3b28fb700",
"NameID": "urn:uuid:46559bb9-d720-48b7-b9bd-c280915768d0"
},
"threadId": "default task-1",
"time": "2023-06-12T13:42:22.968+02:00",
"stats": {
"handlerDuration": 583,
"RequestContentDuration": 41,
"ResponseContentDuration": 0,
"SecurityProtocolRequestDuration": 368,
"SecurityProtocolResponseDuration": 0,
"bufferAllocated": true,
"usedBuffers": 1,
"activeBuffersInPool": 1,
"idleBuffersInPool": 0
}
}
} |
Baggrundsjobs
Overvågning af baggrundsjobs
Der findes et status og et alarm-endpoint for hver baggrundsjob. De har følgende url'er:
...
De to alarm-endpoints er som udgangspunkt tomme og returnerer 200, men kan give en alarm-besked og status 500, hvis jobbet er i problemer.
Job til identifikation af borgere, der fylder 22 år
Jobbet startes via et HTTP GET kald til <serverurl>/batch-service/scan-citizens-job/start
Jobbet foretager et kald til PersonInformation, som returnerer borgere med den relevante fødselsdato. For hver identificeret borger oprettes en record bor borgeen i databasen med status NO_DENTIST (hvis ikke der allerede findes data for borgeren) samt dpStatus READY,som signalerer klar til afsendelse af digital post.
Job til afsendelse af digital post
Jobbet startes via et HTTP GET kald til <serverurl>/batch-service/digital-post-job/start
...
Digital Post sendes i praksis via NSP-komponenten Digital Post Adapter
Job til påmindelse af borger
Jobbet startes via et HTTP GET kald til <serverurl>/batch-service/remind-citizens-job/start
...
For disse sendes ny Digital Post i form af et påmindelsesbrev. Digital Post sendes i praksis via NSP-komponenten Digital Post Adapter.
Job til afsendelse af EDI-beskeder
Jobbet startes via et HTTP GET kald til <serverurl>/batch-service/edi-job/start
...
EDI-beskeder sendes i praksis via EDI-portalen med en snitflade til formålet udviklet af Nasure.
Job til sletning af data for afdøde borgere, samt borgere, der aldrig svarede
Oprydningsjobbet startes via et HTTP GET kald til <serverurl>/batch-service/cleanup-job/start
...