feat: 重构监控中心导航,新增资源监控4大模块

- 主菜单「监控告警」→「监控中心」
- 「告警中心」→「告警服务」移至链路追踪下方
- 新增资源监控 Tab 页(主机/中间件/SNMP/站点拨测)
- Agent 新增网络采集器(network)和磁盘IO采集器(diskio)
- 后端扩展 Agent 上报模型,支持 NetworkStat/DiskIOStat
- 前端 ServerTableRow 展示网络和磁盘IO实时指标
- WebSocket MetricsUpdate 推送扩展
This commit is contained in:
attacker committed 2026-06-18 09:30:45 +00:00
1 parent 020b7a9063
commit f3a9e5e8d0
21 files changed
+1007 -32

No files matched your search

+8 -6
View File
@@ -6,12 +6,14 @@ package model
// Report 为单次采集周期的完整上报报文
type Report struct {
Hostname string `json:"hostname"` // 主机名
Timestamp string `json:"timestamp"` // RFC3339 格式的 UTC 时间戳
CPU CPUStat `json:"cpu"` // CPU 指标
Memory MemoryStat `json:"memory"` // 内存指标
Disks []DiskStat `json:"disks"` // 磁盘指标列表
Ports []PortStat `json:"ports"` // 监听端口列表
Hostname string `json:"hostname"` // 主机名
Timestamp string `json:"timestamp"` // RFC3339 格式的 UTC 时间戳
CPU CPUStat `json:"cpu"` // CPU 指标
Memory MemoryStat `json:"memory"` // 内存指标
Disks []DiskStat `json:"disks"` // 磁盘指标列表
Ports []PortStat `json:"ports"` // 监听端口列表
Network NetworkStat `json:"network"` // 网络指标
DiskIO DiskIOStat `json:"disk_io"` // 磁盘 IO 指标
}
// CPUStat CPU 相关指标
+28
View File
@@ -0,0 +1,28 @@
package model
// NetworkStat 网络相关指标
type NetworkStat struct {
TCPEstablished int `json:"tcp_established"` // ESTABLISHED 连接数
TCPTimeWait int `json:"tcp_time_wait"` // TIME_WAIT 连接数
TCPTotal int `json:"tcp_total"` // TCP 总连接数
NicName string `json:"nic_name"` // 主网卡名
NetRxBPS float64 `json:"net_rx_bps"` // 网卡接收速率 (bytes/s)
NetTxBPS float64 `json:"net_tx_bps"` // 网卡发送速率 (bytes/s)
}
// DiskIOStat 磁盘 IO 相关指标
type DiskIOStat struct {
ReadBPS float64 `json:"read_bps"` // 读取速率 (bytes/s)
WriteBPS float64 `json:"write_bps"` // 写入速率 (bytes/s)
ReadIOPS float64 `json:"read_iops"` // 读取 IOPS (count/s)
WriteIOPS float64 `json:"write_iops"` // 写入 IOPS (count/s)
}
// SystemStat 系统信息(启动时采集一次)
type SystemStat struct {
OSVersion string `json:"os_version"` // OS 版本 (如 "Ubuntu 22.04")
Kernel string `json:"kernel"` // 内核版本
Uptime int64 `json:"uptime"` // 运行秒数
UlimitNofile int64 `json:"ulimit_nofile"` // ulimit -n (最大文件描述符)
UlimitNproc int64 `json:"ulimit_nproc"` // ulimit -u (最大进程数)
}