(alert *models.Alert, logger log.FieldLogger)
| 417 | } |
| 418 | |
| 419 | func parseAlertTimes(alert *models.Alert, logger log.FieldLogger) (time.Time, time.Time) { |
| 420 | now := time.Now().UTC() |
| 421 | |
| 422 | start, err := time.Parse(time.RFC3339, *alert.StartAt) |
| 423 | if err != nil { |
| 424 | logger.Errorf("creating alert: Failed to parse startAtTime '%s', defaulting to now: %s", *alert.StartAt, err) |
| 425 | |
| 426 | start = now |
| 427 | } |
| 428 | |
| 429 | stop, err := time.Parse(time.RFC3339, *alert.StopAt) |
| 430 | if err != nil { |
| 431 | logger.Errorf("creating alert: Failed to parse stopAtTime '%s', defaulting to now: %s", *alert.StopAt, err) |
| 432 | |
| 433 | stop = now |
| 434 | } |
| 435 | |
| 436 | return start, stop |
| 437 | } |
| 438 | |
| 439 | func buildEventCreates(ctx context.Context, logger log.FieldLogger, client *ent.Client, machineID string, alertItem *models.Alert) ([]*ent.Event, error) { |
| 440 | // let's track when we strip or drop data, notify outside of loop to avoid spam |
no test coverage detected
searching dependent graphs…