62 lines
989 B
Go
62 lines
989 B
Go
package logger
|
|
|
|
import (
|
|
"io"
|
|
"os"
|
|
|
|
"github.com/rs/zerolog"
|
|
"github.com/samber/lo"
|
|
)
|
|
|
|
var logger *zerolog.Logger
|
|
|
|
func init() {
|
|
var writers []io.Writer
|
|
|
|
writers = append(writers, zerolog.ConsoleWriter{Out: os.Stderr})
|
|
writers = append(writers, newRollingWriter())
|
|
mw := io.MultiWriter(writers...)
|
|
logger = lo.ToPtr(zerolog.New(mw).With().Timestamp().Logger())
|
|
logger.Info().Msg("Logger initialized.")
|
|
}
|
|
|
|
func Panic() *zerolog.Event {
|
|
return logger.Panic()
|
|
}
|
|
|
|
func Fatal() *zerolog.Event {
|
|
return logger.Fatal()
|
|
}
|
|
|
|
func Error() *zerolog.Event {
|
|
return logger.Error()
|
|
}
|
|
|
|
func Warn() *zerolog.Event {
|
|
return logger.Warn()
|
|
}
|
|
|
|
func Info() *zerolog.Event {
|
|
return logger.Info()
|
|
}
|
|
|
|
func Debug() *zerolog.Event {
|
|
return logger.Debug()
|
|
}
|
|
|
|
func Trace() *zerolog.Event {
|
|
return logger.Trace()
|
|
}
|
|
|
|
func Print(v ...interface{}) {
|
|
logger.Print(v...)
|
|
}
|
|
|
|
func Printf(format string, v ...interface{}) {
|
|
logger.Printf(format, v...)
|
|
}
|
|
|
|
func With() zerolog.Context {
|
|
return logger.With()
|
|
}
|