goframe框架提供了丰富的调试功能,由gdebug组件实现。

    所谓的“调试”方法大多数和开发环境有一定关系,包含堆栈和调用链信息分析,并且性能往往不是特别高。

    使用方式:

    1. import "github.com/gogf/gf/v2/debug/gdebug"

    接口文档:

    https://pkg.go.dev/github.com/gogf/gf/v2/debug/gdebug

    方法列表:

    1. func BinVersion() string
    2. func BinVersionMd5() string
    3. func Caller(skip ...int) (function string, path string, line int)
    4. func CallerDirectory() string
    5. func CallerFileLine() string
    6. func CallerFileLineShort() string
    7. func CallerFilePath() string
    8. func CallerFunction() string
    9. func CallerPackage() string
    10. func CallerWithFilter(filter string, skip ...int) (function string, path string, line int)
    11. func FuncName(f interface{}) string
    12. func FuncPath(f interface{}) string
    13. func GoroutineId() int
    14. func PrintStack(skip ...int)
    15. func Stack(skip ...int) string
    16. func StackWithFilter(filter string, skip ...int) string
    17. func StackWithFilters(filters []string, skip ...int) string
    18. func TestDataPath(names ...string) string

    熟悉PHP的同学可能比较好理解,这里某些方法其实和PHP的部分魔术常量功能一致。CallerDirectory对应__DIR__CallerFilePath对应__FILE__CallerFunction对应__FUNCTION__