Hallo zusammen ich möchte gerne meiner Spring Boot Anwendung strukturiertes Logging beibringen :
Dazu habe ich mich hier orientiert : https://www.innoq.com/en/blog/structured-logging/
Im Prinzip funktioniert es auch - ABER :
Ich möcht, wenn ich ein Objekt ausgebe, dass alle Felder in seperaten Zeilen ausgegeben werden.
Hier mal meine logback.xml :
So verwende ich den Logger :
Allerdings sind alle Felder in einerZeile enthalten.
So hier :
16:48:17.931 [scheduling-1] INFO d.b.c.m.i.s.ImageObjectService - created image object=ImageObject(id=null, version=0, hashValue=4d12f78bcc395eabc71237b03df20d3f, creationTimeStamp=2023-02-23T11:03:23.829656, filePath=, categories=[], description=null, geoInformation=GeoInformation(id=1, version=0, longitude=0.0, latitude=0.0, country=null, city=null, suburb=null, postcode=null, road=null, house_number=null))
Kann mir jemand helfen ? Vielen Dank
Dazu habe ich mich hier orientiert : https://www.innoq.com/en/blog/structured-logging/
Im Prinzip funktioniert es auch - ABER :
Ich möcht, wenn ich ein Objekt ausgebe, dass alle Felder in seperaten Zeilen ausgegeben werden.
Hier mal meine logback.xml :
Java:
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="false">
<appender name="fileAppender" class="ch.qos.logback.core.FileAppender">
<file>logging\media.json</file>
<encoder class="net.logstash.logback.encoder.LogstashEncoder">
<timestampPattern>yyyy-MM-dd' 'HH:mm:ss.SSS</timestampPattern>
<fieldNames>
<timestamp>timestamp</timestamp>
<thread>thread</thread>
<logger>[ignore]</logger>
<version>[ignore]</version>
</fieldNames>
</encoder>
</appender>
<appender name="jsonConsoleAppender" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%thread] %highlight(%level{5}) %cyan(%logger{10}) - %msg %n</pattern>
</encoder>
</appender>
<logger name="de.my.cms" level="TRACE"/>
<root level="WARN">
<appender-ref ref="jsonConsoleAppender"/>
<appender-ref ref="fileAppender"/>
</root>
</configuration>
So verwende ich den Logger :
Code:
log.info("created {}", kv("image object", imageObject));
Allerdings sind alle Felder in einerZeile enthalten.
So hier :
16:48:17.931 [scheduling-1] INFO d.b.c.m.i.s.ImageObjectService - created image object=ImageObject(id=null, version=0, hashValue=4d12f78bcc395eabc71237b03df20d3f, creationTimeStamp=2023-02-23T11:03:23.829656, filePath=, categories=[], description=null, geoInformation=GeoInformation(id=1, version=0, longitude=0.0, latitude=0.0, country=null, city=null, suburb=null, postcode=null, road=null, house_number=null))
Kann mir jemand helfen ? Vielen Dank