一个好用的errors包
可以报出错误的位置
地址
"github.com/pkg/errors"
demo
包裹错误,打印出像panic
的效果
func Wrap(err error, message string) error
打印错误需要%+v
才能详细输出
package main
import (
"fmt"
"github.com/pkg/errors"
E "errors"
)
func main() {
err0 := t1()
err := errors.Wrap(err0, "附加信息")
if err != nil {
//打印错误需要%+v才能详细输出
fmt.Printf("err :%+v\n", err)
}
fmt.Println("Hello world")
}
func t1() error {
return E.New("错误")
}
打印信息
err :错误
附加信息
main.main
D:/test/errTest.go:11
runtime.main
D:/Go/src/runtime/proc.go:200
runtime.goexit
D:/Go/src/runtime/asm_amd64.s:1337
Hello world
Process finished with exit code 0