From 6eabffb8f3f7098c1ec744e6dd35020b2c27c162 Mon Sep 17 00:00:00 2001 From: Wangjunqi123 Date: Fri, 31 May 2024 14:02:14 +0800 Subject: [PATCH] kibanaclient: wrap API of get package info --- elk/kibanaClient/clientFleetAPI+.go | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 elk/kibanaClient/clientFleetAPI+.go diff --git a/elk/kibanaClient/clientFleetAPI+.go b/elk/kibanaClient/clientFleetAPI+.go new file mode 100644 index 00000000..9525e36b --- /dev/null +++ b/elk/kibanaClient/clientFleetAPI+.go @@ -0,0 +1,26 @@ +package kibanaClient + +import ( + "context" + "fmt" + "io" + "net/http" + + "gitee.com/openeuler/PilotGo-plugin-elk/kibanaClient/meta" +) + +func (client *KibanaClient) GetPackageInfo(ctx context.Context, pkgname, pkgversion string) (*meta.PackageInfo_p, error) { + apiURL := fmt.Sprintf(meta.FleetPackageInfoAPI, pkgname, pkgversion) + resp, err := client.Client.Connection.SendWithContext(ctx, http.MethodGet, apiURL, nil, nil, nil) + if err != nil { + return nil, fmt.Errorf("error calling %s API: %w", meta.FleetPackageInfoAPI, err) + } + defer resp.Body.Close() + bytes, err := io.ReadAll(resp.Body) + if err != nil { + return nil, fmt.Errorf("error reading response body: %w", err) + } + + pinfo := Gjson_GetPackageInfo(bytes, "item.name", "item.policy_templates", "item.data_streams") + return pinfo, nil +} -- Gitee