How to configure JSON output in logs / console with SPRINGBOOT + LOGBACK with YAML properties

0

Have this configuration to show the output of logs to console in JSON format: logback.xml

<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <layout class="ch.qos.logback.classic.PatternLayout">
        <Pattern>
            %d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} : %msg%n
        </Pattern>
    </layout>
</appender>

<appender name="json" class="ch.qos.logback.core.ConsoleAppender">
    <layout class="ch.qos.logback.contrib.json.classic.JsonLayout">
        <jsonFormatter
            class="ch.qos.logback.contrib.jackson.JacksonJsonFormatter">
            <prettyPrint>true</prettyPrint>
        </jsonFormatter>
        <timestampFormat>yyyy-MM-dd' 'HH:mm:ss.SSS</timestampFormat>
    </layout>
</appender>

<logger name="com.example.demo" level="error" additivity="false">
    <appender-ref ref="json" />
</logger>

<root level="error">
    <appender-ref ref="json" />
</root>

That works but I need to configure it in the Spring YAML file.

spring:
profiles.active: dev
spring:
profiles: dev

logging:
level:
org.springframework: INFO
com.example.demo: INFO
pattern:
console: "%d %-5level %logger : %msg%n"
    
asked by JRL 26.04.2018 в 22:44
source

0 answers