diff --git a/controller/relay.go b/controller/relay.go index 78d21e54..5310a9fb 100644 --- a/controller/relay.go +++ b/controller/relay.go @@ -8,6 +8,7 @@ import ( "log" "net/http" "strings" + "time" "github.com/QuantumNous/new-api/common" "github.com/QuantumNous/new-api/constant" @@ -373,7 +374,12 @@ func processChannelError(c *gin.Context, channelError types.ChannelError, err *t } service.AppendChannelAffinityAdminInfo(c, adminInfo) other["admin_info"] = adminInfo - model.RecordErrorLog(c, userId, channelId, modelName, tokenName, err.MaskSensitiveErrorWithStatusCode(), tokenId, 0, false, userGroup, other) + startTime := common.GetContextKeyTime(c, constant.ContextKeyRequestStartTime) + if startTime.IsZero() { + startTime = time.Now() + } + useTimeSeconds := int(time.Since(startTime).Seconds()) + model.RecordErrorLog(c, userId, channelId, modelName, tokenName, err.MaskSensitiveErrorWithStatusCode(), tokenId, useTimeSeconds, false, userGroup, other) } }