소스 검색

feat(alerting): add feature toggles for alerting functions

bergquist 9 년 전
부모
커밋
45b2b4bc52
2개의 변경된 파일20개의 추가작업 그리고 11개의 파일을 삭제
  1. 12 10
      pkg/api/dashboard.go
  2. 8 1
      pkg/services/sqlstore/migrations/alert_mig.go

+ 12 - 10
pkg/api/dashboard.go

@@ -149,17 +149,19 @@ func PostDashboard(c *middleware.Context, cmd m.SaveDashboardCommand) {
 		return
 	}
 
-	saveAlertCommand := m.SaveAlertsCommand{
-		DashboardId: cmd.Result.Id,
-		OrgId:       c.OrgId,
-		UserId:      c.UserId,
-		Alerts:      cmd.GetAlertModels(),
-	}
+	if setting.AlertingEnabled {
+		saveAlertCommand := m.SaveAlertsCommand{
+			DashboardId: cmd.Result.Id,
+			OrgId:       c.OrgId,
+			UserId:      c.UserId,
+			Alerts:      cmd.GetAlertModels(),
+		}
 
-	err = bus.Dispatch(&saveAlertCommand)
-	if err != nil {
-		c.JsonApiErr(500, "Failed to save alerts", err)
-		return
+		err = bus.Dispatch(&saveAlertCommand)
+		if err != nil {
+			c.JsonApiErr(500, "Failed to save alerts", err)
+			return
+		}
 	}
 
 	metrics.M_Api_Dashboard_Post.Inc(1)

+ 8 - 1
pkg/services/sqlstore/migrations/alert_mig.go

@@ -1,8 +1,15 @@
 package migrations
 
-import . "github.com/grafana/grafana/pkg/services/sqlstore/migrator"
+import (
+	. "github.com/grafana/grafana/pkg/services/sqlstore/migrator"
+	"github.com/grafana/grafana/pkg/setting"
+)
 
 func addAlertMigrations(mg *Migrator) {
+	if !setting.AlertingEnabled {
+		return
+	}
+
 	alertV1 := Table{
 		Name: "alert_rule",
 		Columns: []*Column{