diff --git a/spring-cloud-alibaba-dependencies/pom.xml b/spring-cloud-alibaba-dependencies/pom.xml index 1cde0acf8..258a5737a 100644 --- a/spring-cloud-alibaba-dependencies/pom.xml +++ b/spring-cloud-alibaba-dependencies/pom.xml @@ -18,7 +18,7 @@ Spring Cloud Alibaba Dependencies - 1.6.2 + 1.6.3 3.1.0 0.7.1 1.1.1 diff --git a/spring-cloud-alibaba-examples/sentinel-example/sentinel-spring-cloud-gateway-example/src/main/resources/application.yaml b/spring-cloud-alibaba-examples/sentinel-example/sentinel-spring-cloud-gateway-example/src/main/resources/application.yaml index 27ae0cb9b..37181d40a 100644 --- a/spring-cloud-alibaba-examples/sentinel-example/sentinel-spring-cloud-gateway-example/src/main/resources/application.yaml +++ b/spring-cloud-alibaba-examples/sentinel-example/sentinel-spring-cloud-gateway-example/src/main/resources/application.yaml @@ -37,5 +37,7 @@ spring: mode: response response-status: 444 response-body: 1234 + scg: + order: -100 management.endpoints.web.exposure.include: "*" \ No newline at end of file diff --git a/spring-cloud-alibaba-sentinel-gateway/src/main/java/com/alibaba/cloud/sentinel/gateway/ConfigConstants.java b/spring-cloud-alibaba-sentinel-gateway/src/main/java/com/alibaba/cloud/sentinel/gateway/ConfigConstants.java index edbb6df40..89ae04538 100644 --- a/spring-cloud-alibaba-sentinel-gateway/src/main/java/com/alibaba/cloud/sentinel/gateway/ConfigConstants.java +++ b/spring-cloud-alibaba-sentinel-gateway/src/main/java/com/alibaba/cloud/sentinel/gateway/ConfigConstants.java @@ -22,6 +22,7 @@ package com.alibaba.cloud.sentinel.gateway; public interface ConfigConstants { String APP_TYPE_ZUUL_GATEWAY = "12"; + String APP_TYPE_SCG_GATEWAY = "11"; String ZUUl_PREFIX = "spring.cloud.sentinel.zuul"; diff --git a/spring-cloud-alibaba-sentinel-gateway/src/main/java/com/alibaba/cloud/sentinel/gateway/scg/SentinelGatewayProperties.java b/spring-cloud-alibaba-sentinel-gateway/src/main/java/com/alibaba/cloud/sentinel/gateway/scg/SentinelGatewayProperties.java index 35ead3829..86e3996b2 100644 --- a/spring-cloud-alibaba-sentinel-gateway/src/main/java/com/alibaba/cloud/sentinel/gateway/scg/SentinelGatewayProperties.java +++ b/spring-cloud-alibaba-sentinel-gateway/src/main/java/com/alibaba/cloud/sentinel/gateway/scg/SentinelGatewayProperties.java @@ -18,6 +18,7 @@ package com.alibaba.cloud.sentinel.gateway.scg; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.boot.context.properties.NestedConfigurationProperty; +import org.springframework.core.Ordered; import com.alibaba.cloud.sentinel.gateway.ConfigConstants; import com.alibaba.cloud.sentinel.gateway.FallbackProperties; @@ -31,6 +32,8 @@ public class SentinelGatewayProperties { @NestedConfigurationProperty private FallbackProperties fallback; + private Integer order = Ordered.HIGHEST_PRECEDENCE; + public FallbackProperties getFallback() { return fallback; } @@ -40,4 +43,11 @@ public class SentinelGatewayProperties { return this; } + public Integer getOrder() { + return order; + } + + public void setOrder(Integer order) { + this.order = order; + } } diff --git a/spring-cloud-alibaba-sentinel-gateway/src/main/java/com/alibaba/cloud/sentinel/gateway/scg/SentinelSCGAutoConfiguration.java b/spring-cloud-alibaba-sentinel-gateway/src/main/java/com/alibaba/cloud/sentinel/gateway/scg/SentinelSCGAutoConfiguration.java index 1a8e68358..b7693f385 100644 --- a/spring-cloud-alibaba-sentinel-gateway/src/main/java/com/alibaba/cloud/sentinel/gateway/scg/SentinelSCGAutoConfiguration.java +++ b/spring-cloud-alibaba-sentinel-gateway/src/main/java/com/alibaba/cloud/sentinel/gateway/scg/SentinelSCGAutoConfiguration.java @@ -45,7 +45,6 @@ import org.springframework.web.server.ServerWebExchange; import com.alibaba.cloud.sentinel.gateway.ConfigConstants; import com.alibaba.cloud.sentinel.gateway.FallbackProperties; -import com.alibaba.csp.sentinel.adapter.gateway.common.SentinelGatewayConstants; import com.alibaba.csp.sentinel.adapter.gateway.sc.SentinelGatewayFilter; import com.alibaba.csp.sentinel.adapter.gateway.sc.callback.BlockRequestHandler; import com.alibaba.csp.sentinel.adapter.gateway.sc.callback.GatewayCallbackManager; @@ -94,7 +93,7 @@ public class SentinelSCGAutoConfiguration { private void initAppType() { System.setProperty(SentinelConfig.APP_TYPE, - String.valueOf(SentinelGatewayConstants.APP_TYPE_GATEWAY)); + String.valueOf(ConfigConstants.APP_TYPE_SCG_GATEWAY)); } private void initFallback() { @@ -149,8 +148,10 @@ public class SentinelSCGAutoConfiguration { @Order(-1) @ConditionalOnMissingBean public SentinelGatewayFilter sentinelGatewayFilter() { - logger.info("[Sentinel SpringCloudGateway] register SentinelGatewayFilter"); - return new SentinelGatewayFilter(); + logger.info( + "[Sentinel SpringCloudGateway] register SentinelGatewayFilter with order: {}", + gatewayProperties.getOrder()); + return new SentinelGatewayFilter(gatewayProperties.getOrder()); } }