|
@@ -1,6 +1,8 @@
|
|
|
package com.tzld.piaoquan.abtest.web;
|
|
|
|
|
|
import com.google.common.base.Stopwatch;
|
|
|
+import com.google.protobuf.MessageOrBuilder;
|
|
|
+import com.tzld.piaoquan.abtest.client.ProtobufUtils;
|
|
|
import com.tzld.piaoquan.abtest.util.JSONUtils;
|
|
|
import com.tzld.piaoquan.abtest.util.TraceUtils;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
@@ -10,6 +12,8 @@ import org.aspectj.lang.annotation.Aspect;
|
|
|
import org.aspectj.lang.reflect.MethodSignature;
|
|
|
import org.springframework.stereotype.Component;
|
|
|
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.List;
|
|
|
import java.util.concurrent.TimeUnit;
|
|
|
|
|
|
/**
|
|
@@ -27,8 +31,18 @@ public class ControllerAspect {
|
|
|
String className = pjp.getTarget().getClass().getSimpleName();
|
|
|
MethodSignature signature = (MethodSignature) pjp.getSignature();
|
|
|
Stopwatch stopwatch = Stopwatch.createStarted();
|
|
|
+ List<Object> params = new ArrayList<>();
|
|
|
+ if (pjp.getArgs() != null) {
|
|
|
+ for(Object arg : pjp.getArgs()){
|
|
|
+ if(arg instanceof MessageOrBuilder){
|
|
|
+ params.add(ProtobufUtils.toJson((MessageOrBuilder) arg));
|
|
|
+ } else {
|
|
|
+ params.add(arg);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
log.info("request className=[{}], method=[{}], param=[{}]", className, signature.getName(),
|
|
|
- JSONUtils.toJson(pjp.getArgs()));
|
|
|
+ JSONUtils.toJson(params));
|
|
|
Object result = pjp.proceed();
|
|
|
if (result != null && result instanceof String) {
|
|
|
log.info("response result=[{}] cost=[{}]", result, stopwatch.stop().elapsed(TimeUnit.MILLISECONDS));
|