实现基本的监控终端管理

This commit is contained in:
GoEdgeLab
2021-09-08 19:35:28 +08:00
parent 72826efbd1
commit b64e22466d
18 changed files with 2654 additions and 458 deletions

View File

@@ -3,6 +3,8 @@ option go_package = "./pb";
package pb;
import "models/model_report_node_group.proto";
message ReportNode {
int64 id = 1;
string uniqueId = 2;
@@ -14,4 +16,5 @@ message ReportNode {
bool isActive = 8;
bytes statusJSON = 9;
repeated string allowIPs = 10;
repeated ReportNodeGroup reportNodeGroups = 11;
}

View File

@@ -0,0 +1,11 @@
syntax = "proto3";
option go_package = "./pb";
package pb;
// 监控节点分组
message ReportNodeGroup {
int64 id = 1;
string name = 2;
bool isOn = 3;
}

View File

@@ -13,4 +13,5 @@ message ReportResult {
float costMs = 7;
string error = 8;
int64 updatedAt = 9;
string level =10;
}

View File

@@ -0,0 +1,17 @@
syntax = "proto3";
option go_package = "./pb";
package pb;
import "models/model_node_ip_address.proto";
// IP地址任务
message IPAddrReportTask {
string ip = 1;
int32 port = 2;
float costMs = 3;
string level = 4;
float connectivity = 5;
NodeIPAddress nodeIPAddress = 30;
}

View File

@@ -222,6 +222,7 @@ message ComposeAdminDashboardResponse {
UpgradeInfo userNodeUpgradeInfo = 35;
UpgradeInfo authorityNodeUpgradeInfo = 36;
UpgradeInfo nsNodeUpgradeInfo = 37;
UpgradeInfo reportNodeUpgradeInfo = 41;
repeated NodeStat topNodeStats = 38;
repeated DomainStat topDomainStats = 39;

View File

@@ -4,6 +4,7 @@ option go_package = "./pb";
package pb;
import "models/model_report_node.proto";
import "models/model_report_task.proto";
import "models/rpc_messages.proto";
// 监控终端服务
@@ -37,6 +38,15 @@ service ReportNodeService {
// 读取任务
rpc findReportNodeTasks(FindReportNodeTasksRequest) returns (FindReportNodeTasksResponse);
// 取得最新的版本号
rpc findLatestReportNodeVersion(FindLatestReportNodeVersionRequest) returns (FindLatestReportNodeVersionResponse);
// 计算任务数量
rpc countAllReportNodeTasks(CountAllReportNodeTasksRequest) returns (RPCCountResponse);
// 列出单页任务
rpc listReportNodeTasks(ListReportNodeTasksRequest) returns (ListReportNodeTasksResponse);
}
// 添加终端
@@ -45,6 +55,7 @@ message CreateReportNodeRequest {
string location = 2;
string isp = 3;
repeated string allowIPs = 4;
repeated int64 reportNodeGroupIds = 5;
}
message CreateReportNodeResponse {
@@ -64,16 +75,19 @@ message UpdateReportNodeRequest{
string isp = 4;
repeated string allowIPs = 5;
bool isOn = 6;
repeated int64 reportNodeGroupIds = 7;
}
// 计算终端数量
message CountAllEnabledReportNodesRequest {
string keyword = 1;
int64 reportNodeGroupId = 2;
}
// 列出单页终端
message ListEnabledReportNodesRequest {
string keyword = 1;
int64 reportNodeGroupId = 4;
int64 offset = 2;
int64 size = 3;
}
@@ -124,4 +138,33 @@ message FindReportNodeTasksRequest {
message FindReportNodeTasksResponse {
bytes ipAddrTasksJSON = 1;
}
// 取得最新的版本号
message FindLatestReportNodeVersionRequest {
}
message FindLatestReportNodeVersionResponse {
string version = 1;
}
// 计算任务数量
message CountAllReportNodeTasksRequest {
string role = 1;
int64 nodeClusterId = 2;
string type = 3;
}
// 列出单页任务
message ListReportNodeTasksRequest {
string role = 1;
int64 nodeClusterId = 2;
string type = 3;
int64 offset = 4;
int64 size = 5;
}
message ListReportNodeTasksResponse {
repeated IPAddrReportTask ipAddrReportTasks = 1;
}

View File

@@ -0,0 +1,71 @@
syntax = "proto3";
option go_package = "./pb";
package pb;
import "models/model_report_node_group.proto";
import "models/rpc_messages.proto";
// 监控节点分组
service ReportNodeGroupService {
// 创建分组
rpc createReportNodeGroup(CreateReportNodeGroupRequest) returns (CreateReportNodeGroupResponse);
// 修改分组
rpc updateReportNodeGroup(UpdateReportNodeGroupRequest) returns (RPCSuccess);
// 删除分组
rpc deleteReportNodeGroup(DeleteReportNodeGroupRequest) returns (RPCSuccess);
// 查找所有分组
rpc findAllEnabledReportNodeGroups(FindAllEnabledReportNodeGroupsRequest) returns (FindAllEnabledReportNodeGroupsResponse);
// 查找单个分组
rpc findEnabledReportNodeGroup(FindEnabledReportNodeGroupRequest) returns (FindEnabledReportNodeGroupResponse);
// 计算所有分组数量
rpc countAllEnabledReportNodeGroups(CountAllEnabledReportNodeGroupsRequest) returns (RPCCountResponse);
}
// 创建分组
message CreateReportNodeGroupRequest {
string name = 1;
}
message CreateReportNodeGroupResponse {
int64 reportNodeGroupId = 1;
}
// 修改分组
message UpdateReportNodeGroupRequest {
int64 reportNodeGroupId = 1;
string name = 2;
}
// 删除分组
message DeleteReportNodeGroupRequest {
int64 reportNodeGroupId = 1;
}
// 查找所有分组
message FindAllEnabledReportNodeGroupsRequest {
}
message FindAllEnabledReportNodeGroupsResponse {
repeated ReportNodeGroup reportNodeGroups = 1;
}
// 查找单个分组
message FindEnabledReportNodeGroupRequest {
int64 reportNodeGroupId = 1;
}
message FindEnabledReportNodeGroupResponse {
ReportNodeGroup reportNodeGroup = 1;
}
// 计算所有分组数量
message CountAllEnabledReportNodeGroupsRequest {
}

View File

@@ -22,14 +22,16 @@ service ReportResultService {
message CountAllReportResultsRequest {
int64 reportNodeId = 1;
int32 okState = 2;
string level = 3;
}
// 列出单页监控结果
message ListReportResultsRequest {
int64 reportNodeId = 1;
int32 okState = 2;
int64 offset = 3;
int64 size = 4;
string level = 3;
int64 offset = 4;
int64 size = 5;
}
message ListReportResultsResponse {