Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Anchor
_Toc40578283
_Toc40578283
Anchor
_GoBack
_GoBack

Svareksponeringsservice XDS-adaptere
Driftsvejledning

Anchor
_Toc44403513
_Toc44403513
Anchor
_Toc277248668
_Toc277248668
Anchor
_Toc327798371
_Toc327798371
Anchor
_Toc292960798
_Toc292960798
Indhold
1 Introduktion
1.1 Formål
1.2 Læsevejledning
1.3 Dokumenthistorik
1.4 Definitioner og referencer
2 Komponenter
3 Daglig drift
3.1 Relaterede services
4 Konfiguration
4.1 Konfiguration af Svareksponeringsservice XDS Registry Adapter
4.1.1 Konfiguration af dokument-metadata
4.1.2 Konfiguration af filter på dokument-metadata-forespørgsel
4.1.3 Konfiguration af mapning til specialer
4.1.4 Udpegning af log4j-konfigurationfil
4.1.5 Konfiguration af log4j
4.1.6 Udpegning af SLA-log konfiguration
4.1.7 Konfiguration af SLA-log
4.2 Konfiguration af Svareksponeringsservice XDS Repository Adapter
4.2.1 Konfiguration af Svareksponeringsservice kalder
4.2.2 Konfiguration af dokumentdelings-id
4.2.3 Konfiguration af mapning til specialer
4.2.4 Udpegning af log4j-konfigurationfil
4.2.5 Konfiguration af log4j
4.2.6 Udpegning af SLA-log konfiguration
4.2.7 Konfiguration af SLA-log

4.2.8 SES auditlogning
4.3 HTTP Statuscheck på komponenter i Svareksponeringsservice XDS-adaptere
4.3.1 ServiceCheck.properties
4.3.2 JMX-Console sikkerhedsopsætning
4.3.3 service-check.xml
4.3.4 Test af Service-check konfiguration
4.4 HTTP Versionsnummer-information på Svareksponeringsservice XDS-adaptere
4.4.1 Test af versionsnummer
5 Overvågning
5.1 Placering af HTML overvågningsside
5.2 Fortolkning af HTML overvågningsside
5.3 Overvågningstype
5.4 Logfiler og fortolkning af disse
6 Standard fejlsøgning
7 Krav til backup m.m.

Anchor
_Toc327543900
_Toc327543900
Anchor
_Toc326088831
_Toc326088831

...

Anchor
_Toc404868518
_Toc404868518
Anchor
_Toc462261542
_Toc462261542
Konfiguration af Svareksponeringsservice XDS Registry Adapter

...

...

Konfiguration af

...

Dokument-metadata anvendt af Svareksponeringsservice XDS Registry Adapter, når der laves opslag på en patient, er defineret i følgende fil:

...

Svareksponeringsservice kalder

Opsætningen for kalderen af Svareksponeringsservice konfigureres i SXAConfig.properties.
Denne indlæses fra WildFly modulet:

Code Block
/pack/wildfly8/modules/nsi/ddsprojects/sxa/

...

documentprovider/config/main/


Et eksempel på indhold i sxametadataconfiguration.xmlsådan konfiguration er:<metadata>
<classCode class="codedValue">
<code>001</code>
<codeSystem>2.16.840.1.113883.3.4208.100.9</codeSystem>
<description>Klinisk rapport</description>
</classCode>
<confidentialityCode class="codedValue">
<code>N</code>
<codeSystem>2.16.840.1.113883.5.25</codeSystem>
<description>Normal</description>
</confidentialityCode>
<formatCode class="codedValue">
<code>urn:ad:dk:medcom:labreports:svareksponeringsservice</code>
<codeSystem>1.2.208.184.100.10</codeSystem>
<description>Laboratoriesvar (samling af svar)</description>
</formatCode>
<languageCode>da-DK</languageCode>
<mimeType>text/xml</mimeType>
<practiceSettingCode class="codedValue">
<code></code>
<codeSystem></codeSystem>
<description></description>
</practiceSettingCode>
<typeCode class="codedValue">
<code>11502-2</code>

Code Block
sxa.labservice.credential.header=X-Labsvar-Credential
sxa.labservice.credential=00000000-0000-0000-0000-000000000000


Properties beskrives ifølge tabel.

Property

Beskrivelse

sxa.labservice.credential.header

Navn på http-header, der indeholder servicenøgle fra klienten. Skal være udfyldt, hvis sxa.labservice.credential er udfyldt. Hvis ikke udfyldt, udføres der ikke validering af nøgler.

sxa.labservice.credential

Serverens servicenøgle. Bruges ifm. Samblik pilotafprøvning til at begrænse adgang til SXA. Skal være udfyldt, hvis sxa.labservice.credential.header er udfyldt. Hvis ikke udfyldt, udføres der ikke validering af nøgler.

Anchor
_Ref404947195
_Ref404947195
Anchor
_Toc462261543
_Toc462261543
Konfiguration af dokument-metadata

Dokument-metadata anvendt af Svareksponeringsservice XDS Registry Adapter, når der laves opslag på en patient, er defineret i følgende fil:

  • sxametadataconfiguration.xml

Denne indlæses fra WildFly modulet:

Code Block
/pack/wildfly8/modules/nsi/ddsprojects/sxa/documentmetadataprovider/config/main/


Et eksempel på indhold i sxametadataconfiguration.xml:

Code Block
<metadata>
  <classCode class="codedValue">
    <code>001</code>
    <codeSystem>2.16.840.1.113883.3.4208.

...

100.

...

9</codeSystem>

