https://github.com/pkg/errors 这个库虽然已经归档了,但是照样能用 ```go err:=func1() fmt.Sprintf("%+v",err) ``` 使用 "%+v" 这个占位符就能打印发生 error 的堆栈信息了, 如果使用 %v 或者 err.Error() 就和普通 error 没有区别了