Bläddra i källkod

调整日志生成模式

tsurumure 10 månader sedan
förälder
incheckning
c04ea5be28
2 ändrade filer med 29 tillägg och 65 borttagningar
  1. 1 1
      src/main/resources/application-prod.yml
  2. 28 64
      src/main/resources/logback.xml

+ 1 - 1
src/main/resources/application-prod.yml

@@ -14,7 +14,7 @@ HTTP_ACTUATOR_URI: http://43.128.1.201:48080
 log-stream:
   enable: true
   charset: UTF-8
-  exec: 'tail -f /logs/2024-10-29/springboot_2.log'
+  exec: 'tail -f /logs/backendsys.log'
 
 spring:
   config:

+ 28 - 64
src/main/resources/logback.xml

@@ -5,85 +5,49 @@
     debug:当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态,默认值为false
  -->
 <configuration scan="true" scanPeriod="2 seconds">
+
+    <!-- <logger name="com.xcbeyond.springboot" level="debug"/> -->
+
+    <!-- 定义日志文件的存储路径和文件名 -->
+    <property name="LOG_HOME" value="logs"/>
+
     <!-- 禁止显示初始化调试信息 -->
     <statusListener class="ch.qos.logback.core.status.NopStatusListener" />
-    <!--
-     	定义滚动记录文件appender 作用:滚动记录文件,先将日志记录到指定文件,当符合某个条件时,将日志记录到其他文件
-        RollingFileAppender class="ch.qos.logback.core.rolling.RollingFileAppender"
-       	 参数:
-            <append>:如果是true日志被追加到文件结尾,如果是false清空现存文件,默认是true
-            <file>:被写入的文件名,可以是相对目录也可以是绝对目录,如果上级目录不存在会自动创建,没有默认值
-            <rollingPolicy>:当发生滚动时,决定RollingFileAppender的行为,涉及文件移动和重命名
-            <triggeringPolicy>:告知RollingFileAppender合适激活滚动
-            <prudent>:当为true时不支持FixedWindowRollingPolicy支持TimeBasedRollingPolicy,但是有两个限制:1不支持也不允许文件压缩,2不能设置file属性必须留空
-    -->
-    <appender name="fileAppender" class="ch.qos.logback.core.rolling.RollingFileAppender">
-        <!-- 如果是true,日志被追加到文件结尾,如果是false,清空现存文件.默认是true -->
-        <prudent>true</prudent>
+
+    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <!-- 真名,即最终日志文件的名称 -->
+        <file>${LOG_HOME}/backendsys.log</file>
+        <!-- 滚动策略 -->
         <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-            <!-- 每天滚动一次的日志 只保留7天内的日志文件 -->
-            <fileNamePattern>logs/%d{yyyy-MM-dd}/springboot.log</fileNamePattern>
+            <!-- 归档的日志文件名 -->
+            <fileNamePattern>${LOG_HOME}/backendsys.log.%d{yyyy-MM-dd}.%i.gz</fileNamePattern>
+            <!-- 保留天数 -->
             <maxHistory>7</maxHistory>
+            <!-- 除按天归档外,还配置了当文件达到一定大小时会被归档 -->
             <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
-                <maxFileSize>10MB</maxFileSize>
+                <maxFileSize>20MB</maxFileSize>
             </timeBasedFileNamingAndTriggeringPolicy>
         </rollingPolicy>
-        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
-            <!-- 对日志进行格式化 -->
-            <pattern>%green(%date) %highlight(%level) [%thread] %logger{10}.%class{0}#%method[%file:%line] %n%msg%n</pattern>
-            <charset>utf-8</charset>
-        </encoder>
+        <!-- 日志格式 -->
+        <layout class="ch.qos.logback.classic.PatternLayout">
+            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
+        </layout>
     </appender>
 
-    <appender name="errorAppender" class="ch.qos.logback.core.rolling.RollingFileAppender">
-        <prudent>true</prudent>
-        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-            <fileNamePattern>logs/%d{yyyy-MM-dd}/springboot-error_%i.log</fileNamePattern>
-            <maxHistory>30</maxHistory>
-            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
-                <maxFileSize>10MB</maxFileSize>
-            </timeBasedFileNamingAndTriggeringPolicy>
-        </rollingPolicy>
-        <encoder>
+    <!-- 将日志添加到控制台 -->
+    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
             <pattern>%green(%date) %highlight(%level) [%thread] %logger{10}.%class{0}#%method[%file:%line] %n%msg%n</pattern>
             <charset>utf-8</charset>
         </encoder>
-        <!--
-             配置日志级别过滤器 作用:根据日志级别进行过滤,如果日志级别等于配置级别过滤器会根据onMath和onMismatch接收或拒绝日志
-             参数:
-             <level>:设置过滤级别
-             <onMatch>:用于配置符合过滤条件的操作
-             <onMismatch>:用于配置不符合过滤条件的操作
-             此处配置为只接收ERROR日志级别信息
-         -->
-        <filter class="ch.qos.logback.classic.filter.LevelFilter">
-            <level>ERROR</level>
-            <onMatch>ACCEPT</onMatch>
-            <onMismatch>DENY</onMismatch>
-        </filter>
-    </appender>
-
-    <!-- 定义控制台appender 作用:把日志输出到控制台 class="ch.qos.logback.core.ConsoleAppender" -->
-    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
-        <layout class="ch.qos.logback.classic.PatternLayout">
-            <pattern>%green(%date) %highlight(%level) [%thread] %logger{10}.%class{0}#%method[%file:%line] %n%msg%n</pattern>
-        </layout>
     </appender>
 
-    <!-- 将root的打印级别设置为"error",指定了名字为"console","fileAppender","errorAppender"的appender -->
-    <root level="error">
-        <appender-ref ref="console"/>
-        <appender-ref ref="fileAppender"/>
-        <appender-ref ref="errorAppender"/>
+   <!-- 日志记录器,可以指定包或者具体的类 -->
+    <root level="INFO">
+        <appender-ref ref="FILE"/>
+        <appender-ref ref="STDOUT"/>
     </root>
 
-    <!--
-        logger用来设置某一个包的日志打印级别
-        <loger> 仅有一个name属性,一个可选的level和一个可选的addtivity属性
-                name:用来指定受此loger约束的某一个包或者具体的某一个类
-                level:用来设置打印级别,大小写无关:TRACE, DEBUG, INFO, WARN, ERROR, ALL 和 OFF
-                addtivity:是否向上级loger传递打印信息。默认是true,会将信息输入到root配置指定的地方,可以包含多个appender-ref,标识这个appender会添加到这个logger
-    -->
-    <!--<logger name="com.xcbeyond.springboot" level="debug"/>-->
+
 
 </configuration>