Quellcode durchsuchen

增加函数记录

liuyong_awesome vor 4 Jahren
Ursprung
Commit
779ae5f488
2 geänderte Dateien mit 14 neuen und 0 gelöschten Zeilen
  1. 12 0
      log.go
  2. 2 0
      log_test.go

+ 12 - 0
log.go

@@ -4,6 +4,8 @@ import (
 	"github.com/lestrrat-go/file-rotatelogs"
 	"github.com/sirupsen/logrus"
 	"io"
+	"runtime"
+	"strconv"
 	"time"
 )
 
@@ -57,3 +59,13 @@ func NewLogger(f io.Writer) *logrus.Logger {
 	log.Out = f
 	return log
 }
+
+func GetErrorFuncInfo(skip int) string {
+	pc, file, lineNo, ok := runtime.Caller(skip)
+	if !ok {
+		return ""
+	}
+	funcName := runtime.FuncForPC(pc).Name()
+	//fileName := path.Base(file) // Base函数返回路径的最后一个元素
+	return "文件名:" + file + " 行号:" + strconv.Itoa(lineNo) + " 方法名:" + funcName
+}

+ 2 - 0
log_test.go

@@ -26,6 +26,8 @@ func TestNewLoggerByLogName(t *testing.T) {
 				t.Errorf("NewLoggerByLogName() error = %v, wantErr %v", err, tt.wantErr)
 				return
 			}
+
+			got.Error(GetErrorFuncInfo(1))
 			got.Error("hello33")
 			//if !reflect.DeepEqual(got, tt.want) {
 			//	t.Errorf("NewLoggerByLogName() got = %v, want %v", got, tt.want)