From 7e35e71119010a08cd717afccc7c75f3651fd1e4 Mon Sep 17 00:00:00 2001 From: fangjian0423 Date: Tue, 26 Mar 2019 20:35:33 +0800 Subject: [PATCH] fix bug of sentinel feign in 1.x branch --- .../scripts/feign-error.sh | 7 +++++++ .../src/main/resources/degraderule.json | 6 ++++++ .../alibaba/sentinel/feign/SentinelInvocationHandler.java | 2 +- 3 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/scripts/feign-error.sh diff --git a/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/scripts/feign-error.sh b/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/scripts/feign-error.sh new file mode 100644 index 00000000..09db2477 --- /dev/null +++ b/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/scripts/feign-error.sh @@ -0,0 +1,7 @@ +#!/usr/bin/env bash +n=1 +while [ $n -le 10 ] +do + echo `curl -s http://localhost:18083/divide-feign?a=1\&b=0` + let n++ +done diff --git a/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/resources/degraderule.json b/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/resources/degraderule.json index 71ea772f..886e8749 100644 --- a/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/resources/degraderule.json +++ b/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/resources/degraderule.json @@ -16,5 +16,11 @@ "count": 20.0, "grade": 0, "timeWindow": 30 + }, + { + "resource": "GET:http://service-provider-1X/divide", + "count": 0.5, + "grade": 1, + "timeWindow": 30 } ] \ No newline at end of file diff --git a/spring-cloud-alibaba-sentinel/src/main/java/org/springframework/cloud/alibaba/sentinel/feign/SentinelInvocationHandler.java b/spring-cloud-alibaba-sentinel/src/main/java/org/springframework/cloud/alibaba/sentinel/feign/SentinelInvocationHandler.java index 809879cc..acd7cdea 100644 --- a/spring-cloud-alibaba-sentinel/src/main/java/org/springframework/cloud/alibaba/sentinel/feign/SentinelInvocationHandler.java +++ b/spring-cloud-alibaba-sentinel/src/main/java/org/springframework/cloud/alibaba/sentinel/feign/SentinelInvocationHandler.java @@ -128,7 +128,7 @@ public class SentinelInvocationHandler implements InvocationHandler { } finally { if (entry != null) { - entry.exit(); + entry.exit(1, args); } ContextUtil.exit(); }