|
@@ -311,6 +311,68 @@ func DeleteEdbMonitorInfo(req request.EdbMonitorInfoDeleteReq) (msg string, err
|
|
|
return
|
|
|
}
|
|
|
|
|
|
+func GetEdbMonitorLevelList() (list []string, msg string, err error) {
|
|
|
+ list, err = edbmonitor.GetEdbMonitorLevelList()
|
|
|
+ if err != nil {
|
|
|
+ msg = "获取等级等级列表失败"
|
|
|
+ err = fmt.Errorf("GetEdbMonitorLevelList err:%w", err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ return
|
|
|
+}
|
|
|
+
|
|
|
+func CloseEdbMonitorInfo(req request.EdbMonitorInfoCloseReq, adminId int) (msg string, err error) {
|
|
|
+ edbMonitor, er := edbmonitor.GetEdbMonitorInfoById(req.EdbMonitorId)
|
|
|
+ if er != nil {
|
|
|
+ if er.Error() == utils.ErrNoRow() {
|
|
|
+ msg = "指标预警不存在,请刷新重试"
|
|
|
+ err = er
|
|
|
+ }
|
|
|
+ msg = "关闭失败"
|
|
|
+ err = fmt.Errorf("获取预警详情失败, err:%w", er)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if edbMonitor.CreateUserId != adminId {
|
|
|
+ msg = "无权限操作"
|
|
|
+ err = fmt.Errorf("无权限操作")
|
|
|
+ return
|
|
|
+ }
|
|
|
+ edbMonitor.State = EDB_MONITOR_STATE_CLOSE
|
|
|
+ edbMonitor.ModifyTime = time.Now()
|
|
|
+ er = edbMonitor.Update([]string{"state", "modify_time"})
|
|
|
+ if er != nil {
|
|
|
+ msg = "关闭失败"
|
|
|
+ err = fmt.Errorf("修改预警状态失败, err:%w", er)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ return
|
|
|
+}
|
|
|
+
|
|
|
+func RestartEdbMonitorInfo(req request.EdbMonitorInfoRestartReq, adminId int) (msg string, err error) {
|
|
|
+ edbMonitor, er := edbmonitor.GetEdbMonitorInfoById(req.EdbMonitorId)
|
|
|
+ if er != nil {
|
|
|
+ if er.Error() == utils.ErrNoRow() {
|
|
|
+ msg = "指标预警不存在,请刷新重试"
|
|
|
+ err = er
|
|
|
+ }
|
|
|
+ msg = "重启失败"
|
|
|
+ err = fmt.Errorf("获取预警详情失败, err:%w", er)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if edbMonitor.CreateUserId != adminId {
|
|
|
+ msg = "无权限操作"
|
|
|
+ err = fmt.Errorf("无权限操作")
|
|
|
+ return
|
|
|
+ }
|
|
|
+ err = ModifyEdbMonitorState(edbMonitor, edbMonitor.EdbCode, edbMonitor.Source, edbMonitor.SubSource)
|
|
|
+ if err != nil {
|
|
|
+ msg = "重启失败"
|
|
|
+ err = fmt.Errorf("修改预警状态失败, err:%w", err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ return
|
|
|
+}
|
|
|
+
|
|
|
func toEdbMonitorInfoItems(edbmonitor []*edbmonitor.EdbMonitorInfo, userMap map[int]string, classifyPathMap map[int]string) []*response.EdbMonitorInfoItem {
|
|
|
res := make([]*response.EdbMonitorInfoItem, len(edbmonitor))
|
|
|
for _, v := range edbmonitor {
|