Skip to content

Commit 86f099b

Browse files
author
helianthus1370@gmail.com
committed
完善log打印
1 parent 0507cc3 commit 86f099b

File tree

2 files changed

+34
-31
lines changed

2 files changed

+34
-31
lines changed

Client.go

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -14,18 +14,19 @@ var runStatus bool
1414
var ipaddr string
1515
var tcpServerConn net.Conn
1616

17+
// KillProcess 杀死进程的主函数
1718
func KillProcess() {
1819
killGTA := exec.Command("taskkill", "/F", "/T", "/IM", "GTA5.exe").Run()
1920
killRockstar := exec.Command("taskkill", "/F", "/T", "/IM", "launcher.exe").Run()
2021
if killGTA != nil {
21-
log.Println("未成功杀死GTA, 请检查GTA是否运行中. Error: ", killGTA.Error())
22+
log.Println("[WARNING] 未成功杀死GTA, 请检查GTA是否运行中. Error: ", killGTA.Error())
2223
} else {
23-
log.Println("成功杀死GTA! 检查你的首脑进度是否还存在吧!")
24+
log.Println("[SUCCESS] 成功杀死GTA! 检查你的首脑进度是否还存在吧!")
2425
}
2526
if killRockstar != nil {
26-
log.Println("未成功杀死R* Client, 请检查R* Client是否运行中. Error: ", killRockstar.Error())
27+
log.Println("[WARNING] 未成功杀死R* Client, 请检查R* Client是否运行中. Error: ", killRockstar.Error())
2728
} else {
28-
log.Println("成功杀死R* Client! 检查你的首脑进度是否还存在吧!")
29+
log.Println("[SUCCESS] 成功杀死R* Client! 检查你的首脑进度是否还存在吧!")
2930
}
3031
}
3132

@@ -34,15 +35,14 @@ func dialTcp(ip string, retryFlag bool) {
3435
conn, err := net.Dial("tcp", ip)
3536
if err != nil {
3637
if !retryFlag {
37-
log.Fatal("连接服务器失败:", err)
38+
log.Fatal("[ERROR] 连接服务器失败:", err)
3839
} else {
39-
log.Println("服务器重新失败. 还会进行尝试.")
40+
log.Println("[WARNING] 服务器重新连接失败. 不过还会进行尝试.")
4041
return
4142
}
4243
}
4344

44-
45-
fmt.Println("连接服务器成功, 服务器地址为:", conn.RemoteAddr().String())
45+
fmt.Println("[SUCCESS] 连接服务器成功, 服务器地址为:", conn.RemoteAddr().String())
4646
tcpServerConn = conn
4747
}
4848

