package utils import ( "fmt" "runtime" "time" "go_dreamfactory/lego/sys/log" ) const ( UID = "uid" Module = "module" FuncName = "funcName" FuncArgs = "funcArgs" FuncRsp = "response" TimeCost = "timeCost" ) //打印函数处理信息 // func TraceFunc(uid string, module string, funcName string, funcArgs interface{}, rsp interface{}) { // log.Debugf("traceFunc uid:%s module:%s funcName:%s funcArgs:%v", uid, module, funcName, funcArgs) // } //打印函数处理时间 func TraceTimeCost(funcName string, invocation time.Time) { elapsed := time.Since(invocation) cost := elapsed.Milliseconds() lg := fmt.Sprintf("funcName:%s timeCost:%v", funcName, cost) if cost < 20 { log.Debugf(lg) return } log.Warnf(lg) } //打印异常 func TraceError(err error) (b bool) { if err != nil { pc, fn, line, _ := runtime.Caller(1) log.Errorf("[error] in %s[%s:%d] %v", runtime.FuncForPC(pc).Name(), fn, line, err) b = true } return }