mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
style(api): reduce code complexity
This commit is contained in:
parent
1f8f3ed038
commit
4ef95cfd31
@ -288,15 +288,17 @@ func PauseAlert(c *middleware.Context, dto dtos.PauseAlertCommand) Response {
|
|||||||
|
|
||||||
//POST /api/alerts/pause
|
//POST /api/alerts/pause
|
||||||
func PauseAlerts(c *middleware.Context, dto dtos.PauseAlertsCommand) Response {
|
func PauseAlerts(c *middleware.Context, dto dtos.PauseAlertsCommand) Response {
|
||||||
|
updateCmd := models.PauseAlertCommand{
|
||||||
|
OrgId: c.OrgId,
|
||||||
|
Paused: dto.Paused,
|
||||||
|
}
|
||||||
|
|
||||||
|
if len(dto.DataSourceIds) > 0 {
|
||||||
alertIdsToUpdate, err := getAlertIdsToUpdate(dto)
|
alertIdsToUpdate, err := getAlertIdsToUpdate(dto)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return ApiError(500, "Failed to pause alerts", err)
|
return ApiError(500, "Failed to pause alerts", err)
|
||||||
}
|
}
|
||||||
|
updateCmd.AlertIds = alertIdsToUpdate
|
||||||
updateCmd := models.PauseAlertCommand{
|
|
||||||
OrgId: c.OrgId,
|
|
||||||
AlertIds: alertIdsToUpdate,
|
|
||||||
Paused: dto.Paused,
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := bus.Dispatch(&updateCmd); err != nil {
|
if err := bus.Dispatch(&updateCmd); err != nil {
|
||||||
@ -326,20 +328,14 @@ func getAlertIdsToUpdate(pauseAlertCmd dtos.PauseAlertsCommand) ([]int64, error)
|
|||||||
}
|
}
|
||||||
|
|
||||||
var alertIdsToUpdate []int64
|
var alertIdsToUpdate []int64
|
||||||
updateAllAlerts := len(pauseAlertCmd.DataSourceIds) == 0
|
|
||||||
for _, alert := range cmd.Result {
|
for _, alert := range cmd.Result {
|
||||||
if updateAllAlerts {
|
|
||||||
alertIdsToUpdate = append(alertIdsToUpdate, alert.Id)
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
alert, err := alerting.NewRuleFromDBAlert(alert)
|
alert, err := alerting.NewRuleFromDBAlert(alert)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, condition := range alert.Conditions {
|
for _, condition := range alert.Conditions {
|
||||||
id, exist := condition.GetDatsourceId()
|
id, exist := condition.GetDatasourceId()
|
||||||
if exist && existInSlice(pauseAlertCmd.DataSourceIds, *id) {
|
if exist && existInSlice(pauseAlertCmd.DataSourceIds, *id) {
|
||||||
alertIdsToUpdate = append(alertIdsToUpdate, alert.Id)
|
alertIdsToUpdate = append(alertIdsToUpdate, alert.Id)
|
||||||
}
|
}
|
||||||
|
@ -1,11 +0,0 @@
|
|||||||
package api
|
|
||||||
|
|
||||||
import (
|
|
||||||
"testing"
|
|
||||||
|
|
||||||
. "github.com/smartystreets/goconvey/convey"
|
|
||||||
)
|
|
||||||
|
|
||||||
func TestAlertingApi(t *testing.T) {
|
|
||||||
Convey("", func() {})
|
|
||||||
}
|
|
@ -34,7 +34,7 @@ type AlertQuery struct {
|
|||||||
To string
|
To string
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *QueryCondition) GetDatsourceId() (datasourceId *int64, exist bool) {
|
func (c *QueryCondition) GetDatasourceId() (datasourceId *int64, exist bool) {
|
||||||
return &c.Query.DatasourceId, true
|
return &c.Query.DatasourceId, true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -18,6 +18,10 @@ func (c *conditionStub) Eval(context *EvalContext) (*ConditionResult, error) {
|
|||||||
return &ConditionResult{Firing: c.firing, EvalMatches: c.matches, Operator: c.operator, NoDataFound: c.noData}, nil
|
return &ConditionResult{Firing: c.firing, EvalMatches: c.matches, Operator: c.operator, NoDataFound: c.noData}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (c *conditionStub) GetDatasourceId() (datasourceId *int64, exist bool) {
|
||||||
|
return nil, false
|
||||||
|
}
|
||||||
|
|
||||||
func TestAlertingExecutor(t *testing.T) {
|
func TestAlertingExecutor(t *testing.T) {
|
||||||
Convey("Test alert execution", t, func() {
|
Convey("Test alert execution", t, func() {
|
||||||
handler := NewEvalHandler()
|
handler := NewEvalHandler()
|
||||||
|
@ -30,5 +30,5 @@ type ConditionResult struct {
|
|||||||
|
|
||||||
type Condition interface {
|
type Condition interface {
|
||||||
Eval(result *EvalContext) (*ConditionResult, error)
|
Eval(result *EvalContext) (*ConditionResult, error)
|
||||||
GetDatsourceId() (datasourceId *int64, exist bool)
|
GetDatasourceId() (datasourceId *int64, exist bool)
|
||||||
}
|
}
|
||||||
|
@ -14,6 +14,10 @@ func (f *FakeCondition) Eval(context *EvalContext) (*ConditionResult, error) {
|
|||||||
return &ConditionResult{}, nil
|
return &ConditionResult{}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (c *FakeCondition) GetDatasourceId() (datasourceId *int64, exist bool) {
|
||||||
|
return nil, false
|
||||||
|
}
|
||||||
|
|
||||||
func TestAlertRuleModel(t *testing.T) {
|
func TestAlertRuleModel(t *testing.T) {
|
||||||
Convey("Testing alert rule", t, func() {
|
Convey("Testing alert rule", t, func() {
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user