Files
EdgeCommon/pkg/rpc/protos/service_server_stat_board.proto
2024-04-12 18:52:15 +08:00

214 lines
5.7 KiB
Protocol Buffer
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

syntax = "proto3";
option go_package = "./pb";
package pb;
import "models/model_server_stat_board.proto";
import "models/model_node_value.proto";
import "models/model_metric_chart.proto";
import "models/model_metric_stat.proto";
import "models/model_server_bandwidth_stat.proto";
// 统计看板
service ServerStatBoardService {
// 读取所有看板
rpc findAllEnabledServerStatBoards (FindAllEnabledServerStatBoardsRequest) returns (FindAllEnabledServerStatBoardsResponse);
// 组合集群看板数据
rpc composeServerStatNodeClusterBoard (ComposeServerStatNodeClusterBoardRequest) returns (ComposeServerStatNodeClusterBoardResponse);
// 组合节点看板数据
rpc composeServerStatNodeBoard (ComposeServerStatNodeBoardRequest) returns (ComposeServerStatNodeBoardResponse);
// 组合服务看板数据
rpc composeServerStatBoard (ComposeServerStatBoardRequest) returns (ComposeServerStatBoardResponse);
}
// 读取所有看板
message FindAllEnabledServerStatBoardsRequest {
int64 nodeClusterId = 1;
}
message FindAllEnabledServerStatBoardsResponse {
repeated ServerStatBoard serverStatBoards = 1;
}
// 组合集群看板数据
message ComposeServerStatNodeClusterBoardRequest {
int64 nodeClusterId = 1;
}
message ComposeServerStatNodeClusterBoardResponse {
int64 countActiveNodes = 1; // 在线节点
int64 countInactiveNodes = 2; // 离线节点
int64 countServers = 3; // 服务数量
int64 countUsers = 4; // 用户数量
int64 monthlyTrafficBytes = 5; // 当月流量
int64 dailyTrafficBytes = 6; // 当日流量
int64 lastDailyTrafficBytes = 7; // 昨日流量
repeated DailyTrafficStat dailyTrafficStats = 30;
repeated HourlyTrafficStat hourlyTrafficStats = 31;
repeated NodeStat topNodeStats = 32;
repeated NodeValue cpuNodeValues = 34;
repeated NodeValue memoryNodeValues = 35;
repeated NodeValue loadNodeValues = 36;
repeated MetricDataChart metricDataCharts = 37; // 指标图表
// 日流量统计
message DailyTrafficStat {
string day = 1;
int64 bytes = 2;
int64 cachedBytes = 3;
int64 countRequests = 4;
int64 countCachedRequests = 5;
int64 countAttackRequests = 6;
int64 attackBytes = 7;
}
// 小时流量统计
message HourlyTrafficStat {
string hour = 1;
int64 bytes = 2;
int64 cachedBytes = 3;
int64 countRequests = 4;
int64 countCachedRequests = 5;
int64 countAttackRequests = 6;
int64 attackBytes = 7;
}
// 节点统计
message NodeStat {
int64 nodeId = 1;
string nodeName = 2;
int64 countRequests = 3;
int64 bytes = 4;
int64 countAttackRequests = 6;
int64 attackBytes = 7;
}
}
// 组合节点看板数据
message ComposeServerStatNodeBoardRequest {
int64 nodeId = 1; // 节点ID
}
message ComposeServerStatNodeBoardResponse {
bool isActive = 1;
int64 trafficInBytes = 2;
int64 trafficOutBytes = 3;
int64 countRequests = 4;
int64 countAttackRequests = 5;
int64 countConnections = 6;
int64 cacheDiskSize = 7;
int64 cacheMemorySize = 8;
float cpuUsage = 9;
float memoryUsage = 10;
int64 memoryTotalSize = 11;
float load = 12;
int64 monthlyTrafficBytes = 13; // 当月流量
int64 dailyTrafficBytes = 14; // 当日流量
int64 lastDailyTrafficBytes = 15; // 昨日流量
repeated DailyTrafficStat dailyTrafficStats = 31;
repeated HourlyTrafficStat hourlyTrafficStats = 32;
repeated NodeValue cpuNodeValues = 34; // CPU数据
repeated NodeValue memoryNodeValues = 35; // 内存数据
repeated NodeValue loadNodeValues = 36; // 负载数据
repeated NodeValue cacheDirsValues = 38; // 缓存目录数据
repeated NodeValue networkPacketsValues = 39; // 网络数据包数据
repeated MetricDataChart metricDataCharts = 37;
message DailyTrafficStat {
string day = 1;
int64 bytes = 2;
int64 cachedBytes = 3;
int64 countRequests = 4;
int64 countCachedRequests = 5;
int64 countAttackRequests = 6;
int64 attackBytes = 7;
}
message HourlyTrafficStat {
string hour = 1;
int64 bytes = 2;
int64 cachedBytes = 3;
int64 countRequests = 4;
int64 countCachedRequests = 5;
int64 countAttackRequests = 6;
int64 attackBytes = 7;
}
}
// 组合服务看板数据
message ComposeServerStatBoardRequest {
int64 serverId = 1;
}
message ComposeServerStatBoardResponse {
int64 minutelyPeekBandwidthBytes = 5; // 当前带宽N分钟峰值
int64 dailyPeekBandwidthBytes = 2; // 当天带宽峰值
int64 monthlyPeekBandwidthBytes = 3; // 当月带宽峰值
int64 lastMonthlyPeekBandwidthBytes = 4; // 上个月带宽峰值
int64 dailyCountIPs = 9; // 当天独立IP
int64 dailyTrafficBytes = 10; // 当天流量
int32 bandwidthPercentile = 7;
repeated ServerBandwidthStat minutelyBandwidthStats = 1; // 分钟级的带宽统计
ServerBandwidthStat minutelyNthBandwidthStat = 8;
repeated DailyTrafficStat dailyTrafficStats = 30;
repeated HourlyTrafficStat hourlyTrafficStats = 31;
repeated NodeStat topNodeStats = 32;
repeated CountryStat topCountryStats = 35;
repeated MetricDataChart metricDataCharts = 34;
message DailyTrafficStat {
string day = 1;
int64 bytes = 2;
int64 cachedBytes = 3;
int64 countRequests = 4;
int64 countCachedRequests = 5;
int64 countAttackRequests = 6;
int64 attackBytes = 7;
}
message HourlyTrafficStat {
string hour = 1;
int64 bytes = 2;
int64 cachedBytes = 3;
int64 countRequests = 4;
int64 countCachedRequests = 5;
int64 countAttackRequests = 6;
int64 attackBytes = 7;
}
message NodeStat {
int64 nodeId = 1;
string nodeName = 2;
int64 countRequests = 3;
int64 bytes = 4;
int64 countAttackRequests = 6;
int64 attackBytes = 7;
}
message CountryStat {
string countryName = 1;
int64 bytes = 2;
int64 countRequests = 3;
float percent = 4; // 流量占比
int64 countAttackRequests = 6;
int64 attackBytes = 7;
}
}
// 矩阵数据
message MetricDataChart {
MetricChart metricChart = 1;
repeated MetricStat metricStats = 2;
}