diff --git a/elk/main.go b/elk/main.go index 0fddfe8ccfd222e220708ed90f2fe6a1f1748e3e..97de64fad9453e44cb858816c827adb1de9c4c1e 100644 --- a/elk/main.go +++ b/elk/main.go @@ -2,6 +2,7 @@ package main import ( "gitee.com/openeuler/PilotGo-plugin-elk/conf" + "gitee.com/openeuler/PilotGo-plugin-elk/pluginclient" ) func main() { @@ -9,4 +10,9 @@ func main() { init config */ conf.InitConfig() + + /* + init plugin client + */ + pluginclient.InitPluginClient() } diff --git a/elk/pluginclient/meta.go b/elk/pluginclient/meta.go new file mode 100644 index 0000000000000000000000000000000000000000..a0ed165793d2091f3d18c117993b0d7be99dda7a --- /dev/null +++ b/elk/pluginclient/meta.go @@ -0,0 +1,15 @@ +package pluginclient + +import "gitee.com/openeuler/PilotGo/sdk/plugin/client" + +const Version = "1.0.1" + +var PluginInfo = &client.PluginInfo{ + Name: "elk", + Version: Version, + Description: "connect PilotGo and elk", + Author: "wangjunqi", + Email: "wangjunqi@kylinos.cn", + Url: "http://localhost:9993", + PluginType: "micro-app", +} diff --git a/elk/pluginclient/pluginClient.go b/elk/pluginclient/pluginClient.go new file mode 100644 index 0000000000000000000000000000000000000000..6bf797cfc42a62c90534853e072364e2158c7306 --- /dev/null +++ b/elk/pluginclient/pluginClient.go @@ -0,0 +1,43 @@ +package pluginclient + +import ( + "context" + + "gitee.com/openeuler/PilotGo-plugin-elk/conf" + "gitee.com/openeuler/PilotGo/sdk/common" + "gitee.com/openeuler/PilotGo/sdk/plugin/client" +) + +var Global_Client *client.Client + +var Global_Context context.Context + +func InitPluginClient() { + PluginInfo.Url = "http://" + conf.Global_Config.Elk.Addr + Global_Client = client.DefaultClient(PluginInfo) + + // 注册插件扩展点 + var ex []common.Extention + pe1 := &common.PageExtention{ + Type: common.ExtentionPage, + Name: "elk集群部署", + URL: "/deploy", + Permission: "plugin.elk.page/menu", + } + pe2 := &common.PageExtention{ + Type: common.ExtentionPage, + Name: "agent状态监听", + URL: "/status", + Permission: "plugin.elk.page/menu", + } + pe3 := &common.PageExtention{ + Type: common.ExtentionPage, + Name: "policy配置", + URL: "/policy", + Permission: "plugin.elk.page/menu", + } + ex = append(ex, pe1, pe2, pe3) + Global_Client.RegisterExtention(ex) + + Global_Context = context.Background() +}