Skip to content

Commit 7475501

Browse files
committed
Add SkipErrRecordNotFound
1 parent 0cb5bf2 commit 7475501

File tree

1 file changed

+12
-7
lines changed

1 file changed

+12
-7
lines changed

logger.go

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,20 +2,25 @@ package gorm_logrus
22

33
import (
44
"context"
5+
"errors"
56
"time"
67

78
log "github.com/sirupsen/logrus"
9+
"gorm.io/gorm"
810
gormlogger "gorm.io/gorm/logger"
911
"gorm.io/gorm/utils"
1012
)
1113

1214
type logger struct {
13-
SlowThreshold time.Duration
14-
SourceField string
15+
SlowThreshold time.Duration
16+
SourceField string
17+
SkipErrRecordNotFound bool
1518
}
1619

17-
func New() *logger{
18-
return &logger{}
20+
func New() *logger {
21+
return &logger{
22+
SkipErrRecordNotFound: true,
23+
}
1924
}
2025

2126
func (l *logger) LogMode(gormlogger.LogLevel) gormlogger.Interface {
@@ -41,16 +46,16 @@ func (l *logger) Trace(ctx context.Context, begin time.Time, fc func() (string,
4146
if l.SourceField != "" {
4247
fields[l.SourceField] = utils.FileWithLineNum()
4348
}
44-
if err != nil {
49+
if err != nil && !(errors.Is(err, gorm.ErrRecordNotFound) && l.SkipErrRecordNotFound) {
4550
fields[log.ErrorKey] = err
4651
log.WithFields(fields).Errorf("%s [%s]", sql, elapsed)
4752
return
4853
}
4954

50-
if l.SlowThreshold != 0 && elapsed > l.SlowThreshold {
55+
if l.SlowThreshold != 0 && elapsed > l.SlowThreshold {
5156
log.WithFields(fields).Warnf("%s [%s]", sql, elapsed)
5257
return
5358
}
54-
59+
5560
log.WithFields(fields).Debugf("%s [%s]", sql, elapsed)
5661
}

0 commit comments

Comments
 (0)