...


    <description>Klinisk rapport</description>
  </classCode>
  <confidentialityCode class="codedValue">
    <code>N</code>
    <codeSystem>2.16.840.1.113883.5.25</codeSystem>
    <description>Normal</description>
  </confidentialityCode>
  <formatCode class="codedValue">
    <code>urn:ad:dk:medcom:labreports:svareksponeringsservice</code>
    <codeSystem>1.2.208.184.100.10</codeSystem>
    <description>Laboratoriesvar (samling af svar)</description>
  </formatCode>
  <languageCode>da-DK</languageCode>
  <mimeType>text/xml</mimeType>
  <practiceSettingCode class="codedValue">
    <code></code>
    <codeSystem></codeSystem>
    <description></description>
  </practiceSettingCode>
  <typeCode class="codedValue">
    <code>11502-2</code>
    <codeSystem>2.16.840.1.113883.6.1</codeSystem>
    <description>LABORATORY REPORT.TOTAL</description>
  </typeCode>
  <homeCommunityId>1.2.3.5.6</homeCommunityId>
  <repositoryUniqueId>1.2.3.4.55.66</repositoryUniqueId>
  <uniqueIdRoot>1.2.3.4.55.66</uniqueIdRoot>
  <healthcareFacilityTypeCode class="codedValue">
    <code></code>
    <codeSystem>2.16.840.1.113883.6.96</codeSystem>
    <description></description>
  </healthcareFacilityTypeCode>
  <authorInstitution
    class="dk.nsi.documentsharing.core.metadata.model.OrganisationImpl">
    <name>Region Test</name>
    <id class="valueWithAssigningAuthority">
      <value>291000016008</value>
      <assigningAuthority>1.2.208.176.1.1</assigningAuthority>
    </id>
  </authorInstitution>
</metadata>


Anchor
_Toc462261544
_Toc462261544
Konfiguration af filter på dokument-metadata-forespørgsel

Ved opslag på en patient kan der anføres en række søge-parametre. Svareksponeringsservice XDS Registry Adapter har logik, der er afhængig af konkrete søge-parametre og konfigureret filter (beskrevet her), fastlægger hvilket svar, der skal returneres.
Filteret konfigureres i følgende fil:

  • sxafilterconfiguration.xml

Denne indlæses fra WildFly modulet:

Code Block
/pack/wildfly8/modules/nsi/ddsprojects/sxa/documentmetadataprovider/config/main/


I konfiguration specificeres 0, 1 eller flere kode-sæt i hhv.

...

Ved opslag på en patient kan der anføres en række søge-parametre. Svareksponeringsservice XDS Registry Adapter har logik, der er afhængig af konkrete søge-parametre og konfigureret filter (beskrevet her), fastlægger hvilket svar, der skal returneres.
Filteret konfigureres i følgende fil:

  • sxafilterconfiguration.xml

Denne indlæses fra WildFly modulet:
/pack/wildfly8/modules/nsi/ddsprojects/sxa/documentmetadataprovider/config/main/
I konfiguration specificeres 0, 1 eller flere kode-sæt i hhv. classCodes, typeCodes, eventCodes, confidentialityCodes, formatCodes og practiceSettingCodes?
<filter>
<classCodes>
</classCodes>
<typeCodes>
</typeCodes>
<eventCodes>
</eventCodes>
<confidentialityCodes>
</confidentialityCodes>
<formatCodes>
</formatCodes>
<practiceSettingCodes>
</practiceSettingCodes>
</filter>
Hver kode-sæt, består af:
<codedValue>
<code>kode-værdi</code>
<codeSystem>kode-system</codeSystem>
<description>menneskelæselig beskrivelse af kode-værdi</description>
</codedValue>
Filterets classCodes, typeCodes, eventCodes, confidentialityCodes, formatCodes og practiceSettingCodes modsvarer lignende navne i søge-parametre, der kan være anført ved kald af Svareksponeringsservice XDS Registry Adapter opslag. Er et kodesæt anført i søge-parametre for fx eventCodes, da bevirker filteret et tomt svar, når:

  1. Filterets eventCodes ikke er tomt, og
  2. Ingen af evt. flere eventCodes fra søge-parametre findes i filterets eventCodes-liste

...

?

Code Block
<filter>
  <classCodes>
  </classCodes>
  <typeCodes>
  </typeCodes>
  <eventCodes>
  </eventCodes>
  <confidentialityCodes>
  </confidentialityCodes>
  <formatCodes>
  </formatCodes>
  <practiceSettingCodes>
  </practiceSettingCodes>
</filter>

Hver kode-sæt, består af:

Code Block
    <codedValue>
      <code>kode-værdi</code>
      <codeSystem>kode-system</codeSystem>
      <description>menneskelæselig beskrivelse af kode-værdi</description>
    </codedValue>


Filterets classCodes, typeCodes, eventCodes, confidentialityCodes, formatCodes og practiceSettingCodes modsvarer lignende navne i søge-parametre, der kan være anført ved kald af Svareksponeringsservice XDS Registry Adapter opslag. Er et kodesæt anført i søge-parametre for fx eventCodes, da bevirker filteret et tomt svar, når:

  1. Filterets eventCodes ikke er tomt, og
  2. Ingen af evt. flere eventCodes fra søge-parametre findes i filterets eventCodes-liste

Tilsvarende logik er gældende de øvrige koder i filteret.
Følgende er et eksempel på konfiguration af filteret:

Code Block
<filter>
  <classCodes/>
  <typeCodes>
    <codedValue>
      <code>11502-2</code>
      <codeSystem>2.16.840.1.113883.6.

...

1</codeSystem>
      <description>LABORATORY REPORT.TOTAL</description>
    </codedValue>
  </typeCodes>
  <eventCodes/>
  <confidentialityCodes>
    <codedValue>
      <code>N</code>
      <codeSystem>2.16.840.1.113883.

...

5.

...

25</codeSystem>

...

Ved opslag på en patient kan der anføres en række søge-parametre. Svareksponeringsservice XDS Registry Adapter har logik, der er afhængig af konkrete søge-parametre foretager encoding i dokumentid, der er del af returnerede metadata.
Mapning til specialer konfigureres i følgende fil:

  • sxapracticesettingcodes.xml

