github.com/JohanShen/go-utils@v1.1.4-0.20201117124024-901319a2b2a0/logger/zap_logger_test.go (about) 1 package logger 2 3 import ( 4 "fmt" 5 "github.com/JohanShen/go-utils/utils" 6 "os" 7 "os/signal" 8 "reflect" 9 "strconv" 10 "testing" 11 "time" 12 ) 13 14 func TestABC(t *testing.T) { 15 16 var a interface{} 17 a = 43 18 b := numberic2str(a) 19 20 var a1 interface{} 21 a1 = "66" 22 b1 := numberic2str(a1) 23 //b = a.(string) 24 25 t.Log(a, reflect.TypeOf(a)) 26 t.Log(b, reflect.TypeOf(b)) 27 28 t.Log(a1, reflect.TypeOf(a1)) 29 t.Log(b1, reflect.TypeOf(b1)) 30 31 } 32 33 func numberic2str(a interface{}) string { 34 b := "" 35 switch a.(type) { 36 case int: 37 b = strconv.Itoa(a.(int)) 38 case int16: 39 b = strconv.FormatInt(int64(a.(int16)), 10) 40 case int8: 41 b = strconv.FormatInt(int64(a.(int8)), 10) 42 case int32: 43 b = strconv.FormatInt(int64(a.(int32)), 10) 44 case int64: 45 b = strconv.FormatInt(a.(int64), 10) 46 case string: 47 b = a.(string) 48 } 49 return b 50 } 51 52 func TestDebug(t *testing.T) { 53 54 //合建chan 55 c := make(chan os.Signal) 56 //监听所有信号 57 signal.Notify(c) 58 //阻塞直到有信号传入 59 fmt.Println("启动") 60 61 go func() { 62 s := <-c 63 fmt.Println("退出信号", s) 64 }() 65 66 currentTime := time.Now() 67 68 fmt.Println("Current Time in String: ", currentTime.String()) 69 70 fmt.Println("MM-DD-YYYY : ", currentTime.Format("01月02日2006年 Monday")) 71 fmt.Println("MM-DD-YYYY : ", currentTime.Format("06年1月2日3:4:5 Mon")) 72 73 fmt.Println("MM-DD-YYYY : ", utils.XTime(currentTime).Format("%Y年%m月%D日%h:%I:%s 333333")) 74 75 //path := "./d/f/d/txt.log" 76 77 a, _ := os.Getwd() 78 t.Log(a) 79 80 //os.Chdir(path) 81 //os.MkdirAll(path, 0666) 82 83 fileInfo, err := os.Stat("test.txt") 84 t.Log(fileInfo, err) 85 if err != nil { 86 if os.IsNotExist(err) { 87 t.Log("文件不存在") 88 } 89 } 90 91 fileInfo, err = os.Stat("test.log") 92 t.Log(fileInfo, err) 93 94 var config = &Config{Name: "test", ConsoleLog: false, LogPath: "./%Y/%M%D/%H%I.log", WriteDelay: 50, ShowInTopLevel: []string{"token", "userid"}} 95 var logger1 Logger 96 logger1 = NewZapLogger(config) 97 98 go func(logger1 Logger) { 99 for i := 0; i < 20000000; i++ { 100 data := make([]*LogArg, 0, 5) 101 data = append(data, ArgToken(utils.AnyToStr(time.Now().Unix()))) 102 data = append(data, ArgUserId(utils.AnyToStr(i+i*2))) 103 data = append(data, ArgAny("time", time.Now())) 104 data = append(data, ArgAny("i", i)) 105 106 logger1.Debug(fmt.Sprintf("男儿当自强 %d", i), data...) 107 //time.Sleep(15 * time.Millisecond) 108 } 109 }(logger1) 110 111 time.Sleep(190 * time.Second) 112 //logger1.Debug(MakeInfoBody("男儿当自强", "123", "", currentTime)) 113 //logger1.Info(MakeDebugBody("123", "ddd", "", "c")) 114 115 }