mirror of
https://gitee.com/dromara/RuoYi-Cloud-Plus.git
synced 2025-09-06 04:18:07 +00:00
update dubbo 请求日志增加日志等级
This commit is contained in:
@@ -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;
|
||||
|
||||
}
|
@@ -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;
|
||||
}
|
||||
|
@@ -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;
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user