Versions Compared

Key

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

...

Dokumentdelingsservice indeholder

Anvendelse af NSP Audit API under udvikling

Overblik over NSP Audit API funktioner

Når man kalder createAuditBuilder metoden i NSP Audit API'et anvender denne Java Service Loader systemet til at finde en NSP Audit Provider.

Når komponenten afvikles i drift på NSP platformen, vil der være en provider tilgængelig som rent faktisk står for at logge audit informationerne for hvert request. Det er driftens ansvar at sørge for, at dette sker

Under udvikling er det dog stadig muligt at bruge NSP Audit API idet den indeholder en fallback development provider. Denne provider skriver en advarsel til stderr om at den ikke må bruges i et driftet NSP miljø, men foretager sig ellers ikke noget pr. default. Hvis man sætter følgende system property vil den skrive hver audit information ud på stdout som et JSON objekt:

Code Block
dk.sds.nsp.audit.DevelopmentAuditProvider.enabled=true

Når man kalder createAuditBuilder metoden i NSP Audit API'et anvender denne Java Service Loader systemet til at finde en NSP Audit Provider.

Når komponenten afvikles i drift på NSP platformen, vil der være en passende provider tilgængelig som rent faktisk står for at logge audit informationerne for hvert request. Det er driftens ansvar at sørge for, at dette sker.

Under udvikling er det dog stadig muligt at bruge NSP Audit API idet den indeholder en fallback development provider. Denne provider skriver en advarsel til stderr om at den ikke må bruges i et driftet NSP miljø, men foretager sig ellers ikke noget pr. default. Hvis man sætter følgende system property vil den skrive hver audit information ud på stdout som et JSON objekt:

Code Block
dk.sds.nsp.audit.DevelopmentAuditProvider.enabled=true

Alternativt kan man lave en ny NSP Audit Provider og få den loadet ved at placere provider-configuration filen dk.sds.nsp.audit.AuditProvider i en passende META-INF/services folder. Se Java Service Loader dokumentationen for detaljer. I praksis vil der ikke være brug for dette, da fallback development provider i de fleste tilfælde er fuldt ud dækkende.

Warning

En leverance af en komponent til NSP må ikke indeholde en provider-configuration fil idet dette kunne påvirke andre komponenter på platformen.

Eksempel på auditlogning


Det demonstreres gennem eksemplet fra Dokumentdelingsservice, hvorledes anvendelsen af NSP Audit API kommer til udtryk i forhold til informationsniveau i den resulterende auditlog. Herigennem bliver det muligt for udviklere af NSP komponenter at forstå, hvilke informationer, der stammer fra afviklingsplatformen, og hvilke der stammer fra komponenten selv.

...