Go 如何将钩子添加到zap记录器中

Go 如何将钩子添加到zap记录器中,go,Go,我尝试添加带有WithOptions的钩子,但是没有打印任何内容来捕获一些日志事件 logger.WithOptions(zap.Hooks(func(entry zapcore.Entry) error { fmt.Println("test hooks test hooks") return nil })) 从: func(日志*记录器)带选项(选项…选项)*记录器 WithOptions克隆当前记录器,应用提供的选项,并返回结果记录器。同时使用是安全

我尝试添加带有WithOptions的钩子,但是没有打印任何内容来捕获一些日志事件

logger.WithOptions(zap.Hooks(func(entry zapcore.Entry) error {
    fmt.Println("test hooks test hooks")
    return nil
}))
从:

func(日志*记录器)带选项(选项…选项)*记录器
WithOptions克隆当前记录器,应用提供的选项,并返回结果记录器。同时使用是安全的

请注意,它克隆了一个新的记录器,而不是修改记录器。因此,您应该重新分配记录器变量(或定义新变量),如下所示:

logger=logger.WithOptions(zap.Hooks(func(entry zapcore.entry))错误{
fmt.Println(“测试挂钩测试挂钩”)
归零
}))
来自:

func(日志*记录器)带选项(选项…选项)*记录器
WithOptions克隆当前记录器,应用提供的选项,并返回结果记录器。同时使用是安全的

请注意,它克隆了一个新的记录器,而不是修改记录器。因此,您应该重新分配记录器变量(或定义新变量),如下所示:

logger=logger.WithOptions(zap.Hooks(func(entry zapcore.entry))错误{
fmt.Println(“测试挂钩测试挂钩”)
归零
}))

您是否有可能忘记延迟记录器.Sync()?您是否有可能忘记延迟记录器.Sync()?