下载SpringCloud Alibaba的Sentinel源码,对sentinel控制台进行修改。我们可以看到提供的流控有v1v2两个版本,默认使用的是v1版本,通过阅读官方文档,官方推荐在生产环境下配置动态数据源,v2版本就是提供给我们,方便我们进行自定义的。详情介绍请看官方说明:https://github.com/alibaba/Sentinel/wiki/%E5%9C%A8%E7%94%9F%E4%BA%A7%E7%8E%AF%E5%A2%83%E4%B8%AD%E4%BD%BF%E7%94%A8-Sentinel
如上图所示有两个流量控制的Controller,v1就是默认的流控接口,默认将控制台添加的流量控制规则推送到客户端,并存储在客户端的内存中。配置动态数据源,要求控制台的将规则推送到Nacos、Zookeeper或者Apollo数据源,实现将规则持久化。但是我们修改完V2版本进行自定义完成后,问题出现了,启动控制台后,发现控制台还是调用的v1版本的API,根本不请求我们自定义的V2版本的接口。所以需要我们对前端界面进行一点修改:
打开控制台源码的前端源码,打开sidebar.html,并修改一处代码即可,如下图所示