前言
我们依然从zap的官方示例开始:
logger, _ := zap.NewProduction()
defer logger.Sync()
logger.Info("failed to fetch URL",
// Structured context as strongly typed Field values.
zap.String("url", url),
zap.Int("attempt", 3),
zap.Duration("backoff", time.Second),
)
zap在使用时,需要先构造一个logger,然后才能处理具体的日志内容。
示例中NewProduction的代码如下:
func NewProduction(options ...Option) (*Logger, error) {
return NewProductionConfig().Build(options...)
}
func NewProductionConfig() Config {
return Config{
Level: NewAtomicLevelAt(InfoLevel),
Development: false,
Sampling: &SamplingConfig{
Initial: 100,
Thereafter: 100,
},
Encoding: "json",
EncoderConfig: NewProductionEncoderConfig(),
OutputPaths: []string{
"stderr"},
ErrorOutputPaths: []string

最低0.47元/天 解锁文章
738

被折叠的 条评论
为什么被折叠?



