mirror of https://github.com/go-gorm/gorm.git
logMode codes more readable (#2216)
This commit is contained in:
parent
472c70caa4
commit
5ad6f621e6
20
main.go
20
main.go
|
@ -19,7 +19,7 @@ type DB struct {
|
||||||
// single db
|
// single db
|
||||||
db SQLCommon
|
db SQLCommon
|
||||||
blockGlobalUpdate bool
|
blockGlobalUpdate bool
|
||||||
logMode int
|
logMode logModeValue
|
||||||
logger logger
|
logger logger
|
||||||
search *search
|
search *search
|
||||||
values sync.Map
|
values sync.Map
|
||||||
|
@ -31,6 +31,14 @@ type DB struct {
|
||||||
singularTable bool
|
singularTable bool
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type logModeValue int
|
||||||
|
|
||||||
|
const (
|
||||||
|
defaultLogMode logModeValue = iota
|
||||||
|
noLogMode
|
||||||
|
detailedLogMode
|
||||||
|
)
|
||||||
|
|
||||||
// Open initialize a new db connection, need to import driver first, e.g:
|
// Open initialize a new db connection, need to import driver first, e.g:
|
||||||
//
|
//
|
||||||
// import _ "github.com/go-sql-driver/mysql"
|
// import _ "github.com/go-sql-driver/mysql"
|
||||||
|
@ -141,9 +149,9 @@ func (s *DB) SetLogger(log logger) {
|
||||||
// LogMode set log mode, `true` for detailed logs, `false` for no log, default, will only print error logs
|
// LogMode set log mode, `true` for detailed logs, `false` for no log, default, will only print error logs
|
||||||
func (s *DB) LogMode(enable bool) *DB {
|
func (s *DB) LogMode(enable bool) *DB {
|
||||||
if enable {
|
if enable {
|
||||||
s.logMode = 2
|
s.logMode = detailedLogMode
|
||||||
} else {
|
} else {
|
||||||
s.logMode = 1
|
s.logMode = noLogMode
|
||||||
}
|
}
|
||||||
return s
|
return s
|
||||||
}
|
}
|
||||||
|
@ -716,7 +724,7 @@ func (s *DB) SetJoinTableHandler(source interface{}, column string, handler Join
|
||||||
func (s *DB) AddError(err error) error {
|
func (s *DB) AddError(err error) error {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
if err != ErrRecordNotFound {
|
if err != ErrRecordNotFound {
|
||||||
if s.logMode == 0 {
|
if s.logMode == defaultLogMode {
|
||||||
go s.print(fileWithLineNum(), err)
|
go s.print(fileWithLineNum(), err)
|
||||||
} else {
|
} else {
|
||||||
s.log(err)
|
s.log(err)
|
||||||
|
@ -780,13 +788,13 @@ func (s *DB) print(v ...interface{}) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *DB) log(v ...interface{}) {
|
func (s *DB) log(v ...interface{}) {
|
||||||
if s != nil && s.logMode == 2 {
|
if s != nil && s.logMode == detailedLogMode {
|
||||||
s.print(append([]interface{}{"log", fileWithLineNum()}, v...)...)
|
s.print(append([]interface{}{"log", fileWithLineNum()}, v...)...)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *DB) slog(sql string, t time.Time, vars ...interface{}) {
|
func (s *DB) slog(sql string, t time.Time, vars ...interface{}) {
|
||||||
if s.logMode == 2 {
|
if s.logMode == detailedLogMode {
|
||||||
s.print("sql", fileWithLineNum(), NowFunc().Sub(t), sql, vars, s.RowsAffected)
|
s.print("sql", fileWithLineNum(), NowFunc().Sub(t), sql, vars, s.RowsAffected)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue