slim trace if depth (#4346)

Co-authored-by: gogs <guzzsek@gmail.com>
This commit is contained in:
我的我的 2021-05-05 08:14:40 +08:00 committed by GitHub
parent 8f7f3ad315
commit 3f359eab9b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 28 additions and 25 deletions

View File

@ -139,31 +139,34 @@ func (l logger) Error(ctx context.Context, msg string, data ...interface{}) {
// Trace print sql message // Trace print sql message
func (l logger) Trace(ctx context.Context, begin time.Time, fc func() (string, int64), err error) { func (l logger) Trace(ctx context.Context, begin time.Time, fc func() (string, int64), err error) {
if l.LogLevel > Silent {
elapsed := time.Since(begin) if l.LogLevel <= Silent {
switch { return
case err != nil && l.LogLevel >= Error && (!errors.Is(err, ErrRecordNotFound) || !l.IgnoreRecordNotFoundError): }
sql, rows := fc()
if rows == -1 { elapsed := time.Since(begin)
l.Printf(l.traceErrStr, utils.FileWithLineNum(), err, float64(elapsed.Nanoseconds())/1e6, "-", sql) switch {
} else { case err != nil && l.LogLevel >= Error && (!errors.Is(err, ErrRecordNotFound) || !l.IgnoreRecordNotFoundError):
l.Printf(l.traceErrStr, utils.FileWithLineNum(), err, float64(elapsed.Nanoseconds())/1e6, rows, sql) sql, rows := fc()
} if rows == -1 {
case elapsed > l.SlowThreshold && l.SlowThreshold != 0 && l.LogLevel >= Warn: l.Printf(l.traceErrStr, utils.FileWithLineNum(), err, float64(elapsed.Nanoseconds())/1e6, "-", sql)
sql, rows := fc() } else {
slowLog := fmt.Sprintf("SLOW SQL >= %v", l.SlowThreshold) l.Printf(l.traceErrStr, utils.FileWithLineNum(), err, float64(elapsed.Nanoseconds())/1e6, rows, sql)
if rows == -1 { }
l.Printf(l.traceWarnStr, utils.FileWithLineNum(), slowLog, float64(elapsed.Nanoseconds())/1e6, "-", sql) case elapsed > l.SlowThreshold && l.SlowThreshold != 0 && l.LogLevel >= Warn:
} else { sql, rows := fc()
l.Printf(l.traceWarnStr, utils.FileWithLineNum(), slowLog, float64(elapsed.Nanoseconds())/1e6, rows, sql) slowLog := fmt.Sprintf("SLOW SQL >= %v", l.SlowThreshold)
} if rows == -1 {
case l.LogLevel == Info: l.Printf(l.traceWarnStr, utils.FileWithLineNum(), slowLog, float64(elapsed.Nanoseconds())/1e6, "-", sql)
sql, rows := fc() } else {
if rows == -1 { l.Printf(l.traceWarnStr, utils.FileWithLineNum(), slowLog, float64(elapsed.Nanoseconds())/1e6, rows, sql)
l.Printf(l.traceStr, utils.FileWithLineNum(), float64(elapsed.Nanoseconds())/1e6, "-", sql) }
} else { case l.LogLevel == Info:
l.Printf(l.traceStr, utils.FileWithLineNum(), float64(elapsed.Nanoseconds())/1e6, rows, sql) sql, rows := fc()
} if rows == -1 {
l.Printf(l.traceStr, utils.FileWithLineNum(), float64(elapsed.Nanoseconds())/1e6, "-", sql)
} else {
l.Printf(l.traceStr, utils.FileWithLineNum(), float64(elapsed.Nanoseconds())/1e6, rows, sql)
} }
} }
} }