99 "testing"
1010
1111 "go.uber.org/zap"
12+ "go.uber.org/zap/buffer"
1213 "go.uber.org/zap/zapcore"
1314)
1415
@@ -55,6 +56,9 @@ func MakeLogger(t *testing.T, node ...int) *TestLogger {
5556 config .EncodeTime = zapcore .TimeEncoderOfLayout ("[01-02|15:04:05.000]" )
5657 config .ConsoleSeparator = " "
5758 encoder := zapcore .NewConsoleEncoder (config )
59+ if strings .ToLower (os .Getenv ("LOG_LEVEL" )) == "info" {
60+ encoder = & DebugSwallowingEncoder {consoleEncoder : encoder , ObjectEncoder : encoder , pool : buffer .NewPool ()}
61+ }
5862
5963 atomicLevel := zap .NewAtomicLevelAt (zapcore .DebugLevel )
6064
@@ -77,3 +81,24 @@ func MakeLogger(t *testing.T, node ...int) *TestLogger {
7781
7882 return l
7983}
84+
85+ type DebugSwallowingEncoder struct {
86+ zapcore.ObjectEncoder
87+ consoleEncoder zapcore.Encoder
88+ pool buffer.Pool
89+ }
90+
91+ func (dse * DebugSwallowingEncoder ) Clone () zapcore.Encoder {
92+ return & DebugSwallowingEncoder {
93+ pool : dse .pool ,
94+ ObjectEncoder : dse .ObjectEncoder ,
95+ consoleEncoder : dse .consoleEncoder .Clone (),
96+ }
97+ }
98+
99+ func (dse * DebugSwallowingEncoder ) EncodeEntry (entry zapcore.Entry , fields []zapcore.Field ) (* buffer.Buffer , error ) {
100+ if entry .Level == zapcore .DebugLevel {
101+ return dse .pool .Get (), nil
102+ }
103+ return dse .consoleEncoder .EncodeEntry (entry , fields )
104+ }
0 commit comments