diff options
author | Jesse Hallam <jesse.hallam@gmail.com> | 2018-05-11 12:56:54 -0400 |
---|---|---|
committer | Derrick Anderson <derrick@andersonwebstudio.com> | 2018-05-11 12:56:54 -0400 |
commit | b4db76cedbd99bfcfb1c12444c5bd84e92ac01dc (patch) | |
tree | c63684db0fd9864b1a13d75f6138c24b6690b02c /mlog/log.go | |
parent | 91c998156336e34ab4b8979db77cc65c97a65782 (diff) | |
download | chat-b4db76cedbd99bfcfb1c12444c5bd84e92ac01dc.tar.gz chat-b4db76cedbd99bfcfb1c12444c5bd84e92ac01dc.tar.bz2 chat-b4db76cedbd99bfcfb1c12444c5bd84e92ac01dc.zip |
fix mlog-ing before initialized (#8753)
Dump mlog to STDOUT before initialized, to allow for logging failures
that occur due to config parsing, etc.
Fix file logging to honour logger.FileJson instead of copying the
logger.ConsoleJson setting.
Diffstat (limited to 'mlog/log.go')
-rw-r--r-- | mlog/log.go | 23 |
1 files changed, 12 insertions, 11 deletions
diff --git a/mlog/log.go b/mlog/log.go index ad537a11d..0d1e28e8d 100644 --- a/mlog/log.go +++ b/mlog/log.go @@ -62,6 +62,16 @@ func getZapLevel(level string) zapcore.Level { } } +func makeEncoder(json bool) zapcore.Encoder { + encoderConfig := zap.NewProductionEncoderConfig() + if json { + return zapcore.NewJSONEncoder(encoderConfig) + } + + encoderConfig.EncodeTime = zapcore.ISO8601TimeEncoder + return zapcore.NewConsoleEncoder(encoderConfig) +} + func NewLogger(config *LoggerConfiguration) *Logger { cores := []zapcore.Core{} logger := &Logger{ @@ -69,18 +79,9 @@ func NewLogger(config *LoggerConfiguration) *Logger { fileLevel: zap.NewAtomicLevelAt(getZapLevel(config.FileLevel)), } - encoderConfig := zap.NewProductionEncoderConfig() - var encoder zapcore.Encoder - if config.ConsoleJson { - encoder = zapcore.NewJSONEncoder(encoderConfig) - } else { - encoderConfig.EncodeTime = zapcore.ISO8601TimeEncoder - encoder = zapcore.NewConsoleEncoder(encoderConfig) - } - if config.EnableConsole { writer := zapcore.Lock(os.Stdout) - core := zapcore.NewCore(encoder, writer, logger.consoleLevel) + core := zapcore.NewCore(makeEncoder(config.ConsoleJson), writer, logger.consoleLevel) cores = append(cores, core) } @@ -90,7 +91,7 @@ func NewLogger(config *LoggerConfiguration) *Logger { MaxSize: 100, Compress: true, }) - core := zapcore.NewCore(encoder, writer, logger.fileLevel) + core := zapcore.NewCore(makeEncoder(config.FileJson), writer, logger.fileLevel) cores = append(cores, core) } |