The logging configuration is already included in the product since tia® Core Content server 3.4.0.
To activate, simply set parameter logging.config
parameter to value /application/config/json-logback.xml
.
Logging configuration for JSON logging
This example demonstrates how to set up tia Content Server to standard out, while all log rows are JSON objects. A JSON parser in a log analyser software can then extract the information pieces.
...
Info |
---|
The root log level can be set as well by application-wide parameter It is possible to bind declare and bind multiple appenders in the logging configuration file. |
Example logging configuration file
Code Block |
---|
<configuration>
<appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">
<encoder class="net.logstash.logback.encoder.LoggingEventCompositeJsonEncoder">
<providers>
<timestamp>
<fieldName>timestamp</fieldName>
<timeZone>UTC</timeZone>
</timestamp>
<loggerName>
<fieldName>logger</fieldName>
</loggerName>
<logLevel>
<fieldName>level</fieldName>
</logLevel>
<threadName>
<fieldName>thread</fieldName>
</threadName>
<nestedField>
<fieldName>mdc</fieldName>
<providers>
<mdc />
</providers>
</nestedField>
<stackTrace>
<fieldName>stackTrace</fieldName>
<!-- maxLength - limit the length of the stack trace -->
<throwableConverter class="net.logstash.logback.stacktrace.ShortenedThrowableConverter">
<maxDepthPerThrowable>200</maxDepthPerThrowable>
<maxLength>14000</maxLength>
<rootCauseFirst>true</rootCauseFirst>
</throwableConverter>
</stackTrace>
<message />
<throwableClassName>
<fieldName>exceptionClass</fieldName>
</throwableClassName>
</providers>
</encoder>
</appender>
<root level="info">
<appender-ref ref="stdout" />
</root>
</configuration> |