Sentinel icon indicating copy to clipboard operation
Sentinel copied to clipboard

在非web环境下自定义了limitApp来源,怎么设置origin的值?

Open tian-qingzhao opened this issue 3 years ago • 1 comments

使用 @SentinelResource 注解进行限流、熔断,同时规则里面设置了 limitApp 属性,怎么能更改 origin 的值,在com.alibaba.csp.sentinel.CtSph#entryWithPriority(com.alibaba.csp.sentinel.slotchain.ResourceWrapper, int, boolean, java.lang.Object...)方法里面通过InternalContextUtil.internalEnter(Constants.CONTEXT_DEFAULT_NAME)设置Context对象的属性,但是 origin 的值为空字符串,限流的逻辑在com.alibaba.csp.sentinel.slots.block.flow.FlowRuleChecker#selectNodeByRequesterAndStrategy方法里面比较 limitApporigin 的值,两者不一致,导致限流失败。

tian-qingzhao avatar Aug 11 '22 02:08 tian-qingzhao

凑巧看到,我的实现方案 image

IvesQing avatar Aug 19 '22 02:08 IvesQing