diff --git a/conf/defaults.ini b/conf/defaults.ini index 3bce7dc511b..7ae0c5ebfd9 100644 --- a/conf/defaults.ini +++ b/conf/defaults.ini @@ -404,6 +404,7 @@ global_session = -1 [alerting] # Makes it possible to turn off alert rule execution. execute_alerts = true +show_alerting_ui = true #################################### Internal Grafana Metrics ############ # Metrics available at HTTP API Url /api/metrics diff --git a/pkg/api/frontendsettings.go b/pkg/api/frontendsettings.go index 1fd4cd347e7..c4b15ac54b6 100644 --- a/pkg/api/frontendsettings.go +++ b/pkg/api/frontendsettings.go @@ -140,6 +140,7 @@ func getFrontendSettingsMap(c *middleware.Context) (map[string]interface{}, erro "allowOrgCreate": (setting.AllowUserOrgCreate && c.IsSignedIn) || c.IsGrafanaAdmin, "authProxyEnabled": setting.AuthProxyEnabled, "ldapEnabled": setting.LdapEnabled, + "showAlertingUI": setting.ShowAlertingUI, "buildInfo": map[string]interface{}{ "version": setting.BuildVersion, "commit": setting.BuildCommit, diff --git a/pkg/api/index.go b/pkg/api/index.go index 715baefae78..172f98d4fb2 100644 --- a/pkg/api/index.go +++ b/pkg/api/index.go @@ -103,7 +103,7 @@ func setIndexViewData(c *middleware.Context) (*dtos.IndexViewData, error) { Children: dashboardChildNavs, }) - if c.OrgRole == m.ROLE_ADMIN || c.OrgRole == m.ROLE_EDITOR { + if setting.ShowAlertingUI && (c.OrgRole == m.ROLE_ADMIN || c.OrgRole == m.ROLE_EDITOR) { alertChildNavs := []*dtos.NavLink{ {Text: "Alert List", Url: setting.AppSubUrl + "/alerting/list"}, {Text: "Notification channels", Url: setting.AppSubUrl + "/alerting/notifications"}, diff --git a/pkg/setting/setting.go b/pkg/setting/setting.go index 9a302b10996..f84bdd88f48 100644 --- a/pkg/setting/setting.go +++ b/pkg/setting/setting.go @@ -150,7 +150,8 @@ var ( Quota QuotaSettings // Alerting - ExecuteAlerts bool + ExecuteAlerts bool + ShowAlertingUI bool // logger logger log.Logger @@ -579,6 +580,7 @@ func NewConfigContext(args *CommandLineArgs) error { alerting := Cfg.Section("alerting") ExecuteAlerts = alerting.Key("execute_alerts").MustBool(true) + ShowAlertingUI = alerting.Key("show_alerting_ui").MustBool(true) readSessionConfig() readSmtpSettings() diff --git a/public/app/plugins/panel/graph/module.ts b/public/app/plugins/panel/graph/module.ts index d86212d33e6..99476598bf4 100644 --- a/public/app/plugins/panel/graph/module.ts +++ b/public/app/plugins/panel/graph/module.ts @@ -132,7 +132,9 @@ class GraphCtrl extends MetricsPanelCtrl { this.addEditorTab('Axes', axesEditorComponent, 2); this.addEditorTab('Legend', 'public/app/plugins/panel/graph/tab_legend.html', 3); this.addEditorTab('Display', 'public/app/plugins/panel/graph/tab_display.html', 4); - this.addEditorTab('Alert', alertTab, 5); + if (config.showAlertingUI) { + this.addEditorTab('Alert', alertTab, 5); + } this.subTabIndex = 0; }