Commit 0a85efbf by bergquist

feat(alerting): add datasource type to settings

parent a18506e2
......@@ -23,28 +23,28 @@ func NewDashAlertExtractor(dash *m.Dashboard, orgId int64) *DashAlertExtractor {
}
}
func (e *DashAlertExtractor) lookupDatasourceId(dsName string) (int64, error) {
func (e *DashAlertExtractor) lookupDatasourceId(dsName string) (*m.DataSource, error) {
if dsName == "" {
query := &m.GetDataSourcesQuery{OrgId: e.OrgId}
if err := bus.Dispatch(query); err != nil {
return 0, err
return nil, err
} else {
for _, ds := range query.Result {
if ds.IsDefault {
return ds.Id, nil
return ds, nil
}
}
}
} else {
query := &m.GetDataSourceByNameQuery{Name: dsName, OrgId: e.OrgId}
if err := bus.Dispatch(query); err != nil {
return 0, err
return nil, err
} else {
return query.Result.Id, nil
return query.Result, nil
}
}
return 0, errors.New("Could not find datasource id for " + dsName)
return nil, errors.New("Could not find datasource id for " + dsName)
}
func (e *DashAlertExtractor) GetAlerts() ([]*m.Alert, error) {
......@@ -94,10 +94,11 @@ func (e *DashAlertExtractor) GetAlerts() ([]*m.Alert, error) {
dsName = panel.Get("datasource").MustString()
}
if datasourceId, err := e.lookupDatasourceId(dsName); err != nil {
if datasource, err := e.lookupDatasourceId(dsName); err != nil {
return nil, err
} else {
valueQuery.SetPath([]string{"datasourceId"}, datasourceId)
valueQuery.SetPath([]string{"datasourceId"}, datasource.Id)
valueQuery.SetPath([]string{"datasourceType"}, datasource.Type)
}
targetQuery := target.Get("target").MustString()
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment