mirror of
				https://github.com/continew-org/continew-admin.git
				synced 2025-10-31 21:00:53 +08:00 
			
		
		
		
	refactor: 优化系统日志信息记录
1.简化记录 request_url 2.优化记录操作人信息
This commit is contained in:
		| @@ -16,6 +16,7 @@ | ||||
|  | ||||
| package top.charles7c.continew.admin.monitor.config; | ||||
|  | ||||
| import java.net.URI; | ||||
| import java.time.LocalDateTime; | ||||
| import java.time.ZoneId; | ||||
| import java.util.List; | ||||
| @@ -73,7 +74,11 @@ public class LogDaoLocalImpl implements LogDao { | ||||
|         // 请求信息 | ||||
|         LogRequest logRequest = logRecord.getRequest(); | ||||
|         logDO.setRequestMethod(logRequest.getMethod()); | ||||
|         String requestUrl = logRequest.getUri().toString(); | ||||
|         // 仅记录:/xxx?xx=xx&xx=xx | ||||
|         URI requestUri = logRequest.getUri(); | ||||
|         String requestQuery = requestUri.getQuery(); | ||||
|         String requestUrl = StrUtil.isNotBlank(requestQuery) | ||||
|             ? requestUri.getPath() + StringConstants.QUESTION_MARK + requestQuery : requestUri.getPath(); | ||||
|         logDO.setRequestUrl(requestUrl); | ||||
|         Map<String, List<String>> requestHeaders = logRequest.getHeaders(); | ||||
|         logDO.setRequestHeaders(JSONUtil.toJsonStr(requestHeaders)); | ||||
| @@ -99,17 +104,17 @@ public class LogDaoLocalImpl implements LogDao { | ||||
|                 logDO.setErrorMsg(result.getMsg()); | ||||
|             } | ||||
|             // 操作人 | ||||
|             if (StrUtil.contains(requestUrl, SysConstants.LOGOUT_URI)) { | ||||
|             if (requestUrl.startsWith(SysConstants.LOGOUT_URI)) { | ||||
|                 Long loginId = Convert.toLong(result.getData(), -1L); | ||||
|                 logDO.setCreateUser(-1 != loginId ? loginId : null); | ||||
|             } else if (result.isSuccess() && requestUrl.startsWith(SysConstants.LOGIN_URI)) { | ||||
|                 AccountLoginReq loginReq = JSONUtil.toBean(requestBody, AccountLoginReq.class); | ||||
|                 logDO.setCreateUser( | ||||
|                     ExceptionUtils.exToNull(() -> userService.getByUsername(loginReq.getUsername()).getId())); | ||||
|             } | ||||
|         } | ||||
|         // 操作人 | ||||
|         if (StrUtil.contains(requestUrl, SysConstants.LOGIN_URI)) { | ||||
|             AccountLoginReq loginReq = JSONUtil.toBean(requestBody, AccountLoginReq.class); | ||||
|             logDO.setCreateUser( | ||||
|                 ExceptionUtils.exToNull(() -> userService.getByUsername(loginReq.getUsername()).getId())); | ||||
|         } else if (!StrUtil.contains(requestUrl, SysConstants.LOGOUT_URI) && MapUtil.isNotEmpty(requestHeaders) | ||||
|         if (!requestUrl.startsWith(SysConstants.LOGOUT_URI) && MapUtil.isNotEmpty(requestHeaders) | ||||
|             && requestHeaders.containsKey(HttpHeaders.AUTHORIZATION)) { | ||||
|             String authorization = requestHeaders.get(HttpHeaders.AUTHORIZATION).get(0); | ||||
|             String token = authorization.replace(SaManager.getConfig().getTokenPrefix() + StringConstants.SPACE, | ||||
|   | ||||
| @@ -50,7 +50,7 @@ public class SystemLogDetailResp extends LogResp { | ||||
|     /** | ||||
|      * 请求 URL | ||||
|      */ | ||||
|     @Schema(description = "请求 URL", example = "http://api.charles7c.top/system/dept") | ||||
|     @Schema(description = "请求 URL", example = "/system/dept") | ||||
|     private String requestUrl; | ||||
|  | ||||
|     /** | ||||
|   | ||||
| @@ -50,7 +50,7 @@ public class SystemLogResp extends LogResp { | ||||
|     /** | ||||
|      * 请求 URL | ||||
|      */ | ||||
|     @Schema(description = "请求 URL", example = "http://api.charles7c.top/system/dept") | ||||
|     @Schema(description = "请求 URL", example = "/system/dept") | ||||
|     private String requestUrl; | ||||
|  | ||||
|     /** | ||||
|   | ||||
| @@ -68,9 +68,7 @@ | ||||
|           <a-table-column title="请求 URI"> | ||||
|             <template #cell="{ record }"> | ||||
|               <span :title="decodeURIComponent(record.requestUrl)">{{ | ||||
|                 record.requestUrl.match( | ||||
|                   /(\w+):\/\/([^/:]+)(:\d*)?([^#|\?|\n]*)(\?.*)?/, | ||||
|                 )[4] | ||||
|                 record.requestUrl.match(/([^#|\?|\n]*)(\?.*)?/)[1] | ||||
|               }}</span> | ||||
|             </template> | ||||
|           </a-table-column> | ||||
|   | ||||
		Reference in New Issue
	
	Block a user