2021-12-19 17:30:51 +01:00

33 lines
825 B
Go

package logging
import (
"fmt"
"go.uber.org/zap"
"go.uber.org/zap/zapcore"
)
func InitLogging(level zap.AtomicLevel, outputFiles, errorFiles []string) {
encoderConfig := zap.NewProductionEncoderConfig()
encoderConfig.EncodeTime = zapcore.TimeEncoderOfLayout("[2006-01-02 15:04:05] -")
encoderConfig.ConsoleSeparator = " "
encoderConfig.EncodeLevel = func(level zapcore.Level, encoder zapcore.PrimitiveArrayEncoder) {
encoder.AppendString(fmt.Sprintf("%s:", level.CapitalString()))
}
encoderConfig.EncodeCaller = nil
config := zap.NewProductionConfig()
config.EncoderConfig = encoderConfig
config.Encoding = "console"
config.Level = level
config.OutputPaths = outputFiles
config.ErrorOutputPaths = errorFiles
logger, err := config.Build()
if err != nil {
panic(err)
}
zap.ReplaceGlobals(logger)
}