我正在使用 golang logrus进行日志记录,并且我有一个包含所有常规函数的包装器,例如Info(..),Infof(..)等等我想实现一个Audit(..)用于记录到 syslog 的包装器函数。我注意到 logrus syslog 挂钩的问题是,一旦它被挂钩,每个日志函数都会记录到 syslog,Infof(..)我也不希望它们这样做。
有没有办法可以按需调用 syslog?以外:
func (l *WrapLogger) Audit(msg string) {
l.logger.AddHook(syslogHook)
l.logger.Info(msg)
l.logger.ReplaceHooks(logrus.LevelHooks) // removing somehow the hook
}
谢谢