1. <?xml version="1.0" encoding="utf-8"?>
    2. <configuration>
    3. <!--1. value=“logs” – 表示保存到程序运行目录
    4. 2. value=“/logs” – 表示保存到系统目录
    5. 3. value=“../logs” – 表示保存到程序运行目录的父目录-->
    6. <property name="LOG_HOME" value="logs" />
    7. <property name="PATTERN" value="%d{yyyy-MM-dd HH:mm:ss.SSS} | [%thread] %-5level %logger{80} : %msg%n" />
    8. <!-- 彩色日志 -->
    9. <!-- 彩色日志依赖的渲染类 -->
    10. <conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter" />
    11. <!-- 彩色日志格式 -->
    12. <property name="CONSOLE_LOG_PATTERN" value="%d{yyyy-MM-dd HH:mm:ss.SSS} | %clr([%thread]){magenta} %clr(%-5level){yellow} %clr(%logger{80}){cyan} %clr(:){faint} %msg%n"/>
    13. <!--输出到控制台-->
    14. <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
    15. <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
    16. <level>INFO</level>
    17. </filter>
    18. <!-- encoder默认配置为PartternLayoutEncoder -->
    19. <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
    20. <pattern>${PATTERN}</pattern>
    21. <!-- 设置字符集 -->
    22. <charset>UTF-8</charset>
    23. </encoder>
    24. </appender>
    25. <!--输出到文件-->
    26. <!--DEBUG-->
    27. <appender name="DEBUG_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
    28. <encoder>
    29. <pattern>${PATTERN}</pattern>
    30. <charset>UTF-8</charset>
    31. </encoder>
    32. <!--滚动策略-->
    33. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
    34. <!--路径-->
    35. <FileNamePattern>${LOG_HOME}/debug/order-logistics_debug_%d{yyyy-MM-dd}.%i.log</FileNamePattern>
    36. <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
    37. <maxFileSize>50MB</maxFileSize>
    38. </timeBasedFileNamingAndTriggeringPolicy>
    39. <!--日志文件保留天数-->
    40. <maxHistory>365</maxHistory>
    41. </rollingPolicy>
    42. <!-- 此日志文件只记录debug级别的 -->
    43. <filter class="ch.qos.logback.classic.filter.LevelFilter">
    44. <level>DEBUG</level>
    45. <onMatch>ACCEPT</onMatch>
    46. <onMismatch>DENY</onMismatch>
    47. </filter>
    48. </appender>
    49. <!--INFO-->
    50. <appender name="INFO_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
    51. <encoder>
    52. <pattern>${PATTERN}</pattern>
    53. <charset>UTF-8</charset>
    54. </encoder>
    55. <!--滚动策略-->
    56. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
    57. <!--路径-->
    58. <FileNamePattern>${LOG_HOME}/info/order-logistics_info_%d{yyyy-MM-dd}.%i.log</FileNamePattern>
    59. <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
    60. <maxFileSize>50MB</maxFileSize>
    61. </timeBasedFileNamingAndTriggeringPolicy>
    62. <!--日志文件保留天数-->
    63. <maxHistory>365</maxHistory>
    64. </rollingPolicy>
    65. <!-- 此日志文件只记录INFO级别的 -->
    66. <filter class="ch.qos.logback.classic.filter.LevelFilter">
    67. <level>INFO</level>
    68. <onMatch>ACCEPT</onMatch>
    69. <onMismatch>DENY</onMismatch>
    70. </filter>
    71. </appender>
    72. <!--WARN-->
    73. <appender name="WARN_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
    74. <encoder>
    75. <pattern>${PATTERN}</pattern>
    76. <charset>UTF-8</charset>
    77. </encoder>
    78. <!--滚动策略-->
    79. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
    80. <!--路径-->
    81. <FileNamePattern>${LOG_HOME}/warn/order-logistics_warn_%d{yyyy-MM-dd}.%i.log</FileNamePattern>
    82. <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
    83. <maxFileSize>50MB</maxFileSize>
    84. </timeBasedFileNamingAndTriggeringPolicy>
    85. <!--日志文件保留天数-->
    86. <maxHistory>365</maxHistory>
    87. </rollingPolicy>
    88. <!-- 此日志文件只记录WARN级别的 -->
    89. <filter class="ch.qos.logback.classic.filter.LevelFilter">
    90. <level>WARN</level>
    91. <onMatch>ACCEPT</onMatch>
    92. <onMismatch>DENY</onMismatch>
    93. </filter>
    94. </appender>
    95. <!--ERROR-->
    96. <appender name="ERROR_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
    97. <encoder>
    98. <pattern>${PATTERN}</pattern>
    99. <charset>UTF-8</charset>
    100. </encoder>
    101. <!--滚动策略-->
    102. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
    103. <!--路径-->
    104. <FileNamePattern>${LOG_HOME}/error/order-logistics_error_%d{yyyy-MM-dd}.%i.log</FileNamePattern>
    105. <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
    106. <maxFileSize>50MB</maxFileSize>
    107. </timeBasedFileNamingAndTriggeringPolicy>
    108. <!--日志文件保留天数-->
    109. <maxHistory>365</maxHistory>
    110. </rollingPolicy>
    111. <!-- 此日志文件只记录ERROR级别的 -->
    112. <filter class="ch.qos.logback.classic.filter.LevelFilter">
    113. <level>ERROR</level>
    114. <onMatch>ACCEPT</onMatch>
    115. <onMismatch>DENY</onMismatch>
    116. </filter>
    117. </appender>
    118. <!--ERROR-->
    119. <appender name="SQL" class="ch.qos.logback.core.rolling.RollingFileAppender">
    120. <encoder>
    121. <pattern>${PATTERN}</pattern>
    122. <charset>UTF-8</charset>
    123. </encoder>
    124. <!--滚动策略-->
    125. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
    126. <!--路径-->
    127. <FileNamePattern>${LOG_HOME}/sql/order-logistics_sql_%d{yyyy-MM-dd}.%i.log</FileNamePattern>
    128. <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
    129. <maxFileSize>50MB</maxFileSize>
    130. </timeBasedFileNamingAndTriggeringPolicy>
    131. <!--日志文件保留天数-->
    132. <maxHistory>365</maxHistory>
    133. </rollingPolicy>
    134. <!-- 此日志文件只记录ERROR级别的 -->
    135. <filter class="ch.qos.logback.classic.filter.LevelFilter">
    136. <level>DEBUG</level>
    137. <onMatch>ACCEPT</onMatch>
    138. <onMismatch>DENY</onMismatch>
    139. </filter>
    140. </appender>
    141. <!--输出到控制台-->
    142. <appender name="SQL_CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
    143. <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
    144. <level>DEBUG</level>
    145. </filter>
    146. <!-- encoder默认配置为PartternLayoutEncoder -->
    147. <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
    148. <pattern>${PATTERN}</pattern>
    149. <!-- 设置字符集 -->
    150. <charset>UTF-8</charset>
    151. </encoder>
    152. </appender>
    153. <!--开发环境:打印控制台-->
    154. <springProfile name="dev,test">
    155. <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
    156. <encoder>
    157. <pattern>${CONSOLE_LOG_PATTERN}</pattern>
    158. <!-- 设置字符集 -->
    159. <charset>UTF-8</charset>
    160. </encoder>
    161. </appender>
    162. <!--选择性打印日志按规则自己制作-->
    163. <!--<logger name="com.gbm.kingkong.order.controller"(无法使用通配符) level="INFO" additivity="false"/>-->
    164. <!--mybatis sql日志 日志的级别需要是DEBUG-->
    165. <!--日志打印的包的范围,及分类日志文件存储 -->
    166. <logger name="io.renren.modules.sys.dao" level="DEBUG" additivity="false">
    167. <appender-ref ref="SQL_CONSOLE" />
    168. <appender-ref ref="SQL" />
    169. </logger>
    170. <root level="DEBUG">
    171. <appender-ref ref="CONSOLE" />
    172. <appender-ref ref="DEBUG_FILE" />
    173. <appender-ref ref="INFO_FILE" />
    174. <appender-ref ref="WARN_FILE" />
    175. <appender-ref ref="ERROR_FILE" />
    176. </root>
    177. </springProfile>
    178. <springProfile name="prod">
    179. <!--<logger name="com.gbm.kingkong.order.controller"(无法使用通配符) level="ERROR" additivity="false"/>-->
    180. <!--mybatis sql日志 日志的级别需要是DEBUG-->
    181. <!--日志打印的包的范围,及分类日志文件存储 -->
    182. <logger name="io.renren.modules.sys.dao" level="DEBUG" additivity="false">
    183. <appender-ref ref="SQL" />
    184. </logger>
    185. <root level="INFO">
    186. <appender-ref ref="CONSOLE" />
    187. <appender-ref ref="INFO_FILE" />
    188. <appender-ref ref="WARN_FILE" />
    189. <appender-ref ref="ERROR_FILE" />
    190. </root>
    191. </springProfile>
    192. </configuration>