refactor: 优化系统日志信息记录
1.简化记录 request_url 2.优化记录操作人信息
This commit is contained in:
parent
ac4283679a
commit
fd0e05f95a
@ -16,6 +16,7 @@
|
|||||||
|
|
||||||
package top.charles7c.continew.admin.monitor.config;
|
package top.charles7c.continew.admin.monitor.config;
|
||||||
|
|
||||||
|
import java.net.URI;
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
import java.time.ZoneId;
|
import java.time.ZoneId;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@ -73,7 +74,11 @@ public class LogDaoLocalImpl implements LogDao {
|
|||||||
// 请求信息
|
// 请求信息
|
||||||
LogRequest logRequest = logRecord.getRequest();
|
LogRequest logRequest = logRecord.getRequest();
|
||||||
logDO.setRequestMethod(logRequest.getMethod());
|
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);
|
logDO.setRequestUrl(requestUrl);
|
||||||
Map<String, List<String>> requestHeaders = logRequest.getHeaders();
|
Map<String, List<String>> requestHeaders = logRequest.getHeaders();
|
||||||
logDO.setRequestHeaders(JSONUtil.toJsonStr(requestHeaders));
|
logDO.setRequestHeaders(JSONUtil.toJsonStr(requestHeaders));
|
||||||
@ -99,17 +104,17 @@ public class LogDaoLocalImpl implements LogDao {
|
|||||||
logDO.setErrorMsg(result.getMsg());
|
logDO.setErrorMsg(result.getMsg());
|
||||||
}
|
}
|
||||||
// 操作人
|
// 操作人
|
||||||
if (StrUtil.contains(requestUrl, SysConstants.LOGOUT_URI)) {
|
if (requestUrl.startsWith(SysConstants.LOGOUT_URI)) {
|
||||||
Long loginId = Convert.toLong(result.getData(), -1L);
|
Long loginId = Convert.toLong(result.getData(), -1L);
|
||||||
logDO.setCreateUser(-1 != loginId ? loginId : null);
|
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)) {
|
if (!requestUrl.startsWith(SysConstants.LOGOUT_URI) && MapUtil.isNotEmpty(requestHeaders)
|
||||||
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)
|
|
||||||
&& requestHeaders.containsKey(HttpHeaders.AUTHORIZATION)) {
|
&& requestHeaders.containsKey(HttpHeaders.AUTHORIZATION)) {
|
||||||
String authorization = requestHeaders.get(HttpHeaders.AUTHORIZATION).get(0);
|
String authorization = requestHeaders.get(HttpHeaders.AUTHORIZATION).get(0);
|
||||||
String token = authorization.replace(SaManager.getConfig().getTokenPrefix() + StringConstants.SPACE,
|
String token = authorization.replace(SaManager.getConfig().getTokenPrefix() + StringConstants.SPACE,
|
||||||
|
@ -50,7 +50,7 @@ public class SystemLogDetailResp extends LogResp {
|
|||||||
/**
|
/**
|
||||||
* 请求 URL
|
* 请求 URL
|
||||||
*/
|
*/
|
||||||
@Schema(description = "请求 URL", example = "http://api.charles7c.top/system/dept")
|
@Schema(description = "请求 URL", example = "/system/dept")
|
||||||
private String requestUrl;
|
private String requestUrl;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -50,7 +50,7 @@ public class SystemLogResp extends LogResp {
|
|||||||
/**
|
/**
|
||||||
* 请求 URL
|
* 请求 URL
|
||||||
*/
|
*/
|
||||||
@Schema(description = "请求 URL", example = "http://api.charles7c.top/system/dept")
|
@Schema(description = "请求 URL", example = "/system/dept")
|
||||||
private String requestUrl;
|
private String requestUrl;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -68,9 +68,7 @@
|
|||||||
<a-table-column title="请求 URI">
|
<a-table-column title="请求 URI">
|
||||||
<template #cell="{ record }">
|
<template #cell="{ record }">
|
||||||
<span :title="decodeURIComponent(record.requestUrl)">{{
|
<span :title="decodeURIComponent(record.requestUrl)">{{
|
||||||
record.requestUrl.match(
|
record.requestUrl.match(/([^#|\?|\n]*)(\?.*)?/)[1]
|
||||||
/(\w+):\/\/([^/:]+)(:\d*)?([^#|\?|\n]*)(\?.*)?/,
|
|
||||||
)[4]
|
|
||||||
}}</span>
|
}}</span>
|
||||||
</template>
|
</template>
|
||||||
</a-table-column>
|
</a-table-column>
|
||||||
|
Loading…
Reference in New Issue
Block a user