Explorar o código

使用log4j输出日志文件

huyy %!s(int64=7) %!d(string=hai) anos
pai
achega
5b6bf81103
Modificáronse 3 ficheiros con 72 adicións e 1 borrados
  1. 16 0
      pom.xml
  2. 1 1
      src/main/resources/application.yml
  3. 55 0
      src/main/resources/log4j2.yml

+ 16 - 0
pom.xml

@@ -68,6 +68,12 @@
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-actuator</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.springframework.boot</groupId>
+                    <artifactId>spring-boot-starter-logging</artifactId>
+                </exclusion>
+            </exclusions>
         </dependency>
         <dependency>
             <groupId>org.springframework.boot</groupId>
@@ -77,6 +83,16 @@
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-web</artifactId>
         </dependency>
+        <!-- 配置 log4j2 -->
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-log4j2</artifactId>
+        </dependency>
+        <!-- 加上这个才能辨认到log4j2.yml文件 -->
+        <dependency>
+            <groupId>com.fasterxml.jackson.dataformat</groupId>
+            <artifactId>jackson-dataformat-yaml</artifactId>
+        </dependency>
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-configuration-processor</artifactId>

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

@@ -12,4 +12,4 @@ sso:
  secretKey: 0taQcW073Z7G628g5H
 
 logging:
-  path: logs/log
+  config: classpath:log4j2.yml

+ 55 - 0
src/main/resources/log4j2.yml

@@ -0,0 +1,55 @@
+# 共有8个级别,按照从低到高为:ALL < TRACE < DEBUG < INFO < WARN < ERROR < FATAL < OFF。
+Configuration:
+  status: warn
+  monitorInterval: 30
+  Properties: # 定义全局变量
+    Property: # 缺省配置(用于开发环境)。其他环境需要在VM参数中指定,如下:
+      #测试:-Dlog.level.console=warn -Dlog.level.xjj=trace
+      #生产:-Dlog.level.console=warn -Dlog.level.xjj=info
+      - name: log.level.console
+        value: info
+      - name: log.path
+        value: logs
+      - name: project.name
+        value: log
+      - name: log.pattern
+        value: "%d{yyyy-MM-dd HH:mm:ss.SSS} -%5p ${PID:-} [%15.15t] %-30.30C{1.} : %m%n"
+  Appenders:
+    Console:  #输出到控制台
+      name: CONSOLE
+      target: SYSTEM_OUT
+      PatternLayout:
+        pattern: ${log.pattern}
+#   启动日志
+    RollingFile:
+      - name: ROLLING_FILE
+        fileName: ${log.path}/${project.name}.log
+        filePattern: "${log.path}/historyRunLog/$${date:yyyy-MM}/${project.name}-%d{yyyy-MM-dd}-%i.log.gz"
+        PatternLayout:
+          pattern: ${log.pattern}
+        Filters:
+#        一定要先去除不接受的日志级别,然后获取需要接受的日志级别
+          ThresholdFilter:
+            - level: info
+              onMatch: ACCEPT
+              onMismatch: DENY
+        Policies:
+          TimeBasedTriggeringPolicy:  # 按天分类
+            modulate: true
+            interval: 1
+        DefaultRolloverStrategy:     # 文件最多100个
+          max: 100
+  Loggers:
+    Root:
+      level: info
+      AppenderRef:
+        - ref: CONSOLE
+        - ref: ROLLING_FILE
+#    监听具体包下面的日志
+#    Logger: # 为com.xjj包配置特殊的Log级别,方便调试
+#      - name: com.xjj
+#        additivity: false
+#        level: ${sys:log.level.xjj}
+#        AppenderRef:
+#          - ref: CONSOLE
+#          - ref: ROLLING_FILE