Files
pyGoEdge-UserPanel/reference/goedge 文档/ServerStatBoardService.md
2025-11-18 03:36:49 +08:00

5.9 KiB
Raw Permalink Blame History

ServerStatBoardService

统计看板


composeServerStatBoard

组合服务看板数据

  • 角色:admin
  • HTTPPOST https://backend.dooki.cloud/ServerStatBoardService/composeServerStatBoard
  • RPCrpc composeServerStatBoard (ComposeServerStatBoardRequest) returns (ComposeServerStatBoardResponse);

请求对象 (ComposeServerStatBoardRequest)

{
  "serverId": "int64 // 服务ID网站ID"
}

响应对象 (ComposeServerStatBoardResponse)

{
  "minutelyPeekBandwidthBytes": "int64 // 当前带宽N分钟峰值",
  "dailyPeekBandwidthBytes": "int64 // 当天带宽峰值",
  "monthlyPeekBandwidthBytes": "int64 // 当月带宽峰值",
  "lastMonthlyPeekBandwidthBytes": "int64 // 上个月带宽峰值",
  "dailyCountIPs": "int64 // 当天独立IP",
  "dailyTrafficBytes": "int64 // 当天流量",
  "bandwidthPercentile": "int32",
  "minutelyBandwidthStats": "[]ServerBandwidthStat // 分钟级的带宽统计",
  "minutelyNthBandwidthStat": "ServerBandwidthStat",
  "dailyTrafficStats": "[]DailyTrafficStat",
  "hourlyTrafficStats": "[]HourlyTrafficStat",
  "topNodeStats": "[]NodeStat",
  "topCountryStats": "[]CountryStat",
  "metricDataCharts": "[]MetricDataChart",
  "day": "string",
  "bytes": "int64",
  "cachedBytes": "int64",
  "countRequests": "int64",
  "countCachedRequests": "int64",
  "countAttackRequests": "int64",
  "attackBytes": "int64",
  "hour": "string",
  "nodeId": "int64 // 节点ID",
  "nodeName": "string",
  "countryName": "string",
  "percent": "float // 流量占比"
}

调用示例

curl -X POST "https://backend.dooki.cloud/ServerStatBoardService/composeServerStatBoard" \
  -H "Content-Type: application/json" \
  -H "X-Edge-Access-Token: <YOUR_TOKEN>" \
  -d '{
    ...
  }'

composeServerStatNodeBoard

组合节点看板数据

  • 角色:admin
  • HTTPPOST https://backend.dooki.cloud/ServerStatBoardService/composeServerStatNodeBoard
  • RPCrpc composeServerStatNodeBoard (ComposeServerStatNodeBoardRequest) returns (ComposeServerStatNodeBoardResponse);

请求对象 (ComposeServerStatNodeBoardRequest)

{
  "nodeId": "int64 // 节点ID"
}

响应对象 (ComposeServerStatNodeBoardResponse)

{
  "isActive": "bool",
  "trafficInBytes": "int64",
  "trafficOutBytes": "int64",
  "countRequests": "int64",
  "countAttackRequests": "int64",
  "countConnections": "int64",
  "cacheDiskSize": "int64",
  "cacheMemorySize": "int64",
  "cpuUsage": "float",
  "memoryUsage": "float",
  "memoryTotalSize": "int64",
  "load": "float",
  "monthlyTrafficBytes": "int64 // 当月流量",
  "dailyTrafficBytes": "int64 // 当日流量",
  "lastDailyTrafficBytes": "int64 // 昨日流量",
  "dailyTrafficStats": "[]DailyTrafficStat",
  "hourlyTrafficStats": "[]HourlyTrafficStat",
  "cpuNodeValues": "[]NodeValue // CPU数据",
  "memoryNodeValues": "[]NodeValue // 内存数据",
  "loadNodeValues": "[]NodeValue // 负载数据",
  "cacheDirsValues": "[]NodeValue // 缓存目录数据",
  "networkPacketsValues": "[]NodeValue // 网络数据包数据",
  "metricDataCharts": "[]MetricDataChart",
  "day": "string",
  "bytes": "int64",
  "cachedBytes": "int64",
  "countCachedRequests": "int64",
  "attackBytes": "int64",
  "hour": "string"
}

调用示例

curl -X POST "https://backend.dooki.cloud/ServerStatBoardService/composeServerStatNodeBoard" \
  -H "Content-Type: application/json" \
  -H "X-Edge-Access-Token: <YOUR_TOKEN>" \
  -d '{
    ...
  }'

composeServerStatNodeClusterBoard

组合集群看板数据

  • 角色:admin
  • HTTPPOST https://backend.dooki.cloud/ServerStatBoardService/composeServerStatNodeClusterBoard
  • RPCrpc composeServerStatNodeClusterBoard (ComposeServerStatNodeClusterBoardRequest) returns (ComposeServerStatNodeClusterBoardResponse);

请求对象 (ComposeServerStatNodeClusterBoardRequest)

{
  "nodeClusterId": "int64 // 集群ID"
}

响应对象 (ComposeServerStatNodeClusterBoardResponse)

{
  "countActiveNodes": "int64 // 在线节点",
  "countInactiveNodes": "int64 // 离线节点",
  "countServers": "int64 // 服务数量",
  "countUsers": "int64 // 用户数量",
  "monthlyTrafficBytes": "int64 // 当月流量",
  "dailyTrafficBytes": "int64 // 当日流量",
  "lastDailyTrafficBytes": "int64 // 昨日流量",
  "dailyTrafficStats": "[]DailyTrafficStat",
  "hourlyTrafficStats": "[]HourlyTrafficStat",
  "topNodeStats": "[]NodeStat",
  "cpuNodeValues": "[]NodeValue",
  "memoryNodeValues": "[]NodeValue",
  "loadNodeValues": "[]NodeValue",
  "metricDataCharts": "[]MetricDataChart // 指标图表",
  "day": "string // 日流量统计",
  "bytes": "int64",
  "cachedBytes": "int64",
  "countRequests": "int64",
  "countCachedRequests": "int64",
  "countAttackRequests": "int64",
  "attackBytes": "int64",
  "hour": "string // 小时流量统计",
  "nodeId": "int64 // 节点ID",
  "nodeName": "string"
}

调用示例

curl -X POST "https://backend.dooki.cloud/ServerStatBoardService/composeServerStatNodeClusterBoard" \
  -H "Content-Type: application/json" \
  -H "X-Edge-Access-Token: <YOUR_TOKEN>" \
  -d '{
    ...
  }'

findAllEnabledServerStatBoards

读取所有看板

  • 角色:admin
  • HTTPPOST https://backend.dooki.cloud/ServerStatBoardService/findAllEnabledServerStatBoards
  • RPCrpc findAllEnabledServerStatBoards (FindAllEnabledServerStatBoardsRequest) returns (FindAllEnabledServerStatBoardsResponse);

请求对象 (FindAllEnabledServerStatBoardsRequest)

{
  "nodeClusterId": "int64 // 集群ID"
}

响应对象 (FindAllEnabledServerStatBoardsResponse)

{
  "serverStatBoards": "[]ServerStatBoard"
}

调用示例

curl -X POST "https://backend.dooki.cloud/ServerStatBoardService/findAllEnabledServerStatBoards" \
  -H "Content-Type: application/json" \
  -H "X-Edge-Access-Token: <YOUR_TOKEN>" \
  -d '{
    ...
  }'