diff --git a/internal/web/ui.go b/internal/web/ui.go index b03c1fa..63e13ec 100644 --- a/internal/web/ui.go +++ b/internal/web/ui.go @@ -760,6 +760,9 @@ func (u *UI) pageDashboard(w http.ResponseWriter, r *http.Request) { } } data.Title = "总览" + if u.alarmCollector != nil { + data.AlarmRecords = u.alarmCollector.GetRecent(5) + } data.Tasks = nil if u.tasks != nil { data.Tasks = u.tasks.ListTasks() diff --git a/internal/web/ui/templates/dashboard.html b/internal/web/ui/templates/dashboard.html index ae2e9b1..d56329a 100644 --- a/internal/web/ui/templates/dashboard.html +++ b/internal/web/ui/templates/dashboard.html @@ -1,68 +1,66 @@ {{define "dashboard"}} -
-
-
-

全局 KPI

-
+{{if .AlarmRecords}} +
+
+

{{icon "bell"}}最近告警

+ 查看全部
-
-
设备总数
{{.DeviceCount}}
已纳管的边缘设备
-
在线率
{{.OnlineCount}} / {{.DeviceCount}}
在线设备占比
-
离线节点
{{.OfflineCount}}
需要检查网络或设备服务
-
执行中任务
{{.RunningTaskCount}}
正在下发或控制节点
+
+ {{range .AlarmRecords}} +
+
+ {{.RuleName}} + {{.Channel}} +
+
{{.Timestamp}}
+
+ {{end}}
+{{end}} +
+
设备总数
{{.DeviceCount}}
已纳管的边缘设备
+
在线率
{{.OnlineCount}} / {{.DeviceCount}}
在线设备占比
+
离线节点
{{.OfflineCount}}
需要检查网络或设备服务
+
执行中任务
{{.RunningTaskCount}}
正在下发或控制节点
+
+ +{{if .AttentionDevices}}

异常设备

- - - + {{range .AttentionDevices}} - - - - - - - + + + + + + + {{else}} - + {{end}}
节点状态管理地址最后心跳操作
节点状态管理地址最后心跳操作
{{.DeviceName}}
{{.DeviceID}}
离线{{.IP}}:{{.AgentPort}}{{ago .LastSeenMs}}查看
{{.DeviceName}}
{{.DeviceID}}
离线{{.IP}}:{{.AgentPort}}{{ago .LastSeenMs}}查看
暂无需要关注的节点。
暂无需要关注的节点。
+{{end}}

最近任务

- - - + {{range .Tasks}} - - + + {{else}}
任务标识操作状态节点数
任务标识操作状态节点数
{{.ID}} - {{if eq .Type "config_apply"}}下发设备分配 - {{else if eq .Type "reload"}}重载识别服务 - {{else if eq .Type "rollback"}}回滚识别配置 - {{else if eq .Type "media_start"}}启动视频分析服务 - {{else if eq .Type "media_restart"}}重启视频分析服务 - {{else if eq .Type "media_stop"}}停止视频分析服务 - {{else}}{{.Type}}{{end}} - - {{if eq .Status "success"}}成功 - {{else if eq .Status "failed"}}失败 - {{else if eq .Status "running"}}执行中 - {{else}}待执行{{end}} - {{taskActionLabel .Type}}{{taskStatusLabel .Status}} {{len .DeviceIDs}}