...


      <description>Normal</description>
    </codedValue>
  </confidentialityCodes>
  <formatCodes>
    <codedValue>
      <code>urn:ad:dk:medcom:labreports:svareksponeringsservice</code>
      <codeSystem>1.2.208.184.100.10</codeSystem>
      <description>Laboratoriesvar (samling af svar)</description>
    </codedValue>
  </formatCodes>
  <practiceSettingCodes>
     <codedValue>
      <code>408454008</code>
      <codeSystem>2.16.840.1.113883.6.96</codeSystem>
      <description>klinisk mikrobiologi</description>
    </codedValue>
    <codedValue>
      <code>394596001</code>
      <codeSystem>2.16.840.1.113883.6.96</codeSystem>
      <description>klinisk biokemi</description>
    </codedValue>
    <codedValue>
      <code>394915009</code>
      <codeSystem>2.16.840.1.113883.6.96</codeSystem>

...


      <description>patologi anatomi og cytologi</description>
    </codedValue>	  
  </practiceSettingCodes>
</filter>


Anchor
_Toc462261545
_Toc462261545
Konfiguration af mapning til specialer

Ved opslag på en patient kan der anføres en række søge-parametre. Svareksponeringsservice XDS Registry Adapter har logik, der er afhængig af konkrete søge-parametre foretager encoding i dokumentid, der er del af returnerede metadata.
Mapning til specialer konfigureres i følgende fil:

  • sxapracticesettingcodes.xml

Denne indlæses fra WildFly modulet:

Code Block
/pack/wildfly8/modules/nsi/ddsprojects/sxa/documentmetadataprovider/config/main/


I konfiguration specificeres specialer således:

Code Block
<filter>
  <practiceSettingCodes>
    <mappedCodedValue>
      <code>408454008</code>
      <codeSystem>2.16.840.1.113883.6.96</codeSystem>
      <description>klinisk mikrobiologi</description>
      <mappedValue>Mikrobiologi</mappedValue>
    </mappedCodedValue>
    <mappedCodedValue>
      <code>394596001</code>
      <codeSystem>2.16.840.1.113883.6.96</codeSystem>
      <description>klinisk biokemi</description>
      <mappedValue>KliniskBiokemi</mappedValue>
    </mappedCodedValue>
    <mappedCodedValue>
      <code>394915009</code>
      <codeSystem>2.16.840.1.113883.6.96</codeSystem>
      <description>patologisk anatomi og cytologi</description>
      <mappedValue>Patologi</mappedValue>
    </mappedCodedValue>
  </practiceSettingCodes>
</filter>


Det er vigtigt, at den tilsvarende fil for documentprovider er konfigureret fuldstændigt identisk.

Anchor
_Toc462261546
_Toc462261546
Udpegning af log4j-konfigurationfil

Følgende fil, der findes under roden i war-filen sxa-documentmetadataprovider.war, udpeger den fil, der anvendes til konfiguration af log4j:

  • documentsharing.log4j.properties


Bemærk, at denne fil (om nødvendigt) skal tilpasses direkte i war-filen og ikke findes i WildFly modulet.

Anchor
_Toc462261547
_Toc462261547
Konfiguration af log4j

Log4j konfiguration findes i følgende fil:

  • log4j-sxa-documentmetadataprovider-ws.xml

...

Følgende fil, der findes under roden i war-filen sxa-documentmetadataprovider.war, udpeger den fil, der anvendes til konfiguration af log4j:

  • documentsharing.log4j.properties

...

Log4j konfiguration findes i følgende fil:

  • log4j-sxa-documentmetadataprovider-ws.xml

Denne indlæses fra WildFly modulet:
/pack/wildfly8/modules/nsi/ddsprojects/sxa/documentmetadataprovider/config/main/
I konfigurationen er det muligt at aktivere performanceloggeren, der udvalgte steder i adapteren, vil skrive tidsvarighed af kald igennem systemet. Performanceloggeren aktiveres ved at ændre level værdien fra "OFF" til "DEBUG". Eftersom konfigurationen kun indlæses ved opstart af servicen, er det nødvendigt at genstarte servicen efter endt redigering af log4j-sxa-documentmetadataprovider-ws.xml filen.
Eksempel på konfiguration af performanceloggeren, hvor level værdien er sat til "OFF":
<logger name="performancelogger" additivity="false">
<level value="OFF" />
<appender-ref ref="PerformanceFile" />
</logger>
Som standard skriver performanceloggeren til sxa-documentmetadataprovider-ws-performance.log i WildFly' log-folder.
Se yderligere opsætning i installationsvejledningen.

...

Følgende fil udpeger hvilken fil, der indeholder konfigurationen af SLA-logning:

  • nspslalog-sxa-documentmetadataprovider.properties

Denne indlæses fra WildFly modulet:
/pack/wildfly8/modules/nsi/ddsprojects/sxa/documentmetadataprovider/config/main/
Per default udpeges konfigurationsfilen beskrevet i næste afsnit.

...

Per default indlæses konfigurationen af Svareksponeringsservice XDS Registry Adapters SLA-logning fra følgende fil:

  • log4j-nspslalog-sxa-documentmetadataprovider.properties

Denne indlæses fra WildFly modulet:

Code Block
/pack/wildfly8/modules/nsi/ddsprojects/sxa/documentmetadataprovider/config/main/

...


I konfigurationen er det muligt at aktivere performanceloggeren, der udvalgte steder i adapteren, vil skrive tidsvarighed af kald igennem systemet. Performanceloggeren aktiveres ved at ændre level værdien fra "OFF" til "DEBUG". Eftersom konfigurationen kun indlæses ved opstart af servicen, er det nødvendigt at genstarte servicen efter endt redigering af log4j-sxa-documentmetadataprovider-ws.xml filen.
Eksempel på konfiguration af performanceloggeren, hvor level værdien er sat til "OFF":

