Allmänt
Som loggramverk används Log4j2, se log4j2s dokumentation för mer information.
En grundkonfigurering finns i projektet under resources/log4j2.xml som default loggar till konsollen.
Extern konfiguration
För att använda en extern log4j2.xml konfigurationsfil kan man starta applikationen med parametern "-Dlog4j.configurationFile", se exempel nedan:
Kodblock | ||
---|---|---|
| ||
java -jar -Xms256m -Xmx1024m -Dlog4j.configurationFile=file:///opt/vp/config/log4j2.xml vp-services.jar" |
Ändring av loggnivåer i runtime
Här beskivs två sätt att ändra loggnivåer i runtime (det finns förmodligen fler), .
- Om en extern konfiguration används räcker det att ändra i konfigureringsfilen förutsatt att den är grundkonfigurerad att upptäcka förändringar i runtime se. <Configuration monitorInterval="30">
Ändra loggnivåer med Hawtio (eller på annat sätt via jmx)
Rekommenderade loggers
Vissa loggers kan vara av extra intresse för att följa VPs uppstart och flöden. Se beskrivning nedan:
Kodblock | ||||
---|---|---|---|---|
| ||||
<Loggers>
<!--Level INFO will log the init/reset of TAK cache-->
<AsyncLogger name="se.skltp.takcache" level="INFO"/>
<AsyncLogger name="se.skl.tp.vp.vagval.ResetTakCacheProcessor" level="INFO"/>
<!--Level INFO will log the init/reset of HSA cache-->
<AsyncLogger name="se.skl.tp.vp.service.HsaCacheServiceImpl" level="INFO"/>
<!--Level INFO will log startup for spring boot application-->
<AsyncLogger name="se.skl.tp.vp.VpServicesApplication" level="INFO"/>
<!--Level INFO will log startup information for Camel -->
<AsyncLogger name="org.apache.camel.spring.SpringCamelContext" level="INFO"/>
<!-- Message logging
Used to follow messages sent thru VP
Level DEBUG will log all message information including payload
Level INFO will log all message information without payload
See chapter "Meddelande loggning" for more information
-->
<AsyncLogger name="se.skl.tp.vp.logging.req.in" level="DEBUG"/>
<AsyncLogger name="se.skl.tp.vp.logging.req.out" level="DEBUG"/>
<AsyncLogger name="se.skl.tp.vp.logging.resp.in" level="DEBUG"/>
<AsyncLogger name="se.skl.tp.vp.logging.resp.out" level="DEBUG"/>
<!--Root logger-->
<Root level="WARN">
<AppenderRef ref="RollingRandomAccessFile"/>
</Root>
</Loggers> |
Meddelande-loggning
Det finns fyra speciella loggers som hanterar meddelanden som går genom VP.
INFO nivå - innebär att meddelanden loggas utan payload.
DEBUG nivå - innebär att meddelanden loggas med payload.
Dessa kan individuellt slås av och genom att ställa upp lognivån alternativt ta bort loggers.
se.skl.tp.vp.logging.req.in - Loggar inkommande meddelanden från konsumenten.
se.skl.tp.vp.logging.req.out - Loggar utgående meddelanden till producenten.
se.skl.tp.vp.logging.resp.in - Loggar svaret från producenten.
se.skl.tp.vp.logging.resp.out - Loggar svaret VP skickar till konsumenten.
Exempel på loggning av resp-out med payload:
...
title | camel-app-vp.log |
---|
...
Se Github - VP loggning dokumentation
För dokumentation för specifik version av VP kolla dokument under motsvarande version tag i git.