@@ -59,8 +59,6 @@ func clientWorker() {
5959
msg := string(buf[:n])
6060
if msg == "kill" {
6161
go KillProcess()
62-
} else if msg == "ping" {
63-
log.Println("服务器在线, 而且在正常工作!")
6462
}
6563
}
6664
}
@@ -70,10 +68,10 @@ func serverHeartTest() {
7068
for {
7169
_, err := tcpServerConn.Write([]byte("ping"))
7270
if err != nil {
73-
log.Println("心跳包发送失败!请检查与服务器的连接.")
71+
log.Println("[ERROR] 心跳包发送失败!请检查与服务器的连接.")
7472
dialTcp(ipaddr, true)
7573
} else {
76-
log.Println("[DEBUG] Server is onlined!")
74+
log.Println("[INFO] 服务器当前在线, 而且在正常工作! ")
7775
}
7876
if runStatus == false {
7977
go clientWorker()
@@ -86,6 +84,8 @@ func main() {
8684
var online bool
8785
fmt.Println("程序运行时, 不要点击黑框框内部, 否则程序会暂停。")
8886
fmt.Println("杀死GTA的快捷键为F4, 请尝试点击看看是否有作用, 然后直接最小化本程序就可以了.")
87+
88+
// 获取是否是以online或者是offline
8989
flag.BoolVar(&online, "online", true, "online")
9090
flag.Parse()
9191

@@ -95,10 +95,10 @@ func main() {
9595
_, err := fmt.Scanln(&ipaddr)
9696

9797
if err != nil {
98-
log.Fatal("读取输入失败!")
98+
log.Fatal("[ERROR] 读取输入失败!")
9999
}
100100

101-
fmt.Printf("读取输入成功: %s \n", ipaddr)
101+
fmt.Printf("[INFO] 读取输入成功: %s \n", ipaddr)
102102

103103
dialTcp(ipaddr, false)
104104
defer tcpServerConn.Close()
@@ -112,9 +112,9 @@ func main() {
112112
go func() {
113113
write, err := tcpServerConn.Write([]byte("kill"))
114114
if err != nil {
115-
log.Println("[-] 向服务器发送kill失败")
115+
log.Println("[ERROR] 向服务器发送kill失败")
116116
} else {
117-
log.Println("[+] 向服务器发送kill成功, 发送字节数为", write)
117+
log.Println("[INFO] 向服务器发送kill成功, 发送字节数为", write)
118118
}
119119
}()
120120

@@ -129,7 +129,7 @@ func main() {
129129
}
130130

131131
} else {
132-
fmt.Println("[!]以单机模式运行中...")
132+
fmt.Println("[WARNING] 以单机模式运行中...")
133133
// 单机模式运行 (一般没啥用, 不过可以秒关GTA= =)
134134
for {
135135
clickedF4 := robotgo.AddEvents("f4")

Server.go

Lines changed: 17 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import (
1010
)
1111

1212
var connects = make(map[string]net.Conn)
13-
var letterRunes = []rune("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ")
13+
var letterRunes = []rune("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ") // 用于生成随机字符串
1414

1515
// RandStringRunes 随机生成字符串
1616
func RandStringRunes(n int) string {
@@ -22,26 +22,27 @@ func RandStringRunes(n int) string {
2222
return string(b)
2323
}
2424

25+
// tcpServer 服务器主函数
2526
func tcpServer(port int) {
2627

2728
listener, err := net.Listen("tcp", fmt.Sprintf(":%d", port))
2829
// 延迟关闭所有的客户端
2930
defer func() {
3031
for _, conn := range connects {
31-
conn.Close()
32+
_ = conn.Close()
3233
}
3334
}()
3435

3536
if err != nil {
36-
log.Fatal(fmt.Sprintf("创建服务器失败: %v", err))
37+
log.Fatal(fmt.Sprintf("[ERROR] 创建服务器失败: %v", err))
3738
}
3839

39-
fmt.Printf("[+] 启动服务器成功, %s, 等待连接...\n", listener.Addr().String())
40+
log.Printf("[SUCCESS] 启动服务器成功, %s, 等待连接...\n", listener.Addr().String())
4041

4142
for {
4243
conn, err := listener.Accept()
4344
if err != nil {
44-
log.Fatal("有一个客户端连接失败了! 请注意检查! 当前连接数为: ", len(connects))
45+
log.Fatal("[WARNING] 有一个客户端连接失败了! 请注意检查! 当前连接数为: ", len(connects))
4546
}
4647

4748
id := RandStringRunes(6)
@@ -50,18 +51,19 @@ func tcpServer(port int) {
5051
}
5152
}
5253

54+
// worker 分配给每个客户端的协程
5355
func worker(id string, conn net.Conn) {
54-
fmt.Printf("[!]新的客户端上线, ta的id为: %s, ta的地址为%s, 当前共有%d个客户端! \n", id, conn.RemoteAddr().String(), len(connects))
56+
log.Printf("[INFO] 新的客户端上线, ta的id为: %s, ta的地址为%s, 当前共有%d个客户端! \n", id, conn.RemoteAddr().String(), len(connects))
5557

5658
for {
5759
buf := make([]byte, 4)
5860
readLen, err := conn.Read(buf)
5961
if err != nil {
60-
log.Println(conn.RemoteAddr().String(), "发送的消息读取失败, 他可能下线了.")
61-
6262
// 从列表中删除这个主机
6363
delete(connects, id)
6464

65+
log.Println("[WARNING] ", conn.RemoteAddr().String(), "下线了, 当前在线主机数量: ", len(connects))
66+
6567
break
6668
}
6769

@@ -72,31 +74,32 @@ func worker(id string, conn net.Conn) {
7274
} else if msg == "ping" {
7375
_, err := conn.Write([]byte("pong"))
7476
if err != nil {
75-
log.Println(conn.RemoteAddr().String(), "心跳测试响应失败.")
77+
log.Println("[ERROR] ", conn.RemoteAddr().String(), "心跳测试响应失败.")
7678
}
7779
}
7880
}
7981
}
8082

83+
// sendKills 发送给每个客户端Kill指令
8184
func sendKills() {
8285
for _, conn := range connects {
8386
go func(conn net.Conn) {
8487
n, err := conn.Write([]byte("kill"))
8588
if err != nil {
86-
log.Println("向", conn.RemoteAddr().String(), "发送Kill指令失败!")
89+
log.Println("[ERROR] 向", conn.RemoteAddr().String(), "发送Kill指令失败!")
8790
} else {
88-
fmt.Printf("[+] 向%s发送Kill指令成功, 发送字节数%d \n", conn.RemoteAddr().String(), n)
91+
log.Printf("[SUCCESS] 向%s发送Kill指令成功, 发送字节数%d \n", conn.RemoteAddr().String(), n)
8992
}
9093
}(conn)
9194
}
9295
}
9396

97+
// status 启动一个协程来监测客户端数量
9498
func status() {
9599
for {
96-
97-
fmt.Println("[DEBUG] 当前在线主机: ", len(connects))
98-
99100
time.Sleep(time.Second * 30)
101+
102+
log.Println("[SERVER-INFO] 当前在线主机: ", len(connects))
100103
}
101104
}
102105

0 commit comments

Comments
 (0)