Code Block
<logger name="performancelogger" additivity="false">
  <level value="OFF" />
  <appender-ref ref="PerformanceFile" />
</logger>


Som standard skriver performanceloggeren til sxa-documentmetadataprovider-ws-performance.log i WildFly' log-folder.
Se yderligere opsætning i installationsvejledningen.

Anchor
_Toc462261548
_Toc462261548
Udpegning af SLA-log konfiguration

Følgende fil udpeger hvilken fil, der indeholder konfigurationen af SLA-logning:

  • nspslalog-sxa-documentmetadataprovider.properties

Denne indlæses fra WildFly modulet:

Code Block
/pack/wildfly8/modules/nsi/ddsprojects/sxa/documentmetadataprovider/config/main/ 


Per default udpeges konfigurationsfilen beskrevet i næste afsnit.

Anchor
_Toc462261549
_Toc462261549
Konfiguration af SLA-log

Per default indlæses konfigurationen af Svareksponeringsservice XDS Registry Adapters SLA-logning fra følgende fil:

  • log4j-nspslalog-sxa-documentmetadataprovider.properties


Denne indlæses fra WildFly modulet:

Code Block
/pack/wildfly8/modules/nsi/ddsprojects/sxa/documentmetadataprovider/config/main/


Anchor
_Toc327544080
_Toc327544080
Anchor
_Toc462261550
_Toc462261550
Konfiguration af Svareksponeringsservice XDS Repository Adapter

Anchor
_Toc462261551
_Toc462261551
Konfiguration af Svareksponeringsservice kalder

Opsætningen for kalderen af Svareksponeringsservice konfigureres i SXAConfig.properties.
Denne indlæses fra WildFly modulet:

Code Block
/pack/wildfly8/modules/nsi/ddsprojects/sxa/documentprovider/config/main/


Et eksempel på sådan konfiguration er:

Code Block

Opsætningen for kalderen af Svareksponeringsservice konfigureres i SXADocumentProvider.properties.
Denne indlæses fra WildFly modulet:
/pack/wildfly8/modules/nsi/ddsprojects/sxa/documentprovider/config/main/
Et eksempel på sådan konfiguration er:
sxa.labservice.request.timeout.seconds = 120
sxa.labservice.request.username = username
sxa.labservice.request.password = password
sxa.labservice.endpoint = http://localhost:9090/sxa-labreportservicestub/SvarEksponering
sxa.document.unique.root.id = 1.2.3.4.55.66
sxa.labservice.request.samtykkekode = _ sxa.labservice.request.samtykketekst = _ sxa.labservice.request.slutbruger.identifikation = _ sxa.labservice.request.slutbruger.organisation = _ sxa.labservice.request.slutbruger.cpr = _ sxa.labservice.request.slutbruger.fornavn = _ sxa.labservice.request.slutbruger.efternavn = _ sxa.labservice.request.slutbruger.stilling = _ sxa.labservice.request.slutbruger.email = _ sxa.labservice.request.slutbruger.rolle = _ sxa.labservice.request.slutbruger.autorisationskode = _
Properties beskrives ifølge tabel.

...

Property

...

sxa.labservice.request.timeout.seconds

...

Antal sekunder for hvor lang tid et request mod laboratoriebanken maximalt må tage før forsøget meldes som mislykket.

...

 = 120
sxa.labservice.request.

...

Brugernavnet der anvendes ved kald til Laboratoriedatabanken

username = username
sxa.labservice.request.password

...

Kodeordet der anvendes ved kald til Laboratoriedatabanken

 = password
sxa.labservice.endpoint

...

Url'en til Laboratoriedatabankens service

 = 
http://localhost:9090/sxa-labreportservicestub/SvarEksponering
sxa.document.unique.root.id

...

Root id for det generede dokument

 = 1.2.3.4.55.66
sxa.labservice.request.samtykkekode

...

 = _ 
sxa.labservice.request.samtykketekst

...

 = _ 
sxa.labservice.request.slutbruger.identifikation

...

Slutbrugerns brugerid eller en fast identitet på det kaldende system, såfremt det selv logger

 = _ 
sxa.labservice.request.slutbruger.organisation

...

Navnet på organisationen som slutbrugeren eller det kaldende system stammer fra

 = _ 
sxa.labservice.request.slutbruger.cpr

...

Slutbrugerens cpr-nummer

 = _ 
sxa.labservice.request.slutbruger.fornavn

...

Slutbrugerens fornavn

 = _ 
sxa.labservice.request.slutbruger.efternavn

...

Slutbrugerens efternavn

 = _ 
sxa.labservice.request.slutbruger.stilling

...

Slutbrugerens stillingsbetegnelse

 = _ 
sxa.labservice.request.slutbruger.email

...

Slutbrugerens email

 = _ 
sxa.labservice.request.slutbruger.rolle

...

Slutbrugerens rolle

 = _ 
sxa.labservice.request.slutbruger.autorisationskode

...

Slutbrugerens autorisationskode

...

Konfiguration af hvilket homeCommunityId og repositoryUniqueId, Svareksponeringsservice XDS Repository Adapter'en skal reagere på ved request for indhentning af dokument, er konfigureret i følgende fil:

  • sxaproviderconfiguration.xml

Denne indlæses fra WildFly modulet:
/pack/wildfly8/modules/nsi/ddsprojects/sxa/documentprovider/config/main/
Et eksempel på sådan konfiguration er:
<ProviderConfiguration>
<homeCommunityId>1.2.3.5.6</homeCommunityId>
<repositoryUniqueId>1.2.3.4.55.66</repositoryUniqueId>
<uniqueIdRoot>1.2.3.4.55.66</uniqueIdRoot>
</ProviderConfiguration>
Bemærk, at de konkrete værdier skal være afstemt med homeCommunityId og repositoryUniqueId i de dokumentmetadata, der er konfigureret som beskrevet i afsnit 4.1.1. Er der ikke overensstemmelse, vil kald til Svareksponeringsservice XDS Repository give anledning til svar, der påpeger uoverenstemmelsen.

