diff --git a/config/dev/application.yml b/config/dev/application.yml index 0f8d4a0c..760fa7e4 100644 --- a/config/dev/application.yml +++ b/config/dev/application.yml @@ -45,6 +45,8 @@ dubbo: custom: # 全局请求log request-log: true + # info 基础信息 param 参数信息 full 全部 + log-level: info spring: main: diff --git a/ruoyi-common/ruoyi-common-dubbo/src/main/java/com/ruoyi/common/dubbo/enumd/RequestLogEnum.java b/ruoyi-common/ruoyi-common-dubbo/src/main/java/com/ruoyi/common/dubbo/enumd/RequestLogEnum.java new file mode 100644 index 00000000..b02313a2 --- /dev/null +++ b/ruoyi-common/ruoyi-common-dubbo/src/main/java/com/ruoyi/common/dubbo/enumd/RequestLogEnum.java @@ -0,0 +1,18 @@ +package com.ruoyi.common.dubbo.enumd; + +import lombok.AllArgsConstructor; + +/** + * 请求日志泛型 + * + * @author Lion Li + */ +@AllArgsConstructor +public enum RequestLogEnum { + + /** + * info 基础信息 param 参数信息 full 全部 + */ + INFO, PARAM, FULL; + +} diff --git a/ruoyi-common/ruoyi-common-dubbo/src/main/java/com/ruoyi/common/dubbo/filter/DubboRequestFilter.java b/ruoyi-common/ruoyi-common-dubbo/src/main/java/com/ruoyi/common/dubbo/filter/DubboRequestFilter.java index 5f15ec25..65fab633 100644 --- a/ruoyi-common/ruoyi-common-dubbo/src/main/java/com/ruoyi/common/dubbo/filter/DubboRequestFilter.java +++ b/ruoyi-common/ruoyi-common-dubbo/src/main/java/com/ruoyi/common/dubbo/filter/DubboRequestFilter.java @@ -2,6 +2,7 @@ package com.ruoyi.common.dubbo.filter; import com.ruoyi.common.core.utils.JsonUtils; import com.ruoyi.common.core.utils.SpringUtils; +import com.ruoyi.common.dubbo.enumd.RequestLogEnum; import com.ruoyi.common.dubbo.properties.DubboCustomProperties; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.common.constants.CommonConstants; @@ -30,7 +31,11 @@ public class DubboRequestFilter implements Filter { client = CommonConstants.CONSUMER; } String baselog = "Client[" + client + "],InterfaceName=[" + invocation.getInvoker().getInterface().getSimpleName() + "],MethodName=[" + invocation.getMethodName() + "]"; - log.info("DUBBO - 服务调用: {},Parameter={}", baselog, invocation.getArguments()); + if (properties.getLogLevel() == RequestLogEnum.INFO) { + log.info("DUBBO - 服务调用: {}", baselog); + } else { + log.info("DUBBO - 服务调用: {},Parameter={}", baselog, invocation.getArguments()); + } long startTime = System.currentTimeMillis(); // 执行接口调用逻辑 @@ -41,7 +46,11 @@ public class DubboRequestFilter implements Filter { if (result.hasException() && invoker.getInterface().equals(GenericService.class)) { log.error("DUBBO - 服务异常: {},Exception={}", baselog, result.getException()); } else { - log.info("DUBBO - 服务响应: {},SpendTime=[{}ms],Response={}", baselog, elapsed, JsonUtils.toJsonString(new Object[]{result.getValue()})); + if (properties.getLogLevel() == RequestLogEnum.INFO) { + log.info("DUBBO - 服务响应: {},SpendTime=[{}ms]", baselog, elapsed); + } else if (properties.getLogLevel() == RequestLogEnum.FULL) { + log.info("DUBBO - 服务响应: {},SpendTime=[{}ms],Response={}", baselog, elapsed, JsonUtils.toJsonString(new Object[]{result.getValue()})); + } } return result; } diff --git a/ruoyi-common/ruoyi-common-dubbo/src/main/java/com/ruoyi/common/dubbo/properties/DubboCustomProperties.java b/ruoyi-common/ruoyi-common-dubbo/src/main/java/com/ruoyi/common/dubbo/properties/DubboCustomProperties.java index 1e2d1d61..e8fd900a 100644 --- a/ruoyi-common/ruoyi-common-dubbo/src/main/java/com/ruoyi/common/dubbo/properties/DubboCustomProperties.java +++ b/ruoyi-common/ruoyi-common-dubbo/src/main/java/com/ruoyi/common/dubbo/properties/DubboCustomProperties.java @@ -1,5 +1,6 @@ package com.ruoyi.common.dubbo.properties; +import com.ruoyi.common.dubbo.enumd.RequestLogEnum; import lombok.Data; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.cloud.context.config.annotation.RefreshScope; @@ -17,4 +18,7 @@ import org.springframework.stereotype.Component; public class DubboCustomProperties { private Boolean requestLog; + + private RequestLogEnum logLevel; + }