MCPcopy Create free account
hub / github.com/TalkingData/owl / UpdateStrategyEvent

Method UpdateStrategyEvent

controller/mysql.go:204–270  ·  view source on GitHub ↗
(strategy_event *types.StrategyEvent, trigger_events map[string]*types.TriggerEvent)

Source from the content-addressed store, hash-verified

202}
203
204func (this *db) UpdateStrategyEvent(strategy_event *types.StrategyEvent, trigger_events map[string]*types.TriggerEvent) error {
205 tx, err := this.Begin()
206 defer tx.Rollback()
207 if err != nil {
208 lg.Error(err.Error())
209 return err
210 }
211
212 stmt, err := tx.Prepare("UPDATE `strategy_event` SET `strategy_name` = ?, `priority` = ?, `cycle` = ?, `alarm_count` = ?, `expression` = ?, `update_time` = ?, `count` = ?, `status` = ?, `host_id` = ?, `host_name` = ?, `ip` = ? WHERE `id` = ?")
213 if err != nil {
214 lg.Error(err.Error())
215 return err
216 }
217
218 _, err = stmt.Exec(
219 strategy_event.StrategyName,
220 strategy_event.Priority,
221 strategy_event.Cycle,
222 strategy_event.AlarmCount,
223 strategy_event.Expression,
224 strategy_event.UpdateTime,
225 strategy_event.Count,
226 strategy_event.Status,
227 strategy_event.HostID,
228 strategy_event.HostName,
229 strategy_event.IP,
230 strategy_event.ID)
231 if err != nil {
232 lg.Error(err.Error())
233 return err
234 }
235
236 stmt_delete, err := tx.Prepare("DELETE FROM `trigger_event` WHERE `strategy_event_id` = ?")
237 _, err = stmt_delete.Exec(strategy_event.ID)
238 if err != nil {
239 lg.Error(err.Error())
240 return err
241 }
242 for _, trigger_event := range trigger_events {
243 stmt_insert, err := tx.Prepare("INSERT INTO `trigger_event` VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)")
244 if err != nil {
245 lg.Error(err.Error())
246 return err
247 }
248 _, err = stmt_insert.Exec(
249 strategy_event.ID,
250 trigger_event.Index,
251 trigger_event.Metric,
252 trigger_event.Tags,
253 trigger_event.Number,
254 trigger_event.AggregateTags,
255 trigger_event.CurrentThreshold,
256 trigger_event.Method,
257 trigger_event.Symbol,
258 trigger_event.Threshold,
259 trigger_event.Triggered)
260 if err != nil {
261 lg.Error(err.Error())

Callers 2

processResultMethod · 0.80
processSingleEventFunction · 0.80

Calls

no outgoing calls

Tested by

no test coverage detected