...

Ved opslag på en patient kan der anføres en række søge-parametre. Svareksponeringsservice XDS Registry Adapter har logik, der er afhængig af konkrete søge-parametre foretager encoding i dokumentid, der er del af returnerede metadata. Ved indhentning af dokument foretages decoding og mapning til speciale-parametre anvendt i kaldet til Svareksponeringsservicen.
Mapning til specialer konfigureres i følgende fil:

  • sxapracticesettingcodes.xml

Denne indlæses fra WildFly modulet:
/pack/wildfly8/modules/nsi/ddsprojects/sxa/documentprovider/config/main/
I konfiguration specificeres specialer således:
<filter>
<practiceSettingCodes>
<mappedCodedValue>
<code>408454008</code>
<codeSystem>2.16.840.1.113883.6.96</codeSystem>
<description>klinisk mikrobiologi</description>
<mappedValue>Mikrobiologi</mappedValue>
</mappedCodedValue>
<mappedCodedValue>
<code>394596001</code>
<codeSystem>2.16.840.1.113883.6.96</codeSystem>
<description>klinisk biokemi</description>
<mappedValue>KliniskBiokemi</mappedValue>
</mappedCodedValue>
<mappedCodedValue>
<code>394915009</code>
<codeSystem>2.16.840.1.113883.6.96</codeSystem>
<description>patologisk anatomi og cytologi</description>
<mappedValue>Patologi</mappedValue>
</mappedCodedValue>
</practiceSettingCodes>
</filter>
Det er vigtigt, at den tilsvarende fil for documentmetadataprovider er konfigureret fuldstændigt identisk.

...

Følgende fil, der findes under roden i war-filen sxa-documentprovider.war, udpeger den fil, der anvendes til konfiguration af log4j:

  • documentsharing.log4j.properties

Bemærk, at denne fil (om nødvendigt) skal tilpasses direkte i war-filen og ikke findes i WildFly modulet.

...

Log4j konfiguration findes i følgende fil:

  • log4j-sxa-documentprovider-ws.xml

...

Følgende fil udpeger hvilken fil, der indeholder konfigurationen af SLA-logning:

  • nspslalog-sxa-documentprovider.properties

Denne indlæses fra WildFly modulet:
/pack/wildfly8/modules/nsi/ddsprojects/sxa/documentprovider/config/main/
Per default udpeges konfigurationsfilen beskrevet i næste afsnit.

...

Per default indlæses konfigurationen af Svareksponeringsservice XDS Repository Adapters SLA-logning fra følgende fil:

  • log4j-nspslalog-sxa-documentprovider.properties

...

 = _

sxa.labservice.servicecheck.failurethreshold = 5

sxa.labservice.headers = _

sxa.labservice.logrecord.inbound.header.name = _
sxa.labservice.logrecord.outbound.header.name = _

sxa.labservice.credential.header=X-Labsvar-Credential
sxa.labservice.credential=00000000-0000-0000-0000-000000000000


Properties beskrives ifølge tabel.

Property

Beskrivelse

sxa.labservice.request.timeout.seconds

Antal sekunder for hvor lang tid et request mod laboratoriebanken maximalt må tage før forsøget meldes som mislykket.

sxa.labservice.request.username

Brugernavnet der anvendes ved kald til Laboratoriedatabanken

sxa.labservice.request.password

Kodeordet der anvendes ved kald til Laboratoriedatabanken

sxa.labservice.endpoint

Url'en til Laboratoriedatabankens service

sxa.document.unique.id.root

Root id for det generede dokument

sxa.labservice.request.samtykkekode


sxa.labservice.request.samtykketekst


sxa.labservice.slutbruger.identifikation

Slutbrugerns brugerid eller en fast identitet på det kaldende system, såfremt det selv logger

sxa.labservice.slutbruger.organisation

Navnet på organisationen som slutbrugeren eller det kaldende system stammer fra

sxa.labservice.slutbruger.cpr

Slutbrugerens cpr-nummer

sxa.labservice.slutbruger.fornavn

Slutbrugerens fornavn

sxa.labservice.slutbruger.efternavn

Slutbrugerens efternavn

sxa.labservice.slutbruger.stilling

Slutbrugerens stillingsbetegnelse

sxa.labservice.slutbruger.email

Slutbrugerens email

sxa.labservice.slutbruger.rolle

Slutbrugerens rolle

sxa.labservice.slutbruger.autorisationskode

Slutbrugerens autorisationskode

sxa.labservice.servicecheck.failurethresholdHvor mange gange et kald til Laboratoriedatabanken skal forsøges igen, før det opfattes som fejlet.
sxa.labservice.headers

Styrer hvilke indkommende HTTP-headers, der skal videresendes til Laboratoriedatabanken. Angives som en komma-separeret liste. I indkommende requests ledes efter HTTP-headers, hvis navn forekommer i listen, og hvis de findes, sendes de med videre.

sxa.labservice.logrecord.inbound.header.nameNavn på indkommende HTTP-header, som indeholder LogRecord-parameter fra det kaldende system. Hvis headeren findes, så bruges den i beregningen af den LogRecord, der sendes med i kald til Svareksponeringsservicen.
sxa.labservice.logrecord.outbound.header.nameNavn på den HTTP-header, som indeholder LogRecord-parameter i kald til Svareksponeringsservicen. Beregningen af headeren er beskrevet i afsnittet 'SES Auditlogning'.
sxa.labservice.credential.headerNavn på http-header, der indeholder servicenøgle fra klienten. Skal være udfyldt, hvis sxa.labservice.credential er udfyldt. Hvis ikke udfyldt, udføres der ikke validering af nøgler.
sxa.labservice.credentialServerens servicenøgle. Bruges ifm. Samblik pilotafprøvning til at begrænse adgang til SXA. Skal være udfyldt, hvis sxa.labservice.credential.header er udfyldt. Hvis ikke udfyldt, udføres der ikke validering af nøgler.


