From 9b35902ad404c7838772963adf11a70c7932dc40 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E7=A5=A5=E8=B6=85?= Date: Wed, 7 Sep 2022 17:34:57 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=BF=E9=97=AE=E6=97=A5=E5=BF=97=E5=9B=A0?= =?UTF-8?q?=E5=B0=BA=E5=AF=B8=E8=BF=87=E5=A4=A7=E6=97=A0=E6=B3=95=E6=8F=90?= =?UTF-8?q?=E4=BA=A4=E5=88=B0API=E8=8A=82=E7=82=B9=E6=97=B6=EF=BC=8C?= =?UTF-8?q?=E8=87=AA=E5=8A=A8=E5=8E=BB=E9=99=A4requestBody=E5=90=8E?= =?UTF-8?q?=E5=86=8D=E6=AC=A1=E5=B0=9D=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/nodes/http_access_log_queue.go | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/internal/nodes/http_access_log_queue.go b/internal/nodes/http_access_log_queue.go index 6fb0029..cfae612 100644 --- a/internal/nodes/http_access_log_queue.go +++ b/internal/nodes/http_access_log_queue.go @@ -7,6 +7,8 @@ import ( "github.com/TeaOSLab/EdgeNode/internal/remotelogs" "github.com/TeaOSLab/EdgeNode/internal/rpc" "github.com/TeaOSLab/EdgeNode/internal/utils" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/status" "strings" "time" ) @@ -109,6 +111,19 @@ Loop: return err } + // 是否请求内容过大 + statusCode, ok := status.FromError(err) + if ok && statusCode.Code() == codes.ResourceExhausted { + // 去除Body + for _, accessLog := range accessLogs { + accessLog.RequestBody = nil + } + + // 重新提交 + _, err = this.rpcClient.HTTPAccessLogRPC.CreateHTTPAccessLogs(this.rpcClient.Context(), &pb.CreateHTTPAccessLogsRequest{HttpAccessLogs: accessLogs}) + return err + } + return err }