Debug/Debugf
是非常有用的几个方法,用于调试信息的记录,常用于开发/测试环境中,当应用上线之后可以方便地使用SetDebug
或者配置文件进行开启/关闭
package main
import (
"context"
"time"
"github.com/gogf/gf/v2/frame/g"
"github.com/gogf/gf/v2/os/gtime"
"github.com/gogf/gf/v2/os/gtimer"
)
func main() {
ctx := context.TODO()
gtimer.SetTimeout(ctx, 3*time.Second, func(ctx context.Context) {
g.Log().SetDebug(false)
})
for {
g.Log().Debug(ctx, gtime.Datetime())
g.Log().Info(ctx, gtime.Datetime())
time.Sleep(time.Second)
}
}
该示例中使用glog.Debug
方法输出调试信息,3秒后关闭调试信息的输出。执行后,输出结果如下,可以看到只输出了3条日志信息,后续的调试日志信息由于通过SetDebug
方法关闭后,便不再输出。
2022-01-05 15:59:05.674 [DEBU] 2022-01-05 15:59:05
2022-01-05 15:59:05.675 [INFO] 2022-01-05 15:59:05
2022-01-05 15:59:06.684 [DEBU] 2022-01-05 15:59:06
2022-01-05 15:59:06.684 [INFO] 2022-01-05 15:59:06
2022-01-05 15:59:07.692 [DEBU] 2022-01-05 15:59:07
2022-01-05 15:59:07.692 [INFO] 2022-01-05 15:59:07
2022-01-05 15:59:08.708 [INFO] 2022-01-05 15:59:08
2022-01-05 15:59:09.717 [INFO] 2022-01-05 15:59:09
2022-01-05 15:59:10.728 [INFO] 2022-01-05 15:59:10
2022-01-05 15:59:11.733 [INFO] 2022-01-05 15:59:11
我们还可以通过命令行参数或者系统环境变量参数的方式关闭掉调试信息。
gf.glog.debug=false
GF_GLOG_DEBUG=false
常用方法的基准性能测试:https://github.com/gogf/gf/blob/master/errors/gerror/gerror_z_bench_test.go$ go test *.go -bench...
变量对象我们可以在模板中使用自定义的对象,并可在模板中访问对象的属性及调用其方法。示例:package mainimport ("context""gi...
以下常用方法列表,文档更新可能滞后于代码新特性,更多的方法及示例请参考代码文档:https://pkg.go.dev/github.com/gogf/gf/v2...
ORM组件提供了一些常用的条件查询方法,并且条件方法支持多种数据类型输入。func (m *Model) Where(where interfa...