Anchor
_Toc462261552
_Toc462261552
Konfiguration af dokumentdelings-id

Konfiguration af hvilket homeCommunityId og repositoryUniqueId, Svareksponeringsservice XDS Repository Adapter'en skal reagere på ved request for indhentning af dokument, er konfigureret i følgende fil:

  • sxaproviderconfiguration.xml

Denne indlæses fra WildFly modulet:

Code Block
/pack/wildfly8/modules/nsi/ddsprojects/sxa/documentprovider/config/main/


Et eksempel på sådan konfiguration er:

Code Block
<ProviderConfiguration>
  <homeCommunityId>1.2.3.5.6</homeCommunityId>
  <repositoryUniqueId>1.2.3.4.55.66</repositoryUniqueId>
  <uniqueIdRoot>1.2.3.4.55.66</uniqueIdRoot>
</ProviderConfiguration>

Bemærk, at de konkrete værdier skal være afstemt med homeCommunityId og repositoryUniqueId i de dokumentmetadata, der er konfigureret som beskrevet i afsnit 4.1.1. Er der ikke overensstemmelse, vil kald til Svareksponeringsservice XDS Repository give anledning til svar, der påpeger uoverenstemmelsen.

Anchor
_Toc327544081
_Toc327544081
Anchor
_Toc462261553
_Toc462261553
Konfiguration af mapning til specialer

Ved opslag på en patient kan der anføres en række søge-parametre. Svareksponeringsservice XDS Registry Adapter har logik, der er afhængig af konkrete søge-parametre foretager encoding i dokumentid, der er del af returnerede metadata. Ved indhentning af dokument foretages decoding og mapning til speciale-parametre anvendt i kaldet til Svareksponeringsservicen.
Mapning til specialer konfigureres i følgende fil:

  • sxapracticesettingcodes.xml

Denne indlæses fra WildFly modulet:

Code Block
/pack/wildfly8/modules/nsi/ddsprojects/sxa/documentprovider/config/main/


I konfiguration specificeres specialer således:

Code Block
<filter>
  <practiceSettingCodes>
    <mappedCodedValue>
      <code>408454008</code>
      <codeSystem>2.16.840.1.113883.6.96</codeSystem>
      <description>klinisk mikrobiologi</description>
      <mappedValue>Mikrobiologi</mappedValue>
    </mappedCodedValue>
    <mappedCodedValue>
      <code>394596001</code>
      <codeSystem>2.16.840.1.113883.6.96</codeSystem>
      <description>klinisk biokemi</description>
      <mappedValue>KliniskBiokemi</mappedValue>
    </mappedCodedValue>
    <mappedCodedValue>
      <code>394915009</code>
      <codeSystem>2.16.840.1.113883.6.96</codeSystem>
      <description>patologisk anatomi og cytologi</description>
      <mappedValue>Patologi</mappedValue>
    </mappedCodedValue>
  </practiceSettingCodes>
</filter>


Det er vigtigt, at den tilsvarende fil for documentmetadataprovider er konfigureret fuldstændigt identisk.

Anchor
_Toc462261554
_Toc462261554
Udpegning af log4j-konfigurationfil

Følgende fil, der findes under roden i war-filen sxa-documentprovider.war, udpeger den fil, der anvendes til konfiguration af log4j:

  • documentsharing.log4j.properties

Bemærk, at denne fil (om nødvendigt) skal tilpasses direkte i war-filen og ikke findes i WildFly modulet.

Anchor
_Toc462261555
_Toc462261555
Konfiguration af log4j

Log4j konfiguration findes i følgende fil:

  • log4j-sxa-documentprovider-ws.xml

Denne indlæses fra WildFly modulet:

Code Block
/pack/wildfly8/modules/nsi/ddsprojects/sxa/documentprovider/config/main/


I konfigurationen er det muligt at aktivere performanceloggeren, der udvalgte steder i adapteren, vil skrive tidsvarighed af kald igennem systemet. Performanceloggeren aktiveres ved at ændre level værdien fra "OFF" til "DEBUG". Eftersom konfigurationen kun indlæses ved opstart af servicen, er det nødvendigt at genstarte servicen efter endt redigering af log4j-sxa-documentprovider-ws.xml filen.
Eksempel på konfiguration af performanceloggeren, hvor level værdien er sat til "OFF":

Code Block
<logger name="performancelogger" additivity="false">
  <level value="OFF" />
  <appender-ref ref="PerformanceFile" />
</logger>


Anchor
_Toc327544082
_Toc327544082

Som standard skriver performanceloggeren til sxa-documentprovider-ws-performance.log i WildFly' log-folder.
Se yderligere opsætning i installationsvejledningen.

Anchor
_Toc462261556
_Toc462261556
Udpegning af SLA-log konfiguration

Følgende fil udpeger hvilken fil, der indeholder konfigurationen af SLA-logning:

  • nspslalog-sxa-documentprovider.properties

Denne indlæses fra WildFly modulet:

Code Block
/pack/wildfly8/modules/nsi/ddsprojects/sxa/documentprovider/config/main/ 


Per default udpeges konfigurationsfilen beskrevet i næste afsnit.

Anchor
_Toc462261557
_Toc462261557
Konfiguration af SLA-log

Per default indlæses konfigurationen af Svareksponeringsservice XDS Repository Adapters SLA-logning fra følgende fil:

  • log4j-nspslalog-sxa-documentprovider.properties

Denne indlæses fra WildFly modulet:

Code Block
/pack/wildfly8/modules/nsi/ddsprojects/sxa/documentprovider/config/main/

Anchor
_Toc462261558
_Toc462261558
SES Auditlogning

