https://learnku.com/docs/gorm/2018/logger/3805
Gorm 建立了对 Logger 的支持,默认模式只会在错误发生的时候打印日志。可以通过gorm SetLogger(log logger)方法 改变gorm 打日志的行为。
gorm 中 logger的接口
gorm 中 logger的接口:
type logger interface {
Print(ctx context.Context, v ...interface{})
}
v 的值为:
1个参数: level,表示这个是个什么请求,可以是“sql”
2个参数:打印sql的代码行号,如/Users/yejianfeng/Documents/gopath/src/gorm-log/main.go:50,
3个参数: 执行时间戳
4个参数: sql语句
5参数:如果有预处理,请求参数,第六个参数是这个sql影响的行数。
gorm 中的实现
gorm 中通过回调函数实现。在gorm 注册的默认回调函数中,调用了gorm.Print 函数