我正在玩 fasthttp 和它的路由器,我对基本的东西没有任何问题,我有一个工作服务器和一个路由器,这是很容易的部分。
问题出在记录器上,我希望能够自定义该记录器,但是 ctx.Logger() 似乎不可能,因为它只需要一个 Printf 参数,而且格式不是我想要的。
有谁知道我可以在文档中的哪里找到我想做的工作示例?
我目前拥有的代码示例:
package server
import (
"github.com/fasthttp/router"
"github.com/valyala/fasthttp"
)
// Router will manage the routes of our API server
func Router() *router.Router {
r := router.New()
r.GET("/", index)
return r
}
func index(ctx *fasthttp.RequestCtx) {
ctx.Logger().Printf("/")
ctx.WriteString("Welcome!")
}
因为我仍在尝试使用 Web 服务器,但我仍然不了解它的一些内容,Go 也一样。所以欢迎举个例子。
例如,我希望能够使用主包中的记录器定义来做类似的事情:
package server
import (
"github.com/fasthttp/router"
"github.com/valyala/fasthttp"
"go.uber.org/zap"
)
// Router will manage the routes of our API server
func Router(loger *zap.Logger) *router.Router {
r := router.New()
r.GET("/", index)
return r
}
func index(ctx *fasthttp.RequestCtx) {
ctx.Logger().Printf("/") // Here should print in the zap format of my choice.
ctx.WriteString("Welcome!")
}