I am using go.uber.org/zap/zapcore
for logging in my Go app.
package logger
import (
"go.uber.org/zap"
"go.uber.org/zap/zapcore"
"log"
)
var l *zap.Logger
func Get() *zap.Logger {
return l
}
func Init() {
conf := zap.NewProductionConfig()
logger, err := conf.Build()
if err != nil {
log.Fatal("Init logger failed", err)
}
l = logger
}
I also have Sentry project and use github.com/getsentry/raven-go
.
I want to send logs at error
level and above to Sentry.
For example when logging at info
level with logger.Info()
I want to just log them as usual, but in case of error
or fatal
logs I need send these messages to Sentry. How can I achieve that?