Skip to content

Commit 0006501

Browse files
author
spark
committed
fix(data):优化数据获取流程并添加错误日志
- 在获取股票价格、财报、市场资讯等数据时,增加了空值判断并记录错误日志 -优化了数据获取流程,提高了代码的健壮性和可维护性- 在 chromedp 上下文中添加了日志记录,便于调试和排查问题
1 parent c5fbe5f commit 0006501

File tree

2 files changed

+24
-1
lines changed

2 files changed

+24
-1
lines changed

backend/data/openai_api.go

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,10 @@ func (o OpenAi) NewChatStream(stock, stockCode string) <-chan string {
9393
go func() {
9494
defer wg.Done()
9595
messages := SearchStockPriceInfo(stockCode)
96+
if messages == nil || len(*messages) == 0 {
97+
logger.SugaredLogger.Error("获取股票价格失败")
98+
return
99+
}
96100
price := ""
97101
for _, message := range *messages {
98102
price += message + ";"
@@ -106,6 +110,10 @@ func (o OpenAi) NewChatStream(stock, stockCode string) <-chan string {
106110
go func() {
107111
defer wg.Done()
108112
messages := GetFinancialReports(stockCode)
113+
if messages == nil || len(*messages) == 0 {
114+
logger.SugaredLogger.Error("获取股票财报失败")
115+
return
116+
}
109117
for _, message := range *messages {
110118
msg = append(msg, map[string]interface{}{
111119
"role": "assistant",
@@ -117,6 +125,10 @@ func (o OpenAi) NewChatStream(stock, stockCode string) <-chan string {
117125
go func() {
118126
defer wg.Done()
119127
messages := GetTelegraphList()
128+
if messages == nil || len(*messages) == 0 {
129+
logger.SugaredLogger.Error("获取市场资讯失败")
130+
return
131+
}
120132
for _, message := range *messages {
121133
msg = append(msg, map[string]interface{}{
122134
"role": "assistant",
@@ -128,6 +140,10 @@ func (o OpenAi) NewChatStream(stock, stockCode string) <-chan string {
128140
go func() {
129141
defer wg.Done()
130142
messages := SearchStockInfo(stock, "depth")
143+
if messages == nil || len(*messages) == 0 {
144+
logger.SugaredLogger.Error("获取股票资讯失败")
145+
return
146+
}
131147
for _, message := range *messages {
132148
msg = append(msg, map[string]interface{}{
133149
"role": "assistant",
@@ -138,6 +154,10 @@ func (o OpenAi) NewChatStream(stock, stockCode string) <-chan string {
138154
go func() {
139155
defer wg.Done()
140156
messages := SearchStockInfo(stock, "telegram")
157+
if messages == nil || len(*messages) == 0 {
158+
logger.SugaredLogger.Error("获取股票电报资讯失败")
159+
return
160+
}
141161
for _, message := range *messages {
142162
msg = append(msg, map[string]interface{}{
143163
"role": "assistant",
@@ -146,7 +166,6 @@ func (o OpenAi) NewChatStream(stock, stockCode string) <-chan string {
146166
}
147167
}()
148168
wg.Wait()
149-
150169
msg = append(msg, map[string]interface{}{
151170
"role": "user",
152171
"content": stock + "分析和总结",
@@ -233,6 +252,7 @@ func GetFinancialReports(stockCode string) *[]string {
233252
chromedp.WithErrorf(logger.SugaredLogger.Errorf),
234253
)
235254
defer cancel()
255+
236256
defer func(ctx context.Context) {
237257
err := chromedp.Cancel(ctx)
238258
if err != nil {

backend/data/stock_data_api.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -520,8 +520,11 @@ func SearchStockPriceInfo(stockCode string) *[]string {
520520
// 创建一个 chromedp 上下文
521521
ctx, cancel := chromedp.NewContext(
522522
context.Background(),
523+
chromedp.WithLogf(logger.SugaredLogger.Infof),
524+
chromedp.WithErrorf(logger.SugaredLogger.Errorf),
523525
)
524526
defer cancel()
527+
525528
defer func(ctx context.Context) {
526529
err := chromedp.Cancel(ctx)
527530
if err != nil {

0 commit comments

Comments
 (0)