defer func() { if e := recover(); e != nil { var buf [4096]byte n := runtime.Stack(buf[:], false) fmt.Println(string(buf[:n])) } }()