Ved kald til Svareksponeringsservicen medsendes der en header, som indeholder information til auditlogning. Headeren indeholder en LogRecord xml-struktur, hvis indhold beskrives nærmere i dette afsnit.

Indholdet af headeren er nærmere beskrevet i

Jira
serverNSI JIRA
serverIde64c3bc3-001c-3439-bc53-f7a235a8cd61
keySDS-3931
og det tilhørende analysedokument. Ved requests til XDS Repository Adapteren bliver der konstrueret en LogRecord-header SXA konstruerer LogRecord-strukturen ud fra følgende informationer i requestet:

  • Hsuid-header. Påkrævet
  • Medcom-header. Påkrævet
  • LogRecord-header. Frivillig.
  • Request body. Påkrævet.

Eksempel på header:


Code Block
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<LogRecord xmlns="healthcare.loginfo/2017-03-01">
  <TraceInfo>
    <RequestTime>2020-10-23T14:15:54.138+02:00</RequestTime>
    <SessionId>00000000-0000-0000-0000-000000000000</SessionId>
    <RequestId>11111111-1111-1111-1111-111111111111</RequestId>
    <Route>
      <ViaSystem id="1">Dokumentdelingsservice</ViaSystem>
    </Route>
  </TraceInfo>
  <RequestingClient>
    <ClientIdentification ClientIdentificationType="CPR nummer">098765-4321</ClientIdentification>
    <ClinicName/>
    <ClinicDepartment/>
    <UserCprNumber>098765-4321</UserCprNumber>
    <UserName/>
    <UserInitials/>
    <LookUpType>Borger</LookUpType>
    <TaskType>Opslag Dokumentdelingsservice</TaskType>
  </RequestingClient>
  <Patient>
    <CprNumber>121212-1212</CprNumber>
    <Name/>
  </Patient>
  <Consent>
    <Code>1</Code>
    <Text/>
    <PrivacyOverrideCode>0</PrivacyOverrideCode>
  </Consent>
  <ExtendedRequestInfo Format="Text">{HomeCommunityId: 1.2.3.5.6, RepositoryUniqueId: 1.2.3.4.55.66, DocumentUniqueId: 1.2.3.4.55.66.12172240491026.20201023121554.20201023121654.0}</ExtendedRequestInfo>
</LogRecord>

I nedenstående tabel beskrives mere præcist, hvordan headeren udfyldes.


Header-elementIndhold
TraceInfo.RequestTimeTidspunktet hvor headeren dannes.
TraceInfo.SessionIdFlowID fra Medcom-headeren, hvis det er angivet. Ellers et tilfældigt uuid.
TraceInfo.RequestId

Tilfældigt uuid.

For at kunne korrelere MessageID fra Medcom-headeren med det tilfældige uuid, logges en linje på følgende form på INFO-niveau i applikationsloggen:

LogRecord generated. MessageID: <messageID>, RequestId: <requestId>


Eksempel:

LogRecord generated. MessageID: AAABeBX9pFBxz1Ul3Nwf/lNPU0k=, RequestId: 863faf0f-dc2a-4c48-b4ec-897ec90a9890


TraceInfo.RouteEn sekvens af ViaSystem-elementer. Hvis requestet indeholder en LogRecord-header, så kopieres sekvensen herfra, og udvides med et element med værdien 'Dokumentdelingsservice'. Ellers kun 'Dokumentdelingsservice'-elementet.
RequestingClient.ClientIdentification

Bestemmes ud fra Hsuid-headerens UserType-attribut.

  • Hvis UserType-attributten er 'nsi:Citizen', så sættes ClientIdentificationType til 'CPR_NUMMER', og værdien sættes til indholdet af ActingUserCivilRegistrationNumber-attributten.
  • Hvis UserType-attributten er 'nsi:HealthcareProfessional', så bestemmes ClientIdentificationType ud fra OrgUsingID-attributtens NameFormat, og værdien sættes til indholdet af OrgUsingID-attributten.
RequestingClient.ClinicNameTom streng.
RequestingClient.ClinicDepartmentTom streng.
RequestingClient.UserCprNumberSættes til indholdet af ActingUserCivilRegistrationNumber-attributten.
RequestingClient.UserNameTom streng.
RequestingClient.UserInitialsTom streng.
RequestingClient.BehalfOfCprNumberSættes til indholdet af ResponsibleUserCivilRegistrationNumber-attributten, hvis denne er udfyldt.
RequestingClient.LookUpType

Bestemmes ud fra Hsuid-headerens UserType-attribut.

  • Hvis UserType-attributten er 'nsi:Citizen', så tjekkes om borgeren slår op på egne data (ved at tjekke om ResponsibleUserCivilRegistrationNumber-attributten er udfyldt). Hvis ja, så sættes LookupType til 'Borger'. Hvis nej, så bestemmes LookupType ud fra CitizenUserRelation-attributten som følger:
    • Citizen → Borger
    • ChildCustodyHolder → Forælder
    • Guardian → Værge
    • ProxyHolder → Fuldmagtshaver
  • Hvis UserType-attributten er 'nsi:HealthcareProfessional', så tjekkes om ResponsibleUserAuthorizationCode-attributten er udfyldt. Hvis ja, så sættes LookupType til 'Kliniker'. Hvis nej, så sættes LookupType til 'Kliniker'. (ikke helt afgjort pt. om det skal være sådan.)


RequestingClient.TaskTypeSættes til 'Opslag Dokumentdelingsservice'.
Patient.CprNumberBeregnes ved at decode DocumentUniqueId'et fra request bodyen.
Patient.NameTom streng
Consent.CodeHvis HSUID-attributten ConsentOverride ikke er angivet, eller er angivet til 'false', så 1 (patienten har givet samtykke). Ellers 3 (opslaget er foretaget som en del af behandlingen).
Consent.TextHvis HSUID-attributten ConsentOverride ikke er angivet, eller er angivet til 'false', så tom streng, ellers 'Opslag foretages pga. værdispring'.
Consent.PrivacyOverrideCodePrivacyOverrideCode - Hvis HSUID-attributten ConsentOverride ikke er angivet, eller er angivet til 'false', så 0, ellers 1.
ExtendedRequestInfoTekstuel repræsentation af request body'en


