提交 2893f4cc 编写于 作者: J junotx

update alerting page param

Signed-off-by: Njunotx <junotx@126.com>
上级 cdbce887
...@@ -18,7 +18,6 @@ package v2alpha1 ...@@ -18,7 +18,6 @@ package v2alpha1
import ( import (
"context" "context"
"regexp"
"sort" "sort"
"strconv" "strconv"
"strings" "strings"
...@@ -46,8 +45,6 @@ var ( ...@@ -46,8 +45,6 @@ var (
templateTestData = template.AlertTemplateData(map[string]string{}, map[string]string{}, 0) templateTestData = template.AlertTemplateData(map[string]string{}, map[string]string{}, 0)
templateTestTextPrefix = "{{$labels := .Labels}}{{$externalLabels := .ExternalLabels}}{{$value := .Value}}" templateTestTextPrefix = "{{$labels := .Labels}}{{$externalLabels := .ExternalLabels}}{{$value := .Value}}"
ruleLabelNameMatcher = regexp.MustCompile(`[a-zA-Z_][a-zA-Z0-9_]*`)
) )
type RuleLevel string type RuleLevel string
...@@ -166,7 +163,7 @@ type AlertingRuleQueryParams struct { ...@@ -166,7 +163,7 @@ type AlertingRuleQueryParams struct {
LabelEqualFilters map[string]string LabelEqualFilters map[string]string
LabelContainFilters map[string]string LabelContainFilters map[string]string
Offset int PageNum int
Limit int Limit int
SortField string SortField string
SortType string SortType string
...@@ -275,7 +272,7 @@ func (q *AlertingRuleQueryParams) Sort(rules []*GettableAlertingRule) { ...@@ -275,7 +272,7 @@ func (q *AlertingRuleQueryParams) Sort(rules []*GettableAlertingRule) {
func (q *AlertingRuleQueryParams) Sub(rules []*GettableAlertingRule) []*GettableAlertingRule { func (q *AlertingRuleQueryParams) Sub(rules []*GettableAlertingRule) []*GettableAlertingRule {
start, stop := 0, 10 start, stop := 0, 10
if q != nil { if q != nil {
start, stop = q.Offset, q.Offset+q.Limit start, stop = (q.PageNum-1)*q.Limit, q.PageNum*q.Limit
} }
total := len(rules) total := len(rules)
if start < total { if start < total {
...@@ -292,8 +289,8 @@ type AlertQueryParams struct { ...@@ -292,8 +289,8 @@ type AlertQueryParams struct {
LabelEqualFilters map[string]string LabelEqualFilters map[string]string
LabelContainFilters map[string]string LabelContainFilters map[string]string
Offset int PageNum int
Limit int Limit int
} }
func (q *AlertQueryParams) Filter(alerts []*Alert) []*Alert { func (q *AlertQueryParams) Filter(alerts []*Alert) []*Alert {
...@@ -352,7 +349,7 @@ func (q *AlertQueryParams) Sort(alerts []*Alert) { ...@@ -352,7 +349,7 @@ func (q *AlertQueryParams) Sort(alerts []*Alert) {
func (q *AlertQueryParams) Sub(alerts []*Alert) []*Alert { func (q *AlertQueryParams) Sub(alerts []*Alert) []*Alert {
start, stop := 0, 10 start, stop := 0, 10
if q != nil { if q != nil {
start, stop = q.Offset, q.Offset+q.Limit start, stop = (q.PageNum-1)*q.Limit, q.PageNum*q.Limit
} }
total := len(alerts) total := len(alerts)
if start < total { if start < total {
...@@ -373,7 +370,14 @@ func ParseAlertingRuleQueryParams(req *restful.Request) (*AlertingRuleQueryParam ...@@ -373,7 +370,14 @@ func ParseAlertingRuleQueryParams(req *restful.Request) (*AlertingRuleQueryParam
q.NameContainFilter = req.QueryParameter("name") q.NameContainFilter = req.QueryParameter("name")
q.State = req.QueryParameter("state") q.State = req.QueryParameter("state")
q.Health = req.QueryParameter("health") q.Health = req.QueryParameter("health")
q.Offset, _ = strconv.Atoi(req.QueryParameter("offset")) q.PageNum, err = strconv.Atoi(req.QueryParameter("page"))
if err != nil {
q.PageNum = 1
err = nil
}
if q.PageNum <= 0 {
q.PageNum = 1
}
q.Limit, err = strconv.Atoi(req.QueryParameter("limit")) q.Limit, err = strconv.Atoi(req.QueryParameter("limit"))
if err != nil { if err != nil {
q.Limit = 10 q.Limit = 10
...@@ -392,7 +396,14 @@ func ParseAlertQueryParams(req *restful.Request) (*AlertQueryParams, error) { ...@@ -392,7 +396,14 @@ func ParseAlertQueryParams(req *restful.Request) (*AlertQueryParams, error) {
) )
q.State = req.QueryParameter("state") q.State = req.QueryParameter("state")
q.Offset, _ = strconv.Atoi(req.QueryParameter("offset")) q.PageNum, err = strconv.Atoi(req.QueryParameter("page"))
if err != nil {
q.PageNum = 1
err = nil
}
if q.PageNum <= 0 {
q.PageNum = 1
}
q.Limit, err = strconv.Atoi(req.QueryParameter("limit")) q.Limit, err = strconv.Atoi(req.QueryParameter("limit"))
if err != nil { if err != nil {
q.Limit = 10 q.Limit = 10
......
...@@ -68,7 +68,7 @@ func AddToContainer(container *restful.Container, informers informers.InformerFa ...@@ -68,7 +68,7 @@ func AddToContainer(container *restful.Container, informers informers.InformerFa
Param(ws.QueryParameter("label_filters", "label filters, concatenating multiple filters with commas, equal symbol for exact query, wave symbol for fuzzy query e.g. name~a").DataFormat("key=%s,key~%s")). Param(ws.QueryParameter("label_filters", "label filters, concatenating multiple filters with commas, equal symbol for exact query, wave symbol for fuzzy query e.g. name~a").DataFormat("key=%s,key~%s")).
Param(ws.QueryParameter("sort_field", "sort field, one of `name`, `lastEvaluation`, `evaluationTime`")). Param(ws.QueryParameter("sort_field", "sort field, one of `name`, `lastEvaluation`, `evaluationTime`")).
Param(ws.QueryParameter("sort_type", "sort type, one of `asc`, `desc`")). Param(ws.QueryParameter("sort_type", "sort type, one of `asc`, `desc`")).
Param(ws.QueryParameter("offset", "offset of the result set").DataType("integer").DefaultValue("0")). Param(ws.QueryParameter("page", "page of the result set").DataType("integer").DefaultValue("1")).
Param(ws.QueryParameter("limit", "limit size of the result set").DataType("integer").DefaultValue("10")). Param(ws.QueryParameter("limit", "limit size of the result set").DataType("integer").DefaultValue("10")).
Returns(http.StatusOK, ksapi.StatusOK, alertingv2alpha1.GettableAlertingRuleList{}). Returns(http.StatusOK, ksapi.StatusOK, alertingv2alpha1.GettableAlertingRuleList{}).
Metadata(restfulspec.KeyOpenAPITags, []string{constants.AlertingTag})) Metadata(restfulspec.KeyOpenAPITags, []string{constants.AlertingTag}))
...@@ -78,7 +78,7 @@ func AddToContainer(container *restful.Container, informers informers.InformerFa ...@@ -78,7 +78,7 @@ func AddToContainer(container *restful.Container, informers informers.InformerFa
Doc("list the alerts of the cluster-level custom alerting rules"). Doc("list the alerts of the cluster-level custom alerting rules").
Param(ws.QueryParameter("state", "state, one of `firing`, `pending`, `inactive`")). Param(ws.QueryParameter("state", "state, one of `firing`, `pending`, `inactive`")).
Param(ws.QueryParameter("label_filters", "label filters, concatenating multiple filters with commas, equal symbol for exact query, wave symbol for fuzzy query e.g. name~a").DataFormat("key=%s,key~%s")). Param(ws.QueryParameter("label_filters", "label filters, concatenating multiple filters with commas, equal symbol for exact query, wave symbol for fuzzy query e.g. name~a").DataFormat("key=%s,key~%s")).
Param(ws.QueryParameter("offset", "offset of the result set").DataType("integer").DefaultValue("0")). Param(ws.QueryParameter("page", "page of the result set").DataType("integer").DefaultValue("1")).
Param(ws.QueryParameter("limit", "limit size of the result set").DataType("integer").DefaultValue("10")). Param(ws.QueryParameter("limit", "limit size of the result set").DataType("integer").DefaultValue("10")).
Returns(http.StatusOK, ksapi.StatusOK, alertingv2alpha1.AlertList{}). Returns(http.StatusOK, ksapi.StatusOK, alertingv2alpha1.AlertList{}).
Metadata(restfulspec.KeyOpenAPITags, []string{constants.AlertingTag})) Metadata(restfulspec.KeyOpenAPITags, []string{constants.AlertingTag}))
...@@ -124,7 +124,7 @@ func AddToContainer(container *restful.Container, informers informers.InformerFa ...@@ -124,7 +124,7 @@ func AddToContainer(container *restful.Container, informers informers.InformerFa
Param(ws.QueryParameter("label_filters", "label filters, concatenating multiple filters with commas, equal symbol for exact query, wave symbol for fuzzy query e.g. name~a").DataFormat("key=%s,key~%s")). Param(ws.QueryParameter("label_filters", "label filters, concatenating multiple filters with commas, equal symbol for exact query, wave symbol for fuzzy query e.g. name~a").DataFormat("key=%s,key~%s")).
Param(ws.QueryParameter("sort_field", "sort field, one of `name`, `lastEvaluation`, `evaluationTime`")). Param(ws.QueryParameter("sort_field", "sort field, one of `name`, `lastEvaluation`, `evaluationTime`")).
Param(ws.QueryParameter("sort_type", "sort type, one of `asc`, `desc`")). Param(ws.QueryParameter("sort_type", "sort type, one of `asc`, `desc`")).
Param(ws.QueryParameter("offset", "offset of the result set").DataType("integer").DefaultValue("0")). Param(ws.QueryParameter("page", "page of the result set").DataType("integer").DefaultValue("1")).
Param(ws.QueryParameter("limit", "limit size of the result set").DataType("integer").DefaultValue("10")). Param(ws.QueryParameter("limit", "limit size of the result set").DataType("integer").DefaultValue("10")).
Returns(http.StatusOK, ksapi.StatusOK, alertingv2alpha1.GettableAlertingRuleList{}). Returns(http.StatusOK, ksapi.StatusOK, alertingv2alpha1.GettableAlertingRuleList{}).
Metadata(restfulspec.KeyOpenAPITags, []string{constants.AlertingTag})) Metadata(restfulspec.KeyOpenAPITags, []string{constants.AlertingTag}))
...@@ -134,7 +134,7 @@ func AddToContainer(container *restful.Container, informers informers.InformerFa ...@@ -134,7 +134,7 @@ func AddToContainer(container *restful.Container, informers informers.InformerFa
Doc("list the alerts of the custom alerting rules in the specified namespace."). Doc("list the alerts of the custom alerting rules in the specified namespace.").
Param(ws.QueryParameter("state", "state, one of `firing`, `pending`, `inactive`")). Param(ws.QueryParameter("state", "state, one of `firing`, `pending`, `inactive`")).
Param(ws.QueryParameter("label_filters", "label filters, concatenating multiple filters with commas, equal symbol for exact query, wave symbol for fuzzy query e.g. name~a").DataFormat("key=%s,key~%s")). Param(ws.QueryParameter("label_filters", "label filters, concatenating multiple filters with commas, equal symbol for exact query, wave symbol for fuzzy query e.g. name~a").DataFormat("key=%s,key~%s")).
Param(ws.QueryParameter("offset", "offset of the result set").DataType("integer").DefaultValue("0")). Param(ws.QueryParameter("page", "page of the result set").DataType("integer").DefaultValue("1")).
Param(ws.QueryParameter("limit", "limit size of the result set").DataType("integer").DefaultValue("10")). Param(ws.QueryParameter("limit", "limit size of the result set").DataType("integer").DefaultValue("10")).
Returns(http.StatusOK, ksapi.StatusOK, alertingv2alpha1.AlertList{}). Returns(http.StatusOK, ksapi.StatusOK, alertingv2alpha1.AlertList{}).
Metadata(restfulspec.KeyOpenAPITags, []string{constants.AlertingTag})) Metadata(restfulspec.KeyOpenAPITags, []string{constants.AlertingTag}))
...@@ -180,7 +180,7 @@ func AddToContainer(container *restful.Container, informers informers.InformerFa ...@@ -180,7 +180,7 @@ func AddToContainer(container *restful.Container, informers informers.InformerFa
Param(ws.QueryParameter("label_filters", "label filters, concatenating multiple filters with commas, equal symbol for exact query, wave symbol for fuzzy query e.g. name~a").DataFormat("key=%s,key~%s")). Param(ws.QueryParameter("label_filters", "label filters, concatenating multiple filters with commas, equal symbol for exact query, wave symbol for fuzzy query e.g. name~a").DataFormat("key=%s,key~%s")).
Param(ws.QueryParameter("sort_field", "sort field, one of `name`, `lastEvaluation`, `evaluationTime`")). Param(ws.QueryParameter("sort_field", "sort field, one of `name`, `lastEvaluation`, `evaluationTime`")).
Param(ws.QueryParameter("sort_type", "sort type, one of `asc`, `desc`")). Param(ws.QueryParameter("sort_type", "sort type, one of `asc`, `desc`")).
Param(ws.QueryParameter("offset", "offset of the result set").DataType("integer").DefaultValue("0")). Param(ws.QueryParameter("page", "page of the result set").DataType("integer").DefaultValue("1")).
Param(ws.QueryParameter("limit", "limit size of the result set").DataType("integer").DefaultValue("10")). Param(ws.QueryParameter("limit", "limit size of the result set").DataType("integer").DefaultValue("10")).
Returns(http.StatusOK, ksapi.StatusOK, alertingv2alpha1.GettableAlertingRuleList{}). Returns(http.StatusOK, ksapi.StatusOK, alertingv2alpha1.GettableAlertingRuleList{}).
Metadata(restfulspec.KeyOpenAPITags, []string{constants.AlertingTag})) Metadata(restfulspec.KeyOpenAPITags, []string{constants.AlertingTag}))
...@@ -190,7 +190,7 @@ func AddToContainer(container *restful.Container, informers informers.InformerFa ...@@ -190,7 +190,7 @@ func AddToContainer(container *restful.Container, informers informers.InformerFa
Doc("list the alerts of the builtin(non-custom) rules"). Doc("list the alerts of the builtin(non-custom) rules").
Param(ws.QueryParameter("state", "state, one of `firing`, `pending`, `inactive`")). Param(ws.QueryParameter("state", "state, one of `firing`, `pending`, `inactive`")).
Param(ws.QueryParameter("label_filters", "label filters, concatenating multiple filters with commas, equal symbol for exact query, wave symbol for fuzzy query e.g. name~a").DataFormat("key=%s,key~%s")). Param(ws.QueryParameter("label_filters", "label filters, concatenating multiple filters with commas, equal symbol for exact query, wave symbol for fuzzy query e.g. name~a").DataFormat("key=%s,key~%s")).
Param(ws.QueryParameter("offset", "offset of the result set").DataType("integer").DefaultValue("0")). Param(ws.QueryParameter("page", "page of the result set").DataType("integer").DefaultValue("1")).
Param(ws.QueryParameter("limit", "limit size of the result set").DataType("integer").DefaultValue("10")). Param(ws.QueryParameter("limit", "limit size of the result set").DataType("integer").DefaultValue("10")).
Returns(http.StatusOK, ksapi.StatusOK, alertingv2alpha1.AlertList{}). Returns(http.StatusOK, ksapi.StatusOK, alertingv2alpha1.AlertList{}).
Metadata(restfulspec.KeyOpenAPITags, []string{constants.AlertingTag})) Metadata(restfulspec.KeyOpenAPITags, []string{constants.AlertingTag}))
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册