From b7b0b239d658641d1e1e3fd2cf5fca613d3524f4 Mon Sep 17 00:00:00 2001 From: Divya Darshana Date: Wed, 25 Sep 2024 18:07:21 +0530 Subject: [PATCH 1/9] Corrected the logs to handle sqlite cases --- examples/http-server/configs/.env | 7 ++--- examples/http-server/test.db | 0 pkg/gofr/datasource/sql/sql.go | 43 ++++++++++++++++++++++--------- 3 files changed, 33 insertions(+), 17 deletions(-) create mode 100644 examples/http-server/test.db diff --git a/examples/http-server/configs/.env b/examples/http-server/configs/.env index 986343003..f7b2f6022 100644 --- a/examples/http-server/configs/.env +++ b/examples/http-server/configs/.env @@ -1,14 +1,11 @@ APP_NAME=sample-api HTTP_PORT=9000 +LOG_LEVEL=DEBUG REDIS_HOST=localhost REDIS_PORT=2002 -DB_HOST=localhost -DB_USER=root -DB_PASSWORD=password DB_NAME=test -DB_PORT=2001 -DB_DIALECT=mysql +DB_DIALECT=sqlite TRACE_EXPORTER=gofr diff --git a/examples/http-server/test.db b/examples/http-server/test.db new file mode 100644 index 000000000..e69de29bb diff --git a/pkg/gofr/datasource/sql/sql.go b/pkg/gofr/datasource/sql/sql.go index bd01c62eb..316192543 100644 --- a/pkg/gofr/datasource/sql/sql.go +++ b/pkg/gofr/datasource/sql/sql.go @@ -18,6 +18,8 @@ import ( const ( sqlite = "sqlite" defaultDBPort = 3306 + success = 1 + failed = 0 ) var errUnsupportedDialect = fmt.Errorf("unsupported db dialect; supported dialects are - mysql, postgres, sqlite") @@ -35,6 +37,24 @@ type DBConfig struct { MaxOpenConn int } +func printConnectionSuccessLog(status string, config *DBConfig, logger datasource.Logger) { + if config.Dialect == sqlite { + logger.Debugf("%s to '%s' database", status, config.Database) + } else { + logger.Debugf("%s to '%s' user to '%s' database at '%s:%s'", status, config.User, + config.Database, config.HostName, config.Port) + } +} + +func printConnectionFailiureLog(config *DBConfig, logger datasource.Logger, err error) { + if config.Dialect == sqlite { + logger.Errorf("could not connect to database '%s', error: %v", config.Database, err) + } else { + logger.Errorf("could not connect with '%s' user to '%s' database at '%s:%s', error: %v", + config.User, config.Database, config.HostName, config.Port, err) + } +} + func NewSQL(configs config.Config, logger datasource.Logger, metrics Metrics) *DB { logger.Debugf("reading database configurations from config file") @@ -64,13 +84,16 @@ func NewSQL(configs config.Config, logger datasource.Logger, metrics Metrics) *D database := &DB{config: dbConfig, logger: logger, metrics: metrics} - logger.Debugf("connecting to '%s' user to '%s' database at '%s:%s'", database.config.User, - database.config.Database, database.config.HostName, database.config.Port) + printConnectionSuccessLog("connecting", database.config, logger) database.DB, err = sql.Open(otelRegisteredDialect, dbConnectionString) if err != nil { - database.logger.Errorf("could not open connection with '%s' user to '%s' database at '%s:%s', error: %v", - database.config.User, database.config.Database, database.config.HostName, database.config.Port, err) + if database.config.Dialect == sqlite { + database.logger.Errorf("could not open connection '%s' database, error: %v", database.config.Database, err) + } else { + database.logger.Errorf("could not open connection with '%s' user to '%s' database at '%s:%s', error: %v", + database.config.User, database.config.Database, database.config.HostName, database.config.Port, err) + } return database } @@ -94,14 +117,12 @@ func NewSQL(configs config.Config, logger datasource.Logger, metrics Metrics) *D func pingToTestConnection(database *DB) *DB { if err := database.DB.Ping(); err != nil { - database.logger.Errorf("could not connect with '%s' user to '%s' database at '%s:%s', error: %v", - database.config.User, database.config.Database, database.config.HostName, database.config.Port, err) + printConnectionFailiureLog(database.config, database.logger, err) return database } - database.logger.Logf("connected to '%s' database at '%s:%s'", database.config.Database, - database.config.HostName, database.config.Port) + printConnectionSuccessLog("connected", database.config, database.logger) return database } @@ -116,14 +137,12 @@ func retryConnection(database *DB) { for { err := database.DB.Ping() if err == nil { - database.logger.Logf("connected to '%s' database at '%s:%s'", database.config.Database, - database.config.HostName, database.config.Port) + printConnectionSuccessLog("connected", database.config, database.logger) break } - database.logger.Debugf("could not connect with '%s' user to '%s' database at '%s:%s', error: %v", - database.config.User, database.config.Database, database.config.HostName, database.config.Port, err) + printConnectionFailiureLog(database.config, database.logger, err) time.Sleep(connRetryFrequencyInSeconds * time.Second) } From a7acae94abdff9a229f05ba025a6dd4c815cd7db Mon Sep 17 00:00:00 2001 From: Divya Darshana Date: Thu, 26 Sep 2024 10:31:35 +0530 Subject: [PATCH 2/9] Adding tests --- pkg/gofr/datasource/sql/sql.go | 8 +++---- pkg/gofr/datasource/sql/sql_test.go | 35 +++++++++++++++++++++++++++++ 2 files changed, 39 insertions(+), 4 deletions(-) diff --git a/pkg/gofr/datasource/sql/sql.go b/pkg/gofr/datasource/sql/sql.go index 316192543..abed659f6 100644 --- a/pkg/gofr/datasource/sql/sql.go +++ b/pkg/gofr/datasource/sql/sql.go @@ -46,11 +46,11 @@ func printConnectionSuccessLog(status string, config *DBConfig, logger datasourc } } -func printConnectionFailiureLog(config *DBConfig, logger datasource.Logger, err error) { +func printConnectionFailureLog(config *DBConfig, logger datasource.Logger, err error) { if config.Dialect == sqlite { logger.Errorf("could not connect to database '%s', error: %v", config.Database, err) } else { - logger.Errorf("could not connect with '%s' user to '%s' database at '%s:%s', error: %v", + logger.Errorf("could not connect '%s' user to '%s' database at '%s:%s', error: %v", config.User, config.Database, config.HostName, config.Port, err) } } @@ -117,7 +117,7 @@ func NewSQL(configs config.Config, logger datasource.Logger, metrics Metrics) *D func pingToTestConnection(database *DB) *DB { if err := database.DB.Ping(); err != nil { - printConnectionFailiureLog(database.config, database.logger, err) + printConnectionFailureLog(database.config, database.logger, err) return database } @@ -142,7 +142,7 @@ func retryConnection(database *DB) { break } - printConnectionFailiureLog(database.config, database.logger, err) + printConnectionFailureLog(database.config, database.logger, err) time.Sleep(connRetryFrequencyInSeconds * time.Second) } diff --git a/pkg/gofr/datasource/sql/sql_test.go b/pkg/gofr/datasource/sql/sql_test.go index 0731dc513..1c7b42df9 100644 --- a/pkg/gofr/datasource/sql/sql_test.go +++ b/pkg/gofr/datasource/sql/sql_test.go @@ -1,6 +1,7 @@ package sql import ( + "errors" "fmt" "testing" "time" @@ -256,6 +257,40 @@ func Test_NewSQLMockWithConfig(t *testing.T) { assert.NotNil(t, mockMetric) } +func Test_sqliteLogs(t *testing.T) { + tests := []struct { + desc string + status string + err error + expectedLog string + }{ + {"sqlite connection in process", "connecting", nil, `connecting to "test" database`}, + {"sqlite connected successfully", "connected", nil, `connected to "test" database`}, + {"sqlite connection failure", "", errors.New("connection failed"), + `could not connect to database "test", error: connection failed`}, + } + + for _, test := range tests { + mockLogger := logging.NewMockLogger(logging.DEBUG) + mockConfig := &DBConfig{ + Dialect: sqlite, + Database: "test", + } + + logs := testutil.StdoutOutputForFunc(func() { + if test.err == nil { + printConnectionSuccessLog(test.status, mockConfig, mockLogger) + } else { + printConnectionFailureLog(mockConfig, mockLogger, test.err) + } + + time.Sleep(100 * time.Millisecond) + }) + + assert.Contains(t, logs, test.expectedLog) + } +} + func Test_SQLRetryConnectionInfoLog(t *testing.T) { logs := testutil.StdoutOutputForFunc(func() { ctrl := gomock.NewController(t) From eb8b9a642399806ca0fd9f5c069fcb61e439e9d9 Mon Sep 17 00:00:00 2001 From: Divya Darshana Date: Fri, 27 Sep 2024 11:57:21 +0530 Subject: [PATCH 3/9] Added Test & fixed linters --- pkg/gofr/datasource/sql/sql.go | 18 ++++++------ pkg/gofr/datasource/sql/sql_test.go | 44 ++++++++++++++++++----------- 2 files changed, 36 insertions(+), 26 deletions(-) diff --git a/pkg/gofr/datasource/sql/sql.go b/pkg/gofr/datasource/sql/sql.go index abed659f6..d80a0d25e 100644 --- a/pkg/gofr/datasource/sql/sql.go +++ b/pkg/gofr/datasource/sql/sql.go @@ -37,21 +37,21 @@ type DBConfig struct { MaxOpenConn int } -func printConnectionSuccessLog(status string, config *DBConfig, logger datasource.Logger) { - if config.Dialect == sqlite { - logger.Debugf("%s to '%s' database", status, config.Database) +func printConnectionSuccessLog(status string, dbconfig *DBConfig, logger datasource.Logger) { + if dbconfig.Dialect == sqlite { + logger.Debugf("%s to '%s' database", status, dbconfig.Database) } else { - logger.Debugf("%s to '%s' user to '%s' database at '%s:%s'", status, config.User, - config.Database, config.HostName, config.Port) + logger.Debugf("%s to '%s' user to '%s' database at '%s:%s'", status, dbconfig.User, + dbconfig.Database, dbconfig.HostName, dbconfig.Port) } } -func printConnectionFailureLog(config *DBConfig, logger datasource.Logger, err error) { - if config.Dialect == sqlite { - logger.Errorf("could not connect to database '%s', error: %v", config.Database, err) +func printConnectionFailureLog(dbconfig *DBConfig, logger datasource.Logger, err error) { + if dbconfig.Dialect == sqlite { + logger.Errorf("could not connect to database '%s', error: %v", dbconfig.Database, err) } else { logger.Errorf("could not connect '%s' user to '%s' database at '%s:%s', error: %v", - config.User, config.Database, config.HostName, config.Port, err) + dbconfig.User, dbconfig.Database, dbconfig.HostName, dbconfig.Port, err) } } diff --git a/pkg/gofr/datasource/sql/sql_test.go b/pkg/gofr/datasource/sql/sql_test.go index 1c7b42df9..25c728b9c 100644 --- a/pkg/gofr/datasource/sql/sql_test.go +++ b/pkg/gofr/datasource/sql/sql_test.go @@ -257,6 +257,8 @@ func Test_NewSQLMockWithConfig(t *testing.T) { assert.NotNil(t, mockMetric) } +var errSqliteConnection = errors.New("connection failed") + func Test_sqliteLogs(t *testing.T) { tests := []struct { desc string @@ -264,30 +266,38 @@ func Test_sqliteLogs(t *testing.T) { err error expectedLog string }{ - {"sqlite connection in process", "connecting", nil, `connecting to "test" database`}, - {"sqlite connected successfully", "connected", nil, `connected to "test" database`}, - {"sqlite connection failure", "", errors.New("connection failed"), - `could not connect to database "test", error: connection failed`}, + {"sqlite connection in process", "connecting", nil, `connecting to 'test' database`}, + {"sqlite connected successfully", "connected", nil, `connected to 'test' database`}, + {"sqlite connection failure", "", errSqliteConnection, + `could not connect to database 'test', error: connection failed`}, } for _, test := range tests { - mockLogger := logging.NewMockLogger(logging.DEBUG) - mockConfig := &DBConfig{ - Dialect: sqlite, - Database: "test", - } + if test.err == nil { + logs := testutil.StdoutOutputForFunc(func() { + mockLogger := logging.NewMockLogger(logging.DEBUG) + mockConfig := &DBConfig{ + Dialect: sqlite, + Database: "test", + } - logs := testutil.StdoutOutputForFunc(func() { - if test.err == nil { printConnectionSuccessLog(test.status, mockConfig, mockLogger) - } else { - printConnectionFailureLog(mockConfig, mockLogger, test.err) - } + }) - time.Sleep(100 * time.Millisecond) - }) + assert.Contains(t, logs, test.expectedLog) + } else { + logs := testutil.StderrOutputForFunc(func() { + mockLogger := logging.NewMockLogger(logging.DEBUG) + mockConfig := &DBConfig{ + Dialect: sqlite, + Database: "test", + } + + printConnectionFailureLog(mockConfig, mockLogger, test.err) + }) - assert.Contains(t, logs, test.expectedLog) + assert.Contains(t, logs, test.expectedLog) + } } } From dcd6345cc989d4cffd4e32d19709ec47e2cc4142 Mon Sep 17 00:00:00 2001 From: Divya Darshana Date: Fri, 27 Sep 2024 12:17:42 +0530 Subject: [PATCH 4/9] removed unecessary changes --- examples/http-server/configs/.env | 9 ++++++--- pkg/gofr/datasource/sql/sql.go | 2 -- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/examples/http-server/configs/.env b/examples/http-server/configs/.env index f7b2f6022..3ec1ec5dd 100644 --- a/examples/http-server/configs/.env +++ b/examples/http-server/configs/.env @@ -1,11 +1,14 @@ APP_NAME=sample-api HTTP_PORT=9000 -LOG_LEVEL=DEBUG REDIS_HOST=localhost REDIS_PORT=2002 +DB_HOST=localhost +DB_USER=root +DB_PASSWORD=password DB_NAME=test -DB_DIALECT=sqlite +DB_PORT=2001 +DB_DIALECT=mysql -TRACE_EXPORTER=gofr +TRACE_EXPORTER=gofr \ No newline at end of file diff --git a/pkg/gofr/datasource/sql/sql.go b/pkg/gofr/datasource/sql/sql.go index d80a0d25e..c6a5301ea 100644 --- a/pkg/gofr/datasource/sql/sql.go +++ b/pkg/gofr/datasource/sql/sql.go @@ -18,8 +18,6 @@ import ( const ( sqlite = "sqlite" defaultDBPort = 3306 - success = 1 - failed = 0 ) var errUnsupportedDialect = fmt.Errorf("unsupported db dialect; supported dialects are - mysql, postgres, sqlite") From cd44afb640788472a9692227f865d3c5305dfd21 Mon Sep 17 00:00:00 2001 From: Divya Darshana Date: Fri, 27 Sep 2024 12:20:29 +0530 Subject: [PATCH 5/9] removed test.db --- examples/http-server/test.db | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 examples/http-server/test.db diff --git a/examples/http-server/test.db b/examples/http-server/test.db deleted file mode 100644 index e69de29bb..000000000 From 1f7b8fd044fc9c4dbe20a9a7e793603bf3a20053 Mon Sep 17 00:00:00 2001 From: Divya Darshana Date: Fri, 27 Sep 2024 12:45:19 +0530 Subject: [PATCH 6/9] reverting changes in examples --- examples/http-server/configs/.env | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/http-server/configs/.env b/examples/http-server/configs/.env index 3ec1ec5dd..986343003 100644 --- a/examples/http-server/configs/.env +++ b/examples/http-server/configs/.env @@ -11,4 +11,4 @@ DB_NAME=test DB_PORT=2001 DB_DIALECT=mysql -TRACE_EXPORTER=gofr \ No newline at end of file +TRACE_EXPORTER=gofr From ab30a05a6a211a29e8aeaae58a544bf172cf6eaf Mon Sep 17 00:00:00 2001 From: Divya Darshana Date: Fri, 27 Sep 2024 12:50:08 +0530 Subject: [PATCH 7/9] Resolved PR comments --- pkg/gofr/datasource/sql/sql_test.go | 68 ++++++++++++++++------------- 1 file changed, 37 insertions(+), 31 deletions(-) diff --git a/pkg/gofr/datasource/sql/sql_test.go b/pkg/gofr/datasource/sql/sql_test.go index 25c728b9c..849dded7e 100644 --- a/pkg/gofr/datasource/sql/sql_test.go +++ b/pkg/gofr/datasource/sql/sql_test.go @@ -259,48 +259,54 @@ func Test_NewSQLMockWithConfig(t *testing.T) { var errSqliteConnection = errors.New("connection failed") -func Test_sqliteLogs(t *testing.T) { +func Test_sqliteSuccessfulConnLogs(t *testing.T) { tests := []struct { desc string status string - err error expectedLog string }{ - {"sqlite connection in process", "connecting", nil, `connecting to 'test' database`}, - {"sqlite connected successfully", "connected", nil, `connected to 'test' database`}, - {"sqlite connection failure", "", errSqliteConnection, - `could not connect to database 'test', error: connection failed`}, + {"sqlite connection in process", "connecting", `connecting to 'test' database`}, + {"sqlite connected successfully", "connected", `connected to 'test' database`}, } for _, test := range tests { - if test.err == nil { - logs := testutil.StdoutOutputForFunc(func() { - mockLogger := logging.NewMockLogger(logging.DEBUG) - mockConfig := &DBConfig{ - Dialect: sqlite, - Database: "test", - } - - printConnectionSuccessLog(test.status, mockConfig, mockLogger) - }) - - assert.Contains(t, logs, test.expectedLog) - } else { - logs := testutil.StderrOutputForFunc(func() { - mockLogger := logging.NewMockLogger(logging.DEBUG) - mockConfig := &DBConfig{ - Dialect: sqlite, - Database: "test", - } - - printConnectionFailureLog(mockConfig, mockLogger, test.err) - }) - - assert.Contains(t, logs, test.expectedLog) - } + logs := testutil.StdoutOutputForFunc(func() { + mockLogger := logging.NewMockLogger(logging.DEBUG) + mockConfig := &DBConfig{ + Dialect: sqlite, + Database: "test", + } + + printConnectionSuccessLog(test.status, mockConfig, mockLogger) + }) + + assert.Contains(t, logs, test.expectedLog) } } +func Test_sqliteErrConnLogs(t *testing.T) { + test := struct { + desc string + err error + expectedLog string + }{ + "sqlite connection failure", errSqliteConnection, + `could not connect to database 'test', error: connection failed`, + } + + logs := testutil.StderrOutputForFunc(func() { + mockLogger := logging.NewMockLogger(logging.DEBUG) + mockConfig := &DBConfig{ + Dialect: sqlite, + Database: "test", + } + + printConnectionFailureLog(mockConfig, mockLogger, test.err) + }) + + assert.Contains(t, logs, test.expectedLog) +} + func Test_SQLRetryConnectionInfoLog(t *testing.T) { logs := testutil.StdoutOutputForFunc(func() { ctrl := gomock.NewController(t) From 24fe49128a32893567ba9bdab04a75696e8f0987 Mon Sep 17 00:00:00 2001 From: Divya Darshana Date: Mon, 30 Sep 2024 13:05:32 +0530 Subject: [PATCH 8/9] simplified open database log --- pkg/gofr/datasource/sql/sql.go | 19 +++++++----------- pkg/gofr/datasource/sql/sql_test.go | 30 ++++++++++++++++------------- 2 files changed, 24 insertions(+), 25 deletions(-) diff --git a/pkg/gofr/datasource/sql/sql.go b/pkg/gofr/datasource/sql/sql.go index c6a5301ea..5c1129849 100644 --- a/pkg/gofr/datasource/sql/sql.go +++ b/pkg/gofr/datasource/sql/sql.go @@ -44,12 +44,12 @@ func printConnectionSuccessLog(status string, dbconfig *DBConfig, logger datasou } } -func printConnectionFailureLog(dbconfig *DBConfig, logger datasource.Logger, err error) { +func printConnectionFailureLog(action string, dbconfig *DBConfig, logger datasource.Logger, err error) { if dbconfig.Dialect == sqlite { - logger.Errorf("could not connect to database '%s', error: %v", dbconfig.Database, err) + logger.Errorf("could not %s database '%s', error: %v", action, dbconfig.Database, err) } else { - logger.Errorf("could not connect '%s' user to '%s' database at '%s:%s', error: %v", - dbconfig.User, dbconfig.Database, dbconfig.HostName, dbconfig.Port, err) + logger.Errorf("could not %s '%s' user to '%s' database at '%s:%s', error: %v", + action, dbconfig.User, dbconfig.Database, dbconfig.HostName, dbconfig.Port, err) } } @@ -86,12 +86,7 @@ func NewSQL(configs config.Config, logger datasource.Logger, metrics Metrics) *D database.DB, err = sql.Open(otelRegisteredDialect, dbConnectionString) if err != nil { - if database.config.Dialect == sqlite { - database.logger.Errorf("could not open connection '%s' database, error: %v", database.config.Database, err) - } else { - database.logger.Errorf("could not open connection with '%s' user to '%s' database at '%s:%s', error: %v", - database.config.User, database.config.Database, database.config.HostName, database.config.Port, err) - } + printConnectionFailureLog("open connection with", database.config, database.logger, err) return database } @@ -115,7 +110,7 @@ func NewSQL(configs config.Config, logger datasource.Logger, metrics Metrics) *D func pingToTestConnection(database *DB) *DB { if err := database.DB.Ping(); err != nil { - printConnectionFailureLog(database.config, database.logger, err) + printConnectionFailureLog("connect", database.config, database.logger, err) return database } @@ -140,7 +135,7 @@ func retryConnection(database *DB) { break } - printConnectionFailureLog(database.config, database.logger, err) + printConnectionFailureLog("connect", database.config, database.logger, err) time.Sleep(connRetryFrequencyInSeconds * time.Second) } diff --git a/pkg/gofr/datasource/sql/sql_test.go b/pkg/gofr/datasource/sql/sql_test.go index 849dded7e..ed1828446 100644 --- a/pkg/gofr/datasource/sql/sql_test.go +++ b/pkg/gofr/datasource/sql/sql_test.go @@ -285,26 +285,30 @@ func Test_sqliteSuccessfulConnLogs(t *testing.T) { } func Test_sqliteErrConnLogs(t *testing.T) { - test := struct { + test := []struct { desc string + action string err error expectedLog string }{ - "sqlite connection failure", errSqliteConnection, - `could not connect to database 'test', error: connection failed`, + {"sqlite connection failure", "connect", errSqliteConnection, + `could not connect database 'test', error: connection failed`}, + {"sqlite open connection failure", "open connection with", errSqliteConnection, + `could not open connection with database 'test', error: connection failed`}, } + for _, tt := range test { + logs := testutil.StderrOutputForFunc(func() { + mockLogger := logging.NewMockLogger(logging.DEBUG) + mockConfig := &DBConfig{ + Dialect: sqlite, + Database: "test", + } - logs := testutil.StderrOutputForFunc(func() { - mockLogger := logging.NewMockLogger(logging.DEBUG) - mockConfig := &DBConfig{ - Dialect: sqlite, - Database: "test", - } - - printConnectionFailureLog(mockConfig, mockLogger, test.err) - }) + printConnectionFailureLog(tt.action, mockConfig, mockLogger, tt.err) + }) - assert.Contains(t, logs, test.expectedLog) + assert.Contains(t, logs, tt.expectedLog) + } } func Test_SQLRetryConnectionInfoLog(t *testing.T) { From 66d52b0a4b58f9b25c74f8c3ab0c80cac4644e1a Mon Sep 17 00:00:00 2001 From: Divya Darshana Date: Mon, 30 Sep 2024 13:06:38 +0530 Subject: [PATCH 9/9] simplified open database log --- pkg/gofr/datasource/sql/sql.go | 36 +++++++++++++++++----------------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/pkg/gofr/datasource/sql/sql.go b/pkg/gofr/datasource/sql/sql.go index 5c1129849..8c30e4196 100644 --- a/pkg/gofr/datasource/sql/sql.go +++ b/pkg/gofr/datasource/sql/sql.go @@ -35,24 +35,6 @@ type DBConfig struct { MaxOpenConn int } -func printConnectionSuccessLog(status string, dbconfig *DBConfig, logger datasource.Logger) { - if dbconfig.Dialect == sqlite { - logger.Debugf("%s to '%s' database", status, dbconfig.Database) - } else { - logger.Debugf("%s to '%s' user to '%s' database at '%s:%s'", status, dbconfig.User, - dbconfig.Database, dbconfig.HostName, dbconfig.Port) - } -} - -func printConnectionFailureLog(action string, dbconfig *DBConfig, logger datasource.Logger, err error) { - if dbconfig.Dialect == sqlite { - logger.Errorf("could not %s database '%s', error: %v", action, dbconfig.Database, err) - } else { - logger.Errorf("could not %s '%s' user to '%s' database at '%s:%s', error: %v", - action, dbconfig.User, dbconfig.Database, dbconfig.HostName, dbconfig.Port, err) - } -} - func NewSQL(configs config.Config, logger datasource.Logger, metrics Metrics) *DB { logger.Debugf("reading database configurations from config file") @@ -216,3 +198,21 @@ func pushDBMetrics(db *sql.DB, metrics Metrics) { } } } + +func printConnectionSuccessLog(status string, dbconfig *DBConfig, logger datasource.Logger) { + if dbconfig.Dialect == sqlite { + logger.Debugf("%s to '%s' database", status, dbconfig.Database) + } else { + logger.Debugf("%s to '%s' user to '%s' database at '%s:%s'", status, dbconfig.User, + dbconfig.Database, dbconfig.HostName, dbconfig.Port) + } +} + +func printConnectionFailureLog(action string, dbconfig *DBConfig, logger datasource.Logger, err error) { + if dbconfig.Dialect == sqlite { + logger.Errorf("could not %s database '%s', error: %v", action, dbconfig.Database, err) + } else { + logger.Errorf("could not %s '%s' user to '%s' database at '%s:%s', error: %v", + action, dbconfig.User, dbconfig.Database, dbconfig.HostName, dbconfig.Port, err) + } +}