Skip to content

Commit 5fadc3f

Browse files
add panic to log level
1 parent d8b6793 commit 5fadc3f

File tree

3 files changed

+21
-2
lines changed

3 files changed

+21
-2
lines changed

pkg/log/zap/flags.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ var levelStrings = map[string]zapcore.Level{
3232
"debug": zap.DebugLevel,
3333
"info": zap.InfoLevel,
3434
"error": zap.ErrorLevel,
35+
"panic": zap.PanicLevel,
3536
}
3637

3738
var stackLevelStrings = map[string]zapcore.Level{

pkg/log/zap/zap.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -247,7 +247,7 @@ func NewRaw(opts ...Opts) *zap.Logger {
247247
// Development Mode defaults(encoder=consoleEncoder,logLevel=Debug,stackTraceLevel=Warn)
248248
// Production Mode defaults(encoder=jsonEncoder,logLevel=Info,stackTraceLevel=Error)
249249
// - zap-encoder: Zap log encoding (one of 'json' or 'console')
250-
// - zap-log-level: Zap Level to configure the verbosity of logging. Can be one of 'debug', 'info', 'error',
250+
// - zap-log-level: Zap Level to configure the verbosity of logging. Can be one of 'debug', 'info', 'error', 'panic'
251251
// or any integer value > 0 which corresponds to custom debug levels of increasing verbosity").
252252
// - zap-stacktrace-level: Zap Level at and above which stacktraces are captured (one of 'info', 'error' or 'panic')
253253
// - zap-time-encoding: Zap time encoding (one of 'epoch', 'millis', 'nano', 'iso8601', 'rfc3339' or 'rfc3339nano'),
@@ -271,7 +271,7 @@ func (o *Options) BindFlags(fs *flag.FlagSet) {
271271
o.Level = fromFlag
272272
}
273273
fs.Var(&levelVal, "zap-log-level",
274-
"Zap Level to configure the verbosity of logging. Can be one of 'debug', 'info', 'error', "+
274+
"Zap Level to configure the verbosity of logging. Can be one of 'debug', 'info', 'error', 'panic'"+
275275
"or any integer value > 0 which corresponds to custom debug levels of increasing verbosity")
276276

277277
// Set the StrackTrace Level

pkg/log/zap/zap_test.go

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -327,6 +327,24 @@ var _ = Describe("Zap log level flag options setup", func() {
327327

328328
Expect(outRaw).To(BeEmpty())
329329
})
330+
331+
It("Should output only panic logs, otherwise empty logs", func() {
332+
args := []string{"--zap-log-level=panic"}
333+
fromFlags.BindFlags(&fs)
334+
err := fs.Parse(args)
335+
Expect(err).ToNot(HaveOccurred())
336+
337+
logOut := new(bytes.Buffer)
338+
339+
logger := New(UseFlagOptions(&fromFlags), WriteTo(logOut))
340+
logger.V(0).Info(logInfoLevel0)
341+
logger.V(1).Info(logDebugLevel1)
342+
logger.V(2).Info(logDebugLevel2)
343+
344+
outRaw := logOut.Bytes()
345+
346+
Expect(outRaw).To(BeEmpty())
347+
})
330348
})
331349

332350
Context("with zap-log-level with increased verbosity.", func() {

0 commit comments

Comments
 (0)