ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
## 1. 安装zap ~~~go go get -u go.uber.org/zap ~~~ Zap提供了两种类型的日志记录器—`Sugared Logger`和`Logger`。 在性能很好但不是很关键的上下文中,使用`SugaredLogger`。它比其他结构化日志记录包快4-10倍,并且支持结构化和printf风格的日志记录。 在每一微秒和每一次内存分配都很重要的上下文中,使用`Logger`。它甚至比`SugaredLogger`更快,内存分配次数也更少,但它只支持强类型的结构化日志记录。 ## 2. logger示例 ~~~ var logger *zap.Logger func initLogger() { logger, _ = zap.NewProduction() } func simpleHttpGet(url string) { resp, err := http.Get(url) if err != nil { logger.Error("Error fetching url...", zap.String("url", url), zap.Error(err)) } else { logger.Info("Success..", zap.String("StatusCode", resp.Status), zap.String("url", url)) resp.Body.Close() } } func main() { initLogger() defer logger.Sync() simpleHttpGet("www.baidu.com") simpleHttpGet("http://www.baidu.com") } ~~~