From 5c6b4a0c9baefd7ddf69a2a2c2701a6861709edb Mon Sep 17 00:00:00 2001 From: GoEdgeLab Date: Wed, 5 Apr 2023 15:54:07 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E5=A5=BD=E5=9C=B0=E5=A4=84=E7=90=86?= =?UTF-8?q?=E8=AE=BF=E9=97=AE=E6=97=A5=E5=BF=97=E4=B8=AD=E7=9A=84=E9=9D=9E?= =?UTF-8?q?UTF-8=E5=AD=97=E8=8A=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/nodes/http_access_log_queue.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/internal/nodes/http_access_log_queue.go b/internal/nodes/http_access_log_queue.go index 0b8c3ff..e03fcaa 100644 --- a/internal/nodes/http_access_log_queue.go +++ b/internal/nodes/http_access_log_queue.go @@ -137,12 +137,15 @@ Loop: return nil } +// ToValidUTF8 处理访问日志中的非UTF-8字节 func (this *HTTPAccessLogQueue) ToValidUTF8(accessLog *pb.HTTPAccessLog) { accessLog.RemoteUser = utils.ToValidUTF8string(accessLog.RemoteUser) accessLog.RequestURI = utils.ToValidUTF8string(accessLog.RequestURI) accessLog.RequestPath = utils.ToValidUTF8string(accessLog.RequestPath) accessLog.RequestFilename = utils.ToValidUTF8string(accessLog.RequestFilename) accessLog.RequestBody = bytes.ToValidUTF8(accessLog.RequestBody, []byte{}) + accessLog.Host = utils.ToValidUTF8string(accessLog.Host) + accessLog.Hostname = utils.ToValidUTF8string(accessLog.Hostname) for _, v := range accessLog.SentHeader { for index, s := range v.Values { @@ -167,4 +170,8 @@ func (this *HTTPAccessLogQueue) ToValidUTF8(accessLog *pb.HTTPAccessLog) { v.Values[index] = utils.ToValidUTF8string(s) } } + + for k, v := range accessLog.Errors { + accessLog.Errors[k] = utils.ToValidUTF8string(v) + } }