credit_tracker/src/main/resources/logback.xml
2025-11-18 12:17:38 +03:00

95 lines
No EOL
3.8 KiB
XML

<configuration>
<property name="basedir" value="${user.dir}" />
<property name="logFile" value="${basedir}/logs/app/credit-tracker.log" />
<property name="logFileNamePattern" value="${basedir}/logs/app/credit-tracker.%i.log" />
<property name="jsonLogFile" value="${basedir}/logs/json/credit-tracker-json.log" />
<property name="jsonLogFileNamePattern" value="${basedir}/logs/json/credit-tracker-json.%d{yyyy-MM-dd}.%i.gz" />
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} %X{ru.nbch.credit_tracker.log.mdc.key}- %msg%n</pattern>
<charset>utf-8</charset>
</encoder>
</appender>
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${logFile}</file>
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
<fileNamePattern>${logFileNamePattern}</fileNamePattern>
</rollingPolicy>
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<maxFileSize>100MB</maxFileSize>
</triggeringPolicy>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} %X{ru.nbch.credit_tracker.log.mdc.key}- %msg%n</pattern>
<charset>utf-8</charset>
</encoder>
</appender>
<appender name="FILE-JSON" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${jsonLogFile}</file>
<encoder class="net.logstash.logback.encoder.LogstashEncoder">
<customFields>
{
"service": {
"name": "${APM_SERVICE_NAME:-credit-tracker}",
"version": "${APM_SERVICE_VERSION:-unknown}"
},
"event" : {
"dataset": "credit-tracker.log"
}
}
</customFields>
<fieldNames>
<timestamp>@timestamp</timestamp>
<level>log.level</level>
<logger>log.logger</logger>
<thread>process.thread.name</thread>
<message>message</message>
</fieldNames>
<includeCallerData>true</includeCallerData>
</encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${jsonLogFileNamePattern}</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFileNamingAndTriggeringPolicy">
<maxFileSize>100MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
<maxHistory>10</maxHistory>
</rollingPolicy>
</appender>
<!--SQL запросы и результаты их выполнения-->
<logger name="ru.nbch.credit_tracker.mapper" level="DEBUG" additivity="false">
<appender-ref ref="FILE"/>
<appender-ref ref="FILE-JSON"/>
</logger>
<logger name="ru.nbch.credit_tracker.component" level="DEBUG" additivity="false">
<appender-ref ref="FILE"/>
<appender-ref ref="FILE-JSON"/>
<appender-ref ref="CONSOLE"/>
</logger>
<logger name="ru.nbch.credit_tracker.service" level="TRACE" additivity="false">
<appender-ref ref="FILE"/>
<appender-ref ref="FILE-JSON"/>
<appender-ref ref="CONSOLE"/>
</logger>
<logger name="ru.nbch.credit_tracker.facade" level="INFO" additivity="false">
<appender-ref ref="FILE"/>
<appender-ref ref="FILE-JSON"/>
<appender-ref ref="CONSOLE"/>
</logger>
<root level="INFO">
<appender-ref ref="FILE"/>
<appender-ref ref="FILE-JSON"/>
<appender-ref ref="CONSOLE"/>
</root>
</configuration>