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

xv8emn3q  于 2022-10-19  发布在  其他
关注(0)|答案(1)|浏览(200)

使用 @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 的值,两者不一致,导致限流失败。

相关问题