feat: 🛡️ Sentinel 集群监控插件 + API Key 系统 + 框架设置页
== API Key 系统 == - services/web_panel/routes/apikeys.py: CRUD + 权限模板 + 过期控制 - panel_auth + _check_plugin_auth 双重验证 (Session → API Key) - 模板: readonly(只读) / monitor(监控) / full(管理) - 持久化到 SenSuDB + 过期自动清理 == WebUI 框架设置页 == - static/web_panel/pages/settings.html: API Key 管理界面 - 创建对话框 (名称/权限/TTL), 列表表格, 一键删除 == 热重载修复 == - PluginService._reload_plugin: 路由器冻结时跳过 (避免破坏已注册路由) == 🛡️ Sentinel 插件 == - 多节点 SenSu 集群性能监控 - 后台 urllib+run_in_executor 轮询 (避免事件循环死锁) - SSE 实时推送仪表盘 - 节点管理页 (增删改+连接测试+备注) - 路径: /sentinel/api/nodes Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,12 @@
|
||||
plugin_name: "sentinel"
|
||||
permissions:
|
||||
- "plugin.sentinel.read"
|
||||
- "plugin.sentinel.write"
|
||||
- "framework.event.subscribe"
|
||||
- "framework.command.execute"
|
||||
|
||||
permission_descriptions:
|
||||
plugin.sentinel.read: "读取哨兵监控数据和节点配置"
|
||||
plugin.sentinel.write: "修改哨兵节点配置"
|
||||
framework.event.subscribe: "订阅框架事件"
|
||||
framework.command.execute: "执行哨兵管理命令"
|
||||
Reference in New Issue
Block a user