zhufuyi / sponge

Sponge is a powerful Go development framework, it's easy to develop web and microservice projects.
https://go-sponge.com
MIT License
1.26k stars 123 forks source link

sponge 的 response.Error( 可以配置个日志吗 #54

Closed lijianow closed 2 weeks ago

lijianow commented 2 weeks ago

我看了官网的实例 需要在某个错误上面再加个log方法记录错误信息

这种倒是没问题 我想图个方法 在response.Error里判断ecode的类型来记录日志,这样我的代码显得更简洁

我看了下作者的代码 // Error return error func Error(c gin.Context, err errcode.Error, data ...interface{}) { respJSONWith200(c, err.Code(), err.Msg(), data...) }

这里我理解应该是不能加日志了

请问是不是需要复制sponge 的response方法 放在自己的pkg里才行 作者可以给一些思路 谢谢了

lijianow commented 2 weeks ago

或者继承sponge 的 response 再自己封装一下 不知道是否有风险

zhufuyi commented 2 weeks ago

可以封装response库额外添加打印信息,但需要把打印信息传递给封装的responge库,例如request_id、打印级别(warn、error)、其他打印的信息。

lijianow commented 2 weeks ago

你说的传递信息都在c *gin.Context里吧

lijianow commented 2 weeks ago

研究了下你的代码 我发现我多虑了 我开一个 问下另外个问题