|
|
|
@@ -55,7 +55,7 @@ func NewTextEncoder(cfg zapcore.EncoderConfig) zapcore.Encoder {
|
|
|
|
|
return &textEncoder{
|
|
|
|
|
EncoderConfig: &cfg,
|
|
|
|
|
buf: bufferpool.Get(),
|
|
|
|
|
spaced: false,
|
|
|
|
|
spaced: true,
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@@ -68,12 +68,13 @@ func (enc textEncoder) EncodeEntry(ent zapcore.Entry, fields []zapcore.Field) (*
|
|
|
|
|
if enc.TimeKey != "" && enc.EncodeTime != nil {
|
|
|
|
|
enc.EncodeTime(ent.Time, arr)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if enc.LevelKey != "" && enc.EncodeLevel != nil {
|
|
|
|
|
enc.EncodeLevel(ent.Level, arr)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if ent.LoggerName != "" && enc.NameKey != "" {
|
|
|
|
|
nameEncoder := enc.EncodeName
|
|
|
|
|
|
|
|
|
|
if nameEncoder == nil {
|
|
|
|
|
// Fall back to FullNameEncoder for backward compatibility.
|
|
|
|
|
nameEncoder = zapcore.FullNameEncoder
|
|
|
|
@@ -81,17 +82,23 @@ func (enc textEncoder) EncodeEntry(ent zapcore.Entry, fields []zapcore.Field) (*
|
|
|
|
|
|
|
|
|
|
nameEncoder(ent.LoggerName, arr)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if ent.Caller.Defined && enc.CallerKey != "" && enc.EncodeCaller != nil {
|
|
|
|
|
enc.EncodeCaller(ent.Caller, arr)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
for i := range arr.elems {
|
|
|
|
|
// if i > 0 {
|
|
|
|
|
// line.AppendByte('\t')
|
|
|
|
|
// }
|
|
|
|
|
_, _ = fmt.Fprint(line, arr.elems[i])
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
putSliceEncoder(arr)
|
|
|
|
|
|
|
|
|
|
// Add any structured context.
|
|
|
|
|
enc.writeContext(line, fields)
|
|
|
|
|
|
|
|
|
|
// Add the message itself.
|
|
|
|
|
if enc.MessageKey != "" {
|
|
|
|
|
// c.addTabIfNecessary(line)
|
|
|
|
@@ -99,9 +106,6 @@ func (enc textEncoder) EncodeEntry(ent zapcore.Entry, fields []zapcore.Field) (*
|
|
|
|
|
line.AppendString(ent.Message)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Add any structured context.
|
|
|
|
|
enc.writeContext(line, fields)
|
|
|
|
|
|
|
|
|
|
// If there's no stacktrace key, honor that; this allows users to force
|
|
|
|
|
// single-line output.
|
|
|
|
|
if ent.Stack != "" && enc.StacktraceKey != "" {
|
|
|
|
@@ -114,6 +118,7 @@ func (enc textEncoder) EncodeEntry(ent zapcore.Entry, fields []zapcore.Field) (*
|
|
|
|
|
} else {
|
|
|
|
|
line.AppendString(zapcore.DefaultLineEnding)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return line, nil
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@@ -128,9 +133,10 @@ func (enc textEncoder) writeContext(line *buffer.Buffer, extra []zapcore.Field)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// c.addTabIfNecessary(line)
|
|
|
|
|
line.AppendByte('{')
|
|
|
|
|
// line.AppendByte('{')
|
|
|
|
|
line.AppendByte(' ')
|
|
|
|
|
_, _ = line.Write(context.buf.Bytes())
|
|
|
|
|
line.AppendByte('}')
|
|
|
|
|
// line.AppendByte('}')
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (enc textEncoder) addTabIfNecessary(line *buffer.Buffer) {
|
|
|
|
@@ -216,11 +222,13 @@ func (enc *textEncoder) AddDuration(key string, val time.Duration) {
|
|
|
|
|
func (enc *textEncoder) AddFloat64(key string, val float64) {
|
|
|
|
|
enc.addKey(key)
|
|
|
|
|
enc.appendFloat(val, 64)
|
|
|
|
|
enc.buf.AppendByte(']')
|
|
|
|
|
}
|
|
|
|
|
func (enc *textEncoder) AddInt64(key string, val int64) {
|
|
|
|
|
enc.addKey(key)
|
|
|
|
|
enc.addElementSeparator()
|
|
|
|
|
enc.buf.AppendInt(val)
|
|
|
|
|
enc.buf.AppendByte(']')
|
|
|
|
|
}
|
|
|
|
|
func (enc *textEncoder) AddReflected(key string, obj interface{}) error {
|
|
|
|
|
enc.resetReflectBuf()
|
|
|
|
@@ -241,9 +249,10 @@ func (enc *textEncoder) OpenNamespace(key string) {
|
|
|
|
|
func (enc *textEncoder) AddString(key, val string) {
|
|
|
|
|
enc.addKey(key)
|
|
|
|
|
enc.addElementSeparator()
|
|
|
|
|
enc.buf.AppendByte('"')
|
|
|
|
|
// enc.buf.AppendByte('"')
|
|
|
|
|
enc.safeAddString(val)
|
|
|
|
|
enc.buf.AppendByte('"')
|
|
|
|
|
// enc.buf.AppendByte('"')
|
|
|
|
|
enc.buf.AppendByte(']')
|
|
|
|
|
}
|
|
|
|
|
func (enc *textEncoder) AddTime(key string, val time.Time) {
|
|
|
|
|
enc.addKey(key)
|
|
|
|
@@ -261,6 +270,7 @@ func (enc *textEncoder) AddUint64(key string, val uint64) {
|
|
|
|
|
enc.addKey(key)
|
|
|
|
|
enc.addElementSeparator()
|
|
|
|
|
enc.buf.AppendUint(val)
|
|
|
|
|
enc.buf.AppendByte(']')
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//noinspection GoRedundantConversion
|
|
|
|
@@ -293,9 +303,10 @@ func (enc *textEncoder) clone() *textEncoder {
|
|
|
|
|
|
|
|
|
|
func (enc *textEncoder) addKey(key string) {
|
|
|
|
|
enc.addElementSeparator()
|
|
|
|
|
enc.buf.AppendByte('"')
|
|
|
|
|
// enc.buf.AppendByte('"')
|
|
|
|
|
enc.buf.AppendByte('[')
|
|
|
|
|
enc.safeAddString(key)
|
|
|
|
|
enc.buf.AppendByte('"')
|
|
|
|
|
// enc.buf.AppendByte('"')
|
|
|
|
|
enc.buf.AppendByte(':')
|
|
|
|
|
if enc.spaced {
|
|
|
|
|
enc.buf.AppendByte(' ')
|
|
|
|
|