gowheel/error
2020-01-08 10:24:10 +08:00
..
paras init 2019-12-16 15:18:25 +08:00
wrap use context 2020-01-08 10:24:10 +08:00
ReadMe.md use context 2020-01-08 10:24:10 +08:00

errors包的使用

通过wrap方法将错误一层一层的包裹每一次的包裹过程中可以包含自己的自定义的信息, 这样形成了错误栈
不用每次err is not nil就打印错误日志而是只在最顶层的调用打印可以打印出完整的错误站信息
unwarp可以提取出上一层的错误
cause可以将错误提取出来然后做断言判断具体的错误类型

项目的错误模块

  • 不同的模块都有自己错误类型
  • 不同的错误通过组合error和自定义来携带必要的错误信息
  • 通过错误类型判断定位错误发生在哪个模块