指标量
创建时间:2024-11-01 最近修改时间:2024-11-01
#1. 指标量
详细指标量列表参考全景图功能规格。
#2. 资源标记
DeepFlow数据节点运行自研的分布式时序数据库,用户可以对所有指标量从多种角度进行聚合查询。得益于DeepFlow控制器和云平台、容器平台进行资源同步,并将流量的源、目的地址与资源进行关联,用户可从十余个维度对资源进行分组聚合查询:
- 资源池:区域(Region)、可用区(AZ,Availability Zone)
- 虚拟化:宿主机、云服务器
- 容器:集群、节点、命名空间、容器服务、工作负载、POD
- 网络:VPC(Virtual Private Cloud)、子网、IP地址
#3. 数据的时间精度
参照系统/数据节点/监控存储配置中的数据源列表
#4. API说明
TOP 柱/饼/折线图
- URL:POST /api/statistics/v1/stats/querier/Top
- 请求与返回的字段说明
- Request Body
{ "DATA_SOURCE": "1m", // 数据表的时间粒度,可取值 1m 或者 1s "DATABASE": "flow_metrics", // 数据库名称,目前指标数据固定为 flow_metrics "TABLE": "network", // 数据表名称 // 网络指标数据可取值:network(服务)/network_map(路径) // 应用指标数据可取值:application(服务)/application_map(路径) "SORT": { "ORDER_BY": "xxxx", // 指定排序的指标量 "SORTED_BY": "DESC" // 指定倒序(DESC)/正序(ASC)排序 }, "QUERIES": [ { "QUERY_ID": "R1", // 查询标识 "SELECT": "xxxx", // 指定 API 返回哪些字段 "WHERE": "xxxx", // 按需指定过滤条件 "GROUP_BY": "xxxx" // 指定分组条件 } ], "TOP": "5", // 指定 TOP 取值 "time_end": 1692082502, // 结束时间 "time_start": 1692081602 // 开始时间 }1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22- Response
{ "OPT_STATUS": "SUCCESS", // API调用结果是否成功,SUCCESS表示成功,其余字段表示失败 "DESCRIPTION": "", "DATA": [ // 具体统计数据 { "_querier_region": "BeiJing" // 查询区域 // 返回 SELECT 中指定的其他字段 }, ... ] }1
2
3
4
5
6
7
8
9
10
11 - 举例:获取流量速率 TOP 5 的 POD
- Request Body
{ "DATA_SOURCE": "1m", // 数据表的时间粒度,可取值 1m 或者 1s "DATABASE": "flow_metrics", // 数据库名称,目前指标数据固定为 flow_metrics "TABLE": "network", // 数据表名称 "SORT": { "ORDER_BY": "'流量速率'", // 指定排序的指标量 "SORTED_BY": "DESC" // 指定倒序(DESC)/正序(ASC)排序 }, "QUERIES": [ { "QUERY_ID": "R1", // 查询标识 // 指定API返回哪些字段,其中:query_id(查询标识)/node_type(节点类型)/icon_id(节点图标)是为了 DeepFlow 页面显示增加的字段,客户环境调用可不用携带 "SELECT": "newTag('R1') as query_id, PerSecond(Avg(`byte`)) AS `流量速率`, node_type(pod) AS `node_type`, icon_id(pod) AS `icon_id`, pod_id, pod", "WHERE": "xxxx", // 按需指定过滤条件 "GROUP_BY": "pod, pod_id, `node_type`" // 指定分组条件 } ], "TOP": "5", // 指定 TOP 取值 "time_end": 1692082502, // 结束时间 "time_start": 1692081602 // 开始时间 }1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21- Response
{ "OPT_STATUS": "SUCCESS", // API调用结果是否成功,SUCCESS表示成功,其余字段表示失败 "DESCRIPTION": "", "DATA": [ // 具体统计数据 { "query_id": "R1", // 查询标识 "node_type": "pod", // 节点类型 "icon_id": -17, // 节点图标标识 "pod_id": xxxx, // POD ID "pod": "deepflow-server-xxx", // POD名称 "流量速率": 1218970.8369047618, "_querier_region": "BeiJing" // 查询区域 }, ... ] }1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
表格
- URL:/api/statistics/v1/stats/querier/List
- 请求与返回的字段说明
- Request Body
{ "DATA_SOURCE": "1m", // 数据表的时间粒度,可取值 1m 或者 1s "DATABASE": "flow_metrics", // 数据库名称,目前指标数据固定为 flow_metrics "TABLE": "network", // 数据表名称 // 网络指标数据可取值:network(服务)/network_map(路径) // 应用指标数据可取值:application(服务)/application_map(路径) "SORT": { "ORDER_BY": "xxxx", // 指定排序的指标量 "SORTED_BY": "DESC" // 指定倒序(DESC)/正序(ASC)排序 }, "QUERIES": [ { "QUERY_ID": "R1", // 查询标识 "SELECT": "xxxx", // 指定 API 返回哪些字段 "WHERE": "xxxx", // 按需指定过滤条件 "GROUP_BY": "xxxx" // 指定分组条件 } ], "PAGE_INDEX": 1, // 分页信息,指定查询第几页数据 "PAGE_SIZE": 50, // 分页信息,指定每页数据的条数 "time_end": 1692082502, // 结束时间 "time_start": 1692081602 // 开始时间 }1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23- Response
{ "OPT_STATUS": "SUCCESS", // API调用结果是否成功,SUCCESS表示成功,其余字段表示失败 "DESCRIPTION": "", "DATA": [ // 具体统计数据 { "_querier_region": "BeiJing" // 查询区域 // 返回 SELECT 中指定的其他字段 }, ... ] }1
2
3
4
5
6
7
8
9
10
11 - 举例:获取不同 POD 的流量速率列表
- Request Body
{ "DATA_SOURCE": "1m", // 数据表的时间粒度,可取值 1m 或者 1s "DATABASE": "flow_metrics", // 数据库名称,目前指标数据固定为 flow_metrics "TABLE": "network", // 数据表名称 "SORT": { "ORDER_BY": "'流量速率'", // 指定排序的指标量 "SORTED_BY": "DESC" // 指定倒序(DESC)/正序(ASC)排序 }, "QUERIES": [ { "QUERY_ID": "R1", // 查询标识 // 指定API返回哪些字段,其中:query_id(查询标识)/node_type(节点类型)/icon_id(节点图标)是为了 DeepFlow 页面显示增加的字段,客户环境调用可不用携带 "SELECT": "newTag('R1') as query_id, PerSecond(Avg(`byte`)) AS `流量速率`, node_type(pod) AS `node_type`, icon_id(pod) AS `icon_id`, pod_id, pod", "WHERE": "xxxx", // 按需指定过滤条件 "GROUP_BY": "pod, pod_id, `node_type`" // 指定分组条件 } ], "PAGE_INDEX": 1, // 分页信息,指定查询第几页数据 "PAGE_SIZE": 50, // 分页信息,指定每页数据的条数 "time_end": 1692082502, // 结束时间 "time_start": 1692081602 // 开始时间 }1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22- Response
{ "OPT_STATUS": "SUCCESS", // API调用结果是否成功,SUCCESS表示成功,其余字段表示失败 "DESCRIPTION": "", "DATA": [ // 具体统计数据 { "query_id": "R1", // 查询标识 "node_type": "pod", // 节点类型 "icon_id": -17, // 节点图标标识 "pod_id": xxxx, // POD ID "pod": "deepflow-server-xxx", // POD名称 "流量速率": 1218970.8369047618, "_querier_region": "BeiJing" // 查询区域 }, ... ] }1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
拓扑
- URL:POST /api/statistics/v1/stats/querier/Topo
- 请求与返回的字段说明
- Request Body
{ "DATA_SOURCE": "1m", // 数据表的时间粒度,可取值 1m 或者 1s "DATABASE": "flow_metrics", // 数据库名称,目前指标数据固定为 flow_metrics "TABLE": "network", // 数据表名称 // 网络指标数据可取值:network_map(路径) // 应用指标数据可取值:application_map(路径) "SORT": { "ORDER_BY": "xxxx", // 指定排序的指标量 "SORTED_BY": "DESC" // 指定倒序(DESC)/正序(ASC)排序 }, "QUERIES": [ { "QUERY_ID": "R1-R2", // 查询标识 "SELECT": "xxxx", // 指定 API 返回哪些字段 "WHERE": "xxxx", // 按需指定过滤条件 "GROUP_BY": "xxxx", // 指定分组条件 "CTAGS": [ // SELECT字段中的客户端Tag字段 "xxxx", ... ], "STAGS": [ // SELECT字段中的服务端Tag字段 "xxxx", ... ], "METRICS": [ // 指定查询的指标量 "xxxx", ... ] } ], "TOP": "50", // 指定 TOP 取值 "time_end": 1692082502, // 结束时间 "time_start": 1692081602 // 开始时间 }1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34- Response
{ "OPT_STATUS": "SUCCESS", // API调用结果是否成功,SUCCESS表示成功,其余字段表示失败 "DESCRIPTION": "", "DATA": { // 具体统计数据 "instance_data": [ // 拓扑中点的信息 { "_querier_region": "BeiJing" // 查询区域 "rs_set_id": "R1", // 服务集合标识 "uid": "xxxx", // 节点唯一标识 "role": "c", // 当前节点作为客户端 c/服务端 s // 返回 SELECT 中的 CTAGS 或者 STAGS 字段 // 返回指标量 }, ... ], "peers_data": [ { "_querier_region": "BeiJing" // 查询区域 "query_id": "R1-R1", // 查询标识 "uid_0": "xxxx", // 客户端节点唯一标识 "uid_1": "xxxx", // 服务端节点唯一标识 // 返回 SELECT 中指定的字段 }, ... ] } }1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 - 举例:获取基于流量速率 TOP 20 的 POD 流量拓扑
- Request Body
{ "DATA_SOURCE": "1m", // 数据表的时间粒度,可取值 1m 或者 1s "DATABASE": "flow_metrics", // 数据库名称,目前指标数据固定为 flow_metrics "TABLE": "network", // 数据表名称 // 网络指标数据可取值:network_map(路径) // 应用指标数据可取值:application_map(路径) "SORT": { "ORDER_BY": "xxxx", // 指定排序的指标量 "SORTED_BY": "DESC" // 指定倒序(DESC)/正序(ASC)排序 }, "QUERIES": [ { "QUERY_ID": "R1-R2", // 查询标识 // 指定API返回哪些字段,其中:query_id(查询标识)/node_type(节点类型)/icon_id(节点图标)是为了DeepFlow页面显示增加的字段,客户环境调用可不用携带 "SELECT": "newTag('R1-R1') as query_id, PerSecond(Avg(`byte`)) AS `流量速率`, node_type(pod_0) AS `client_node_type`, icon_id(pod_0) AS `client_icon_id`, pod_id_0, pod_0, Enum(tap_side), tap_side, node_type(pod_1) AS `server_node_type`, icon_id(pod_1) AS `server_icon_id`, pod_id_1, pod_1, observation_point", "WHERE": "xxxx", // 按需指定过滤条件 "GROUP_BY": "observation_point, pod_0, pod_id_0, `client_node_type`, pod_1, is_internet_1, pod_id_1, `server_node_type`", // 指定分组条件 "CTAGS": [ // SELECT字段中的客户端Tag字段 "node_type(pod_0) AS `client_node_type`", "icon_id(pod_0) AS `client_icon_id`", "pod_id_0", "pod_0", "observation_point" ], "STAGS": [ // SELECT字段中的服务端Tag字段 "node_type(pod_1) AS `server_node_type`", "icon_id(pod_1) AS `server_icon_id`", "pod_id_1", "pod_1", "observation_point" ], "METRICS": [ // 指定查询的指标量 "PerSecond(Avg(`byte`)) AS `流量速率`" ] } ], "TOP": "20", // 指定 TOP 取值 "time_end": 1692082502, // 结束时间 "time_start": 1692081602 // 开始时间 }1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40- Response
{ "OPT_STATUS": "SUCCESS", // API调用结果是否成功,SUCCESS表示成功,其余字段表示失败 "DESCRIPTION": "", "DATA": { // 具体统计数据 "instance_data": [ { "_querier_region": "BeiJing" // 查询区域 "rs_set_id": "R1", // 服务集合标识 "uid": "icon_id=-17,node_type=pod,pod=deepflow-server-xxxx,pod_id=xxxx,rs_set_id=R1", // 节点唯一标识 "observation_point": "s", // 观测点 "流量速率": 773010.0125, "role": "c", // 当前节点作为客户端/服务端 "node_type": "pod", // 节点类型 "icon_id": -17, // 节点图标ID "pod_id": xxxx, // POD ID "pod": "deepflow-server-xxxx" // POD名称 }, ... ], "peers_data": [ { "_querier_region": "BeiJing" // 查询区域 "query_id": "R1-R1", // 查询标识 "uid_0": "icon_id=-17,node_type=pod,pod=deepflow-server-xxxx,pod_id=xxxx,rs_set_id=R1", // 客户端节点唯一标识 "uid_1": "icon_id=-17,node_type=pod,pod=deepflow-server-xxx,pod_id=xxxx,rs_set_id=R1" // 服务端节点唯一标识 "client_node_type": "pod", // 客户端节点类型 "client_icon_id": -17, // 客户端节点图标 "pod_id_0": xxxx, // 客户端POD ID "pod_0": "deepflow-server-xxxx", // 客户端POD名称 "observation_point": "s", // 观测点 "server_node_type": "pod", // 服务端节点类型 "server_icon_id": -17, // 服务端节点图标 "pod_id_1": xxxx, // 服务端POD ID "pod_1": "deepflow-server-xxxx", // 服务端POD名称 "流量速率": 1421.3666666667, }, ... ] } }1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40