Alerts/edit rule issue 676 (#1505)

* fix: resolved issue with editing of rules

(cherry picked from commit a3015d1077d52db47e3b26572cd625d54e333375)
This commit is contained in:
Amol Umbark 2022-08-11 13:54:17 +05:30 committed by Prashant Shahi
parent 998e72374f
commit 54cc363752

View File

@ -241,6 +241,8 @@ func (m *Manager) EditRule(ruleStr string, id string) error {
func (m *Manager) editTask(rule *PostableRule, taskName string) error {
m.mtx.Lock()
defer m.mtx.Unlock()
zap.S().Debugf("msg:", "editing a rule task", "\t task name:", taskName)
newTask, err := m.prepareTask(false, rule, taskName)
@ -298,12 +300,14 @@ func (m *Manager) DeleteRule(id string) error {
func (m *Manager) deleteTask(taskName string) {
m.mtx.Lock()
defer m.mtx.Unlock()
zap.S().Debugf("msg:", "deleting a rule task", "\t task name:", taskName)
oldg, ok := m.tasks[taskName]
if ok {
oldg.Stop()
delete(m.tasks, taskName)
delete(m.rules, ruleIdFromTaskName(taskName))
zap.S().Debugf("msg:", "rule task deleted", "\t task name:", taskName)
} else {
zap.S().Info("msg: ", "rule not found for deletion", "\t name:", taskName)
}
@ -337,6 +341,7 @@ func (m *Manager) addTask(rule *PostableRule, taskName string) error {
m.mtx.Lock()
defer m.mtx.Unlock()
zap.S().Debugf("msg:", "adding a new rule task", "\t task name:", taskName)
newTask, err := m.prepareTask(false, rule, taskName)
if err != nil {
@ -605,6 +610,10 @@ func (m *Manager) syncRuleStateWithTask(taskName string, rule *PostableRule) err
if err := m.addTask(rule, taskName); err != nil {
return err
}
} else {
if err := m.editTask(rule, taskName); err != nil {
return err
}
}
}
return nil