From c90a18d380ab54b9d80da8537644c048b9154624 Mon Sep 17 00:00:00 2001 From: heimoshuiyu Date: Wed, 1 Nov 2023 17:01:03 +0800 Subject: [PATCH] record model name --- main.go | 4 ++-- process.go | 5 ++++- record.go | 1 + 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/main.go b/main.go index 235691e..1070353 100644 --- a/main.go +++ b/main.go @@ -147,8 +147,8 @@ func main() { if db.Create(&record).Error != nil { log.Println("Error to save record:", record) } - if record.Status != 200 && record.Response != "context canceled" { - errMessage := fmt.Sprintf("IP: %s request all upstreams error %d with %s", record.IP, record.Status, record.Response) + if record.Status != 200 { + errMessage := fmt.Sprintf("IP: %s request %s error %d with %s", record.IP, record.Model, record.Status, record.Response) go sendFeishuMessage(errMessage) go sendMatrixMessage(errMessage) } diff --git a/process.go b/process.go index 166d948..1b9a111 100644 --- a/process.go +++ b/process.go @@ -55,6 +55,10 @@ func processRequest(c *gin.Context, upstream *OPENAI_UPSTREAM, record *Record, s // record chat message from user record.Body = string(inBody) requestBody, requestBodyOK := ParseRequestBody(inBody) + // record if parse success + if requestBodyOK == nil { + record.Model = requestBody.Model + } // set timeout, default is 5 second timeout := 5 * time.Second @@ -95,7 +99,6 @@ func processRequest(c *gin.Context, upstream *OPENAI_UPSTREAM, record *Record, s var contentType string proxy.ModifyResponse = func(r *http.Response) error { haveResponse = true - log.Println("haveResponse set to true") record.Status = r.StatusCode if !shouldResponse && r.StatusCode != 200 { log.Println("upstream return not 200 and should not response", r.StatusCode) diff --git a/record.go b/record.go index 801c055..7f552ea 100644 --- a/record.go +++ b/record.go @@ -15,6 +15,7 @@ type Record struct { CreatedAt time.Time IP string Body string `gorm:"serializer:json"` + Model string Response string ElapsedTime time.Duration Status int