From 4f0834d8175da512cb12603954b2b8d01cfa4ad5 Mon Sep 17 00:00:00 2001 From: rinfx Date: Tue, 15 Apr 2025 19:47:43 +0800 Subject: [PATCH] rm plugin id after use (#2070) --- plugins/wasm-go/pkg/wrapper/plugin_wrapper.go | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go b/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go index 4345aea59..2b4847b11 100644 --- a/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go +++ b/plugins/wasm-go/pkg/wrapper/plugin_wrapper.go @@ -24,6 +24,7 @@ import ( "github.com/higress-group/proxy-wasm-go-sdk/proxywasm" "github.com/higress-group/proxy-wasm-go-sdk/proxywasm/types" "github.com/tidwall/gjson" + "github.com/tidwall/sjson" "github.com/alibaba/higress/plugins/wasm-go/pkg/log" "github.com/alibaba/higress/plugins/wasm-go/pkg/matcher" @@ -445,14 +446,15 @@ func (ctx *CommonPluginCtx[PluginConfig]) OnPluginStart(int) types.OnPluginStart if !gjson.ValidBytes(data) { ctx.vm.log.Warnf("the plugin configuration is not a valid json: %s", string(data)) return types.OnPluginStartStatusFailed - + } + pluginID := gjson.GetBytes(data, PluginIDKey).String() + if pluginID != "" { + ctx.vm.log.ResetID(pluginID) + data, _ = sjson.DeleteBytes([]byte(data), PluginIDKey) } jsonData = gjson.ParseBytes(data) } - pluginID := jsonData.Get(PluginIDKey).String() - if pluginID != "" { - ctx.vm.log.ResetID(pluginID) - } + var parseOverrideConfig func(gjson.Result, PluginConfig, *PluginConfig) error if ctx.vm.parseRuleConfig != nil { parseOverrideConfig = func(js gjson.Result, global PluginConfig, cfg *PluginConfig) error {