| <!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor |
| license agreements. See the NOTICE file distributed with this work for additional |
| information regarding copyright ownership. The ASF licenses this file to |
| You under the Apache License, Version 2.0 (the "License"); you may not use |
| this file except in compliance with the License. You may obtain a copy of |
| the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required |
| by applicable law or agreed to in writing, software distributed under the |
| License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS |
| OF ANY KIND, either express or implied. See the License for the specific |
| language governing permissions and limitations under the License. --> |
| |
| <configuration> |
| <jmxConfigurator/> |
| |
| <springProperty scope="context" name="app.name" source="app.name"/> |
| <springProperty scope="context" name="log.path" source="log.path"/> |
| <springProperty scope="context" name="log.level" source="log.level"/> |
| |
| <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> |
| <target>System.out</target> |
| <encoder> |
| <pattern>%d{yyyy-MM-dd |
| HH:mm:ss.SSS}@@%X{traceId:-}@@%X{parentId:-}@@%X{spanId:-}@@[%thread]@@%level@@%logger{36}[%line]@@%msg%n |
| </pattern> |
| </encoder> |
| </appender> |
| |
| <appender name="PROJECT" class="ch.qos.logback.core.rolling.RollingFileAppender"> |
| <file>${log.path}/${app.name}/${app.name}.log</file> |
| <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> |
| <fileNamePattern>${log.path}/${app.name}/${app.name}.%d{yyyy-MM-dd}.log</fileNamePattern> |
| <maxHistory>30</maxHistory> |
| <totalSizeCap>10GB</totalSizeCap> |
| </rollingPolicy> |
| <encoder> |
| <pattern>%d{yyyy-MM-dd |
| HH:mm:ss.SSS}@@%X{traceId:-}@@%X{parentId:-}@@%X{spanId:-}@@[%thread]@@%level@@%logger{36}[%line]@@%msg%n |
| </pattern> |
| </encoder> |
| </appender> |
| |
| <appender name="ACCESS" class="ch.qos.logback.core.rolling.RollingFileAppender"> |
| <file>${log.path}/${app.name}/access.log</file> |
| <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> |
| <fileNamePattern>${log.path}/${app.name}/access.%d{yyyy-MM-dd}.log</fileNamePattern> |
| <maxHistory>30</maxHistory> |
| <totalSizeCap>3GB</totalSizeCap> |
| </rollingPolicy> |
| <encoder> |
| <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS}@@%X{traceId:-}@@%X{parentId:-}@@%X{spanId:-}@@[%thread]@@%level@@%logger{36}[%line]@@%msg%n</pattern> |
| </encoder> |
| </appender> |
| |
| <logger name="accessLog" level="${log.level}" additivity="false"> |
| <appender-ref ref="ACCESS"/> |
| <appender-ref ref="STDOUT"/> |
| </logger> |
| |
| <root level="${log.level}"> |
| <appender-ref ref="STDOUT"/> |
| <appender-ref ref="PROJECT"/> |
| </root> |
| </configuration> |