From bb159ce7da2cc78be730eca258371c9876040afb Mon Sep 17 00:00:00 2001 From: Manuel Kieweg <mail@manuelkieweg.de> Date: Thu, 1 Oct 2020 12:11:52 +0100 Subject: [PATCH] logger prints calling function --- log/logger.go | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/log/logger.go b/log/logger.go index cb5273319..2e856d3b7 100644 --- a/log/logger.go +++ b/log/logger.go @@ -103,12 +103,18 @@ func log(level Level, args ...interface{}) { defer l.lock.Unlock() if level <= l.Loglevel { l.builder.WriteString(time.Now().Format(time.RFC3339)) + l.builder.WriteRune('\t') l.builder.WriteString(prefix(level)) - file, function, line := callers() - l.builder.WriteString(file) + l.builder.WriteRune('\t') + function, line := callers() + functionSplitted := strings.SplitAfter(function, "/") + function = functionSplitted[len(functionSplitted) - 1] l.builder.WriteString(function) + l.builder.WriteRune(':') l.builder.WriteString(strconv.Itoa(line)) + l.builder.WriteRune('\t') l.builder.WriteString(fmt.Sprint(args...)) + l.builder.WriteRune('\n') _,err := l.Out.Write([]byte(l.builder.String())) if err != nil { panic(err) @@ -116,12 +122,12 @@ func log(level Level, args ...interface{}) { } } -func callers() (string, string, int) { +func callers() (string, int) { pc := make([]uintptr, 15) - n := runtime.Callers(0, pc) + n := runtime.Callers(4, pc) frames := runtime.CallersFrames(pc[:n]) frame, _ := frames.Next() - return frame.File, frame.Function, frame.Line + return frame.Function, frame.Line } func prefix(level Level) string { -- GitLab