Add ZTE-first port traffic monitoring with task wizard and ops wall.

Collect interface bit/s via CLI on a schedule, store samples in Postgres, and chart trends with uPlot.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
oliver 2026-07-31 14:56:50 +08:00
parent a95c6598bb
commit efe8f58cd2
25 changed files with 2880 additions and 36 deletions

View file

@ -60,12 +60,65 @@ const zh = {
placeholder: {
title: "功能规划中",
body: "该能力尚未开放。",
portTrafficTitle: "端口流量监控",
portTrafficBody: "规划中:按任务采集设备端口流量并展示趋势。建议路径如下。",
portTrafficStep1: "任务定义:选择网元/端口范围、采集周期与保留策略",
portTrafficStep2: "采集:优先 CLI(display/show interface),规模上来后再 SNMP",
portTrafficStep3: "存储:端口 in/out bps、error 等时序或按小时汇总",
portTrafficStep4: "界面:任务列表 + 单端口趋势图",
},
},
portTraffic: {
title: "端口流量监控",
create: "新建任务",
backList: "返回列表",
created: "任务已创建",
createFailed: "创建失败",
started: "已启动",
paused: "已暂停",
stopped: "已停止",
deleted: "已删除",
confirmDelete: "删除该任务及其采样数据?",
empty: "暂无监控任务。请先创建任务。",
wall: "监控大屏",
start: "启动",
pause: "暂停",
stop: "停止",
delete: "删除",
step1: "参数",
step2: "选网元",
step3: "选端口",
step4: "确认",
prev: "上一步",
next: "下一步",
fieldTitle: "任务名称",
titlePh: "例如:接入侧上联",
titleRequired: "请填写任务名称",
portsRequired: "请至少选择一个端口",
interval: "周期(秒)",
retention: "保留(天)",
concurrency: "并发",
startNow: "创建后立即启动",
neKeywordPh: "名称 / IP / 厂商",
selectedNe: "已选 {{count}} 台网元",
selectedPorts: "已选 {{count}} 个端口",
pickNeFirst: "请先在上一步选择网元",
discover: "拉取端口",
confirmCreate: "创建任务",
wallTask: "任务",
wallPort: "接口",
pickPort: "选择接口",
range: "时间范围",
kpi: {
tasks: "任务数",
running: "运行中",
ports: "监控端口",
samples24h: "24h 样点",
},
col: {
title: "任务",
status: "状态",
ports: "端口",
interval: "周期",
last: "最近采集",
actions: "操作",
source: "来源",
name: "设备",
vendor: "厂商",
},
},
configSync: {