This PR moves the health check to backend only leaving in the frontend the functionality to test the dbconnector datasource. Leaving the `dbconnector.testDataSource` should be fine since the datasource types we allow for db connection with Zabbix already are backend datasources, and so their health requests would go through the backend. Verified: Clicking test and seeing a `health` request go out. IMPORTANT: While testing this in the UI, I found a bug with the config editor - whenever a change is made in the UI and tested, the changes don't take effect (i.e. disabling trends, keeps `trends` set to `true`, enabling db connection keep `dbConnectionEnabled` set to `false` and so on.). Created a separate [issue](https://github.com/orgs/grafana/projects/457/views/40?pane=issue&itemId=3627315751&issue=grafana%7Coss-big-tent-squad%7C132) to fix this Fixes https://github.com/grafana/oss-big-tent-squad/issues/124 Fixes https://github.com/grafana/grafana-zabbix/issues/2004
35 lines
925 B
Go
35 lines
925 B
Go
package settings
|
|
|
|
import "time"
|
|
|
|
const (
|
|
AuthTypeUserLogin = "userLogin"
|
|
AuthTypeToken = "token"
|
|
)
|
|
|
|
// ZabbixDatasourceSettingsDTO model
|
|
type ZabbixDatasourceSettingsDTO struct {
|
|
AuthType string `json:"authType"`
|
|
Trends bool `json:"trends"`
|
|
TrendsFrom string `json:"trendsFrom"`
|
|
TrendsRange string `json:"trendsRange"`
|
|
CacheTTL string `json:"cacheTTL"`
|
|
Timeout interface{} `json:"timeout"`
|
|
|
|
DisableDataAlignment bool `json:"disableDataAlignment"`
|
|
DisableReadOnlyUsersAck bool `json:"disableReadOnlyUsersAck"`
|
|
}
|
|
|
|
// ZabbixDatasourceSettings model
|
|
type ZabbixDatasourceSettings struct {
|
|
AuthType string
|
|
Trends bool
|
|
TrendsFrom time.Duration
|
|
TrendsRange time.Duration
|
|
CacheTTL time.Duration
|
|
Timeout time.Duration
|
|
|
|
DisableDataAlignment bool `json:"disableDataAlignment"`
|
|
DisableReadOnlyUsersAck bool `json:"disableReadOnlyUsersAck"`
|
|
}
|