Anchor
_Toc462261558
_Toc462261558
HTTP Statuscheck på komponenter i Svareksponeringsservice XDS-adaptere

...

Anchor
_Toc327544084
_Toc327544084
Anchor
_Toc414948990
_Toc414948990
Anchor
_Ref448237841
_Ref448237841
Anchor
_Toc462261559
_Toc462261559
ServiceCheck.properties

...

Grundlæggende konfiguration af service-check sker ved tilretning af properties i ServiceCheck.properties filen. 
Eksempel på ServiceCheck.properties

...

Code Block
jmx.url = service:jmx:rmi://localhost/jndi/rmi://localhost:1090/jmxconnector
jmx.username = nisse
jmx.password = ngyffe
service.config.path = service-check.xml
log4j.path = servicecheck.log4j.properties

...

Konfiguration af log4j sker ved tilretning af properties i filen servicecheck.log4j.properties:

...

Code Block
log4j.logger.service-check=INFO, sclog

...


log4j.appender.sclog=org.apache.log4j.RollingFileAppender
log4j.appender.sclog.File=$

...

{jboss.server.log.dir

...

}/service-check.log
log4j.appender.sclog.layout=org.apache.log4j.PatternLayout
log4j.appender.sclog.layout.ConversionPattern=%d 

...

[%t

...

] %-5p %c - %m%n


Anchor
_Toc434410445
_Toc434410445
Anchor
_Ref327260436
_Ref327260436
Anchor
_Toc327544085
_Toc327544085
Anchor
_Toc414948991
_Toc414948991
Anchor
_Toc462261560
_Toc462261560
JMX-Console sikkerhedsopsætning

...

Følgende script afvikles for at tilføje en ny JMX bruger på wildfly:

Code Block
wildfly\bin\add-user.sh


Under opsætning af brugeren vælges typen 'Management User' og muligheden for kommunikation på tværs af applikationsservere kræves ikke rettigheder til.
Når brugeren er oprettet med navn og kodeord ændres ServicesCheck.properties, så properties stemmer overens med det indtastede i add-user.sh scriptet.
Se afsnit 4.3.1 for et eksempel på konfiguration af jmx.username og jmx.password.

...

  • Check i WildFly at servicen er registreret og aktiv
Code Block
<service name="sxa-documentmetadataprovider">

...


    <assertions resultCode="200">

...


        <mBeanCheck>
            <ObjectName>jboss.as:deployment=sxa-documentmetadataprovider.war,subsystem=undertow,servlet=MetadataProviderWS</ObjectName>

...


        </mBeanCheck>

...


    </assertions>

...


    <assertions resultCode="404">

...


        <mBeanCheck>
            <ObjectName>jboss.as:deployment=sxa-documentmetadataprovider.war,subsystem=undertow,servlet=MetadataProviderWS</ObjectName>

...


            <isRegistered>false</isRegistered>

...


        </mBeanCheck>

...


    </assertions>

...


</service>

...


<service name="sxa-documentprovider">

...


    <assertions resultCode="200">

...


        <mBeanCheck>
            <ObjectName>jboss.as:deployment=sxa-documentprovider.war,subsystem=undertow,servlet=DocumentProviderWS</ObjectName>

...


        </mBeanCheck>
    </assertions>

...


    <assertions resultCode="404">

...


        <mBeanCheck>
            <ObjectName>jboss.as:deployment=sxa-documentprovider.war,subsystem=undertow,servlet=DocumentProviderWS</ObjectName>

...


            <isRegistered>false</isRegistered>

...


        </mBeanCheck>

...


    </assertions>

...


</service>


Anchor
_Toc327544086
_Toc327544086
Anchor
_Toc414948992
_Toc414948992

...

Efter konfiguration og deploy af ServiceCheck servicen, kan Svareksponeringsservice XDS Adaptere servicecheck testes med følgende kommandoer:

Code Block
curl –i localhost:9090/service-check/service?servicename=sxa-documentmetadataprovider

...

 
curl –i localhost:9090/service-check/service?servicename=sxa-documentprovider 


Servicen returnerer følgende http koder:

...

Efter konfiguration og deploy af Svareksponeringsservice XDS-adaptere kan versionsnummeret for fx Svareksponeringsservice XDS Registry Adapter hentes med:

Code Block
curl localhost:9090/sxa-documentmetadataprovider/version 


hvilket giver output i stil med:

Code Block
Version: 1.0.0 


Tilsvarende hentes versionsnummeret for Svareksponeringsservice XDS Repository Adapter blot ved at anvende det andet endpoint i tabellen.

...

Logfilnavn

Komponenter der skriver til denne

sxa-documentmetadataprovider-ws.log

Svareksponeringsservice XDS Registry Adapter

nsputil-sla-sxa-documentmetadataprovider.log

Svareksponeringsservice XDS Registry Adapter

sxa-documentmetadataprovider-ws-performance.log

Svareksponeringsservice XDS Registry Adapter

sxa-documentprovider-ws.log

Svareksponeringsservice XDS Repository Adapter

nsputil-sla-sxa-documentprovider.log

Svareksponeringsservice XDS Repository Adapter

sxa-documentprovider-ws-performance.log

Svareksponeringsservice XDS Repository Adapter

service-check.log

service-check


For alle webservices er der en tilhørende SLA-log, der sørger for at logge udvalgte elementer fra requests til webservicen.
Performance logs forekommer kun ved aktivering af performanceloggeren i komponenternes log4j konfiguration.

...