diff --git a/console.go b/console.go index e9ee5a6d..0b6b2f61 100644 --- a/console.go +++ b/console.go @@ -206,7 +206,7 @@ func (w ConsoleWriter) writeFields(evt map[string]interface{}, buf *bytes.Buffer case json.Number: buf.WriteString(fv(fValue)) default: - b, err := json.Marshal(fValue) + b, err := InterfaceMarshalFunc(fValue) if err != nil { fmt.Fprintf(buf, colorize("[error: %v]", colorRed, w.NoColor), err) } else { diff --git a/journald/journald.go b/journald/journald.go index 8f77d0a2..5b53490f 100644 --- a/journald/journald.go +++ b/journald/journald.go @@ -102,7 +102,7 @@ func (w journalWriter) Write(p []byte) (n int, err error) { case json.Number: args[jKey] = fmt.Sprint(value) default: - b, err := json.Marshal(value) + b, err := zerolog.InterfaceMarshalFunc(value) if err != nil { args[jKey] = fmt.Sprintf("[error: %v]", err) } else {