Initial cloud-services repo - gateway service + pkg modules
This commit is contained in:
34
pkg/db/sqllogger.go
Normal file
34
pkg/db/sqllogger.go
Normal file
@@ -0,0 +1,34 @@
|
||||
package db
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"fiskerinc.com/modules/logger"
|
||||
pg "github.com/go-pg/pg/v10"
|
||||
)
|
||||
|
||||
// SQLLogger query hook to display generated SQL
|
||||
// To use:
|
||||
// Driver.AddQueryHook(db.SQLLogger{})
|
||||
// For development use only. Do not enable in production
|
||||
type SQLLogger struct {
|
||||
Out chan []byte
|
||||
}
|
||||
|
||||
// AfterQuery query hook to display generated SQL
|
||||
func (d SQLLogger) AfterQuery(c context.Context, q *pg.QueryEvent) error {
|
||||
data, _ := q.FormattedQuery()
|
||||
|
||||
if d.Out != nil {
|
||||
d.Out <- data
|
||||
} else {
|
||||
logger.Debug().Msgf("AfterQuery: %s", string(data))
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
// BeforeQuery required for interface
|
||||
func (d SQLLogger) BeforeQuery(c context.Context, q *pg.QueryEvent) (context.Context, error) {
|
||||
return c, nil
|
||||
}
|
||||
Reference in New Issue
Block a user