java代码中定义sentinel的流控规则FlowRule不生效,请问应该怎么配置?

问题背景

这两天在学习spring cloud sentinel,了解到定义流控规则有几个方式:
方式1:sentinel-dashboard配置流控规则;(规则在内存中)
方式2:使用nacos管理定义规则的配置文件;(规则可持久化)
方式3:可在代码中初始化各种规则,如FlowRule。
我本地尝试了前两种都没有问题,网上查了一下,但是用第三种方式定义的时候不生效,不知道问题在哪?

问题相关代码
@Component
public class FlowRules {

    @PostConstruct
    private void initFlowQpsRule(){
        List<FlowRule> rules = new ArrayList<>();
        FlowRule rule =new FlowRule("test");
        rule.setControlBehavior(0);
        rule.setGrade(RuleConstant.FLOW_GRADE_QPS);
        rule.setCount(10);
        rule.setStrategy(0);
        rule.setClusterMode(false);
        rule.setLimitApp("default");
        FlowRuleManager.loadRules(rules);
    }
}
运行结果及报错内容

启动服务后,在sentinel-dashboard看不到我定义的流控规则,测试也没有起到流控的效果,无报错信息。

我的解答思路和尝试过的方法

查了下网上都是提供我贴的代码这种方式,没看到还有其他思路,不知道是不是少配置了什么东西还是配置方法就错了。

我想要达到的结果

希望能在代码中定义流控规则或其他规则,并能在dashboard中看到定义的规则,规则能够生效。

rules.add(rule);
把规则对象加入规则集合中

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632