mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
mysql: refactor logs handling (#79148)
* mysql: refactor logs handling * fixed unit test
This commit is contained in:
parent
8ce4faf5ea
commit
9e71dc801d
@ -34,11 +34,10 @@ const (
|
||||
dateTimeFormat2 = "2006-01-02T15:04:05Z"
|
||||
)
|
||||
|
||||
var logger = log.New("tsdb.mysql")
|
||||
|
||||
type Service struct {
|
||||
Cfg *setting.Cfg
|
||||
im instancemgmt.InstanceManager
|
||||
Cfg *setting.Cfg
|
||||
im instancemgmt.InstanceManager
|
||||
logger log.Logger
|
||||
}
|
||||
|
||||
func characterEscape(s string, escapeChar string) string {
|
||||
@ -46,12 +45,14 @@ func characterEscape(s string, escapeChar string) string {
|
||||
}
|
||||
|
||||
func ProvideService(cfg *setting.Cfg, httpClientProvider httpclient.Provider) *Service {
|
||||
logger := log.New("tsdb.mysql")
|
||||
return &Service{
|
||||
im: datasource.NewInstanceManager(newInstanceSettings(cfg)),
|
||||
im: datasource.NewInstanceManager(newInstanceSettings(cfg, logger)),
|
||||
logger: logger,
|
||||
}
|
||||
}
|
||||
|
||||
func newInstanceSettings(cfg *setting.Cfg) datasource.InstanceFactoryFunc {
|
||||
func newInstanceSettings(cfg *setting.Cfg, logger log.Logger) datasource.InstanceFactoryFunc {
|
||||
return func(ctx context.Context, settings backend.DataSourceInstanceSettings) (instancemgmt.Instance, error) {
|
||||
jsonData := sqleng.JsonData{
|
||||
MaxOpenConns: cfg.SqlDatasourceMaxOpenConnsDefault,
|
||||
@ -174,9 +175,9 @@ func (s *Service) CheckHealth(ctx context.Context, req *backend.CheckHealthReque
|
||||
if err != nil {
|
||||
var driverErr *mysql.MySQLError
|
||||
if errors.As(err, &driverErr) {
|
||||
return &backend.CheckHealthResult{Status: backend.HealthStatusError, Message: dsHandler.TransformQueryError(logger, driverErr).Error()}, nil
|
||||
return &backend.CheckHealthResult{Status: backend.HealthStatusError, Message: dsHandler.TransformQueryError(s.logger, driverErr).Error()}, nil
|
||||
}
|
||||
return &backend.CheckHealthResult{Status: backend.HealthStatusError, Message: dsHandler.TransformQueryError(logger, err).Error()}, nil
|
||||
return &backend.CheckHealthResult{Status: backend.HealthStatusError, Message: dsHandler.TransformQueryError(s.logger, err).Error()}, nil
|
||||
}
|
||||
return &backend.CheckHealthResult{Status: backend.HealthStatusOk, Message: "Database Connection OK"}, nil
|
||||
}
|
||||
|
@ -13,6 +13,7 @@ import (
|
||||
"github.com/grafana/grafana-plugin-sdk-go/data"
|
||||
"github.com/stretchr/testify/require"
|
||||
|
||||
"github.com/grafana/grafana/pkg/infra/log"
|
||||
"github.com/grafana/grafana/pkg/setting"
|
||||
"github.com/grafana/grafana/pkg/tsdb/sqleng"
|
||||
)
|
||||
@ -73,6 +74,8 @@ func TestIntegrationMySQL(t *testing.T) {
|
||||
|
||||
rowTransformer := mysqlQueryResultTransformer{}
|
||||
|
||||
logger := log.New("mysql.test")
|
||||
|
||||
exe, err := sqleng.NewQueryDataHandler(setting.NewCfg(), config, &rowTransformer, newMysqlMacroEngine(logger, setting.NewCfg()), logger)
|
||||
|
||||
require.NoError(t, err)
|
||||
|
Loading…
Reference in New Issue
Block a user