Browse Source

添加日志管理

yusm 6 months ago
parent
commit
b645ec0ebd

+ 14 - 0
fhKeeper/formulahousekeeper/ArticleOperation/pom.xml

@@ -76,6 +76,20 @@
             <version>1.4.6</version>
         </dependency>
 
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>slf4j-api</artifactId>
+            <version>1.7.36</version> <!-- 请检查最新版本 -->
+        </dependency>
+
+        <!-- Logback Classic -->
+        <dependency>
+            <groupId>ch.qos.logback</groupId>
+            <artifactId>logback-classic</artifactId>
+            <version>1.2.6</version> <!-- 请检查最新版本 -->
+        </dependency>
+
+
     </dependencies>
 
     <!--打包插件,版本需要与springboot版本匹配-->

+ 6 - 0
fhKeeper/formulahousekeeper/ArticleOperation/src/main/java/com/my/bigevent/interceptors/LoginInterceptor.java

@@ -2,6 +2,8 @@ package com.my.bigevent.interceptors;
 
 import com.my.bigevent.utils.JwtUtil;
 import com.my.bigevent.utils.ThreadLocalUtil;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Component;
 import org.springframework.web.servlet.HandlerInterceptor;
 
@@ -15,6 +17,7 @@ import java.util.Map;
 @Component
 public class LoginInterceptor implements HandlerInterceptor
 {
+    private static final Logger logger= LoggerFactory.getLogger(LoginInterceptor.class);
     @Override
     public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception
     {
@@ -25,6 +28,9 @@ public class LoginInterceptor implements HandlerInterceptor
         {
             // 解析 jwt token,若无异常,则说明解析成功,放行
             Map<String,Object> claims= JwtUtil.parseToken(token);
+            logger.info("请求 URL: {}", request.getRequestURL());
+            logger.info("请求方法: {}", request.getMethod());
+            logger.info("请求参数: {}", request.getQueryString());
             // 将业务数据存放到 ThreadLocl 中
             ThreadLocalUtil.set(claims);
             return true;

+ 92 - 0
fhKeeper/formulahousekeeper/ArticleOperation/src/main/resources/logback.xml

@@ -0,0 +1,92 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<configuration>
+    <!-- 日志存放路径 ./表示当前运行目录-->
+	<property name="log.path" value="./log" />
+    <!-- 日志输出格式 -->
+	<property name="log.pattern" value="%date{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n" />
+
+	<!-- 控制台输出 -->
+	<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
+		<encoder>
+			<pattern>${log.pattern}</pattern>
+		</encoder>
+	</appender>
+	
+	<!-- 系统日志输出 -->
+	<appender name="file_info" class="ch.qos.logback.core.rolling.RollingFileAppender">
+	    <file>${log.path}/article.log</file>
+        <!-- 循环政策:基于时间创建日志文件 -->
+		<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+            <!-- 日志文件名格式 -->
+			<fileNamePattern>${log.path}/crm.%d{yyyy-MM-dd}.log.gz</fileNamePattern>
+			<!-- 日志最大的历史 2天 -->
+			<maxHistory>7</maxHistory>
+		</rollingPolicy>
+		<encoder>
+			<pattern>${log.pattern}</pattern>
+		</encoder>
+<!--	<filter class="ch.qos.logback.classic.filter.LevelFilter">
+            &lt;!&ndash; 过滤的级别 &ndash;&gt;
+            <level>DEBUG</level>
+            &lt;!&ndash; 匹配时的操作:接收(记录) &ndash;&gt;
+            <onMatch>ACCEPT</onMatch>
+            &lt;!&ndash; 不匹配时的操作:拒绝(不记录) &ndash;&gt;
+            <onMismatch>DENY</onMismatch>
+        </filter>-->
+	</appender>
+	
+	<!--<appender name="file_error" class="ch.qos.logback.core.rolling.RollingFileAppender">
+	    <file>${log.path}/sys-error.log</file>
+        &lt;!&ndash; 循环政策:基于时间创建日志文件 &ndash;&gt;
+        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+            &lt;!&ndash; 日志文件名格式 &ndash;&gt;
+            <fileNamePattern>${log.path}/sys-error.%d{yyyy-MM-dd}.log</fileNamePattern>
+			&lt;!&ndash; 日志最大的历史 60天 &ndash;&gt;
+			<maxHistory>60</maxHistory>
+        </rollingPolicy>
+        <encoder>
+            <pattern>${log.pattern}</pattern>
+        </encoder>
+        <filter class="ch.qos.logback.classic.filter.LevelFilter">
+            &lt;!&ndash; 过滤的级别 &ndash;&gt;
+            <level>DEBUG</level>
+			&lt;!&ndash; 匹配时的操作:接收(记录) &ndash;&gt;
+            <onMatch>ACCEPT</onMatch>
+			&lt;!&ndash; 不匹配时的操作:拒绝(不记录) &ndash;&gt;
+            <onMismatch>DENY</onMismatch>
+        </filter>
+    </appender>-->
+	
+	<!-- 用户访问日志输出  -->
+    <!--<appender name="sys-user" class="ch.qos.logback.core.rolling.RollingFileAppender">
+		<file>${log.path}/sys-user.log</file>
+        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+            &lt;!&ndash; 按天回滚 daily &ndash;&gt;
+            <fileNamePattern>${log.path}/sys-user.%d{yyyy-MM-dd}.log</fileNamePattern>
+            &lt;!&ndash; 日志最大的历史 60天 &ndash;&gt;
+            <maxHistory>2</maxHistory>
+        </rollingPolicy>
+        <encoder>
+            <pattern>${log.pattern}</pattern>
+        </encoder>
+    </appender>-->
+	
+	<!-- 系统模块日志级别控制  -->
+	<logger name="com.my.bigevent.mapper" level="debug" />
+	<!-- Spring日志级别控制  -->
+	<logger name="org.springframework" level="warn" />
+
+	<root level="info">
+		<appender-ref ref="console" />
+	</root>
+	
+	<!--系统操作日志-->
+    <root level="info">
+        <appender-ref ref="file_info" />
+    </root>
+	
+	<!--系统用户操作日志-->
+    <!--<logger name="sys-user" level="info">
+        <appender-ref ref="sys-user"/>
+    </logger>-->
+</configuration>