[MM-18638] Send mlog console output to stderr (#12366)

* Send server logs to stderr

* Update comment
Этот коммит содержится в:
Claudio Costa
2019-09-27 17:40:16 +02:00
коммит произвёл GitHub
родитель 340287890a
Коммит de8e798052
2 изменённых файлов: 5 добавлений и 4 удалений

Просмотреть файл

@@ -6,9 +6,10 @@ package mlog
import ( import (
"encoding/json" "encoding/json"
"fmt" "fmt"
"os"
) )
// defaultLog manually encodes the log to STDOUT, providing a basic, default logging implementation // defaultLog manually encodes the log to STDERR, providing a basic, default logging implementation
// before mlog is fully configured. // before mlog is fully configured.
func defaultLog(level, msg string, fields ...Field) { func defaultLog(level, msg string, fields ...Field) {
log := struct { log := struct {
@@ -22,9 +23,9 @@ func defaultLog(level, msg string, fields ...Field) {
} }
if b, err := json.Marshal(log); err != nil { if b, err := json.Marshal(log); err != nil {
fmt.Printf(`{"level":"error","msg":"failed to encode log message"}%s`, "\n") fmt.Fprintf(os.Stderr, `{"level":"error","msg":"failed to encode log message"}%s`, "\n")
} else { } else {
fmt.Printf("%s\n", b) fmt.Fprintf(os.Stderr, "%s\n", b)
} }
} }

Просмотреть файл

@@ -86,7 +86,7 @@ func NewLogger(config *LoggerConfiguration) *Logger {
} }
if config.EnableConsole { if config.EnableConsole {
writer := zapcore.Lock(os.Stdout) writer := zapcore.Lock(os.Stderr)
core := zapcore.NewCore(makeEncoder(config.ConsoleJson), writer, logger.consoleLevel) core := zapcore.NewCore(makeEncoder(config.ConsoleJson), writer, logger.consoleLevel)
cores = append(cores, core) cores = append(cores, core)
} }