@@ -864,6 +864,11 @@ poorly-behaved workloads that may be harming system health.
864
864
监视这些指标有助于判断你的配置是否不当地限制了重要流量,
865
865
或者发现可能会损害系统健康的,行为不良的工作负载。
866
866
867
+ <!--
868
+ #### Maturity level BETA
869
+ -->
870
+ #### 成熟度水平 BETA
871
+
867
872
<!--
868
873
* `apiserver_flowcontrol_rejected_requests_total` is a counter vector
869
874
(cumulative since server start) of requests that were rejected,
@@ -874,8 +879,8 @@ poorly-behaved workloads that may be harming system health.
874
879
-->
875
880
* ` apiserver_flowcontrol_rejected_requests_total ` 是一个计数器向量,
876
881
记录被拒绝的请求数量(自服务器启动以来累计值),
877
- 由标签 ` flow_chema ` (表示与请求匹配的 FlowSchema)、` priority_level `
878
- (表示分配给请该求的优先级)和 ` reason ` 来区分 。
882
+ 可按标签 ` flow_chema ` (表示与请求匹配的 FlowSchema)、` priority_level `
883
+ (表示分配给请该求的优先级)和 ` reason ` 分解 。
879
884
` reason ` 标签将是以下值之一:
880
885
881
886
<!--
@@ -902,8 +907,55 @@ poorly-behaved workloads that may be harming system health.
902
907
-->
903
908
* ` apiserver_flowcontrol_dispatched_requests_total ` 是一个计数器向量,
904
909
记录开始执行的请求数量(自服务器启动以来的累积值),
905
- 由 ` flow_schema ` 和 ` priority_level ` 来区分。
910
+ 可按 ` flow_schema ` 和 ` priority_level ` 分解。
911
+
912
+ <!--
913
+ * `apiserver_flowcontrol_current_inqueue_requests` is a gauge vector
914
+ holding the instantaneous number of queued (not executing) requests,
915
+ broken down by `priority_level` and `flow_schema`.
916
+
917
+ * `apiserver_flowcontrol_current_executing_requests` is a gauge vector
918
+ holding the instantaneous number of executing (not waiting in a
919
+ queue) requests, broken down by `priority_level` and `flow_schema`.
920
+ -->
921
+ * ` apiserver_flowcontrol_current_inqueue_requests ` 是一个测量向量,
922
+ 记录排队中的(未执行)请求的瞬时数量,可按 ` priority_level ` 和 ` flow_schema ` 分解。
906
923
924
+ * ` apiserver_flowcontrol_current_executing_requests ` 是一个测量向量,
925
+ 记录执行中(不在队列中等待)请求的瞬时数量,可按 ` priority_level ` 和 ` flow_schema ` 分解。
926
+
927
+ <!--
928
+ * `apiserver_flowcontrol_current_executing_seats` is a gauge vector
929
+ holding the instantaneous number of occupied seats, broken down by
930
+ `priority_level` and `flow_schema`.
931
+
932
+ * `apiserver_flowcontrol_request_wait_duration_seconds` is a histogram
933
+ vector of how long requests spent queued, broken down by the labels
934
+ `flow_schema`, `priority_level`, and `execute`. The `execute` label
935
+ indicates whether the request has started executing.
936
+ -->
937
+ * ` apiserver_flowcontrol_current_executing_seats ` 是一个测量向量,
938
+ 记录了按 ` priority_level ` 和 ` flow_schema ` 细分的瞬时占用席位数量。
939
+
940
+ * ` apiserver_flowcontrol_request_wait_duration_seconds ` 是一个直方图向量,
941
+ 记录了按 ` flow_schema ` 、` priority_level ` 和 ` execute ` 标签细分的请求在队列中等待的时长。
942
+ ` execute ` 标签表示请求是否已开始执行。
943
+
944
+ {{< note >}}
945
+ <!--
946
+ Since each FlowSchema always assigns requests to a single
947
+ PriorityLevelConfiguration, you can add the histograms for all the
948
+ FlowSchemas for one priority level to get the effective histogram for
949
+ requests assigned to that priority level.
950
+ -->
951
+ 由于每个 FlowSchema 总会给请求分配 PriorityLevelConfiguration,
952
+ 因此你可以将一个优先级的所有 FlowSchema 的直方图相加,以得到分配给该优先级的请求的有效直方图。
953
+ {{< /note >}}
954
+
955
+ <!--
956
+ #### Maturity level ALPHA
957
+ -->
958
+ #### 成熟度水平 ALPHA
907
959
908
960
<!--
909
961
* `apiserver_current_inqueue_requests` is a gauge vector of recent
@@ -915,13 +967,22 @@ poorly-behaved workloads that may be harming system health.
915
967
last window's high water mark of number of requests actively being
916
968
served.
917
969
-->
918
- * ` apiserver_current_inqueue_requests ` 是一个表向量 ,
970
+ * ` apiserver_current_inqueue_requests ` 是一个测量向量 ,
919
971
记录最近排队请求数量的高水位线,
920
972
由标签 ` request_kind ` 分组,标签的值为 ` mutating ` 或 ` readOnly ` 。
921
973
这些高水位线表示在最近一秒钟内看到的最大数字。
922
- 它们补充说明了老的表向量 ` apiserver_current_inflight_requests `
974
+ 它们补充说明了老的测量向量 ` apiserver_current_inflight_requests `
923
975
(该量保存了最后一个窗口中,正在处理的请求数量的高水位线)。
924
976
977
+ <!--
978
+ * `apiserver_current_inqueue_seats` is a gauge vector of the sum over
979
+ queued requests of the largest number of seats each will occupy,
980
+ grouped by labels named `flow_schema` and `priority_level`.
981
+ -->
982
+ * ` apiserver_current_inqueue_seats ` 是一个测量向量,
983
+ 记录了排队请求中每个请求将占用的最大席位数的总和,
984
+ 按 ` flow_schema ` 和 ` priority_level ` 两个标签进行分组。
985
+
925
986
<!--
926
987
* `apiserver_flowcontrol_read_vs_write_current_requests` is a
927
988
histogram vector of observations, made at the end of every
@@ -934,36 +995,18 @@ poorly-behaved workloads that may be harming system health.
934
995
limit for executing).
935
996
-->
936
997
* ` apiserver_flowcontrol_read_vs_write_current_requests ` 是一个直方图向量,
937
- 在每个纳秒结束时记录请求数量的观察值,由标签 ` phase ` (取值为 ` waiting ` 及 ` executing ` )
938
- 和 ` request_kind ` (取值为 ` mutating ` 及 ` readOnly ` )区分 。
998
+ 在每个纳秒结束时记录请求数量的观察值,可按标签 ` phase ` (取值为 ` waiting ` 及 ` executing ` )
999
+ 和 ` request_kind ` (取值为 ` mutating ` 及 ` readOnly ` )分解 。
939
1000
每个观察到的值是一个介于 0 和 1 之间的比值,计算方式为请求数除以该请求数的对应限制
940
1001
(等待的队列长度限制和执行所用的并发限制)。
941
1002
942
- <!--
943
- * `apiserver_flowcontrol_current_inqueue_requests` is a gauge vector
944
- holding the instantaneous number of queued (not executing) requests,
945
- broken down by `priority_level` and `flow_schema`.
946
- -->
947
- * ` apiserver_flowcontrol_current_inqueue_requests ` 是一个表向量,
948
- 记录包含排队中的(未执行)请求的瞬时数量,
949
- 由 ` priority_level ` 和 ` flow_schema ` 区分。
950
-
951
- <!--
952
- * `apiserver_flowcontrol_current_executing_requests` is a gauge vector
953
- holding the instantaneous number of executing (not waiting in a
954
- queue) requests, broken down by `priority_level` and `flow_schema`.
955
- -->
956
- * ` apiserver_flowcontrol_current_executing_requests ` 是一个表向量,
957
- 记录包含执行中(不在队列中等待)请求的瞬时数量,
958
- 由 ` priority_level ` 和 ` flow_schema ` 进一步区分。
959
-
960
1003
<!--
961
1004
* `apiserver_flowcontrol_request_concurrency_in_use` is a gauge vector
962
1005
holding the instantaneous number of occupied seats, broken down by
963
1006
`priority_level` and `flow_schema`.
964
1007
-->
965
1008
* ` apiserver_flowcontrol_request_concurrency_in_use ` 是一个规范向量,
966
- 包含占用座位的瞬时数量,由 ` priority_level ` 和 ` flow_schema ` 进一步区分 。
1009
+ 包含占用席位的瞬时数量,可按 ` priority_level ` 和 ` flow_schema ` 分解 。
967
1010
968
1011
<!--
969
1012
* `apiserver_flowcontrol_priority_level_request_utilization` is a
@@ -977,7 +1020,7 @@ poorly-behaved workloads that may be harming system health.
977
1020
-->
978
1021
* ` apiserver_flowcontrol_priority_level_request_utilization ` 是一个直方图向量,
979
1022
在每个纳秒结束时记录请求数量的观察值,
980
- 由标签 ` phase ` (取值为 ` waiting ` 及 ` executing ` )和 ` priority_level ` 区分 。
1023
+ 可按标签 ` phase ` (取值为 ` waiting ` 及 ` executing ` )和 ` priority_level ` 分解 。
981
1024
每个观察到的值是一个介于 0 和 1 之间的比值,计算方式为请求数除以该请求数的对应限制
982
1025
(等待的队列长度限制和执行所用的并发限制)。
983
1026
@@ -996,7 +1039,7 @@ poorly-behaved workloads that may be harming system health.
996
1039
phase).
997
1040
-->
998
1041
* ` apiserver_flowcontrol_priority_level_seat_utilization ` 是一个直方图向量,
999
- 在每个纳秒结束时记录某个优先级并发度限制利用率的观察值,由标签 ` priority_level ` 区分 。
1042
+ 在每个纳秒结束时记录某个优先级并发度限制利用率的观察值,可按标签 ` priority_level ` 分解 。
1000
1043
此利用率是一个分数:(占用的席位数)/(并发限制)。
1001
1044
此指标考虑了除 WATCH 之外的所有请求的所有执行阶段(包括写入结束时的正常延迟和额外延迟,
1002
1045
以覆盖相应的通知操作);对于 WATCH 请求,只考虑传递预先存在对象通知的初始阶段。
@@ -1011,7 +1054,7 @@ poorly-behaved workloads that may be harming system health.
1011
1054
Note that this produces different statistics than an unbiased survey would.
1012
1055
-->
1013
1056
* ` apiserver_flowcontrol_request_queue_length_after_enqueue ` 是一个直方图向量,
1014
- 记录请求队列的长度,由 ` priority_level ` 和 ` flow_schema ` 进一步区分 。
1057
+ 记录请求队列的长度,可按 ` priority_level ` 和 ` flow_schema ` 分解 。
1015
1058
每个排队中的请求都会为其直方图贡献一个样本,并在添加请求后立即上报队列的长度。
1016
1059
请注意,这样产生的统计数据与无偏调查不同。
1017
1060
@@ -1042,26 +1085,17 @@ poorly-behaved workloads that may be harming system health.
1042
1085
此字段始终等于 ` apiserver_flowcontrol_current_limit_seats `
1043
1086
(它过去不作为一个独立的指标存在)。
1044
1087
1045
- <!--
1046
- * `apiserver_flowcontrol_nominal_limit_seats` is a gauge vector
1047
- holding each priority level's nominal concurrency limit, computed
1048
- from the API server's total concurrency limit and the priority
1049
- level's configured nominal concurrency shares.
1050
- -->
1051
- * ` apiserver_flowcontrol_nominal_limit_seats ` 是一个表向量,包含每个优先级的额定并发度限制,
1052
- 指标值根据 API 服务器的总并发度限制和各优先级所配置的额定并发度份额计算得出。
1053
-
1054
1088
<!--
1055
1089
* `apiserver_flowcontrol_lower_limit_seats` is a gauge vector holding
1056
1090
the lower bound on each priority level's dynamic concurrency limit.
1057
1091
-->
1058
- * ` apiserver_flowcontrol_lower_limit_seats ` 是一个表向量 ,包含每个优先级的动态并发度限制的下限。
1092
+ * ` apiserver_flowcontrol_lower_limit_seats ` 是一个测量向量 ,包含每个优先级的动态并发度限制的下限。
1059
1093
1060
1094
<!--
1061
1095
* `apiserver_flowcontrol_upper_limit_seats` is a gauge vector holding
1062
1096
the upper bound on each priority level's dynamic concurrency limit.
1063
1097
-->
1064
- * ` apiserver_flowcontrol_upper_limit_seats ` 是一个表向量 ,包含每个优先级的动态并发度限制的上限。
1098
+ * ` apiserver_flowcontrol_upper_limit_seats ` 是一个测量向量 ,包含每个优先级的动态并发度限制的上限。
1065
1099
1066
1100
<!--
1067
1101
* `apiserver_flowcontrol_demand_seats` is a histogram vector counting
@@ -1081,15 +1115,15 @@ poorly-behaved workloads that may be harming system health.
1081
1115
holding, for each priority level, the maximum seat demand seen
1082
1116
during the last concurrency borrowing adjustment period.
1083
1117
-->
1084
- * ` apiserver_flowcontrol_demand_seats_high_watermark ` 是一个表向量 ,
1118
+ * ` apiserver_flowcontrol_demand_seats_high_watermark ` 是一个测量向量 ,
1085
1119
为每个优先级包含了上一个并发度借用调整期间所观察到的最大席位需求。
1086
1120
1087
1121
<!--
1088
1122
* `apiserver_flowcontrol_demand_seats_average` is a gauge vector
1089
1123
holding, for each priority level, the time-weighted average seat
1090
1124
demand seen during the last concurrency borrowing adjustment period.
1091
1125
-->
1092
- * ` apiserver_flowcontrol_demand_seats_average ` 是一个表向量 ,
1126
+ * ` apiserver_flowcontrol_demand_seats_average ` 是一个测量向量 ,
1093
1127
为每个优先级包含了上一个并发度借用调整期间所观察到的时间加权平均席位需求。
1094
1128
1095
1129
<!--
@@ -1098,70 +1132,48 @@ poorly-behaved workloads that may be harming system health.
1098
1132
standard deviation of seat demand seen during the last concurrency
1099
1133
borrowing adjustment period.
1100
1134
-->
1101
- * ` apiserver_flowcontrol_demand_seats_stdev ` 是一个表向量 ,
1135
+ * ` apiserver_flowcontrol_demand_seats_stdev ` 是一个测量向量 ,
1102
1136
为每个优先级包含了上一个并发度借用调整期间所观察到的席位需求的时间加权总标准偏差。
1103
1137
1104
1138
<!--
1105
1139
* `apiserver_flowcontrol_demand_seats_smoothed` is a gauge vector
1106
1140
holding, for each priority level, the smoothed enveloped seat demand
1107
1141
determined at the last concurrency adjustment.
1108
1142
-->
1109
- * ` apiserver_flowcontrol_demand_seats_smoothed ` 是一个表向量 ,
1143
+ * ` apiserver_flowcontrol_demand_seats_smoothed ` 是一个测量向量 ,
1110
1144
为每个优先级包含了上一个并发度调整期间确定的平滑包络席位需求。
1111
1145
1112
1146
<!--
1113
1147
* `apiserver_flowcontrol_target_seats` is a gauge vector holding, for
1114
1148
each priority level, the concurrency target going into the borrowing
1115
1149
allocation problem.
1116
1150
-->
1117
- * ` apiserver_flowcontrol_target_seats ` 是一个表向量 ,
1151
+ * ` apiserver_flowcontrol_target_seats ` 是一个测量向量 ,
1118
1152
包含每个优先级触发借用分配问题的并发度目标值。
1119
1153
1120
1154
<!--
1121
1155
* `apiserver_flowcontrol_seat_fair_frac` is a gauge holding the fair
1122
1156
allocation fraction determined in the last borrowing adjustment.
1123
1157
-->
1124
- * ` apiserver_flowcontrol_seat_fair_frac ` 是一个表向量 ,
1158
+ * ` apiserver_flowcontrol_seat_fair_frac ` 是一个测量向量 ,
1125
1159
包含了上一个借用调整期间确定的公平分配比例。
1126
1160
1127
1161
<!--
1128
1162
* `apiserver_flowcontrol_current_limit_seats` is a gauge vector
1129
1163
holding, for each priority level, the dynamic concurrency limit
1130
1164
derived in the last adjustment.
1131
1165
-->
1132
- * ` apiserver_flowcontrol_current_limit_seats ` 是一个表向量 ,
1166
+ * ` apiserver_flowcontrol_current_limit_seats ` 是一个测量向量 ,
1133
1167
包含每个优先级的上一次调整期间得出的动态并发限制。
1134
1168
1135
- <!--
1136
- * `apiserver_flowcontrol_request_wait_duration_seconds` is a histogram
1137
- vector of how long requests spent queued, broken down by the labels
1138
- `flow_schema`, `priority_level`, and `execute`. The `execute` label
1139
- indicates whether the request has started executing.
1140
- -->
1141
- * ` apiserver_flowcontrol_request_wait_duration_seconds ` 是一个直方图向量,
1142
- 记录请求排队的时间,
1143
- 由标签 ` flow_schema ` 、` priority_level ` 和 ` execute ` 进一步区分。
1144
- 标签 ` execute ` 表示请求是否开始执行。
1145
-
1146
- {{< note >}}
1147
- <!--
1148
- Since each FlowSchema always assigns requests to a single
1149
- PriorityLevelConfiguration, you can add the histograms for all the
1150
- FlowSchemas for one priority level to get the effective histogram for
1151
- requests assigned to that priority level.
1152
- -->
1153
- 由于每个 FlowSchema 总会给请求分配 PriorityLevelConfiguration,
1154
- 因此你可以为一个优先级添加所有 FlowSchema 的直方图,以获取分配给该优先级的请求的有效直方图。
1155
- {{< /note >}}
1156
-
1157
1169
<!--
1158
1170
* `apiserver_flowcontrol_request_execution_seconds` is a histogram
1159
1171
vector of how long requests took to actually execute, broken down by
1160
1172
`flow_schema` and `priority_level`.
1161
1173
-->
1162
1174
* ` apiserver_flowcontrol_request_execution_seconds ` 是一个直方图向量,
1163
1175
记录请求实际执行需要花费的时间,
1164
- 由标签 ` flow_schema ` 和 ` priority_level ` 进一步区分 。
1176
+ 可按标签 ` flow_schema ` 和 ` priority_level ` 分解 。
1165
1177
1166
1178
<!--
1167
1179
* `apiserver_flowcontrol_watch_count_samples` is a histogram vector of
@@ -1170,7 +1182,7 @@ poorly-behaved workloads that may be harming system health.
1170
1182
-->
1171
1183
* ` apiserver_flowcontrol_watch_count_samples ` 是一个直方图向量,
1172
1184
记录给定写的相关活动 WATCH 请求数量,
1173
- 由标签 ` flow_schema ` 和 ` priority_level ` 进一步区分 。
1185
+ 可按标签 ` flow_schema ` 和 ` priority_level ` 分解 。
1174
1186
1175
1187
<!--
1176
1188
* `apiserver_flowcontrol_work_estimated_seats` is a histogram vector
@@ -1180,7 +1192,7 @@ poorly-behaved workloads that may be harming system health.
1180
1192
-->
1181
1193
* ` apiserver_flowcontrol_work_estimated_seats ` 是一个直方图向量,
1182
1194
记录与估计席位(最初阶段和最后阶段的最多人数)相关联的请求数量,
1183
- 由标签 ` flow_schema ` 和 ` priority_level ` 进一步区分 。
1195
+ 可按标签 ` flow_schema ` 和 ` priority_level ` 分解 。
1184
1196
1185
1197
<!--
1186
1198
* `apiserver_flowcontrol_request_dispatch_no_accommodation_total` is a
@@ -1191,7 +1203,17 @@ poorly-behaved workloads that may be harming system health.
1191
1203
* ` apiserver_flowcontrol_request_dispatch_no_accommodation_total `
1192
1204
是一个事件数量的计数器,这些事件在原则上可能导致请求被分派,
1193
1205
但由于并发度不足而没有被分派,
1194
- 由标签 ` flow_schema ` 和 ` priority_level ` 进一步区分。
1206
+ 可按标签 ` flow_schema ` 和 ` priority_level ` 分解。
1207
+
1208
+ <!--
1209
+ * `apiserver_flowcontrol_epoch_advance_total` is a counter vector of
1210
+ the number of attempts to jump a priority level's progress meter
1211
+ backward to avoid numeric overflow, grouped by `priority_level` and
1212
+ `success`.
1213
+ -->
1214
+ * ` apiserver_flowcontrol_epoch_advance_total ` 是一个计数器向量,
1215
+ 记录了将优先级进度计向后跳跃以避免数值溢出的尝试次数,
1216
+ 按 ` priority_level ` 和 ` success ` 两个标签进行分组。
1195
1217
1196
1218
<!--
1197
1219
## Good practices for using API Priority and Fairness
0 commit comments