WH01243 3 سال پیش
والد
کامیت
d81a3e8245

+ 6 - 2
rpc/knowledge/init/init.go

@@ -20,8 +20,12 @@ var logc entity.Logc
 
 var C config.Config
 
-//var DB *gorm.DB
-//var err error
+const (
+	Date_Full_Layout = "2006-01-02 15:04:05"
+	KNOWLEDGE        = "socialize_knowledge"
+	QUESTION         = "socialize_question"
+	ANSWER           = "socialize_answer"
+)
 
 var (
 	Mysql *mysql.Mysql

+ 0 - 29
rpc/knowledge/internal/logic/knowledgelogic.go

@@ -1,29 +0,0 @@
-package logic
-
-import (
-	"context"
-	"github.com/zeromicro/go-zero/core/logx"
-	"knowledgeBase/rpc/knowledge/knowledgeclient"
-
-	"knowledgeBase/rpc/knowledge/internal/svc"
-)
-
-type KnowledgeLogic struct {
-	ctx    context.Context
-	svcCtx *svc.ServiceContext
-	logx.Logger
-}
-
-func NewKnowledgeLogic(ctx context.Context, svcCtx *svc.ServiceContext) *KnowledgeLogic {
-	return &KnowledgeLogic{
-		ctx:    ctx,
-		svcCtx: svcCtx,
-		Logger: logx.WithContext(ctx),
-	}
-}
-
-func (l *KnowledgeLogic) Knowledge(in *knowledgeclient.AddRequest) (*knowledgeclient.AddResponse, error) {
-	// todo: add your logic here and delete this line
-
-	return &knowledgeclient.AddResponse{}, nil
-}

+ 23 - 4
rpc/knowledge/internal/server/knowledgeserver.go

@@ -5,10 +5,10 @@ package server
 
 import (
 	"context"
-	"knowledgeBase/rpc/knowledge/knowledgeclient"
 
 	"knowledgeBase/rpc/knowledge/internal/logic"
 	"knowledgeBase/rpc/knowledge/internal/svc"
+	"knowledgeBase/rpc/knowledge/knowledge"
 )
 
 type KnowledgeServer struct {
@@ -21,7 +21,26 @@ func NewKnowledgeServer(svcCtx *svc.ServiceContext) *KnowledgeServer {
 	}
 }
 
-func (s *KnowledgeServer) Knowledge(ctx context.Context, in *knowledgeclient.AddRequest) (*knowledgeclient.AddResponse, error) {
-	l := logic.NewKnowledgeLogic(ctx, s.svcCtx)
-	return l.Knowledge(in)
+// 知识新增
+func (s *KnowledgeServer) KnowledgeAdd(ctx context.Context, in *knowledge.AddRequest) (*knowledge.AddResponse, error) {
+	l := logic.NewKnowledgeAddLogic(ctx, s.svcCtx)
+	return l.KnowledgeAdd(in)
+}
+
+// 知识列表
+func (s *KnowledgeServer) KnowledgeList(ctx context.Context, in *knowledge.ListRequest) (*knowledge.ListResponse, error) {
+	l := logic.NewKnowledgeListLogic(ctx, s.svcCtx)
+	return l.KnowledgeList(in)
+}
+
+// 知识编辑
+func (s *KnowledgeServer) KnowledgEdit(ctx context.Context, in *knowledge.KnowledgeEntity) (*knowledge.AddResponse, error) {
+	l := logic.NewKnowledgEditLogic(ctx, s.svcCtx)
+	return l.KnowledgEdit(in)
+}
+
+// 知识详情
+func (s *KnowledgeServer) KnowledgeInfo(ctx context.Context, in *knowledge.KnowledgeEntity) (*knowledge.InfoResponse, error) {
+	l := logic.NewKnowledgeInfoLogic(ctx, s.svcCtx)
+	return l.KnowledgeInfo(in)
 }

+ 1 - 2
rpc/knowledge/knowledge.go

@@ -5,14 +5,13 @@ import (
 	"app.yhyue.com/moapp/jybase/endless"
 	"fmt"
 	"github.com/zeromicro/go-zero/zrpc"
+	"google.golang.org/grpc"
 	IC "knowledgeBase/rpc/knowledge/init"
 	"log"
 
 	"knowledgeBase/rpc/knowledge/internal/server"
 	"knowledgeBase/rpc/knowledge/internal/svc"
 	"knowledgeBase/rpc/knowledge/knowledge"
-
-	"google.golang.org/grpc"
 )
 
 func main() {

+ 34 - 1
rpc/knowledge/knowledge.proto

@@ -7,6 +7,9 @@ option go_package = "./knowledge";
 message AddRequest {
   string question = 1;
   string answer = 2;
+  string tenantId=3;
+  string appId=4;
+  string person=5;//人员姓名
 }
 
 message AddResponse{
@@ -15,6 +18,36 @@ message AddResponse{
   string data = 3; //响应内容
 }
 
+message ListRequest  {
+  	int64 pageSize = 1;//每页数据量,默认10
+  	int64 pageIndex = 2;//页码;默认第一页
+}
+message ListResponse  {
+   int64 error_code = 1; //响应代码
+   string error_msg = 2; //响应消息
+   repeated  KnowledgeEntity data = 3; //响应内容
+}
+message KnowledgeEntity{
+     string question = 1; //问题
+     string answer = 2;//答案
+     int64 answerId=3;//答案标识
+     int64 state=4;//知识状态0无效1有效
+     string person=5;//人员姓名
+}
+message InfoResponse  {
+   int64 error_code = 1; //响应代码
+   string error_msg = 2; //响应消息
+   KnowledgeEntity data = 3; //响应内容
+}
+
 service knowledge {
-  rpc knowledge(AddRequest) returns(AddResponse);
+  //知识新增
+  rpc KnowledgeAdd(AddRequest) returns(AddResponse);
+ //知识列表
+  rpc KnowledgeList(ListRequest) returns(ListResponse);
+ //知识编辑
+  rpc KnowledgEdit(KnowledgeEntity) returns(AddResponse);
+ //知识详情
+  rpc KnowledgeInfo(KnowledgeEntity) returns(InfoResponse);
+
 }

+ 546 - 40
rpc/knowledge/knowledge/knowledge.pb.go

@@ -1,7 +1,7 @@
 // Code generated by protoc-gen-go. DO NOT EDIT.
 // versions:
-// 	protoc-gen-go v1.27.1
-// 	protoc        v3.19.4
+// 	protoc-gen-go v1.26.0
+// 	protoc        v3.15.1
 // source: knowledge.proto
 
 package knowledge
@@ -31,6 +31,9 @@ type AddRequest struct {
 
 	Question string `protobuf:"bytes,1,opt,name=question,proto3" json:"question,omitempty"`
 	Answer   string `protobuf:"bytes,2,opt,name=answer,proto3" json:"answer,omitempty"`
+	TenantId string `protobuf:"bytes,3,opt,name=tenantId,proto3" json:"tenantId,omitempty"`
+	AppId    string `protobuf:"bytes,4,opt,name=appId,proto3" json:"appId,omitempty"`
+	Person   string `protobuf:"bytes,5,opt,name=person,proto3" json:"person,omitempty"` //人员姓名
 }
 
 func (x *AddRequest) Reset() {
@@ -79,6 +82,27 @@ func (x *AddRequest) GetAnswer() string {
 	return ""
 }
 
+func (x *AddRequest) GetTenantId() string {
+	if x != nil {
+		return x.TenantId
+	}
+	return ""
+}
+
+func (x *AddRequest) GetAppId() string {
+	if x != nil {
+		return x.AppId
+	}
+	return ""
+}
+
+func (x *AddRequest) GetPerson() string {
+	if x != nil {
+		return x.Person
+	}
+	return ""
+}
+
 type AddResponse struct {
 	state         protoimpl.MessageState
 	sizeCache     protoimpl.SizeCache
@@ -142,27 +166,333 @@ func (x *AddResponse) GetData() string {
 	return ""
 }
 
+type ListRequest struct {
+	state         protoimpl.MessageState
+	sizeCache     protoimpl.SizeCache
+	unknownFields protoimpl.UnknownFields
+
+	PageSize  int64 `protobuf:"varint,1,opt,name=pageSize,proto3" json:"pageSize,omitempty"`   //每页数据量,默认10
+	PageIndex int64 `protobuf:"varint,2,opt,name=pageIndex,proto3" json:"pageIndex,omitempty"` //页码;默认第一页
+}
+
+func (x *ListRequest) Reset() {
+	*x = ListRequest{}
+	if protoimpl.UnsafeEnabled {
+		mi := &file_knowledge_proto_msgTypes[2]
+		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+		ms.StoreMessageInfo(mi)
+	}
+}
+
+func (x *ListRequest) String() string {
+	return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListRequest) ProtoMessage() {}
+
+func (x *ListRequest) ProtoReflect() protoreflect.Message {
+	mi := &file_knowledge_proto_msgTypes[2]
+	if protoimpl.UnsafeEnabled && x != nil {
+		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+		if ms.LoadMessageInfo() == nil {
+			ms.StoreMessageInfo(mi)
+		}
+		return ms
+	}
+	return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListRequest.ProtoReflect.Descriptor instead.
+func (*ListRequest) Descriptor() ([]byte, []int) {
+	return file_knowledge_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *ListRequest) GetPageSize() int64 {
+	if x != nil {
+		return x.PageSize
+	}
+	return 0
+}
+
+func (x *ListRequest) GetPageIndex() int64 {
+	if x != nil {
+		return x.PageIndex
+	}
+	return 0
+}
+
+type ListResponse struct {
+	state         protoimpl.MessageState
+	sizeCache     protoimpl.SizeCache
+	unknownFields protoimpl.UnknownFields
+
+	ErrorCode int64              `protobuf:"varint,1,opt,name=error_code,json=errorCode,proto3" json:"error_code,omitempty"` //响应代码
+	ErrorMsg  string             `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"`     //响应消息
+	Data      []*KnowledgeEntity `protobuf:"bytes,3,rep,name=data,proto3" json:"data,omitempty"`                             //响应内容
+}
+
+func (x *ListResponse) Reset() {
+	*x = ListResponse{}
+	if protoimpl.UnsafeEnabled {
+		mi := &file_knowledge_proto_msgTypes[3]
+		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+		ms.StoreMessageInfo(mi)
+	}
+}
+
+func (x *ListResponse) String() string {
+	return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListResponse) ProtoMessage() {}
+
+func (x *ListResponse) ProtoReflect() protoreflect.Message {
+	mi := &file_knowledge_proto_msgTypes[3]
+	if protoimpl.UnsafeEnabled && x != nil {
+		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+		if ms.LoadMessageInfo() == nil {
+			ms.StoreMessageInfo(mi)
+		}
+		return ms
+	}
+	return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListResponse.ProtoReflect.Descriptor instead.
+func (*ListResponse) Descriptor() ([]byte, []int) {
+	return file_knowledge_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *ListResponse) GetErrorCode() int64 {
+	if x != nil {
+		return x.ErrorCode
+	}
+	return 0
+}
+
+func (x *ListResponse) GetErrorMsg() string {
+	if x != nil {
+		return x.ErrorMsg
+	}
+	return ""
+}
+
+func (x *ListResponse) GetData() []*KnowledgeEntity {
+	if x != nil {
+		return x.Data
+	}
+	return nil
+}
+
+type KnowledgeEntity struct {
+	state         protoimpl.MessageState
+	sizeCache     protoimpl.SizeCache
+	unknownFields protoimpl.UnknownFields
+
+	Question string `protobuf:"bytes,1,opt,name=question,proto3" json:"question,omitempty"`  //问题
+	Answer   string `protobuf:"bytes,2,opt,name=answer,proto3" json:"answer,omitempty"`      //答案
+	AnswerId int64  `protobuf:"varint,3,opt,name=answerId,proto3" json:"answerId,omitempty"` //答案标识
+	State    int64  `protobuf:"varint,4,opt,name=state,proto3" json:"state,omitempty"`       //知识状态0无效1有效
+	Person   string `protobuf:"bytes,5,opt,name=person,proto3" json:"person,omitempty"`      //人员姓名
+}
+
+func (x *KnowledgeEntity) Reset() {
+	*x = KnowledgeEntity{}
+	if protoimpl.UnsafeEnabled {
+		mi := &file_knowledge_proto_msgTypes[4]
+		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+		ms.StoreMessageInfo(mi)
+	}
+}
+
+func (x *KnowledgeEntity) String() string {
+	return protoimpl.X.MessageStringOf(x)
+}
+
+func (*KnowledgeEntity) ProtoMessage() {}
+
+func (x *KnowledgeEntity) ProtoReflect() protoreflect.Message {
+	mi := &file_knowledge_proto_msgTypes[4]
+	if protoimpl.UnsafeEnabled && x != nil {
+		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+		if ms.LoadMessageInfo() == nil {
+			ms.StoreMessageInfo(mi)
+		}
+		return ms
+	}
+	return mi.MessageOf(x)
+}
+
+// Deprecated: Use KnowledgeEntity.ProtoReflect.Descriptor instead.
+func (*KnowledgeEntity) Descriptor() ([]byte, []int) {
+	return file_knowledge_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *KnowledgeEntity) GetQuestion() string {
+	if x != nil {
+		return x.Question
+	}
+	return ""
+}
+
+func (x *KnowledgeEntity) GetAnswer() string {
+	if x != nil {
+		return x.Answer
+	}
+	return ""
+}
+
+func (x *KnowledgeEntity) GetAnswerId() int64 {
+	if x != nil {
+		return x.AnswerId
+	}
+	return 0
+}
+
+func (x *KnowledgeEntity) GetState() int64 {
+	if x != nil {
+		return x.State
+	}
+	return 0
+}
+
+func (x *KnowledgeEntity) GetPerson() string {
+	if x != nil {
+		return x.Person
+	}
+	return ""
+}
+
+type InfoResponse struct {
+	state         protoimpl.MessageState
+	sizeCache     protoimpl.SizeCache
+	unknownFields protoimpl.UnknownFields
+
+	ErrorCode int64            `protobuf:"varint,1,opt,name=error_code,json=errorCode,proto3" json:"error_code,omitempty"` //响应代码
+	ErrorMsg  string           `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"`     //响应消息
+	Data      *KnowledgeEntity `protobuf:"bytes,3,opt,name=data,proto3" json:"data,omitempty"`                             //响应内容
+}
+
+func (x *InfoResponse) Reset() {
+	*x = InfoResponse{}
+	if protoimpl.UnsafeEnabled {
+		mi := &file_knowledge_proto_msgTypes[5]
+		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+		ms.StoreMessageInfo(mi)
+	}
+}
+
+func (x *InfoResponse) String() string {
+	return protoimpl.X.MessageStringOf(x)
+}
+
+func (*InfoResponse) ProtoMessage() {}
+
+func (x *InfoResponse) ProtoReflect() protoreflect.Message {
+	mi := &file_knowledge_proto_msgTypes[5]
+	if protoimpl.UnsafeEnabled && x != nil {
+		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+		if ms.LoadMessageInfo() == nil {
+			ms.StoreMessageInfo(mi)
+		}
+		return ms
+	}
+	return mi.MessageOf(x)
+}
+
+// Deprecated: Use InfoResponse.ProtoReflect.Descriptor instead.
+func (*InfoResponse) Descriptor() ([]byte, []int) {
+	return file_knowledge_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *InfoResponse) GetErrorCode() int64 {
+	if x != nil {
+		return x.ErrorCode
+	}
+	return 0
+}
+
+func (x *InfoResponse) GetErrorMsg() string {
+	if x != nil {
+		return x.ErrorMsg
+	}
+	return ""
+}
+
+func (x *InfoResponse) GetData() *KnowledgeEntity {
+	if x != nil {
+		return x.Data
+	}
+	return nil
+}
+
 var File_knowledge_proto protoreflect.FileDescriptor
 
 var file_knowledge_proto_rawDesc = []byte{
 	0x0a, 0x0f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
-	0x6f, 0x12, 0x08, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x22, 0x40, 0x0a, 0x0a, 0x41,
-	0x64, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x71, 0x75, 0x65,
-	0x73, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x71, 0x75, 0x65,
-	0x73, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x18,
-	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x22, 0x5d, 0x0a,
-	0x0b, 0x41, 0x64, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a,
-	0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03,
-	0x52, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65,
-	0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
-	0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61,
-	0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x32, 0x45, 0x0a, 0x09,
-	0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x12, 0x38, 0x0a, 0x09, 0x6b, 0x6e, 0x6f,
-	0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x12, 0x14, 0x2e, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74,
+	0x6f, 0x12, 0x08, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x22, 0x8a, 0x01, 0x0a, 0x0a,
+	0x41, 0x64, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x71, 0x75,
+	0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x71, 0x75,
+	0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72,
+	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x12, 0x1a,
+	0x0a, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
+	0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x70,
+	0x70, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x70, 0x70, 0x49, 0x64,
+	0x12, 0x16, 0x0a, 0x06, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09,
+	0x52, 0x06, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x22, 0x5d, 0x0a, 0x0b, 0x41, 0x64, 0x64, 0x52,
+	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x72, 0x72, 0x6f, 0x72,
+	0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x65, 0x72, 0x72,
+	0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f,
+	0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72,
+	0x4d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28,
+	0x09, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x47, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x52,
+	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69,
+	0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69,
+	0x7a, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x18,
+	0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78,
+	0x22, 0x79, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+	0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01,
+	0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12,
+	0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01,
+	0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x2d, 0x0a, 0x04,
+	0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x74, 0x65, 0x6d,
+	0x70, 0x6c, 0x61, 0x74, 0x65, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x45,
+	0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x8f, 0x01, 0x0a, 0x0f,
+	0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12,
+	0x1a, 0x0a, 0x08, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28,
+	0x09, 0x52, 0x08, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x61,
+	0x6e, 0x73, 0x77, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x6e, 0x73,
+	0x77, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x49, 0x64, 0x18,
+	0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x49, 0x64, 0x12,
+	0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05,
+	0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x18,
+	0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x22, 0x79, 0x0a,
+	0x0c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a,
+	0x0a, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
+	0x03, 0x52, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09,
+	0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
+	0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x2d, 0x0a, 0x04, 0x64, 0x61, 0x74,
+	0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61,
+	0x74, 0x65, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x45, 0x6e, 0x74, 0x69,
+	0x74, 0x79, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x32, 0x8e, 0x02, 0x0a, 0x09, 0x6b, 0x6e, 0x6f,
+	0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x12, 0x3b, 0x0a, 0x0c, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65,
+	0x64, 0x67, 0x65, 0x41, 0x64, 0x64, 0x12, 0x14, 0x2e, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74,
 	0x65, 0x2e, 0x41, 0x64, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x74,
 	0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2e, 0x41, 0x64, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f,
-	0x6e, 0x73, 0x65, 0x42, 0x0d, 0x5a, 0x0b, 0x2e, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64,
-	0x67, 0x65, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+	0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x0d, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65,
+	0x4c, 0x69, 0x73, 0x74, 0x12, 0x15, 0x2e, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2e,
+	0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x74, 0x65,
+	0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f,
+	0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, 0x0c, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x45,
+	0x64, 0x69, 0x74, 0x12, 0x19, 0x2e, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2e, 0x4b,
+	0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x1a, 0x15,
+	0x2e, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2e, 0x41, 0x64, 0x64, 0x52, 0x65, 0x73,
+	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x0d, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64,
+	0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x19, 0x2e, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74,
+	0x65, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74,
+	0x79, 0x1a, 0x16, 0x2e, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2e, 0x49, 0x6e, 0x66,
+	0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x0d, 0x5a, 0x0b, 0x2e, 0x2f, 0x6b,
+	0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
 }
 
 var (
@@ -177,19 +507,31 @@ func file_knowledge_proto_rawDescGZIP() []byte {
 	return file_knowledge_proto_rawDescData
 }
 
-var file_knowledge_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
+var file_knowledge_proto_msgTypes = make([]protoimpl.MessageInfo, 6)
 var file_knowledge_proto_goTypes = []interface{}{
-	(*AddRequest)(nil),  // 0: template.AddRequest
-	(*AddResponse)(nil), // 1: template.AddResponse
+	(*AddRequest)(nil),      // 0: template.AddRequest
+	(*AddResponse)(nil),     // 1: template.AddResponse
+	(*ListRequest)(nil),     // 2: template.ListRequest
+	(*ListResponse)(nil),    // 3: template.ListResponse
+	(*KnowledgeEntity)(nil), // 4: template.KnowledgeEntity
+	(*InfoResponse)(nil),    // 5: template.InfoResponse
 }
 var file_knowledge_proto_depIdxs = []int32{
-	0, // 0: template.knowledge.knowledge:input_type -> template.AddRequest
-	1, // 1: template.knowledge.knowledge:output_type -> template.AddResponse
-	1, // [1:2] is the sub-list for method output_type
-	0, // [0:1] is the sub-list for method input_type
-	0, // [0:0] is the sub-list for extension type_name
-	0, // [0:0] is the sub-list for extension extendee
-	0, // [0:0] is the sub-list for field type_name
+	4, // 0: template.ListResponse.data:type_name -> template.KnowledgeEntity
+	4, // 1: template.InfoResponse.data:type_name -> template.KnowledgeEntity
+	0, // 2: template.knowledge.KnowledgeAdd:input_type -> template.AddRequest
+	2, // 3: template.knowledge.KnowledgeList:input_type -> template.ListRequest
+	4, // 4: template.knowledge.KnowledgEdit:input_type -> template.KnowledgeEntity
+	4, // 5: template.knowledge.KnowledgeInfo:input_type -> template.KnowledgeEntity
+	1, // 6: template.knowledge.KnowledgeAdd:output_type -> template.AddResponse
+	3, // 7: template.knowledge.KnowledgeList:output_type -> template.ListResponse
+	1, // 8: template.knowledge.KnowledgEdit:output_type -> template.AddResponse
+	5, // 9: template.knowledge.KnowledgeInfo:output_type -> template.InfoResponse
+	6, // [6:10] is the sub-list for method output_type
+	2, // [2:6] is the sub-list for method input_type
+	2, // [2:2] is the sub-list for extension type_name
+	2, // [2:2] is the sub-list for extension extendee
+	0, // [0:2] is the sub-list for field type_name
 }
 
 func init() { file_knowledge_proto_init() }
@@ -222,6 +564,54 @@ func file_knowledge_proto_init() {
 				return nil
 			}
 		}
+		file_knowledge_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+			switch v := v.(*ListRequest); i {
+			case 0:
+				return &v.state
+			case 1:
+				return &v.sizeCache
+			case 2:
+				return &v.unknownFields
+			default:
+				return nil
+			}
+		}
+		file_knowledge_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+			switch v := v.(*ListResponse); i {
+			case 0:
+				return &v.state
+			case 1:
+				return &v.sizeCache
+			case 2:
+				return &v.unknownFields
+			default:
+				return nil
+			}
+		}
+		file_knowledge_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+			switch v := v.(*KnowledgeEntity); i {
+			case 0:
+				return &v.state
+			case 1:
+				return &v.sizeCache
+			case 2:
+				return &v.unknownFields
+			default:
+				return nil
+			}
+		}
+		file_knowledge_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+			switch v := v.(*InfoResponse); i {
+			case 0:
+				return &v.state
+			case 1:
+				return &v.sizeCache
+			case 2:
+				return &v.unknownFields
+			default:
+				return nil
+			}
+		}
 	}
 	type x struct{}
 	out := protoimpl.TypeBuilder{
@@ -229,7 +619,7 @@ func file_knowledge_proto_init() {
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
 			RawDescriptor: file_knowledge_proto_rawDesc,
 			NumEnums:      0,
-			NumMessages:   2,
+			NumMessages:   6,
 			NumExtensions: 0,
 			NumServices:   1,
 		},
@@ -255,7 +645,14 @@ const _ = grpc.SupportPackageIsVersion6
 //
 // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
 type KnowledgeClient interface {
-	Knowledge(ctx context.Context, in *AddRequest, opts ...grpc.CallOption) (*AddResponse, error)
+	//知识新增
+	KnowledgeAdd(ctx context.Context, in *AddRequest, opts ...grpc.CallOption) (*AddResponse, error)
+	//知识列表
+	KnowledgeList(ctx context.Context, in *ListRequest, opts ...grpc.CallOption) (*ListResponse, error)
+	//知识编辑
+	KnowledgEdit(ctx context.Context, in *KnowledgeEntity, opts ...grpc.CallOption) (*AddResponse, error)
+	//知识详情
+	KnowledgeInfo(ctx context.Context, in *KnowledgeEntity, opts ...grpc.CallOption) (*InfoResponse, error)
 }
 
 type knowledgeClient struct {
@@ -266,9 +663,36 @@ func NewKnowledgeClient(cc grpc.ClientConnInterface) KnowledgeClient {
 	return &knowledgeClient{cc}
 }
 
-func (c *knowledgeClient) Knowledge(ctx context.Context, in *AddRequest, opts ...grpc.CallOption) (*AddResponse, error) {
+func (c *knowledgeClient) KnowledgeAdd(ctx context.Context, in *AddRequest, opts ...grpc.CallOption) (*AddResponse, error) {
+	out := new(AddResponse)
+	err := c.cc.Invoke(ctx, "/template.knowledge/KnowledgeAdd", in, out, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (c *knowledgeClient) KnowledgeList(ctx context.Context, in *ListRequest, opts ...grpc.CallOption) (*ListResponse, error) {
+	out := new(ListResponse)
+	err := c.cc.Invoke(ctx, "/template.knowledge/KnowledgeList", in, out, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (c *knowledgeClient) KnowledgEdit(ctx context.Context, in *KnowledgeEntity, opts ...grpc.CallOption) (*AddResponse, error) {
 	out := new(AddResponse)
-	err := c.cc.Invoke(ctx, "/template.knowledge/knowledge", in, out, opts...)
+	err := c.cc.Invoke(ctx, "/template.knowledge/KnowledgEdit", in, out, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (c *knowledgeClient) KnowledgeInfo(ctx context.Context, in *KnowledgeEntity, opts ...grpc.CallOption) (*InfoResponse, error) {
+	out := new(InfoResponse)
+	err := c.cc.Invoke(ctx, "/template.knowledge/KnowledgeInfo", in, out, opts...)
 	if err != nil {
 		return nil, err
 	}
@@ -277,35 +701,105 @@ func (c *knowledgeClient) Knowledge(ctx context.Context, in *AddRequest, opts ..
 
 // KnowledgeServer is the server API for Knowledge service.
 type KnowledgeServer interface {
-	Knowledge(context.Context, *AddRequest) (*AddResponse, error)
+	//知识新增
+	KnowledgeAdd(context.Context, *AddRequest) (*AddResponse, error)
+	//知识列表
+	KnowledgeList(context.Context, *ListRequest) (*ListResponse, error)
+	//知识编辑
+	KnowledgEdit(context.Context, *KnowledgeEntity) (*AddResponse, error)
+	//知识详情
+	KnowledgeInfo(context.Context, *KnowledgeEntity) (*InfoResponse, error)
 }
 
 // UnimplementedKnowledgeServer can be embedded to have forward compatible implementations.
 type UnimplementedKnowledgeServer struct {
 }
 
-func (*UnimplementedKnowledgeServer) Knowledge(context.Context, *AddRequest) (*AddResponse, error) {
-	return nil, status.Errorf(codes.Unimplemented, "method Knowledge not implemented")
+func (*UnimplementedKnowledgeServer) KnowledgeAdd(context.Context, *AddRequest) (*AddResponse, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method KnowledgeAdd not implemented")
+}
+func (*UnimplementedKnowledgeServer) KnowledgeList(context.Context, *ListRequest) (*ListResponse, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method KnowledgeList not implemented")
+}
+func (*UnimplementedKnowledgeServer) KnowledgEdit(context.Context, *KnowledgeEntity) (*AddResponse, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method KnowledgEdit not implemented")
+}
+func (*UnimplementedKnowledgeServer) KnowledgeInfo(context.Context, *KnowledgeEntity) (*InfoResponse, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method KnowledgeInfo not implemented")
 }
 
 func RegisterKnowledgeServer(s *grpc.Server, srv KnowledgeServer) {
 	s.RegisterService(&_Knowledge_serviceDesc, srv)
 }
 
-func _Knowledge_Knowledge_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+func _Knowledge_KnowledgeAdd_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 	in := new(AddRequest)
 	if err := dec(in); err != nil {
 		return nil, err
 	}
 	if interceptor == nil {
-		return srv.(KnowledgeServer).Knowledge(ctx, in)
+		return srv.(KnowledgeServer).KnowledgeAdd(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/template.knowledge/KnowledgeAdd",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(KnowledgeServer).KnowledgeAdd(ctx, req.(*AddRequest))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
+func _Knowledge_KnowledgeList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(ListRequest)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(KnowledgeServer).KnowledgeList(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/template.knowledge/KnowledgeList",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(KnowledgeServer).KnowledgeList(ctx, req.(*ListRequest))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
+func _Knowledge_KnowledgEdit_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(KnowledgeEntity)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(KnowledgeServer).KnowledgEdit(ctx, in)
 	}
 	info := &grpc.UnaryServerInfo{
 		Server:     srv,
-		FullMethod: "/template.knowledge/Knowledge",
+		FullMethod: "/template.knowledge/KnowledgEdit",
 	}
 	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
-		return srv.(KnowledgeServer).Knowledge(ctx, req.(*AddRequest))
+		return srv.(KnowledgeServer).KnowledgEdit(ctx, req.(*KnowledgeEntity))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
+func _Knowledge_KnowledgeInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(KnowledgeEntity)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(KnowledgeServer).KnowledgeInfo(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/template.knowledge/KnowledgeInfo",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(KnowledgeServer).KnowledgeInfo(ctx, req.(*KnowledgeEntity))
 	}
 	return interceptor(ctx, in, info, handler)
 }
@@ -315,8 +809,20 @@ var _Knowledge_serviceDesc = grpc.ServiceDesc{
 	HandlerType: (*KnowledgeServer)(nil),
 	Methods: []grpc.MethodDesc{
 		{
-			MethodName: "knowledge",
-			Handler:    _Knowledge_Knowledge_Handler,
+			MethodName: "KnowledgeAdd",
+			Handler:    _Knowledge_KnowledgeAdd_Handler,
+		},
+		{
+			MethodName: "KnowledgeList",
+			Handler:    _Knowledge_KnowledgeList_Handler,
+		},
+		{
+			MethodName: "KnowledgEdit",
+			Handler:    _Knowledge_KnowledgEdit_Handler,
+		},
+		{
+			MethodName: "KnowledgeInfo",
+			Handler:    _Knowledge_KnowledgeInfo_Handler,
 		},
 	},
 	Streams:  []grpc.StreamDesc{},

+ 35 - 5
rpc/knowledge/knowledgeclient/knowledge.go

@@ -13,11 +13,22 @@ import (
 )
 
 type (
-	AddRequest  = knowledge.AddRequest
-	AddResponse = knowledge.AddResponse
+	AddRequest      = knowledge.AddRequest
+	AddResponse     = knowledge.AddResponse
+	ListRequest     = knowledge.ListRequest
+	ListResponse    = knowledge.ListResponse
+	KnowledgeEntity = knowledge.KnowledgeEntity
+	InfoResponse    = knowledge.InfoResponse
 
 	Knowledge interface {
-		Knowledge(ctx context.Context, in *AddRequest) (*AddResponse, error)
+		// 知识新增
+		KnowledgeAdd(ctx context.Context, in *AddRequest) (*AddResponse, error)
+		// 知识列表
+		KnowledgeList(ctx context.Context, in *ListRequest) (*ListResponse, error)
+		// 知识编辑
+		KnowledgEdit(ctx context.Context, in *KnowledgeEntity) (*AddResponse, error)
+		// 知识详情
+		KnowledgeInfo(ctx context.Context, in *KnowledgeEntity) (*InfoResponse, error)
 	}
 
 	defaultKnowledge struct {
@@ -31,7 +42,26 @@ func NewKnowledge(cli zrpc.Client) Knowledge {
 	}
 }
 
-func (m *defaultKnowledge) Knowledge(ctx context.Context, in *AddRequest) (*AddResponse, error) {
+// 知识新增
+func (m *defaultKnowledge) KnowledgeAdd(ctx context.Context, in *AddRequest) (*AddResponse, error) {
 	client := knowledge.NewKnowledgeClient(m.cli.Conn())
-	return client.Knowledge(ctx, in)
+	return client.KnowledgeAdd(ctx, in)
+}
+
+// 知识列表
+func (m *defaultKnowledge) KnowledgeList(ctx context.Context, in *ListRequest) (*ListResponse, error) {
+	client := knowledge.NewKnowledgeClient(m.cli.Conn())
+	return client.KnowledgeList(ctx, in)
+}
+
+// 知识编辑
+func (m *defaultKnowledge) KnowledgEdit(ctx context.Context, in *KnowledgeEntity) (*AddResponse, error) {
+	client := knowledge.NewKnowledgeClient(m.cli.Conn())
+	return client.KnowledgEdit(ctx, in)
+}
+
+// 知识详情
+func (m *defaultKnowledge) KnowledgeInfo(ctx context.Context, in *KnowledgeEntity) (*InfoResponse, error) {
+	client := knowledge.NewKnowledgeClient(m.cli.Conn())
+	return client.KnowledgeInfo(ctx, in)
 }

+ 6 - 0
rpc/knowledge/logs/access.log

@@ -1,2 +1,8 @@
 {"@timestamp":"2022-06-16T13:55:08.240+08:00","level":"info","content":"info--日志记录"}
 {"@timestamp":"2022-06-16T13:55:08.240+08:00","level":"info","content":"error--日志记录"}
+{"@timestamp":"2022-06-16T17:40:19.333+08:00","level":"info","content":"info--日志记录"}
+{"@timestamp":"2022-06-16T17:40:19.333+08:00","level":"info","content":"error--日志记录"}
+{"@timestamp":"2022-06-17T09:03:26.313+08:00","level":"info","content":"info--日志记录"}
+{"@timestamp":"2022-06-17T09:03:26.313+08:00","level":"info","content":"error--日志记录"}
+{"@timestamp":"2022-06-17T10:00:38.937+08:00","level":"info","content":"info--日志记录"}
+{"@timestamp":"2022-06-17T10:00:38.937+08:00","level":"info","content":"error--日志记录"}

+ 1 - 0
rpc/knowledge/logs/error.log

@@ -0,0 +1 @@
+{"@timestamp":"2022-06-17T10:00:38.974+08:00","level":"error","content":"server.go:90 listen tcp 127.0.0.1:8080: bind: Only one usage of each socket address (protocol/network address/port) is normally permitted."}

+ 516 - 0
rpc/knowledge/logs/stat.log

@@ -0,0 +1,516 @@
+{"@timestamp":"2022-06-17T09:04:05.171+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.3Mi, TotalAlloc=6.8Mi, Sys=17.5Mi, NumGC=3"}
+{"@timestamp":"2022-06-17T09:04:26.323+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:05:05.166+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=6.9Mi, Sys=17.5Mi, NumGC=3"}
+{"@timestamp":"2022-06-17T09:05:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:06:05.164+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.3Mi, TotalAlloc=7.0Mi, Sys=17.8Mi, NumGC=4"}
+{"@timestamp":"2022-06-17T09:06:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:07:05.177+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=7.1Mi, Sys=17.8Mi, NumGC=4"}
+{"@timestamp":"2022-06-17T09:07:26.318+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:08:05.170+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.3Mi, TotalAlloc=7.2Mi, Sys=17.8Mi, NumGC=5"}
+{"@timestamp":"2022-06-17T09:08:26.316+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:09:05.171+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=7.3Mi, Sys=17.8Mi, NumGC=5"}
+{"@timestamp":"2022-06-17T09:09:26.319+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:10:05.163+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=7.4Mi, Sys=17.8Mi, NumGC=6"}
+{"@timestamp":"2022-06-17T09:10:26.317+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:11:05.178+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=7.5Mi, Sys=17.8Mi, NumGC=6"}
+{"@timestamp":"2022-06-17T09:11:26.318+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:12:05.167+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=7.6Mi, Sys=17.8Mi, NumGC=7"}
+{"@timestamp":"2022-06-17T09:12:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:13:05.175+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=7.6Mi, Sys=17.8Mi, NumGC=7"}
+{"@timestamp":"2022-06-17T09:13:26.316+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:14:05.165+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=7.7Mi, Sys=17.8Mi, NumGC=8"}
+{"@timestamp":"2022-06-17T09:14:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:15:05.164+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=7.8Mi, Sys=17.8Mi, NumGC=8"}
+{"@timestamp":"2022-06-17T09:15:26.316+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:16:05.173+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=7.9Mi, Sys=17.8Mi, NumGC=9"}
+{"@timestamp":"2022-06-17T09:16:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:17:05.176+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=8.0Mi, Sys=17.8Mi, NumGC=9"}
+{"@timestamp":"2022-06-17T09:17:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:18:05.165+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.3Mi, TotalAlloc=8.1Mi, Sys=17.8Mi, NumGC=10"}
+{"@timestamp":"2022-06-17T09:18:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:19:05.168+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=8.2Mi, Sys=17.8Mi, NumGC=10"}
+{"@timestamp":"2022-06-17T09:19:26.317+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:20:05.177+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=8.3Mi, Sys=17.8Mi, NumGC=11"}
+{"@timestamp":"2022-06-17T09:20:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:21:05.169+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=8.4Mi, Sys=17.8Mi, NumGC=11"}
+{"@timestamp":"2022-06-17T09:21:26.316+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:22:05.165+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=8.4Mi, Sys=17.8Mi, NumGC=12"}
+{"@timestamp":"2022-06-17T09:22:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:23:05.167+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=8.5Mi, Sys=17.8Mi, NumGC=12"}
+{"@timestamp":"2022-06-17T09:23:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:24:05.167+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.3Mi, TotalAlloc=8.6Mi, Sys=17.8Mi, NumGC=13"}
+{"@timestamp":"2022-06-17T09:24:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:25:05.171+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=8.7Mi, Sys=17.8Mi, NumGC=13"}
+{"@timestamp":"2022-06-17T09:25:26.316+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:26:05.176+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=8.8Mi, Sys=17.8Mi, NumGC=14"}
+{"@timestamp":"2022-06-17T09:26:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:27:05.174+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=8.9Mi, Sys=17.8Mi, NumGC=14"}
+{"@timestamp":"2022-06-17T09:27:26.323+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:28:05.165+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=9.0Mi, Sys=17.8Mi, NumGC=15"}
+{"@timestamp":"2022-06-17T09:28:26.317+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:29:05.170+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=9.1Mi, Sys=17.8Mi, NumGC=15"}
+{"@timestamp":"2022-06-17T09:29:26.316+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:30:05.164+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=9.1Mi, Sys=17.8Mi, NumGC=16"}
+{"@timestamp":"2022-06-17T09:30:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:31:05.178+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=9.2Mi, Sys=17.8Mi, NumGC=16"}
+{"@timestamp":"2022-06-17T09:31:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:32:05.175+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=9.3Mi, Sys=17.8Mi, NumGC=17"}
+{"@timestamp":"2022-06-17T09:32:26.326+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:33:05.170+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=9.4Mi, Sys=17.8Mi, NumGC=17"}
+{"@timestamp":"2022-06-17T09:33:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:34:05.168+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=9.5Mi, Sys=17.8Mi, NumGC=18"}
+{"@timestamp":"2022-06-17T09:34:26.318+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:35:05.177+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=9.6Mi, Sys=17.8Mi, NumGC=18"}
+{"@timestamp":"2022-06-17T09:35:26.321+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:36:05.173+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=9.7Mi, Sys=17.8Mi, NumGC=19"}
+{"@timestamp":"2022-06-17T09:36:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:37:05.176+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=9.8Mi, Sys=17.8Mi, NumGC=19"}
+{"@timestamp":"2022-06-17T09:37:26.320+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:38:05.170+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=9.8Mi, Sys=17.8Mi, NumGC=20"}
+{"@timestamp":"2022-06-17T09:38:26.318+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:39:05.176+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=9.9Mi, Sys=17.8Mi, NumGC=20"}
+{"@timestamp":"2022-06-17T09:39:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:40:05.171+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=10.0Mi, Sys=17.8Mi, NumGC=21"}
+{"@timestamp":"2022-06-17T09:40:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:41:05.166+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=10.1Mi, Sys=17.8Mi, NumGC=21"}
+{"@timestamp":"2022-06-17T09:41:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:42:05.170+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=10.2Mi, Sys=17.8Mi, NumGC=22"}
+{"@timestamp":"2022-06-17T09:42:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:43:05.171+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=10.3Mi, Sys=17.8Mi, NumGC=22"}
+{"@timestamp":"2022-06-17T09:43:26.319+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:44:05.166+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=10.4Mi, Sys=17.8Mi, NumGC=23"}
+{"@timestamp":"2022-06-17T09:44:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:45:05.172+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=10.5Mi, Sys=17.8Mi, NumGC=23"}
+{"@timestamp":"2022-06-17T09:45:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:46:05.168+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=10.6Mi, Sys=17.8Mi, NumGC=24"}
+{"@timestamp":"2022-06-17T09:46:26.319+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:47:05.166+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=10.6Mi, Sys=17.8Mi, NumGC=24"}
+{"@timestamp":"2022-06-17T09:47:26.316+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:48:05.178+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=10.7Mi, Sys=17.8Mi, NumGC=25"}
+{"@timestamp":"2022-06-17T09:48:26.316+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:49:05.176+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=10.8Mi, Sys=17.8Mi, NumGC=25"}
+{"@timestamp":"2022-06-17T09:49:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:50:05.167+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=10.9Mi, Sys=17.8Mi, NumGC=26"}
+{"@timestamp":"2022-06-17T09:50:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:51:05.172+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=10.9Mi, Sys=17.8Mi, NumGC=26"}
+{"@timestamp":"2022-06-17T09:51:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:52:05.176+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=11.0Mi, Sys=17.8Mi, NumGC=27"}
+{"@timestamp":"2022-06-17T09:52:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:53:05.174+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=11.1Mi, Sys=17.8Mi, NumGC=27"}
+{"@timestamp":"2022-06-17T09:53:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:54:05.169+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=11.2Mi, Sys=17.8Mi, NumGC=28"}
+{"@timestamp":"2022-06-17T09:54:26.317+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:55:05.174+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=11.3Mi, Sys=17.8Mi, NumGC=28"}
+{"@timestamp":"2022-06-17T09:55:26.317+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:56:05.167+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=11.4Mi, Sys=17.8Mi, NumGC=29"}
+{"@timestamp":"2022-06-17T09:56:26.324+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:57:05.166+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=11.5Mi, Sys=17.8Mi, NumGC=29"}
+{"@timestamp":"2022-06-17T09:57:26.327+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:58:05.172+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=11.5Mi, Sys=17.8Mi, NumGC=30"}
+{"@timestamp":"2022-06-17T09:58:26.321+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T09:59:05.172+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=11.6Mi, Sys=17.8Mi, NumGC=30"}
+{"@timestamp":"2022-06-17T09:59:26.319+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:00:05.172+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=11.7Mi, Sys=17.8Mi, NumGC=31"}
+{"@timestamp":"2022-06-17T10:00:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:01:05.166+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=11.8Mi, Sys=17.8Mi, NumGC=31"}
+{"@timestamp":"2022-06-17T10:01:26.323+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:02:05.176+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=11.9Mi, Sys=17.8Mi, NumGC=32"}
+{"@timestamp":"2022-06-17T10:02:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:03:05.174+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=12.0Mi, Sys=17.8Mi, NumGC=32"}
+{"@timestamp":"2022-06-17T10:03:26.320+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:04:05.172+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=12.1Mi, Sys=17.8Mi, NumGC=33"}
+{"@timestamp":"2022-06-17T10:04:26.325+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:05:05.172+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=12.2Mi, Sys=17.8Mi, NumGC=33"}
+{"@timestamp":"2022-06-17T10:05:26.321+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:06:05.170+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=12.3Mi, Sys=17.8Mi, NumGC=34"}
+{"@timestamp":"2022-06-17T10:06:26.324+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:07:05.173+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=12.4Mi, Sys=17.8Mi, NumGC=34"}
+{"@timestamp":"2022-06-17T10:07:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:08:05.164+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=12.5Mi, Sys=17.8Mi, NumGC=35"}
+{"@timestamp":"2022-06-17T10:08:26.318+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:09:05.167+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=12.5Mi, Sys=17.8Mi, NumGC=35"}
+{"@timestamp":"2022-06-17T10:09:26.327+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:10:05.163+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=12.6Mi, Sys=17.8Mi, NumGC=36"}
+{"@timestamp":"2022-06-17T10:10:26.324+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:11:05.166+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=12.7Mi, Sys=17.8Mi, NumGC=36"}
+{"@timestamp":"2022-06-17T10:11:26.317+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:12:05.165+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=12.8Mi, Sys=17.8Mi, NumGC=37"}
+{"@timestamp":"2022-06-17T10:12:26.317+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:13:05.175+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=12.9Mi, Sys=17.8Mi, NumGC=37"}
+{"@timestamp":"2022-06-17T10:13:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:14:05.165+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=13.0Mi, Sys=17.8Mi, NumGC=38"}
+{"@timestamp":"2022-06-17T10:14:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:15:05.176+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=13.1Mi, Sys=17.8Mi, NumGC=38"}
+{"@timestamp":"2022-06-17T10:15:26.319+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:16:05.164+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=13.1Mi, Sys=17.8Mi, NumGC=39"}
+{"@timestamp":"2022-06-17T10:16:26.318+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:17:05.170+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=13.2Mi, Sys=17.8Mi, NumGC=39"}
+{"@timestamp":"2022-06-17T10:17:26.322+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:18:05.171+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=13.3Mi, Sys=17.8Mi, NumGC=40"}
+{"@timestamp":"2022-06-17T10:18:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:19:05.166+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=13.4Mi, Sys=17.8Mi, NumGC=40"}
+{"@timestamp":"2022-06-17T10:19:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:20:05.166+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=13.4Mi, Sys=17.8Mi, NumGC=41"}
+{"@timestamp":"2022-06-17T10:20:26.318+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:21:05.176+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=13.5Mi, Sys=17.8Mi, NumGC=41"}
+{"@timestamp":"2022-06-17T10:21:26.316+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:22:05.172+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=13.6Mi, Sys=17.8Mi, NumGC=42"}
+{"@timestamp":"2022-06-17T10:22:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:23:05.175+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=13.7Mi, Sys=17.8Mi, NumGC=42"}
+{"@timestamp":"2022-06-17T10:23:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:24:05.172+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=13.8Mi, Sys=17.8Mi, NumGC=43"}
+{"@timestamp":"2022-06-17T10:24:26.323+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:25:05.177+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=13.9Mi, Sys=17.8Mi, NumGC=43"}
+{"@timestamp":"2022-06-17T10:25:26.316+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:26:05.171+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=14.0Mi, Sys=17.8Mi, NumGC=44"}
+{"@timestamp":"2022-06-17T10:26:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:27:05.170+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=14.1Mi, Sys=17.8Mi, NumGC=44"}
+{"@timestamp":"2022-06-17T10:27:26.323+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:28:05.172+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=14.1Mi, Sys=17.8Mi, NumGC=45"}
+{"@timestamp":"2022-06-17T10:28:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:29:05.171+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=14.2Mi, Sys=17.8Mi, NumGC=45"}
+{"@timestamp":"2022-06-17T10:29:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:30:05.175+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=14.3Mi, Sys=17.8Mi, NumGC=46"}
+{"@timestamp":"2022-06-17T10:30:26.316+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:31:05.165+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=14.4Mi, Sys=17.8Mi, NumGC=46"}
+{"@timestamp":"2022-06-17T10:31:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:32:05.165+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=14.5Mi, Sys=17.8Mi, NumGC=47"}
+{"@timestamp":"2022-06-17T10:32:26.317+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:33:05.171+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=14.6Mi, Sys=17.8Mi, NumGC=47"}
+{"@timestamp":"2022-06-17T10:33:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:34:05.176+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=14.7Mi, Sys=17.8Mi, NumGC=48"}
+{"@timestamp":"2022-06-17T10:34:26.322+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:35:05.172+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=14.8Mi, Sys=17.8Mi, NumGC=48"}
+{"@timestamp":"2022-06-17T10:35:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:36:05.166+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=14.8Mi, Sys=17.8Mi, NumGC=49"}
+{"@timestamp":"2022-06-17T10:36:26.321+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:37:05.176+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=14.9Mi, Sys=17.8Mi, NumGC=49"}
+{"@timestamp":"2022-06-17T10:37:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:38:05.173+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=15.0Mi, Sys=17.8Mi, NumGC=50"}
+{"@timestamp":"2022-06-17T10:38:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:39:05.172+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=15.1Mi, Sys=17.8Mi, NumGC=50"}
+{"@timestamp":"2022-06-17T10:39:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:40:05.166+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=15.2Mi, Sys=17.8Mi, NumGC=51"}
+{"@timestamp":"2022-06-17T10:40:26.316+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:41:05.169+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=15.3Mi, Sys=17.8Mi, NumGC=51"}
+{"@timestamp":"2022-06-17T10:41:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:42:05.168+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=15.4Mi, Sys=17.8Mi, NumGC=52"}
+{"@timestamp":"2022-06-17T10:42:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:43:05.171+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=15.5Mi, Sys=17.8Mi, NumGC=52"}
+{"@timestamp":"2022-06-17T10:43:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:44:05.172+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=15.5Mi, Sys=17.8Mi, NumGC=53"}
+{"@timestamp":"2022-06-17T10:44:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:45:05.176+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=15.6Mi, Sys=17.8Mi, NumGC=53"}
+{"@timestamp":"2022-06-17T10:45:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:46:05.169+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=15.7Mi, Sys=17.8Mi, NumGC=54"}
+{"@timestamp":"2022-06-17T10:46:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:47:05.176+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=15.8Mi, Sys=17.8Mi, NumGC=54"}
+{"@timestamp":"2022-06-17T10:47:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:48:05.173+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=15.9Mi, Sys=17.8Mi, NumGC=55"}
+{"@timestamp":"2022-06-17T10:48:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:49:05.172+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=16.0Mi, Sys=17.8Mi, NumGC=55"}
+{"@timestamp":"2022-06-17T10:49:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:50:05.168+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=16.1Mi, Sys=17.8Mi, NumGC=56"}
+{"@timestamp":"2022-06-17T10:50:26.323+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:51:05.169+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=16.2Mi, Sys=17.8Mi, NumGC=56"}
+{"@timestamp":"2022-06-17T10:51:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:52:05.173+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=16.3Mi, Sys=17.8Mi, NumGC=57"}
+{"@timestamp":"2022-06-17T10:52:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:53:05.171+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=16.4Mi, Sys=17.8Mi, NumGC=57"}
+{"@timestamp":"2022-06-17T10:53:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:54:05.170+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=16.4Mi, Sys=17.8Mi, NumGC=58"}
+{"@timestamp":"2022-06-17T10:54:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:55:05.168+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=16.5Mi, Sys=17.8Mi, NumGC=58"}
+{"@timestamp":"2022-06-17T10:55:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:56:05.177+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=16.6Mi, Sys=17.8Mi, NumGC=59"}
+{"@timestamp":"2022-06-17T10:56:26.317+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:57:05.178+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=16.7Mi, Sys=17.8Mi, NumGC=59"}
+{"@timestamp":"2022-06-17T10:57:26.317+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:58:05.178+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=16.8Mi, Sys=17.8Mi, NumGC=60"}
+{"@timestamp":"2022-06-17T10:58:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T10:59:05.166+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=16.9Mi, Sys=17.8Mi, NumGC=60"}
+{"@timestamp":"2022-06-17T10:59:26.318+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:00:05.167+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=16.9Mi, Sys=17.8Mi, NumGC=61"}
+{"@timestamp":"2022-06-17T11:00:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:01:05.172+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=17.0Mi, Sys=17.8Mi, NumGC=61"}
+{"@timestamp":"2022-06-17T11:01:26.317+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:02:05.163+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=17.1Mi, Sys=17.8Mi, NumGC=62"}
+{"@timestamp":"2022-06-17T11:02:26.317+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:03:05.176+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=17.2Mi, Sys=17.8Mi, NumGC=62"}
+{"@timestamp":"2022-06-17T11:03:26.321+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:04:05.174+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=17.3Mi, Sys=17.8Mi, NumGC=63"}
+{"@timestamp":"2022-06-17T11:04:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:05:05.172+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=17.4Mi, Sys=17.8Mi, NumGC=63"}
+{"@timestamp":"2022-06-17T11:05:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:06:05.173+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=17.5Mi, Sys=17.8Mi, NumGC=64"}
+{"@timestamp":"2022-06-17T11:06:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:07:05.165+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=17.5Mi, Sys=17.8Mi, NumGC=64"}
+{"@timestamp":"2022-06-17T11:07:26.319+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:08:05.170+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=17.6Mi, Sys=17.8Mi, NumGC=65"}
+{"@timestamp":"2022-06-17T11:08:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:09:05.174+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=17.7Mi, Sys=17.8Mi, NumGC=65"}
+{"@timestamp":"2022-06-17T11:09:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:10:05.176+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=17.8Mi, Sys=17.8Mi, NumGC=66"}
+{"@timestamp":"2022-06-17T11:10:26.316+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:11:05.166+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=17.8Mi, Sys=17.8Mi, NumGC=66"}
+{"@timestamp":"2022-06-17T11:11:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:12:05.167+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=17.9Mi, Sys=17.8Mi, NumGC=67"}
+{"@timestamp":"2022-06-17T11:12:26.320+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:13:05.178+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=18.0Mi, Sys=17.8Mi, NumGC=67"}
+{"@timestamp":"2022-06-17T11:13:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:14:05.173+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=18.1Mi, Sys=17.8Mi, NumGC=68"}
+{"@timestamp":"2022-06-17T11:14:26.317+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:15:05.179+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=18.1Mi, Sys=17.8Mi, NumGC=68"}
+{"@timestamp":"2022-06-17T11:15:26.316+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:16:05.170+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=18.2Mi, Sys=17.8Mi, NumGC=69"}
+{"@timestamp":"2022-06-17T11:16:26.317+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:17:05.174+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=18.3Mi, Sys=17.8Mi, NumGC=69"}
+{"@timestamp":"2022-06-17T11:17:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:18:05.178+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=18.4Mi, Sys=17.8Mi, NumGC=70"}
+{"@timestamp":"2022-06-17T11:18:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:19:05.164+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=18.5Mi, Sys=17.8Mi, NumGC=70"}
+{"@timestamp":"2022-06-17T11:19:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:20:05.168+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=18.6Mi, Sys=17.8Mi, NumGC=71"}
+{"@timestamp":"2022-06-17T11:20:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:21:05.170+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=18.7Mi, Sys=17.8Mi, NumGC=71"}
+{"@timestamp":"2022-06-17T11:21:26.317+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:22:05.164+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=18.7Mi, Sys=17.8Mi, NumGC=72"}
+{"@timestamp":"2022-06-17T11:22:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:23:05.177+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=18.8Mi, Sys=17.8Mi, NumGC=72"}
+{"@timestamp":"2022-06-17T11:23:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:24:05.168+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=18.9Mi, Sys=17.8Mi, NumGC=73"}
+{"@timestamp":"2022-06-17T11:24:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:25:05.167+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=19.0Mi, Sys=17.8Mi, NumGC=73"}
+{"@timestamp":"2022-06-17T11:25:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:26:05.172+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=19.1Mi, Sys=17.8Mi, NumGC=74"}
+{"@timestamp":"2022-06-17T11:26:26.321+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:27:05.165+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=19.2Mi, Sys=17.8Mi, NumGC=74"}
+{"@timestamp":"2022-06-17T11:27:26.319+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:28:05.173+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=19.3Mi, Sys=17.8Mi, NumGC=75"}
+{"@timestamp":"2022-06-17T11:28:26.320+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:29:05.168+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=19.4Mi, Sys=17.8Mi, NumGC=75"}
+{"@timestamp":"2022-06-17T11:29:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:30:05.174+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=19.5Mi, Sys=17.8Mi, NumGC=76"}
+{"@timestamp":"2022-06-17T11:30:26.318+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:31:05.169+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=19.5Mi, Sys=17.8Mi, NumGC=76"}
+{"@timestamp":"2022-06-17T11:31:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:32:05.175+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=19.6Mi, Sys=17.8Mi, NumGC=77"}
+{"@timestamp":"2022-06-17T11:32:26.322+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:33:05.177+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=19.7Mi, Sys=17.8Mi, NumGC=77"}
+{"@timestamp":"2022-06-17T11:33:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:34:05.174+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=19.8Mi, Sys=17.8Mi, NumGC=78"}
+{"@timestamp":"2022-06-17T11:34:26.327+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:35:05.171+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=19.9Mi, Sys=17.8Mi, NumGC=78"}
+{"@timestamp":"2022-06-17T11:35:26.326+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:36:05.171+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=20.0Mi, Sys=17.8Mi, NumGC=79"}
+{"@timestamp":"2022-06-17T11:36:26.316+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:37:05.175+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=20.1Mi, Sys=17.8Mi, NumGC=79"}
+{"@timestamp":"2022-06-17T11:37:26.317+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:38:05.176+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=20.2Mi, Sys=17.8Mi, NumGC=80"}
+{"@timestamp":"2022-06-17T11:38:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:39:05.177+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=20.2Mi, Sys=17.8Mi, NumGC=80"}
+{"@timestamp":"2022-06-17T11:39:26.328+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:40:05.176+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=20.3Mi, Sys=17.8Mi, NumGC=81"}
+{"@timestamp":"2022-06-17T11:40:26.317+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:41:05.164+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=20.4Mi, Sys=17.8Mi, NumGC=81"}
+{"@timestamp":"2022-06-17T11:41:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:42:05.177+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=20.5Mi, Sys=17.8Mi, NumGC=82"}
+{"@timestamp":"2022-06-17T11:42:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:43:05.175+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=20.6Mi, Sys=17.8Mi, NumGC=82"}
+{"@timestamp":"2022-06-17T11:43:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:44:05.165+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=20.7Mi, Sys=17.8Mi, NumGC=83"}
+{"@timestamp":"2022-06-17T11:44:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:45:05.169+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=20.7Mi, Sys=17.8Mi, NumGC=83"}
+{"@timestamp":"2022-06-17T11:45:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:46:05.173+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=20.8Mi, Sys=17.8Mi, NumGC=84"}
+{"@timestamp":"2022-06-17T11:46:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:47:05.178+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=20.9Mi, Sys=17.8Mi, NumGC=84"}
+{"@timestamp":"2022-06-17T11:47:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:48:05.165+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=21.0Mi, Sys=17.8Mi, NumGC=85"}
+{"@timestamp":"2022-06-17T11:48:26.328+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:49:05.167+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=21.1Mi, Sys=17.8Mi, NumGC=85"}
+{"@timestamp":"2022-06-17T11:49:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:50:05.174+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=21.2Mi, Sys=17.8Mi, NumGC=86"}
+{"@timestamp":"2022-06-17T11:50:26.317+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:51:05.164+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=21.2Mi, Sys=17.8Mi, NumGC=86"}
+{"@timestamp":"2022-06-17T11:51:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:52:05.167+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=21.3Mi, Sys=17.8Mi, NumGC=87"}
+{"@timestamp":"2022-06-17T11:52:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:53:05.172+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=21.4Mi, Sys=17.8Mi, NumGC=87"}
+{"@timestamp":"2022-06-17T11:53:26.316+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:54:05.175+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=21.5Mi, Sys=17.8Mi, NumGC=88"}
+{"@timestamp":"2022-06-17T11:54:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:55:05.174+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=21.6Mi, Sys=17.8Mi, NumGC=88"}
+{"@timestamp":"2022-06-17T11:55:26.320+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:56:05.174+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=21.7Mi, Sys=17.8Mi, NumGC=89"}
+{"@timestamp":"2022-06-17T11:56:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:57:05.167+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=21.7Mi, Sys=17.8Mi, NumGC=89"}
+{"@timestamp":"2022-06-17T11:57:26.323+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:58:05.168+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=21.8Mi, Sys=17.8Mi, NumGC=90"}
+{"@timestamp":"2022-06-17T11:58:26.326+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T11:59:05.174+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=21.9Mi, Sys=17.8Mi, NumGC=90"}
+{"@timestamp":"2022-06-17T11:59:26.321+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:00:05.169+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=22.0Mi, Sys=17.8Mi, NumGC=91"}
+{"@timestamp":"2022-06-17T12:00:26.320+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:01:05.170+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=22.1Mi, Sys=17.8Mi, NumGC=91"}
+{"@timestamp":"2022-06-17T12:01:26.319+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:02:05.173+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=22.2Mi, Sys=17.8Mi, NumGC=92"}
+{"@timestamp":"2022-06-17T12:02:26.317+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:03:05.169+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=22.3Mi, Sys=17.8Mi, NumGC=92"}
+{"@timestamp":"2022-06-17T12:03:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:04:05.169+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=22.4Mi, Sys=17.8Mi, NumGC=93"}
+{"@timestamp":"2022-06-17T12:04:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:05:05.167+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=22.5Mi, Sys=17.8Mi, NumGC=93"}
+{"@timestamp":"2022-06-17T12:05:26.320+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:06:05.164+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=22.6Mi, Sys=17.8Mi, NumGC=94"}
+{"@timestamp":"2022-06-17T12:06:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:07:05.173+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=22.6Mi, Sys=17.8Mi, NumGC=94"}
+{"@timestamp":"2022-06-17T12:07:26.317+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:08:05.173+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=22.7Mi, Sys=17.8Mi, NumGC=95"}
+{"@timestamp":"2022-06-17T12:08:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:09:05.167+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=22.8Mi, Sys=17.8Mi, NumGC=95"}
+{"@timestamp":"2022-06-17T12:09:26.325+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:10:05.178+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=22.9Mi, Sys=17.8Mi, NumGC=96"}
+{"@timestamp":"2022-06-17T12:10:26.317+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:11:05.177+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=23.0Mi, Sys=17.8Mi, NumGC=96"}
+{"@timestamp":"2022-06-17T12:11:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:12:05.164+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=23.1Mi, Sys=17.8Mi, NumGC=97"}
+{"@timestamp":"2022-06-17T12:12:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:13:05.176+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=23.2Mi, Sys=17.8Mi, NumGC=97"}
+{"@timestamp":"2022-06-17T12:13:26.316+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:14:05.171+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=23.3Mi, Sys=17.8Mi, NumGC=98"}
+{"@timestamp":"2022-06-17T12:14:26.326+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:15:05.164+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=23.4Mi, Sys=17.8Mi, NumGC=98"}
+{"@timestamp":"2022-06-17T12:15:26.317+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:16:05.168+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=23.4Mi, Sys=17.8Mi, NumGC=99"}
+{"@timestamp":"2022-06-17T12:16:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:17:05.165+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=23.5Mi, Sys=17.8Mi, NumGC=99"}
+{"@timestamp":"2022-06-17T12:17:26.327+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:18:05.170+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=23.6Mi, Sys=17.8Mi, NumGC=100"}
+{"@timestamp":"2022-06-17T12:18:26.318+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:19:05.177+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=23.7Mi, Sys=17.8Mi, NumGC=100"}
+{"@timestamp":"2022-06-17T12:19:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:20:05.168+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=23.8Mi, Sys=17.8Mi, NumGC=101"}
+{"@timestamp":"2022-06-17T12:20:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:21:05.168+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=23.9Mi, Sys=17.8Mi, NumGC=101"}
+{"@timestamp":"2022-06-17T12:21:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:22:05.169+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=24.0Mi, Sys=17.8Mi, NumGC=102"}
+{"@timestamp":"2022-06-17T12:22:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:23:05.175+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=24.1Mi, Sys=17.8Mi, NumGC=102"}
+{"@timestamp":"2022-06-17T12:23:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:24:05.166+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=24.2Mi, Sys=17.8Mi, NumGC=103"}
+{"@timestamp":"2022-06-17T12:24:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:25:05.172+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=24.3Mi, Sys=17.8Mi, NumGC=103"}
+{"@timestamp":"2022-06-17T12:25:26.316+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:26:05.167+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=24.3Mi, Sys=17.8Mi, NumGC=104"}
+{"@timestamp":"2022-06-17T12:26:26.322+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:27:05.177+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=24.4Mi, Sys=17.8Mi, NumGC=104"}
+{"@timestamp":"2022-06-17T12:27:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:28:05.170+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=24.5Mi, Sys=17.8Mi, NumGC=105"}
+{"@timestamp":"2022-06-17T12:28:26.316+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:29:05.176+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=24.6Mi, Sys=17.8Mi, NumGC=105"}
+{"@timestamp":"2022-06-17T12:29:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:30:05.170+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=24.7Mi, Sys=17.8Mi, NumGC=106"}
+{"@timestamp":"2022-06-17T12:30:26.322+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:31:05.168+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=24.8Mi, Sys=17.8Mi, NumGC=106"}
+{"@timestamp":"2022-06-17T12:31:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:32:05.168+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=24.9Mi, Sys=17.8Mi, NumGC=107"}
+{"@timestamp":"2022-06-17T12:32:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:33:05.164+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=25.0Mi, Sys=17.8Mi, NumGC=107"}
+{"@timestamp":"2022-06-17T12:33:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:34:05.172+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=25.1Mi, Sys=17.8Mi, NumGC=108"}
+{"@timestamp":"2022-06-17T12:34:26.318+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:35:05.167+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=25.1Mi, Sys=17.8Mi, NumGC=108"}
+{"@timestamp":"2022-06-17T12:35:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:36:05.176+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=25.2Mi, Sys=17.8Mi, NumGC=109"}
+{"@timestamp":"2022-06-17T12:36:26.317+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:37:05.177+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=25.3Mi, Sys=17.8Mi, NumGC=109"}
+{"@timestamp":"2022-06-17T12:37:26.325+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:38:05.169+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=25.4Mi, Sys=17.8Mi, NumGC=110"}
+{"@timestamp":"2022-06-17T12:38:26.322+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:39:05.172+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=25.5Mi, Sys=17.8Mi, NumGC=110"}
+{"@timestamp":"2022-06-17T12:39:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:40:05.171+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=25.6Mi, Sys=17.8Mi, NumGC=111"}
+{"@timestamp":"2022-06-17T12:40:26.326+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:41:05.171+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=25.7Mi, Sys=17.8Mi, NumGC=111"}
+{"@timestamp":"2022-06-17T12:41:26.322+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:42:05.167+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=25.8Mi, Sys=17.8Mi, NumGC=112"}
+{"@timestamp":"2022-06-17T12:42:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:43:05.166+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=25.9Mi, Sys=17.8Mi, NumGC=112"}
+{"@timestamp":"2022-06-17T12:43:26.319+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:44:05.172+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=26.0Mi, Sys=17.8Mi, NumGC=113"}
+{"@timestamp":"2022-06-17T12:44:26.319+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:45:05.177+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=26.0Mi, Sys=17.8Mi, NumGC=113"}
+{"@timestamp":"2022-06-17T12:45:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:46:05.176+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=26.1Mi, Sys=17.8Mi, NumGC=114"}
+{"@timestamp":"2022-06-17T12:46:26.316+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:47:05.170+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=26.2Mi, Sys=17.8Mi, NumGC=114"}
+{"@timestamp":"2022-06-17T12:47:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:48:05.166+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=26.3Mi, Sys=17.8Mi, NumGC=115"}
+{"@timestamp":"2022-06-17T12:48:26.313+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:49:05.175+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.6Mi, TotalAlloc=26.4Mi, Sys=17.8Mi, NumGC=115"}
+{"@timestamp":"2022-06-17T12:49:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:50:05.168+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=26.5Mi, Sys=17.8Mi, NumGC=116"}
+{"@timestamp":"2022-06-17T12:50:26.325+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:51:05.168+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=26.6Mi, Sys=17.8Mi, NumGC=116"}
+{"@timestamp":"2022-06-17T12:51:26.316+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:52:05.165+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=26.7Mi, Sys=17.8Mi, NumGC=117"}
+{"@timestamp":"2022-06-17T12:52:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:53:05.164+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=26.7Mi, Sys=17.8Mi, NumGC=117"}
+{"@timestamp":"2022-06-17T12:53:26.317+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:54:05.168+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=26.8Mi, Sys=17.8Mi, NumGC=118"}
+{"@timestamp":"2022-06-17T12:54:26.319+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:55:05.168+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=26.9Mi, Sys=17.8Mi, NumGC=118"}
+{"@timestamp":"2022-06-17T12:55:26.315+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:56:05.176+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=27.0Mi, Sys=17.8Mi, NumGC=119"}
+{"@timestamp":"2022-06-17T12:56:26.314+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:57:05.165+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=27.1Mi, Sys=17.8Mi, NumGC=119"}
+{"@timestamp":"2022-06-17T12:57:29.367+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:58:08.225+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=27.2Mi, Sys=17.8Mi, NumGC=120"}
+{"@timestamp":"2022-06-17T12:58:29.365+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T12:59:08.214+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=27.3Mi, Sys=17.8Mi, NumGC=120"}
+{"@timestamp":"2022-06-17T12:59:29.363+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T13:00:08.212+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=27.3Mi, Sys=17.8Mi, NumGC=121"}
+{"@timestamp":"2022-06-17T13:00:29.373+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T13:01:08.223+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=27.4Mi, Sys=17.8Mi, NumGC=121"}
+{"@timestamp":"2022-06-17T13:01:29.368+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T13:02:08.220+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=27.5Mi, Sys=17.8Mi, NumGC=122"}
+{"@timestamp":"2022-06-17T13:02:29.363+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T13:03:08.212+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=27.6Mi, Sys=17.8Mi, NumGC=122"}
+{"@timestamp":"2022-06-17T13:03:29.369+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T13:04:08.218+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=27.7Mi, Sys=17.8Mi, NumGC=123"}
+{"@timestamp":"2022-06-17T13:04:29.370+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T13:05:08.213+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=27.8Mi, Sys=17.8Mi, NumGC=123"}
+{"@timestamp":"2022-06-17T13:05:29.364+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T13:06:08.224+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=27.9Mi, Sys=17.8Mi, NumGC=124"}
+{"@timestamp":"2022-06-17T13:06:29.363+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T13:07:08.220+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=28.0Mi, Sys=17.8Mi, NumGC=124"}
+{"@timestamp":"2022-06-17T13:07:29.361+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T13:08:08.214+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=28.0Mi, Sys=17.8Mi, NumGC=125"}
+{"@timestamp":"2022-06-17T13:08:29.364+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T13:09:08.218+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=28.1Mi, Sys=17.8Mi, NumGC=125"}
+{"@timestamp":"2022-06-17T13:09:29.363+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T13:10:08.212+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=28.2Mi, Sys=17.8Mi, NumGC=126"}
+{"@timestamp":"2022-06-17T13:10:29.368+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T13:11:08.223+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=28.3Mi, Sys=17.8Mi, NumGC=126"}
+{"@timestamp":"2022-06-17T13:11:29.363+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T13:12:08.212+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=28.4Mi, Sys=17.8Mi, NumGC=127"}
+{"@timestamp":"2022-06-17T13:12:29.371+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T13:13:08.213+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=28.5Mi, Sys=17.8Mi, NumGC=127"}
+{"@timestamp":"2022-06-17T13:13:29.364+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T13:14:08.225+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=28.6Mi, Sys=17.8Mi, NumGC=128"}
+{"@timestamp":"2022-06-17T13:14:29.361+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T13:15:08.220+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=28.6Mi, Sys=17.8Mi, NumGC=128"}
+{"@timestamp":"2022-06-17T13:15:29.361+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T13:16:08.213+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=28.7Mi, Sys=17.8Mi, NumGC=129"}
+{"@timestamp":"2022-06-17T13:16:29.364+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T13:17:08.222+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=28.8Mi, Sys=17.8Mi, NumGC=129"}
+{"@timestamp":"2022-06-17T13:17:29.361+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T13:18:08.219+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=28.9Mi, Sys=17.8Mi, NumGC=130"}
+{"@timestamp":"2022-06-17T13:18:29.361+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T13:19:08.224+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=29.0Mi, Sys=17.8Mi, NumGC=130"}
+{"@timestamp":"2022-06-17T13:19:29.369+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T13:20:08.224+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.4Mi, TotalAlloc=29.1Mi, Sys=17.8Mi, NumGC=131"}
+{"@timestamp":"2022-06-17T13:20:29.361+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}
+{"@timestamp":"2022-06-17T13:21:08.218+08:00","level":"stat","content":"CPU: 0m, MEMORY: Alloc=3.5Mi, TotalAlloc=29.1Mi, Sys=17.8Mi, NumGC=131"}
+{"@timestamp":"2022-06-17T13:21:29.366+08:00","level":"stat","content":"(rpc) shedding_stat [1m], cpu: 0, total: 0, pass: 0, drop: 0"}

+ 8 - 0
rpc/knowledge/util/util.go

@@ -0,0 +1,8 @@
+package util
+
+func SafeConvert2String(obj interface{}) string {
+	if obj != nil {
+		return obj.(string)
+	}
+	return ""
+}