diff --git a/log/logger.go b/log/logger.go index cb52733191c5a89bebf88bd186f19691f084a2a4..2e856d3b76aed7c7fb1c4e577aeccfd93654c2ab 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 {