增加多个服务带宽、流量统计接口

This commit is contained in:
刘祥超
2022-10-03 19:26:47 +08:00
parent 010a9b61d5
commit 0d8c8064bf
12 changed files with 5800 additions and 4768 deletions

View File

@@ -7,7 +7,6 @@ import "models/model_node_cluster.proto";
import "models/model_server_group.proto";
import "models/model_user.proto";
import "models/model_server_name_auditing_result.proto";
import "models/model_server_daily_stat.proto";
message Server {
int64 id = 1;
@@ -25,6 +24,7 @@ message Server {
// 配置相关
bytes config = 17;
bytes serverNamesJSON = 8;
string firstServerName = 33;
int32 countServerNames = 28;
bool isAuditing = 20;
int64 auditingAt = 25;
@@ -46,5 +46,4 @@ message Server {
NodeCluster nodeCluster = 30;
repeated ServerGroup serverGroups = 31;
User user = 32;
ServerDailyStat latestServerDailyStat = 33 [deprecated = true];
}

View File

@@ -11,4 +11,5 @@ message ServerBandwidthStat {
string day = 4;
string timeAt = 5;
int64 bytes = 6;
int64 bits = 7;
}

View File

@@ -119,6 +119,9 @@ service ServerService {
// 查找一个用户下的所有域名列表
rpc findAllEnabledServerNamesWithUserId (FindAllEnabledServerNamesWithUserIdRequest) returns (FindAllEnabledServerNamesWithUserIdResponse);
// 查找一个用户下的所有服务
rpc findAllUserServers(FindAllUserServersRequest) returns (FindAllUserServersResponse);
// 查找用户服务基本信息
rpc findEnabledUserServerBasic (FindEnabledUserServerBasicRequest) returns (FindEnabledUserServerBasicResponse);
@@ -462,6 +465,15 @@ message FindAllEnabledServerNamesWithUserIdResponse {
repeated string serverNames = 1;
}
// 查找一个用户下的所有服务
message FindAllUserServersRequest {
int64 userId = 1;
}
message FindAllUserServersResponse {
repeated Server servers = 1; // 只返回一些简要信息
}
// 查找用户服务基本信息
message FindEnabledUserServerBasicRequest {
int64 serverId = 1;

View File

@@ -19,6 +19,9 @@ service ServerBandwidthStatService {
// 获取最近N天峰值带宽
rpc findDailyServerBandwidthStats(FindDailyServerBandwidthStatsRequest) returns (FindDailyServerBandwidthStatsResponse);
// 读取日期段内的带宽数据
rpc findDailyServerBandwidthStatsBetweenDays (FindDailyServerBandwidthStatsBetweenDaysRequest) returns (FindDailyServerBandwidthStatsBetweenDaysResponse);
}
// 上传带宽统计
@@ -50,6 +53,7 @@ message FindHourlyServerBandwidthStatsResponse {
string day = 1;
int32 hour = 2;
int64 bytes = 3;
int64 bits = 4;
}
}
@@ -65,5 +69,27 @@ message FindDailyServerBandwidthStatsResponse {
message Stat {
string day = 1;
int64 bytes = 3;
int64 bits = 4;
}
}
// 读取日期段内的带宽数据
message FindDailyServerBandwidthStatsBetweenDaysRequest {
int64 userId = 1; // 用户ID和服务ID二选一
int64 serverId = 2; // 服务ID和用户ID二选一
string dayFrom = 3; // 开始日期 YYYYMMDD
string dayTo = 4; // 结束日期 YYYYMMDD
int32 percentile = 5; // 可选项百分位nth带宽位置0-100之间
}
message FindDailyServerBandwidthStatsBetweenDaysResponse {
repeated Stat stats = 1;
Stat nthStat = 2;
message Stat {
string day = 1;
string timeAt = 2;
int64 bytes = 3; // 字节/秒
int64 bits = 4; // 比特/秒
}
}

View File

@@ -20,9 +20,12 @@ service ServerDailyStatService {
// 读取某天的5分钟间隔流量
rpc findServer5MinutelyStatsWithDay(FindServer5MinutelyStatsWithDayRequest) returns (FindServer5MinutelyStatsWithDayResponse);
// 按日读取统计数据
// 读取最近N日的统计数据
rpc findLatestServerDailyStats (FindLatestServerDailyStatsRequest) returns (FindLatestServerDailyStatsResponse);
// 读取日期段内的流量数据
rpc findServerDailyStatsBetweenDays (FindServerDailyStatsBetweenDaysRequest) returns (FindServerDailyStatsBetweenDaysResponse);
// 查找单个服务当前时刻N分钟内统计数据
rpc sumCurrentServerDailyStats(SumCurrentServerDailyStatsRequest) returns (SumCurrentServerDailyStatsResponse);
@@ -109,7 +112,7 @@ message FindServer5MinutelyStatsWithDayResponse {
}
}
// 按日读取统计数据
// 读取最近N日的统计数据
message FindLatestServerDailyStatsRequest {
int64 serverId = 1;
int32 days = 2; // 天数
@@ -127,6 +130,29 @@ message FindLatestServerDailyStatsResponse {
}
}
// 读取日期段内的流量数据
message FindServerDailyStatsBetweenDaysRequest {
int64 userId = 1; // 用户ID和服务ID二选一
int64 serverId = 2; // 服务ID和用户ID二选一
string dayFrom = 3; // 开始日期 YYYYMMDD
string dayTo = 4; // 结束日期 YYYYMMDD
}
message FindServerDailyStatsBetweenDaysResponse {
repeated Stat stats = 1;
message Stat {
string day = 1;
string timeFrom = 2;
string timeTo = 3;
string timeAt = 4;
int64 bytes = 5;
int64 cachedBytes = 6;
int64 countRequests = 7;
int64 countCachedRequests = 8;
}
}
// 查找单个服务当前时刻N分钟内统计数据
message SumCurrentServerDailyStatsRequest {
int64 serverId = 1;
@@ -138,8 +164,12 @@ message SumCurrentServerDailyStatsResponse {
// 计算单个服务的日统计
message SumServerDailyStatsRequest {
int64 userId = 3;
int64 serverId = 1;
string day = 2; // YYYYMMDD
string dayFrom = 4; // day 和 dayFrom+dayTo 二选一, YYYYMMDD
string dayTo = 5; // day 和 dayFrom+dayTo 二选一YYYYMMDD
}
message SumServerDailyStatsResponse {