Page History
...
Alle logfiler er at finde i "log" under Wildfly. Herunder findes en liste over alle logfiler med en beskrivelse af hvilke komponenter der skriver til dem. De enkelte filnavne er konfigureret i hhv. brs-backend-log4j.xml og brs-frontend-log4j.xml, og er volume-mappet ind, så de er tilgængelige på docker--hosten. Alle logs benytter en rolling file appender, og indeholder derfor et postfix i filnavnet (fx brs-frontend.log.1) der ikke er præsenteret i nedenstående liste.
Logfilnavn | Komponenter der skriver til denne |
|---|---|
brs-frontend.log | brs-frontend. Diverse logninger af komponentens opførsel, inklusiv fejllogninger og audit-logninger af requests vha. Audit-api. |
brs-metrics.log | Indeholder udvalgte logninger om svartider, antal behandlede records osv. Skrives både af frontend og backend. |
brs-backend.log | brs-backend. Diverse logninger af komponentens opførsel, inklusiv fejllogninger. |
brs-audit.log | brs-backend. Audit logninger af flyt fra Followup til Notifikationer, hvilket sker når der ikke er fundet en behandlingsrelation inden en given tidsperiode. |
Ved en fejl på en overvågningsside skrives der til den relevante brs-frontend/brs-backend.log. Alle logs indekseres med Splunk.
...
| Code Block | ||||
|---|---|---|---|---|
| ||||
{
"time": "2019-08-19T03:05:02.071Z",
"category": "dk.sds.nsp.audit.log.brs",
"audit": {
"timestamp": "2019-08-19T05:05:02.028+02:00",
"components": [
{
"component": "BRS",
"contexts": [
{
"context": "TreatmentRelationRequest",
"information": [
{
"key": "cvrFromHeader",
"type": "RPI",
"value": "46837428"
},
{
"key": "queryableCvr",
"type": "NPI",
"value": "46837428"
},
{
"key": "healthProfessionalIdentifierCpr",
"type": "RPI",
"value": "1007707419"
},
{
"key": "healthProfessionalIdentifierValidityStart",
"type": "NPI",
"value": "2019-01-01T05:05:01.000+01:00"
},
{
"key": "healthProfessionalIdentifierValidityEnd",
"type": "NPI",
"value": "2020-01-01T05:05:01.000+01:00"
},
{
"key": "acceptableRelations",
"type": "NPI",
"values": [
"C"
]
},
{
"key": "authorisationIdentifier",
"type": "RPI",
"value": ""
},
{
"key": "followupRelations",
"type": "NPI",
"value": "ALL"
},
{
"key": "doctorOrganisationIdentifier",
"type": "RPI",
"value": ""
},
{
"key": "ean",
"type": "RPI",
"value": "1234567890123"
},
{
"key": "hospitalOrganisationIdentifier",
"type": "RPI",
"value": ""
},
{
"key": "sor",
"type": "RPI",
"value": "null"
},
{
"key": "patientCpr",
"type": "RPI",
"value": "3112910017"
},
{
"key": "timeLimit",
"type": "NPI",
"value": "2016-01-01T05:05:01.000+01:00"
},
{
"key": "serviceProviderVendor",
"type": "NPI",
"value": "arosii"
},
{
"key": "serviceProviderName",
"type": "NPI",
"value": "service"
},
{
"key": "serviceProviderVersion",
"type": "NPI",
"value": "snapshot"
},
{
"key": "didCallerSpecifyExternalReferenceId",
"type": "NPI",
"value": "no"
},
{
"key": "externalReferenceId",
"type": "NPI",
"value": "7412a3ec-953e-4792-a3bf-d512088571fb"
},
{
"key": "uid",
"type": "NPI",
"value": "f25d011b-fba1-42fa-a0a7-5ee327b50e44"
},
{
"key": "uniqueReferenceId",
"type": "NPI",
"value": "f25d011b-fba1-42fa-a0a7-5ee327b50e44"
},
{
"key": "actualRelations",
"type": "SPI",
"values": [
"D"
]
}
]
}
]
}
]
},
"access": {
"code": 200,
"duration": 33,
"httpHeaders": {
"Content-Type": "text/xml; charset=utf-8",
"SOAPAction": "\"\""
},
"httpHost": "localhost",
"idCardAttributes": {
"medcom:CareProviderID": "46837428",
"medcom:CareProviderName": "Statens Serum Institut",
"medcom:ITSystemName": "it system",
"sosi:AuthenticationLevel": "3",
"sosi:IDCardID": "JqjzhVMxTrwrm3jCVoj8nw==",
"sosi:IDCardType": "system",
"sosi:IDCardVersion": "1.0.1"
},
"method": "POST",
"path": "/brs-nsp/service/brs",
"query": "wsdl",
"port": 9090,
"protocol": "http",
"reqSize": 8484,
"resSize": 2469,
"soapHeaders": {
"Issuer": "TEST1-NSP-STS",
"MessageID": "AAABbKfVyyx0S3W3tl49ilNPU0k=",
"NameID": "SubjectDN={SERIALNUMBER=CVR:46837428-FID:92421325 + CN=Funktionssignatur til testmiljø (funktionscertifikat), O=Statens Serum Institut // CVR:46837428, C=DK},IssuerDN={CN=TRUST2408 Systemtest XXII CA, O=TRUST2408, C=DK},CertSerial={1495058032}"
},
"threadId": "default task-59",
"time": "2019-08-19T05:05:02.027+02:00",
"stats": {
"handlerDuration": 6,
"bufferAllocated": false,
"usedBuffers": 2,
"activeBuffersInPool": 2,
"idleBuffersInPool": 0
}
}
} |
Audit logning - Fra Followup til Notikationer
Auditlogning foretages igennem intern klasse, dk.nsi.brs.audit.BrsAuditLogger, hvis logninger bliver skrevet i filen brs-audit.log.
Dette er konfigureret i filen: /compose/configuration/backend/brs-backend-log4j.xml
Følgende oplysninger logges fra BrsAudtLogger:
| Kontekst | Nøgle | Information |
|---|---|---|
| Alarm | actualRelations | Aktuelle forbindelser |
| Followup | querableCvr | CVR nummer der skal have adgang til en eventuel efterfølgende notifikation. |
| Followup | timeLimit | Udløbstidspunkt for opfølgningen efter hvilket der skal oprettes en notifikation, hvis de angivne kriterier ikke er opfyldt |
| Followup | acceptableRelations | En liste af acceptable relationer |
| TreatmentRelationRelayerData | doctorOrganisationIdentifier | Organisationen inden for hvilken relationen skal findes |
| TreatmentRelationRelayerData | hospitalOrganisationIdentifier | Organisationen inden for hvilken relationen skal findes |
| TreatmentRelationRelayerData | ean | Organisationen inden for hvilken relationen skal findes |
| TreatmentRelationRelayerData | sorIdentifier | Organisationen inden for hvilken relationen skal findes |
| TreatmentRelationRelayerData | relationLookupStart | Starttidspunkt for hvilket behandleren har foretaget opslaget. |
| TreatmentRelationRelayerData | relationLookupEnd | Sluttidspunkt for hvilket behandleren har foretaget opslaget. |
Eksempel på auditlogningen:
| Code Block | ||
|---|---|---|
| ||
timestamp="2025-10-29 08:44:46,001" threadId="pool-14-thread-1" priority="INFO" category="dk.nsi.brs.audit.BrsAuditLogger" message="{"organisation":{"doctorOrganisationIdentifier":null,"hospitalOrganisationIdentifier":null,"ean":null,"sorIdentifier":11000011},"querableCvr":"33257872","timeLimit":"2016-01-01T00:00:00+01:00","acceptableRelations":["C"],"actualRelations":["E"],"relationLookupStart":"2010-01-01T00:00:00+01:00","relationLookupEnd":"2015-01-01T00:00:00+01:00"}"
timestamp="2025-10-29 08:45:15,379" threadId="pool-14-thread-1" priority="INFO" category="dk.nsi.brs.audit.BrsAuditLogger" message="{"organisation":{"doctorOrganisationIdentifier":null,"hospitalOrganisationIdentifier":"123456","ean":null,"sorIdentifier":null},"querableCvr":"33257872","timeLimit":"2016-01-01T00:00:00+01:00","acceptableRelations":["C"],"actualRelations":["D"],"relationLookupStart":"2025-01-01T00:00:00+01:00","relationLookupEnd":"2026-01-01T00:00:00+01:00"}"
timestamp="2025-10-29 08:45:45,966" threadId="pool-14-thread-1" priority="INFO" category="dk.nsi.brs.audit.BrsAuditLogger" message="{"organisation":{"doctorOrganisationIdentifier":null,"hospitalOrganisationIdentifier":null,"ean":null,"sorIdentifier":12345678},"querableCvr":"33257872","timeLimit":"2016-01-01T00:00:00+01:00","acceptableRelations":["C"],"actualRelations":["E"],"relationLookupStart":"2025-01-01T00:00:00+01:00","relationLookupEnd":"2026-01-01T00:00:00+01:00"}" |
| Anchor | ||||
|---|---|---|---|---|
|
...