From c5516780b3da2cac561aebd318381a680b95e806 Mon Sep 17 00:00:00 2001 From: Steven Xie Date: Sun, 22 Dec 2019 18:07:50 -0500 Subject: [PATCH] cmdutil: Add env opt to report logrus caller --- cmdutil/logrus.go | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/cmdutil/logrus.go b/cmdutil/logrus.go index 963dce2..42f8d20 100644 --- a/cmdutil/logrus.go +++ b/cmdutil/logrus.go @@ -3,6 +3,7 @@ package cmdutil import ( "io" "os" + "strings" "github.com/dmksnnk/sentryhook" raven "github.com/getsentry/raven-go" @@ -15,6 +16,7 @@ import ( const ( EnvLogrusLevel = "LOGRUS_LEVEL" EnvLogrusFormat = "LOGRUS_FORMAT" + EnvLogrusCaller = "LOGRUS_CALLER" ) // Valid environment values for the key EnvLogrusFormat. @@ -40,6 +42,15 @@ func NewLogger(opts ...LogrusOption) *logrus.Entry { log := logrus.New() log.SetOutput(cfg.Output) + // Set 'report caller' option. + { + report := os.Getenv(EnvLogrusCaller) + switch strings.ToLower(report) { + case "true", "1": + log.SetReportCaller(true) + } + } + // Set level. if l, ok := os.LookupEnv(EnvLogrusLevel); ok { level, err := logrus.ParseLevel(l) @@ -92,7 +103,7 @@ func WithSentryHook(rc *raven.Client) LogrusOption { type ( // A LogrusConfig configures a logrus.Logger. LogrusConfig struct { - // Logging-related options. + // Output-related options. Output io.Writer TextFormatter logrus.TextFormatter JSONFormatter logrus.JSONFormatter