fix: 在 MsgInHandler 和 NewWebSocketClient 中增强错误处理,添加详细的日志记录以捕获异常信息和堆栈跟踪

This commit is contained in:
lixiangwuxian
2025-03-29 14:58:44 +08:00
parent 8d7b0cd266
commit fd34e67142
2 changed files with 16 additions and 2 deletions

View File

@@ -2,9 +2,12 @@ package wsclient
import (
"encoding/json"
"fmt"
"log"
"net/url"
"runtime/debug"
"sync"
"time"
"git.lxtend.com/qqbot/action"
"git.lxtend.com/qqbot/constants"
@@ -36,7 +39,12 @@ func NewWebSocketClient(scheme, host, path string) (*WebSocketClient, error) {
}
defer func() {
if r := recover(); r != nil {
log.Print("Recovered in NewWebSocketClient:", r)
stack := debug.Stack()
errMsg := fmt.Sprintf("[%s] Panic recovered:\nError: %v\nStack Trace:\n%s\n",
time.Now().Format("2006-01-02 15:04:05"), r, stack)
// 写入日志文件
log.Print(errMsg)
go client.receiveMessages()
}
}()