From b903c453d79a8feb75cfca11bf243665589db3ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=AD=E5=90=91=E6=96=8C?= <574110378@qq.com> Date: Tue, 26 Sep 2023 14:36:42 +0800 Subject: [PATCH] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jeecg/common/aspect/AutoLogAspect.java | 22 +++++++++++-------- .../modules/api/controller/ApiController.java | 4 ++++ 2 files changed, 17 insertions(+), 9 deletions(-) diff --git a/jeecg-boot-base-core/src/main/java/org/jeecg/common/aspect/AutoLogAspect.java b/jeecg-boot-base-core/src/main/java/org/jeecg/common/aspect/AutoLogAspect.java index 7738835..3be5439 100644 --- a/jeecg-boot-base-core/src/main/java/org/jeecg/common/aspect/AutoLogAspect.java +++ b/jeecg-boot-base-core/src/main/java/org/jeecg/common/aspect/AutoLogAspect.java @@ -15,6 +15,7 @@ import org.jeecg.common.aspect.annotation.AutoLog; import org.jeecg.common.constant.CommonConstant; import org.jeecg.common.constant.enums.ModuleType; import org.jeecg.common.constant.enums.OperateTypeEnum; +import org.jeecg.common.exception.JeecgBootException; import org.jeecg.modules.base.service.BaseCommonService; import org.jeecg.common.system.vo.LoginUser; import org.jeecg.common.util.IpUtils; @@ -52,17 +53,18 @@ public class AutoLogAspect { } @Around("logPointCut()") - public Object around(ProceedingJoinPoint point) throws Throwable { + public void around(ProceedingJoinPoint point) throws Throwable { long beginTime = System.currentTimeMillis(); //执行方法 - Object result = point.proceed(); - //执行时长(毫秒) - long time = System.currentTimeMillis() - beginTime; - - //保存日志 - saveSysLog(point, time, result); - - return result; + try{ + Object result = point.proceed(); + long time = System.currentTimeMillis() - beginTime; + saveSysLog(point, time, result); + }catch (Exception e){ + long time = System.currentTimeMillis() - beginTime; + saveSysLog(point, time, e.getMessage()); + throw new JeecgBootException(e.getMessage()); + } } private void saveSysLog(ProceedingJoinPoint joinPoint, long time, Object obj) { @@ -95,6 +97,8 @@ public class AutoLogAspect { //获取request HttpServletRequest request = SpringContextUtils.getHttpServletRequest(); + dto.setRequestUrl(request.getRequestURL().toString()); + dto.setRequestType(request.getMethod()); //请求的参数 dto.setRequestParam(getReqestParams(request,joinPoint)); //设置IP地址 diff --git a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/controller/ApiController.java b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/controller/ApiController.java index fb26250..115941d 100644 --- a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/controller/ApiController.java +++ b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/api/controller/ApiController.java @@ -10,6 +10,9 @@ import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang.StringUtils; import org.jeecg.common.api.vo.Result; +import org.jeecg.common.aspect.annotation.AutoLog; +import org.jeecg.common.constant.CommonConstant; +import org.jeecg.common.constant.enums.ModuleType; import org.jeecg.common.system.vo.DictModel; import org.jeecg.common.util.*; import org.jeecg.modules.ocr.entity.OcrIdentify; @@ -64,6 +67,7 @@ public class ApiController { @RequestMapping("/identify") @Transactional @ResponseBody + @AutoLog(value = "api接口-通用识别",logType = CommonConstant.OPERATE_TYPE_1) public Result pushSemantic(@RequestBody JSONObject requestBody) throws InterruptedException { // if (!"test".equals(profiles)) { // return Result.error("当前环境不支持该功能,请访问测试环境");