diff --git a/entry.go b/entry.go index f78e4a25f..9d2bb9000 100644 --- a/entry.go +++ b/entry.go @@ -16,7 +16,6 @@ var ( bufferPool *sync.Pool // qualified package name, cached at first use - //logrusPackage string skipPackageNameForCaller = make(map[string]struct{}, 1) // Positions in the call stack when tracing to report the calling method @@ -148,12 +147,6 @@ func (entry *Entry) WithTime(t time.Time) *Entry { return &Entry{Logger: entry.Logger, Data: entry.Data, Time: t, err: entry.err, Context: entry.Context} } -// AddSkipPackageFromStackTrace -// ex: logrus.AddSkipPackageFromStackTrace("github.com/go-xorm/xorm") -// func AddSkipPackageFromStackTrace(name string) { -// skipPackageNameForCaller[name] = struct{}{} -// } - // getPackageName reduces a fully qualified function name to the package name // There really ought to be to be a better way... func getPackageName(f string) string { @@ -194,7 +187,6 @@ func getCaller() *runtime.Frame { //pkg := getPackageName(f.Function) // If the caller isn't part of this package, we're done - //if pkg != logrusPackage {a if _, has := skipPackageNameForCaller[getPackageName(f.Function)]; !has { return &f } diff --git a/exported.go b/exported.go index badfdf965..0c0561e21 100644 --- a/exported.go +++ b/exported.go @@ -31,7 +31,9 @@ func SetReportCaller(include bool) { std.SetReportCaller(include) } -// AddSkipPackageFromStackTrace ... +// AddSkipPackageFromStackTrace excludes package names from the caller report when +// SetReportCaller set to true. Commonly used to skip a custom logrus wrapper package frames. +// ex. log.AddSkipPackageFromStackTrace("mycoolapp/mylogger") // skip mycoolapp/mylogger wrapper. func AddSkipPackageFromStackTrace(name string) { std.AddSkipPackageFromStackTrace(name) } diff --git a/logger.go b/logger.go index 959304c9e..e049319bb 100644 --- a/logger.go +++ b/logger.go @@ -335,14 +335,14 @@ func (logger *Logger) SetOutput(output io.Writer) { logger.Out = output } -// SetReportCaller ... +// SetReportCaller logs the caller stack frame. func (logger *Logger) SetReportCaller(reportCaller bool) { logger.mu.Lock() defer logger.mu.Unlock() logger.ReportCaller = reportCaller } -// AddSkipPackageFromStackTrace ... +// AddSkipPackageFromStackTrace excludes a package from the caller report. func (logger *Logger) AddSkipPackageFromStackTrace(name string) { skipPackageNameForCaller[name] = struct{}{} }