diff --git a/compose/compose.go b/compose/compose.go index dadcefb31..975a80883 100644 --- a/compose/compose.go +++ b/compose/compose.go @@ -68,9 +68,7 @@ func Configure() *cli.Config { return err } - db = db.With(ctx) - // Disable profiler for migrations - db.Profiler = nil + db = db.With(ctx).Quiet() return migrate.Migrate(db, c.Log) }, diff --git a/compose/db/migrate_test.go b/compose/db/migrate_test.go index bf1f86912..aa464a6e6 100644 --- a/compose/db/migrate_test.go +++ b/compose/db/migrate_test.go @@ -8,11 +8,14 @@ import ( "github.com/cortezaproject/corteza-server/pkg/logger" "github.com/titpetric/factory" + dbLogger "github.com/titpetric/factory/logger" ) func TestMigrations(t *testing.T) { factory.Database.Add("compose", os.Getenv("COMPOSE_DB_DSN")) db := factory.Database.MustGet("compose") + db.SetLogger(dbLogger.Default{}) + if err := Migrate(db, logger.Default()); err != nil { t.Fatalf("Unexpected error: %+v", err) } diff --git a/compose/internal/repository/main_test.go b/compose/internal/repository/main_test.go index 0f34f891a..454d88716 100644 --- a/compose/internal/repository/main_test.go +++ b/compose/internal/repository/main_test.go @@ -5,9 +5,9 @@ package repository import ( "os" "testing" - "time" "github.com/titpetric/factory" + dbLogger "github.com/titpetric/factory/logger" "github.com/cortezaproject/corteza-server/pkg/logger" ) @@ -17,37 +17,7 @@ func TestMain(m *testing.M) { factory.Database.Add("compose", os.Getenv("COMPOSE_DB_DSN")) db := factory.Database.MustGet("compose") - db.Profiler = &factory.DatabaseProfilerStdout{} + db.SetLogger(dbLogger.Default{}) os.Exit(m.Run()) } - -// zapProfiler logs query statistics to zap.logger -type ( - testLogProfiler struct { - logger testProfilerLogger - } - - testProfilerLogger interface { - Logf(format string, args ...interface{}) - } -) - -func newTestLogProfiler(logger testProfilerLogger) *testLogProfiler { - return &testLogProfiler{ - logger: logger, - } -} - -// Post prints the query statistics to stdout -func (p testLogProfiler) Post(c *factory.DatabaseProfilerContext) { - p.logger.Logf( - "%s\nArgs: %v\nDuration: %fs", - c.Query, - c.Args, - time.Since(c.Time).Seconds(), - ) -} - -// Flush stdout (no-op for this profiler) -func (testLogProfiler) Flush() {} diff --git a/compose/internal/repository/repository_test.go b/compose/internal/repository/repository_test.go index b7fd1fd8b..5553803b5 100644 --- a/compose/internal/repository/repository_test.go +++ b/compose/internal/repository/repository_test.go @@ -31,16 +31,9 @@ func tx(t *testing.T, f func(context.Context, *factory.DB, *types.Namespace) err ns, err = Namespace(ctx, db).Create(&types.Namespace{}) test.Assert(t, err == nil, "Test transaction setup (namespace creation) resulted in an error: %+v", err) - // Setup test log profiler and route all db logs to test log facility - // We do this right after transaction is started and setup is done, no need for extra queries there... - db.Profiler = newTestLogProfiler(t) - err = f(ctx, db, ns) test.Assert(t, err == nil, "Test transaction resulted in an error: %+v", err) - // Remove profiler to omit final rollback statement in the logs - db.Profiler = nil - - err = db.Rollback() + err = db.Quiet().Rollback() test.Assert(t, err == nil, "Could not rollback transaction: %+v", err) } diff --git a/compose/internal/service/chart_test.go b/compose/internal/service/chart_test.go index c359a501d..eac7a738d 100644 --- a/compose/internal/service/chart_test.go +++ b/compose/internal/service/chart_test.go @@ -7,7 +7,6 @@ import ( "testing" "github.com/pkg/errors" - "github.com/titpetric/factory" "github.com/cortezaproject/corteza-server/compose/types" "github.com/cortezaproject/corteza-server/internal/auth" @@ -15,8 +14,6 @@ import ( ) func TestChart(t *testing.T) { - factory.Database.MustGet("compose").Profiler = newTestLogProfiler(t) - ctx := context.WithValue(context.Background(), "testing", true) // Set Identity (required for permission checks). diff --git a/compose/internal/service/main_test.go b/compose/internal/service/main_test.go index 2b5f48be4..a820b8090 100644 --- a/compose/internal/service/main_test.go +++ b/compose/internal/service/main_test.go @@ -7,7 +7,6 @@ import ( "fmt" "os" "testing" - "time" "github.com/titpetric/factory" "go.uber.org/zap" @@ -16,6 +15,7 @@ import ( "github.com/cortezaproject/corteza-server/compose/types" "github.com/cortezaproject/corteza-server/internal/test" "github.com/cortezaproject/corteza-server/pkg/logger" + dbLogger "github.com/titpetric/factory/logger" ) type ( @@ -29,7 +29,7 @@ func TestMain(m *testing.M) { factory.Database.Add("compose", os.Getenv("COMPOSE_DB_DSN")) db := factory.Database.MustGet("compose") - db.Profiler = &factory.DatabaseProfilerStdout{} + db.SetLogger(dbLogger.Default{}) // migrate database schema if err := composeMigrate.Migrate(db, logger.Default()); err != nil { @@ -76,33 +76,3 @@ func createTestNamespaces(ctx context.Context, t *testing.T) (ns1 *types.Namespa return ns1, ns2 } - -// zapProfiler logs query statistics to zap.logger -type ( - testLogProfiler struct { - logger testProfilerLogger - } - - testProfilerLogger interface { - Logf(format string, args ...interface{}) - } -) - -func newTestLogProfiler(logger testProfilerLogger) *testLogProfiler { - return &testLogProfiler{ - logger: logger, - } -} - -// Post prints the query statistics to stdout -func (p testLogProfiler) Post(c *factory.DatabaseProfilerContext) { - p.logger.Logf( - "%s\nArgs: %v\nDuration: %fs", - c.Query, - c.Args, - time.Since(c.Time).Seconds(), - ) -} - -// Flush stdout (no-op for this profiler) -func (testLogProfiler) Flush() {} diff --git a/compose/internal/service/module_test.go b/compose/internal/service/module_test.go index 504d42a3c..23a38fa35 100644 --- a/compose/internal/service/module_test.go +++ b/compose/internal/service/module_test.go @@ -6,16 +6,12 @@ import ( "context" "testing" - "github.com/titpetric/factory" - "github.com/cortezaproject/corteza-server/compose/types" "github.com/cortezaproject/corteza-server/internal/auth" "github.com/cortezaproject/corteza-server/internal/test" ) func TestModule(t *testing.T) { - factory.Database.MustGet("compose").Profiler = newTestLogProfiler(t) - ctx := context.WithValue(context.Background(), "testing", true) // Set Identity (required for permission checks). diff --git a/compose/internal/service/namespace_test.go b/compose/internal/service/namespace_test.go index fc3eea4d5..48094d0fe 100644 --- a/compose/internal/service/namespace_test.go +++ b/compose/internal/service/namespace_test.go @@ -6,16 +6,12 @@ import ( "context" "testing" - "github.com/titpetric/factory" - "github.com/cortezaproject/corteza-server/compose/types" "github.com/cortezaproject/corteza-server/internal/auth" "github.com/cortezaproject/corteza-server/internal/test" ) func TestNamespace(t *testing.T) { - factory.Database.MustGet("compose").Profiler = newTestLogProfiler(t) - ctx := context.WithValue(context.Background(), "testing", true) // Set Identity (required for permission checks). diff --git a/compose/internal/service/page_test.go b/compose/internal/service/page_test.go index 258a0148e..449115e8e 100644 --- a/compose/internal/service/page_test.go +++ b/compose/internal/service/page_test.go @@ -8,7 +8,6 @@ import ( "github.com/davecgh/go-spew/spew" "github.com/pkg/errors" - "github.com/titpetric/factory" "github.com/cortezaproject/corteza-server/compose/types" "github.com/cortezaproject/corteza-server/internal/auth" @@ -16,8 +15,6 @@ import ( ) func TestPage(t *testing.T) { - factory.Database.MustGet("compose").Profiler = newTestLogProfiler(t) - ctx := context.WithValue(context.Background(), "testing", true) // Set fake Identity (required for permission checks). diff --git a/compose/internal/service/record_integration_test.go b/compose/internal/service/record_integration_test.go index 0ed711c29..108e62bd9 100644 --- a/compose/internal/service/record_integration_test.go +++ b/compose/internal/service/record_integration_test.go @@ -6,8 +6,6 @@ import ( "context" "testing" - "github.com/titpetric/factory" - "github.com/cortezaproject/corteza-server/compose/types" "github.com/cortezaproject/corteza-server/internal/auth" "github.com/cortezaproject/corteza-server/internal/permissions" @@ -15,8 +13,6 @@ import ( ) func TestRecord(t *testing.T) { - factory.Database.MustGet("compose").Profiler = newTestLogProfiler(t) - ctx := context.WithValue(context.Background(), "testing", true) ctx = auth.SetIdentityToContext(ctx, auth.NewIdentity(1337)) diff --git a/compose/internal/service/trigger_test.go b/compose/internal/service/trigger_test.go index 61515da81..e2add8ecf 100644 --- a/compose/internal/service/trigger_test.go +++ b/compose/internal/service/trigger_test.go @@ -7,7 +7,6 @@ import ( "testing" "github.com/pkg/errors" - "github.com/titpetric/factory" "github.com/cortezaproject/corteza-server/compose/types" "github.com/cortezaproject/corteza-server/internal/auth" @@ -15,8 +14,6 @@ import ( ) func TestTrigger(t *testing.T) { - factory.Database.MustGet("compose").Profiler = newTestLogProfiler(t) - ctx := context.WithValue(context.Background(), "testing", true) // Set Identity (required for permission checks). diff --git a/messaging/db/migrate_test.go b/messaging/db/migrate_test.go index 64295be02..c81e375ad 100644 --- a/messaging/db/migrate_test.go +++ b/messaging/db/migrate_test.go @@ -8,12 +8,14 @@ import ( "github.com/cortezaproject/corteza-server/pkg/logger" "github.com/titpetric/factory" + dbLogger "github.com/titpetric/factory/logger" ) func TestMigrations(t *testing.T) { factory.Database.Add("messaging", os.Getenv("MESSAGING_DB_DSN")) db := factory.Database.MustGet("messaging") - db.Profiler = &factory.Database.ProfilerStdout + db.SetLogger(dbLogger.Default{}) + if err := Migrate(db, logger.Default()); err != nil { t.Fatalf("Unexpected error: %#v", err) } diff --git a/messaging/internal/repository/main_test.go b/messaging/internal/repository/main_test.go index 74dd3040e..371e9a5a5 100644 --- a/messaging/internal/repository/main_test.go +++ b/messaging/internal/repository/main_test.go @@ -11,12 +11,13 @@ import ( migrate "github.com/cortezaproject/corteza-server/messaging/db" "github.com/cortezaproject/corteza-server/pkg/logger" + dbLogger "github.com/titpetric/factory/logger" ) func TestMain(m *testing.M) { factory.Database.Add("messaging", os.Getenv("MESSAGING_DB_DSN")) db := factory.Database.MustGet("messaging") - db.Profiler = &factory.Database.ProfilerStdout + db.SetLogger(dbLogger.Default{}) // migrate database schema if err := migrate.Migrate(db, logger.Default()); err != nil { diff --git a/messaging/internal/repository/repository_test.go b/messaging/internal/repository/repository_test.go index 1998c4de7..2144fb992 100644 --- a/messaging/internal/repository/repository_test.go +++ b/messaging/internal/repository/repository_test.go @@ -24,6 +24,6 @@ func tx(t *testing.T, f func() error) { err = f() test.Assert(t, err == nil, "Test transaction resulted in an error: %+v", err) - err = db.Rollback() + err = db.Quiet().Rollback() test.Assert(t, err == nil, "Could not rollback transaction: %+v", err) } diff --git a/messaging/internal/service/main_test.go b/messaging/internal/service/main_test.go index 0ae0bc557..790f81c95 100644 --- a/messaging/internal/service/main_test.go +++ b/messaging/internal/service/main_test.go @@ -13,6 +13,7 @@ import ( messagingMigrate "github.com/cortezaproject/corteza-server/messaging/db" "github.com/cortezaproject/corteza-server/pkg/logger" + dbLogger "github.com/titpetric/factory/logger" ) type mockDB struct{} @@ -24,7 +25,7 @@ func TestMain(m *testing.M) { factory.Database.Add("messaging", os.Getenv("MESSAGING_DB_DSN")) db := factory.Database.MustGet("messaging") - db.Profiler = &factory.Database.ProfilerStdout + db.SetLogger(dbLogger.Default{}) // migrate database schema if err := messagingMigrate.Migrate(db, logger.Default()); err != nil { diff --git a/messaging/messaging.go b/messaging/messaging.go index 01063407a..ec27a9bab 100644 --- a/messaging/messaging.go +++ b/messaging/messaging.go @@ -86,9 +86,7 @@ func Configure() *cli.Config { return err } - db = db.With(ctx) - // Disable profiler for migrations - db.Profiler = nil + db = db.With(ctx).Quiet() return migrate.Migrate(db, c.Log) }, diff --git a/system/db/migrate_test.go b/system/db/migrate_test.go index e9318ea62..4016a9ddb 100644 --- a/system/db/migrate_test.go +++ b/system/db/migrate_test.go @@ -8,12 +8,13 @@ import ( "github.com/cortezaproject/corteza-server/pkg/logger" "github.com/titpetric/factory" + dbLogger "github.com/titpetric/factory/logger" ) func TestMigrations(t *testing.T) { factory.Database.Add("system", os.Getenv("SYSTEM_DB_DSN")) db := factory.Database.MustGet("system") - db.Profiler = &factory.Database.ProfilerStdout + db.SetLogger(dbLogger.Default{}) if err := Migrate(db, logger.Default()); err != nil { t.Fatalf("Unexpected error: %#v", err) diff --git a/system/internal/repository/main_test.go b/system/internal/repository/main_test.go index 06189fde3..c96f27797 100644 --- a/system/internal/repository/main_test.go +++ b/system/internal/repository/main_test.go @@ -11,12 +11,13 @@ import ( "github.com/cortezaproject/corteza-server/pkg/logger" systemMigrate "github.com/cortezaproject/corteza-server/system/db" + dbLogger "github.com/titpetric/factory/logger" ) func TestMain(m *testing.M) { factory.Database.Add("system", os.Getenv("SYSTEM_DB_DSN")) db := factory.Database.MustGet("system") - db.Profiler = &factory.Database.ProfilerStdout + db.SetLogger(dbLogger.Default{}) // migrate database schema if err := systemMigrate.Migrate(db, logger.Default()); err != nil { diff --git a/system/internal/repository/repository_test.go b/system/internal/repository/repository_test.go index 1998c4de7..2144fb992 100644 --- a/system/internal/repository/repository_test.go +++ b/system/internal/repository/repository_test.go @@ -24,6 +24,6 @@ func tx(t *testing.T, f func() error) { err = f() test.Assert(t, err == nil, "Test transaction resulted in an error: %+v", err) - err = db.Rollback() + err = db.Quiet().Rollback() test.Assert(t, err == nil, "Could not rollback transaction: %+v", err) } diff --git a/system/internal/service/main_test.go b/system/internal/service/main_test.go index 05845e6fb..86fe1f6ae 100644 --- a/system/internal/service/main_test.go +++ b/system/internal/service/main_test.go @@ -11,6 +11,7 @@ import ( "github.com/cortezaproject/corteza-server/pkg/logger" systemMigrate "github.com/cortezaproject/corteza-server/system/db" + dbLogger "github.com/titpetric/factory/logger" ) func TestMain(m *testing.M) { @@ -18,7 +19,7 @@ func TestMain(m *testing.M) { factory.Database.Add("system", os.Getenv("SYSTEM_DB_DSN")) db := factory.Database.MustGet("system") - db.Profiler = &factory.Database.ProfilerStdout + db.SetLogger(dbLogger.Default{}) // migrate database schema if err := systemMigrate.Migrate(db, logger.Default()); err != nil { diff --git a/system/system.go b/system/system.go index aae853a63..716391685 100644 --- a/system/system.go +++ b/system/system.go @@ -106,9 +106,7 @@ func Configure() *cli.Config { return err } - db = db.With(ctx) - // Disable profiler for migrations - db.Profiler = nil + db = db.With(ctx).Quiet() return migrate.Migrate(db, c.Log) },