refactor: rename EZOps → AIOps globally (brand unification)
This commit is contained in:
1 parent
24fa17c2a8
commit
94dbc89b9b
21 files changed
+270
-32
No files matched your search
@@ -0,0 +1,238 @@
|
||||
# 监控系统全面升级实施方案
|
||||
|
||||
> **For Hermes:** Execute phase by phase, each phase is independently deployable.
|
||||
|
||||
**Goal:** 构建 4 大监控模块:主机监控、中间件监控、SNMP 设备监控、站点拨测
|
||||
|
||||
**架构:** Agent 扩展采集器 → Backend 新增路由/处理器 → 前端新建监控面板
|
||||
|
||||
**Tech Stack:** Go (Agent/Backend), React+TypeScript (Frontend), MySQL+Redis (Storage), gosnmp (SNMP library)
|
||||
|
||||
---
|
||||
|
||||
## Phase 1: Agent 指标扩展 + 主机监控仪表盘 🖥️
|
||||
|
||||
### Task 1.1: Agent 新增采集器 - 网络指标
|
||||
**Files:**
|
||||
- Create: `agent/collector/network.go`
|
||||
- Modify: `agent/model/model.go`
|
||||
- Modify: `agent/main.go`
|
||||
|
||||
**网络指标采集:**
|
||||
- 并发连接数 (ESTABLISHED via /proc/net/sockstat)
|
||||
- TIME_WAIT 连接数
|
||||
- 网卡 rx_bytes/s, tx_bytes/s(两次采集差值 / 间隔)
|
||||
- 网卡名列表和速率
|
||||
|
||||
### Task 1.2: Agent 新增采集器 - 磁盘 IO
|
||||
**Files:**
|
||||
- Create: `agent/collector/diskio.go`
|
||||
- Modify: `agent/model/model.go`
|
||||
|
||||
**磁盘 IO 指标:**
|
||||
- 读取 BPS (bytes/s)
|
||||
- 写入 BPS (bytes/s)
|
||||
- 读取 IOPS (count/s)
|
||||
- 写入 IOPS (count/s)
|
||||
|
||||
### Task 1.3: Agent 新增采集器 - 进程监控
|
||||
**Files:**
|
||||
- Create: `agent/collector/process.go`
|
||||
- Modify: `agent/model/model.go`
|
||||
|
||||
**进程监控:**
|
||||
- Top N 进程 CPU/内存使用
|
||||
- 进程总数
|
||||
- 僵尸进程数
|
||||
|
||||
### Task 1.4: Agent 新增采集器 - 系统信息(启动时一次)
|
||||
**Files:**
|
||||
- Create: `agent/collector/system.go`
|
||||
- Modify: `agent/model/model.go`
|
||||
|
||||
**系统信息:**
|
||||
- OS 版本 (cat /etc/os-release)
|
||||
- 内核版本 (uname -r)
|
||||
- 运行时间 (uptime)
|
||||
- ulimit -n (nofile 上限)
|
||||
- ulimit -u (nproc 上限)
|
||||
|
||||
### Task 1.5: Backend - 扩展 AgentReport 模型
|
||||
**Files:**
|
||||
- Modify: `backend/internal/models/agent.go`
|
||||
- Modify: `backend/internal/api/handlers/agent.go` (ReceiveReport)
|
||||
|
||||
**扩展字段:**
|
||||
- NetworkInfo JSON (net_connections, net_rx_bps, net_tx_bps, nic_name)
|
||||
- DiskIOInfo JSON (read_bps, write_bps, read_iops, write_iops)
|
||||
- ProcessInfo JSON (top_processes, total_proc, zombie_count)
|
||||
- SystemInfo JSON (os_version, kernel, uptime, ulimit_nofile, ulimit_nproc)
|
||||
|
||||
### Task 1.6: Backend - 主机监控 API
|
||||
**Files:**
|
||||
- Create: `backend/internal/api/handlers/host_monitor.go`
|
||||
- Modify: `backend/internal/api/routes/routes.go`
|
||||
|
||||
**API 端点:**
|
||||
- `GET /api/v1/monitor/host/:hostname/overview` - 主机概览
|
||||
- `GET /api/v1/monitor/host/:hostname/metrics?metric=cpu&from=&to=` - 历史指标
|
||||
- `GET /api/v1/monitor/host/:hostname/processes` - 进程列表
|
||||
- `GET /api/v1/monitor/host/:hostname/network` - 网络指标
|
||||
|
||||
### Task 1.7: Frontend - 主机监控面板
|
||||
**Files:**
|
||||
- Create: `frontend/src/pages/HostMonitor.tsx`
|
||||
- Create: `frontend/src/components/monitor/HostCard.tsx`
|
||||
- Create: `frontend/src/components/monitor/MetricChart.tsx`
|
||||
- Modify: `frontend/src/App.tsx` (add route /monitor/host)
|
||||
|
||||
**展示内容:**
|
||||
- 主机卡片:CPU/内存/磁盘使用率仪表盘
|
||||
- 趋势图:CPU/内存/磁盘 5m/1h/6h/24h
|
||||
- 网络:并发连接数、网卡带宽趋势
|
||||
- 进程 TOP 10 表格
|
||||
|
||||
---
|
||||
|
||||
## Phase 2: 中间件监控 🔌
|
||||
|
||||
### Task 2.1: Agent 新增采集器 - Redis
|
||||
**Files:**
|
||||
- Create: `agent/collector/redis.go`
|
||||
- Modify: `agent/model/model.go`
|
||||
|
||||
**Redis 指标(需要配置 host:port:password):**
|
||||
- 连接数 (connected_clients)
|
||||
- 内存使用 (used_memory)
|
||||
- 命中率 (keyspace_hits / (hits + misses))
|
||||
- Key 数量
|
||||
- 慢查询数
|
||||
- QPS (instantaneous_ops_per_sec)
|
||||
|
||||
### Task 2.2: Agent 新增采集器 - MySQL
|
||||
**Files:**
|
||||
- Create: `agent/collector/mysql.go`
|
||||
|
||||
**MySQL 指标:**
|
||||
- 当前连接数 / 最大连接数
|
||||
- QPS (Questions 差值)
|
||||
- 慢查询数
|
||||
- Buffer Pool 命中率
|
||||
- 复制延迟(如有)
|
||||
|
||||
### Task 2.3: Backend - 中间件监控 API + 配置管理
|
||||
**Files:**
|
||||
- Create: `backend/internal/api/handlers/middleware_monitor.go`
|
||||
- Create: `backend/internal/models/middleware_config.go` (RedisConfig, MySQLConfig)
|
||||
- Modify: `backend/internal/api/routes/routes.go`
|
||||
|
||||
**API:**
|
||||
- `POST /api/v1/monitor/middleware/config` - 配置中间件认证
|
||||
- `GET /api/v1/monitor/middleware/redis/:hostname` - Redis 指标
|
||||
- `GET /api/v1/monitor/middleware/mysql/:hostname` - MySQL 指标
|
||||
|
||||
### Task 2.4: Frontend - 中间件监控面板
|
||||
**Files:**
|
||||
- Create: `frontend/src/pages/MiddlewareMonitor.tsx`
|
||||
|
||||
---
|
||||
|
||||
## Phase 3: SNMP 设备监控 📡
|
||||
|
||||
### Task 3.1: Backend - SNMP 采集引擎 + OID 模板系统
|
||||
**Files:**
|
||||
- Create: `backend/internal/api/handlers/snmp_monitor.go`
|
||||
- Create: `backend/internal/models/snmp_template.go`
|
||||
- Create: `backend/pkg/snmp/collector.go` (uses gosnmp)
|
||||
- Add dep: `github.com/gosnmp/gosnmp`
|
||||
|
||||
**SNMP 模板系统:**
|
||||
- 模板包含一组 OID → 指标名映射
|
||||
- 预置模板:Cisco 交换机、H3C 交换机、华为交换机、服务器 iLO/iDRAC
|
||||
- 用户可自定义 OID 模板
|
||||
|
||||
### Task 3.2: Backend - SNMP 定时采集任务
|
||||
**Files:**
|
||||
- Create: `backend/internal/scheduler/snmp_scheduler.go`
|
||||
|
||||
**定时采集:**
|
||||
- 每 5 分钟对配置的 SNMP 设备执行采集
|
||||
- 存储到 agent_reports 表(type=snmp)
|
||||
|
||||
### Task 3.3: Frontend - SNMP 设备管理 + 监控面板
|
||||
**Files:**
|
||||
- Create: `frontend/src/pages/SNMPMonitor.tsx`
|
||||
- Create: `frontend/src/components/monitor/SNMPDeviceCard.tsx`
|
||||
|
||||
---
|
||||
|
||||
## Phase 4: 站点拨测 🌐
|
||||
|
||||
### Task 4.1: Backend - 拨测引擎
|
||||
**Files:**
|
||||
- Create: `backend/internal/api/handlers/site_monitor.go`
|
||||
- Create: `backend/internal/models/site_task.go`
|
||||
- Create: `backend/pkg/probe/` (HTTP, PING, WebSocket, DNS, TCP, UDP, SMTP, POP3, FTP probes)
|
||||
|
||||
**8 种拨测类型实现:**
|
||||
- HTTP(S): GET/POST,检查状态码 + 响应时间 + 正则匹配 body
|
||||
- PING: ICMP echo
|
||||
- WebSocket: 连接 + 心跳
|
||||
- DNS: 解析时间 + 结果验证
|
||||
- TCP: 端口连通性
|
||||
- UDP: 端口连通性
|
||||
- SMTP: 连接 + STARTTLS
|
||||
- POP3: 连接 + 认证
|
||||
- FTP: 连接 + 登录
|
||||
|
||||
### Task 4.2: Backend - 拨测定时任务
|
||||
**Files:**
|
||||
- Modify: `backend/internal/scheduler/` (add probe scheduler)
|
||||
|
||||
### Task 4.3: Frontend - 站点拨测管理面板
|
||||
**Files:**
|
||||
- Create: `frontend/src/pages/SiteMonitor.tsx`
|
||||
- Create: `frontend/src/components/monitor/ProbeTaskForm.tsx`
|
||||
- Create: `frontend/src/components/monitor/ProbeResultChart.tsx`
|
||||
|
||||
**展示内容:**
|
||||
- 拨测任务列表(类型、URL、频率、状态)
|
||||
- 响应时间趋势图
|
||||
- 可用率统计
|
||||
- 告警配置
|
||||
|
||||
---
|
||||
|
||||
## Phase 5: 导航重构 🧭
|
||||
|
||||
### Task 5.1: 导航结构重组
|
||||
**Files:**
|
||||
- Modify: `frontend/src/components/layout/MainLayout.tsx` 或 Sidebar
|
||||
|
||||
**新导航结构:**
|
||||
```
|
||||
📊 监控告警
|
||||
├── 🖥️ 主机监控 /monitor/host
|
||||
├── 🔌 中间件监控 /monitor/middleware
|
||||
├── 📡 SNMP 监控 /monitor/snmp
|
||||
├── 🌐 站点拨测 /monitor/site
|
||||
├── 📈 Agent 监控 /agent-monitor (已有)
|
||||
├── 🚨 告警中心 /alert-center (已有)
|
||||
└── 📜 告警规则 /agent-alerts (已有)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 执行顺序
|
||||
|
||||
1. **Phase 1**(最优先,用户当前最需要)
|
||||
→ Agent 扩展网络/磁盘IO/进程/系统信息
|
||||
→ 前端主机监控面板
|
||||
|
||||
2. **Phase 2** → 中间件监控
|
||||
|
||||
3. **Phase 3** → SNMP 设备监控(较复杂,需 gosnmp 依赖)
|
||||
|
||||
4. **Phase 4** → 站点拨测
|
||||
|
||||
5. **Phase 5** → 导航重构(收尾)
|
||||
@@ -1,4 +1,4 @@
|
||||
# CLAUDE.md — EZOps AIOps
|
||||
# CLAUDE.md — AIOps
|
||||
|
||||
本文档为 Claude Code / Hermes 等 AI 编程助手提供在代码库中工作的指导说明。
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
|
||||
## 项目概述
|
||||
|
||||
**EZOps AIOps** 是一个企业级智能运维平台,聚焦三大核心能力:
|
||||
**AIOps** 是一个企业级智能运维平台,聚焦三大核心能力:
|
||||
|
||||
1. **资产管理** — 服务器管理、云资源(云账号/域名/账单)、K8s 集群
|
||||
2. **监控告警** — Agent 采集指标、告警引擎(资源阈值/离线检测)、告警中心、日志能力、链路追踪、监控大屏
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# EZOps AIOps 智能运维平台
|
||||
# AIOps 智能运维平台
|
||||
|
||||
> 企业级云原生智能运维解决方案,集成资产管理、应用发布、监控告警、自动化运维和 AI 智能分析。
|
||||
|
||||
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
# EZOps 后端服务
|
||||
# AIOps 后端服务
|
||||
|
||||
EZOps 是一个专业的 AIOps 智能运维平台后端服务,基于 Go + Gin 框架开发。
|
||||
AIOps 是一个专业的 AIOps 智能运维平台后端服务,基于 Go + Gin 框架开发。
|
||||
|
||||
## 功能特性
|
||||
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
# EZOps 配置文件示例
|
||||
# AIOps 配置文件示例
|
||||
# 复制此文件为 config.yaml 并根据实际情况修改
|
||||
|
||||
# 应用配置
|
||||
app:
|
||||
name: "EZOps"
|
||||
name: "AIOps"
|
||||
version: "1.0.0"
|
||||
port: 8080
|
||||
mode: "debug" # debug, release, test
|
||||
|
||||
@@ -39,7 +39,7 @@ services:
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
|
||||
# EZOps 后端服务
|
||||
# AIOps 后端服务
|
||||
backend:
|
||||
build:
|
||||
context: .
|
||||
|
||||
@@ -159,7 +159,7 @@ func resolveEndpoint(provider, endpoint string) string {
|
||||
}
|
||||
|
||||
// defaultSystemPrompt AIOps 运维助手默认系统提示词 // Logan.Li
|
||||
const defaultSystemPrompt = `你是 EZOps AIOps 智能运维助手,专注于企业级运维场景。你可以:
|
||||
const defaultSystemPrompt = `你是 AIOps 智能运维助手,专注于企业级运维场景。你可以:
|
||||
1. 分析服务器、容器、K8s 集群的性能瓶颈与异常
|
||||
2. 解读告警事件并给出根因分析与处置建议
|
||||
3. 生成 Shell / Ansible / Python 运维脚本
|
||||
|
||||
@@ -236,7 +236,7 @@ func (h *WebShellHandler) Terminal(c *gin.Context) {
|
||||
}
|
||||
|
||||
// 发送欢迎消息
|
||||
welcome := "\r\n\x1b[32mEZOps WebShell\x1b[0m — 已连接 " + server.Hostname + " (" + server.IP + ")\r\n\r\n"
|
||||
welcome := "\r\n\x1b[32mAIOps WebShell\x1b[0m — 已连接 " + server.Hostname + " (" + server.IP + ")\r\n\r\n"
|
||||
conn.WriteJSON(WSMessage{
|
||||
Status: 0,
|
||||
Data: welcome,
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
-- EZOps 数据库初始化脚本
|
||||
-- AIOps 数据库初始化脚本
|
||||
-- 创建数据库
|
||||
CREATE DATABASE IF NOT EXISTS ezops CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
|
||||
@@ -376,7 +376,7 @@ func generateAlertRules(db *gorm.DB) error {
|
||||
|
||||
func generateNotifyChannels(db *gorm.DB) error {
|
||||
channels := []models.NotifyChannel{
|
||||
{Name: "运维邮件通知", Type: "email", Config: `{"recipients":["ops@ezops.com","admin@ezops.com"],"subject":"[EZOps告警]"}`, Enabled: true, TestStatus: "success"},
|
||||
{Name: "运维邮件通知", Type: "email", Config: `{"recipients":["ops@ezops.com","admin@ezops.com"],"subject":"[AIOps告警]"}`, Enabled: true, TestStatus: "success"},
|
||||
{Name: "短信通知", Type: "sms", Config: `{"phones":["13800138000","13900139000"],"template":"告警:{{alert_name}}"}`, Enabled: true, TestStatus: "success"},
|
||||
{Name: "钉钉机器人", Type: "dingtalk", Config: `{"webhook":"https://oapi.dingtalk.com/robot/send?access_token=eZOps***","secret":"SEC***","at_all":false}`, Enabled: true, TestStatus: "success"},
|
||||
{Name: "企业微信机器人", Type: "wechat", Config: `{"webhook":"https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=eZOps***"}`, Enabled: true, TestStatus: "success"},
|
||||
@@ -426,7 +426,7 @@ func generatePipelines(db *gorm.DB) error {
|
||||
}
|
||||
|
||||
func generateAppReleases(db *gorm.DB) error {
|
||||
apps := []string{"EZOps 前端", "EZOps 后端", "用户中心", "支付网关", "数据分析平台"}
|
||||
apps := []string{"AIOps 前端", "AIOps 后端", "用户中心", "支付网关", "数据分析平台"}
|
||||
environments := []string{"dev", "test", "staging", "prod"}
|
||||
statuses := []string{"pending", "building", "deploying", "success", "success", "success", "failed", "rolled_back"}
|
||||
authors := []string{"admin", "ops01", "dev01"}
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
# EZOps 后端项目总结
|
||||
# AIOps 后端项目总结
|
||||
|
||||
## 项目概述
|
||||
|
||||
EZOps 后端是一个基于 Go + Gin 框架开发的专业 AIOps 智能运维平台 API 服务。
|
||||
AIOps 后端是一个基于 Go + Gin 框架开发的专业 AIOps 智能运维平台 API 服务。
|
||||
|
||||
## 项目结构
|
||||
|
||||
|
||||
+3
-3
@@ -1,4 +1,4 @@
|
||||
# EZOps AIOps 智能运维平台 - 产品设计文档
|
||||
# AIOps 智能运维平台 - 产品设计文档
|
||||
|
||||
> 文档版本: v1.0.0
|
||||
> 编写日期: 2025-04-14
|
||||
@@ -25,7 +25,7 @@
|
||||
|
||||
### 1.1 产品定位
|
||||
|
||||
EZOps AIOps 智能运维平台是一款面向企业级用户的云原生智能运维解决方案,通过深度集成AI大模型能力,实现运维工作的智能化、自动化,帮助企业降低运维成本、提升系统稳定性。
|
||||
AIOps 智能运维平台是一款面向企业级用户的云原生智能运维解决方案,通过深度集成AI大模型能力,实现运维工作的智能化、自动化,帮助企业降低运维成本、提升系统稳定性。
|
||||
|
||||
### 1.2 核心价值
|
||||
|
||||
@@ -639,4 +639,4 @@ services:
|
||||
|
||||
---
|
||||
|
||||
*本文档由EZOps产品团队维护,如有疑问请联系 product@ezops.io*
|
||||
*本文档由AIOps产品团队维护,如有疑问请联系 product@ezops.io*
|
||||
@@ -1,8 +1,8 @@
|
||||
# EZOps AIOps 智能运维平台 - 项目总结
|
||||
# AIOps 智能运维平台 - 项目总结
|
||||
|
||||
## 项目概述
|
||||
|
||||
EZOps 是一个专业的 AIOps 智能运维平台,包含完整的前后端代码,支持云平台服务器资产管理、Kubernetes 集群管理、应用发布、监控告警、审批流程等核心功能。
|
||||
AIOps 是一个专业的 AIOps 智能运维平台,包含完整的前后端代码,支持云平台服务器资产管理、Kubernetes 集群管理、应用发布、监控告警、审批流程等核心功能。
|
||||
|
||||
## 项目结构
|
||||
|
||||
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
# EZOps AIOps 开发文档
|
||||
# AIOps 开发文档
|
||||
|
||||
本目录包含 EZOps AIOps 智能运维平台的全部开发文档。
|
||||
本目录包含 AIOps 智能运维平台的全部开发文档。
|
||||
|
||||
## 文档索引
|
||||
|
||||
|
||||
+2
-2
@@ -1,4 +1,4 @@
|
||||
# EZOps AIOps 智能运维平台 - 产品路线图
|
||||
# AIOps 智能运维平台 - 产品路线图
|
||||
|
||||
> 版本: v1.0.0
|
||||
> 更新日期: 2025-04-14
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
## 概述
|
||||
|
||||
EZOps AIOps 智能运维平台是一个面向企业级用户的云原生智能运维解决方案,集成了资产管理、应用发布、监控告警、自动化运维和AI智能分析等核心能力。本路线图规划了产品从MVP到成熟版本的演进路径。
|
||||
AIOps 智能运维平台是一个面向企业级用户的云原生智能运维解决方案,集成了资产管理、应用发布、监控告警、自动化运维和AI智能分析等核心能力。本路线图规划了产品从MVP到成熟版本的演进路径。
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
## 概述
|
||||
|
||||
EZOps AIOps 使用 GORM 作为 ORM 框架,支持 SQLite / MySQL / PostgreSQL。
|
||||
AIOps 使用 GORM 作为 ORM 框架,支持 SQLite / MySQL / PostgreSQL。
|
||||
|
||||
- **默认**: SQLite(零配置,数据文件 `backend/data/aiops.db`)
|
||||
- **生产**: 推荐使用 MySQL 或 PostgreSQL
|
||||
|
||||
+1
-1
@@ -88,7 +88,7 @@ server {
|
||||
|
||||
```ini
|
||||
[Unit]
|
||||
Description=EZOps AIOps Server
|
||||
Description=AIOps Server
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
|
||||
+2
-2
@@ -1,4 +1,4 @@
|
||||
# EZOps AIOps 开发日志
|
||||
# AIOps 开发日志
|
||||
|
||||
## 2026-06-13 项目初始化
|
||||
|
||||
@@ -1741,7 +1741,7 @@ cd ~/devops/aiops
|
||||
- ./run.sh restart 后 /health 正常 + 前端 200
|
||||
- API 验证(curl + 模拟 OpenAI SSE 服务器 python3 /tmp/mock_openai_sse.py 监听 :18899):
|
||||
- 临时启用 config 指向 mock server → POST /aiops/chat/stream 返回 SSE 流:`data: {"content":"你好!"}\n\ndata: {"content":"我是 "}\n\n...` 逐块输出,最终 `event: done\ndata: {"model":"qwen2.5:7b"}`
|
||||
- sqlite3 验证:成对写入 chat_histories(user:"你是谁" + assistant:"你好!我是 EZOps..."),刷新后历史可见
|
||||
- sqlite3 验证:成对写入 chat_histories(user:"你是谁" + assistant:"你好!我是 AIOps..."),刷新后历史可见
|
||||
- 未配置时 → `event: error\ndata: {"code":400,"message":"LLM 服务未配置..."}`
|
||||
- 原非流式 POST /chat 仍正常工作(向后兼容)
|
||||
- 浏览器验证 /ai-assistant:
|
||||
|
||||
+1
-1
@@ -62,7 +62,7 @@ chmod +x run.sh
|
||||
|
||||
输出示例:
|
||||
```
|
||||
[INFO] ========== EZOps AIOps 启动脚本 ==========
|
||||
[INFO] ========== AIOps 启动脚本 ==========
|
||||
[INFO] 正在启动后端服务...
|
||||
[INFO] 编译 Go 程序...
|
||||
[SUCCESS] 后端服务已启动 (PID: 12345, 端口: 8080)
|
||||
|
||||
@@ -235,7 +235,7 @@ export function Login() {
|
||||
</svg>
|
||||
</div>
|
||||
<h1 className="text-3xl font-bold dg-gradient-text tracking-tight">
|
||||
EZOps AIOps
|
||||
AIOps
|
||||
</h1>
|
||||
<p
|
||||
className="mt-2 text-sm"
|
||||
@@ -366,7 +366,7 @@ export function Login() {
|
||||
className="absolute bottom-4 left-0 right-0 text-center text-xs"
|
||||
style={{ color: 'var(--dg-text-muted)', opacity: 0.7 }}
|
||||
>
|
||||
© EZOps AIOps · 智能运维平台
|
||||
© AIOps · 智能运维平台
|
||||
</p>
|
||||
</div>
|
||||
</>
|
||||
|
||||
@@ -47,7 +47,7 @@ export const CHANNEL_TYPES: { key: string; label: string; placeholder: string }[
|
||||
{ key: 'dingtalk', label: '钉钉', placeholder: '{\n "webhook": "https://oapi.dingtalk.com/robot/send?access_token=***",\n "secret": "SECxxx"\n}' },
|
||||
{ key: 'wechat', label: '企业微信', placeholder: '{\n "webhook": "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=***"\n}' },
|
||||
{ key: 'email', label: '邮件', placeholder: '{\n "to": "ops@ezops.io",\n "subject": "告警通知"\n}' },
|
||||
{ key: 'sms', label: '短信', placeholder: '{\n "phones": "13800138000",\n "sign": "EZOps"\n}' },
|
||||
{ key: 'sms', label: '短信', placeholder: '{\n "phones": "13800138000",\n "sign": "AIOps"\n}' },
|
||||
{ key: 'webhook', label: 'Webhook', placeholder: '{\n "url": "https://example.com/alert"\n}' },
|
||||
];
|
||||
|
||||
|
||||
Reference in new issue
Block a user