Fix rule syntax version for all internal routers
This commit is contained in:
parent
5f2c00b438
commit
d65de8fe6c
21 changed files with 60 additions and 15 deletions
2
integration/testdata/rawdata-consul.json
vendored
2
integration/testdata/rawdata-consul.json
vendored
|
@ -53,6 +53,7 @@
|
||||||
],
|
],
|
||||||
"service": "api@internal",
|
"service": "api@internal",
|
||||||
"rule": "PathPrefix(`/api`)",
|
"rule": "PathPrefix(`/api`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775806,
|
"priority": 9223372036854775806,
|
||||||
"status": "enabled",
|
"status": "enabled",
|
||||||
"using": [
|
"using": [
|
||||||
|
@ -69,6 +70,7 @@
|
||||||
],
|
],
|
||||||
"service": "dashboard@internal",
|
"service": "dashboard@internal",
|
||||||
"rule": "PathPrefix(`/`)",
|
"rule": "PathPrefix(`/`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775805,
|
"priority": 9223372036854775805,
|
||||||
"status": "enabled",
|
"status": "enabled",
|
||||||
"using": [
|
"using": [
|
||||||
|
|
2
integration/testdata/rawdata-etcd.json
vendored
2
integration/testdata/rawdata-etcd.json
vendored
|
@ -53,6 +53,7 @@
|
||||||
],
|
],
|
||||||
"service": "api@internal",
|
"service": "api@internal",
|
||||||
"rule": "PathPrefix(`/api`)",
|
"rule": "PathPrefix(`/api`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775806,
|
"priority": 9223372036854775806,
|
||||||
"status": "enabled",
|
"status": "enabled",
|
||||||
"using": [
|
"using": [
|
||||||
|
@ -69,6 +70,7 @@
|
||||||
],
|
],
|
||||||
"service": "dashboard@internal",
|
"service": "dashboard@internal",
|
||||||
"rule": "PathPrefix(`/`)",
|
"rule": "PathPrefix(`/`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775805,
|
"priority": 9223372036854775805,
|
||||||
"status": "enabled",
|
"status": "enabled",
|
||||||
"using": [
|
"using": [
|
||||||
|
|
2
integration/testdata/rawdata-gateway.json
vendored
2
integration/testdata/rawdata-gateway.json
vendored
|
@ -6,6 +6,7 @@
|
||||||
],
|
],
|
||||||
"service": "api@internal",
|
"service": "api@internal",
|
||||||
"rule": "PathPrefix(`/api`)",
|
"rule": "PathPrefix(`/api`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775806,
|
"priority": 9223372036854775806,
|
||||||
"status": "enabled",
|
"status": "enabled",
|
||||||
"using": [
|
"using": [
|
||||||
|
@ -22,6 +23,7 @@
|
||||||
],
|
],
|
||||||
"service": "dashboard@internal",
|
"service": "dashboard@internal",
|
||||||
"rule": "PathPrefix(`/`)",
|
"rule": "PathPrefix(`/`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775805,
|
"priority": 9223372036854775805,
|
||||||
"status": "enabled",
|
"status": "enabled",
|
||||||
"using": [
|
"using": [
|
||||||
|
|
|
@ -6,6 +6,7 @@
|
||||||
],
|
],
|
||||||
"service": "api@internal",
|
"service": "api@internal",
|
||||||
"rule": "PathPrefix(`/api`)",
|
"rule": "PathPrefix(`/api`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775806,
|
"priority": 9223372036854775806,
|
||||||
"status": "enabled",
|
"status": "enabled",
|
||||||
"using": [
|
"using": [
|
||||||
|
@ -22,6 +23,7 @@
|
||||||
],
|
],
|
||||||
"service": "dashboard@internal",
|
"service": "dashboard@internal",
|
||||||
"rule": "PathPrefix(`/`)",
|
"rule": "PathPrefix(`/`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775805,
|
"priority": 9223372036854775805,
|
||||||
"status": "enabled",
|
"status": "enabled",
|
||||||
"using": [
|
"using": [
|
||||||
|
|
2
integration/testdata/rawdata-ingress.json
vendored
2
integration/testdata/rawdata-ingress.json
vendored
|
@ -6,6 +6,7 @@
|
||||||
],
|
],
|
||||||
"service": "api@internal",
|
"service": "api@internal",
|
||||||
"rule": "PathPrefix(`/api`)",
|
"rule": "PathPrefix(`/api`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775806,
|
"priority": 9223372036854775806,
|
||||||
"status": "enabled",
|
"status": "enabled",
|
||||||
"using": [
|
"using": [
|
||||||
|
@ -22,6 +23,7 @@
|
||||||
],
|
],
|
||||||
"service": "dashboard@internal",
|
"service": "dashboard@internal",
|
||||||
"rule": "PathPrefix(`/`)",
|
"rule": "PathPrefix(`/`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775805,
|
"priority": 9223372036854775805,
|
||||||
"status": "enabled",
|
"status": "enabled",
|
||||||
"using": [
|
"using": [
|
||||||
|
|
|
@ -6,6 +6,7 @@
|
||||||
],
|
],
|
||||||
"service": "api@internal",
|
"service": "api@internal",
|
||||||
"rule": "PathPrefix(`/api`)",
|
"rule": "PathPrefix(`/api`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775806,
|
"priority": 9223372036854775806,
|
||||||
"status": "enabled",
|
"status": "enabled",
|
||||||
"using": [
|
"using": [
|
||||||
|
@ -22,6 +23,7 @@
|
||||||
],
|
],
|
||||||
"service": "dashboard@internal",
|
"service": "dashboard@internal",
|
||||||
"rule": "PathPrefix(`/`)",
|
"rule": "PathPrefix(`/`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775805,
|
"priority": 9223372036854775805,
|
||||||
"status": "enabled",
|
"status": "enabled",
|
||||||
"using": [
|
"using": [
|
||||||
|
|
|
@ -6,6 +6,7 @@
|
||||||
],
|
],
|
||||||
"service": "api@internal",
|
"service": "api@internal",
|
||||||
"rule": "PathPrefix(`/api`)",
|
"rule": "PathPrefix(`/api`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775806,
|
"priority": 9223372036854775806,
|
||||||
"status": "enabled",
|
"status": "enabled",
|
||||||
"using": [
|
"using": [
|
||||||
|
@ -22,6 +23,7 @@
|
||||||
],
|
],
|
||||||
"service": "dashboard@internal",
|
"service": "dashboard@internal",
|
||||||
"rule": "PathPrefix(`/`)",
|
"rule": "PathPrefix(`/`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775805,
|
"priority": 9223372036854775805,
|
||||||
"status": "enabled",
|
"status": "enabled",
|
||||||
"using": [
|
"using": [
|
||||||
|
|
2
integration/testdata/rawdata-redis.json
vendored
2
integration/testdata/rawdata-redis.json
vendored
|
@ -53,6 +53,7 @@
|
||||||
],
|
],
|
||||||
"service": "api@internal",
|
"service": "api@internal",
|
||||||
"rule": "PathPrefix(`/api`)",
|
"rule": "PathPrefix(`/api`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775806,
|
"priority": 9223372036854775806,
|
||||||
"status": "enabled",
|
"status": "enabled",
|
||||||
"using": [
|
"using": [
|
||||||
|
@ -69,6 +70,7 @@
|
||||||
],
|
],
|
||||||
"service": "dashboard@internal",
|
"service": "dashboard@internal",
|
||||||
"rule": "PathPrefix(`/`)",
|
"rule": "PathPrefix(`/`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775805,
|
"priority": 9223372036854775805,
|
||||||
"status": "enabled",
|
"status": "enabled",
|
||||||
"using": [
|
"using": [
|
||||||
|
|
2
integration/testdata/rawdata-zk.json
vendored
2
integration/testdata/rawdata-zk.json
vendored
|
@ -53,6 +53,7 @@
|
||||||
],
|
],
|
||||||
"service": "api@internal",
|
"service": "api@internal",
|
||||||
"rule": "PathPrefix(`/api`)",
|
"rule": "PathPrefix(`/api`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775806,
|
"priority": 9223372036854775806,
|
||||||
"status": "enabled",
|
"status": "enabled",
|
||||||
"using": [
|
"using": [
|
||||||
|
@ -69,6 +70,7 @@
|
||||||
],
|
],
|
||||||
"service": "dashboard@internal",
|
"service": "dashboard@internal",
|
||||||
"rule": "PathPrefix(`/`)",
|
"rule": "PathPrefix(`/`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775805,
|
"priority": 9223372036854775805,
|
||||||
"status": "enabled",
|
"status": "enabled",
|
||||||
"using": [
|
"using": [
|
||||||
|
|
|
@ -278,6 +278,7 @@ func (p *Provider) loadConfigurationFromIngresses(ctx context.Context, client Cl
|
||||||
|
|
||||||
rt := &dynamic.Router{
|
rt := &dynamic.Router{
|
||||||
Rule: "PathPrefix(`/`)",
|
Rule: "PathPrefix(`/`)",
|
||||||
|
RuleSyntax: "v3",
|
||||||
Priority: math.MinInt32,
|
Priority: math.MinInt32,
|
||||||
Service: "default-backend",
|
Service: "default-backend",
|
||||||
}
|
}
|
||||||
|
|
|
@ -529,6 +529,7 @@ func TestLoadConfigurationFromIngresses(t *testing.T) {
|
||||||
Routers: map[string]*dynamic.Router{
|
Routers: map[string]*dynamic.Router{
|
||||||
"default-router": {
|
"default-router": {
|
||||||
Rule: "PathPrefix(`/`)",
|
Rule: "PathPrefix(`/`)",
|
||||||
|
RuleSyntax: "v3",
|
||||||
Service: "default-backend",
|
Service: "default-backend",
|
||||||
Priority: math.MinInt32,
|
Priority: math.MinInt32,
|
||||||
},
|
},
|
||||||
|
@ -994,6 +995,7 @@ func TestLoadConfigurationFromIngresses(t *testing.T) {
|
||||||
Routers: map[string]*dynamic.Router{
|
Routers: map[string]*dynamic.Router{
|
||||||
"default-router": {
|
"default-router": {
|
||||||
Rule: "PathPrefix(`/`)",
|
Rule: "PathPrefix(`/`)",
|
||||||
|
RuleSyntax: "v3",
|
||||||
Service: "default-backend",
|
Service: "default-backend",
|
||||||
Priority: math.MinInt32,
|
Priority: math.MinInt32,
|
||||||
},
|
},
|
||||||
|
@ -1470,6 +1472,7 @@ func TestLoadConfigurationFromIngresses(t *testing.T) {
|
||||||
Routers: map[string]*dynamic.Router{
|
Routers: map[string]*dynamic.Router{
|
||||||
"default-router": {
|
"default-router": {
|
||||||
Rule: "PathPrefix(`/`)",
|
Rule: "PathPrefix(`/`)",
|
||||||
|
RuleSyntax: "v3",
|
||||||
Priority: math.MinInt32,
|
Priority: math.MinInt32,
|
||||||
Service: "default-backend",
|
Service: "default-backend",
|
||||||
},
|
},
|
||||||
|
|
|
@ -7,6 +7,7 @@
|
||||||
],
|
],
|
||||||
"service": "api@internal",
|
"service": "api@internal",
|
||||||
"rule": "PathPrefix(`/api`)",
|
"rule": "PathPrefix(`/api`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775806
|
"priority": 9223372036854775806
|
||||||
},
|
},
|
||||||
"dashboard": {
|
"dashboard": {
|
||||||
|
@ -19,6 +20,7 @@
|
||||||
],
|
],
|
||||||
"service": "dashboard@internal",
|
"service": "dashboard@internal",
|
||||||
"rule": "PathPrefix(`/`)",
|
"rule": "PathPrefix(`/`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775805
|
"priority": 9223372036854775805
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
|
@ -7,6 +7,7 @@
|
||||||
],
|
],
|
||||||
"service": "api@internal",
|
"service": "api@internal",
|
||||||
"rule": "PathPrefix(`/api`)",
|
"rule": "PathPrefix(`/api`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775806
|
"priority": 9223372036854775806
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
|
@ -7,6 +7,7 @@
|
||||||
],
|
],
|
||||||
"service": "api@internal",
|
"service": "api@internal",
|
||||||
"rule": "PathPrefix(`/api`)",
|
"rule": "PathPrefix(`/api`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775806
|
"priority": 9223372036854775806
|
||||||
},
|
},
|
||||||
"dashboard": {
|
"dashboard": {
|
||||||
|
@ -19,6 +20,7 @@
|
||||||
],
|
],
|
||||||
"service": "dashboard@internal",
|
"service": "dashboard@internal",
|
||||||
"rule": "PathPrefix(`/`)",
|
"rule": "PathPrefix(`/`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775805
|
"priority": 9223372036854775805
|
||||||
},
|
},
|
||||||
"debug": {
|
"debug": {
|
||||||
|
@ -27,6 +29,7 @@
|
||||||
],
|
],
|
||||||
"service": "api@internal",
|
"service": "api@internal",
|
||||||
"rule": "PathPrefix(`/debug`)",
|
"rule": "PathPrefix(`/debug`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775806
|
"priority": 9223372036854775806
|
||||||
},
|
},
|
||||||
"ping": {
|
"ping": {
|
||||||
|
@ -35,6 +38,7 @@
|
||||||
],
|
],
|
||||||
"service": "ping@internal",
|
"service": "ping@internal",
|
||||||
"rule": "PathPrefix(`/ping`)",
|
"rule": "PathPrefix(`/ping`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775807
|
"priority": 9223372036854775807
|
||||||
},
|
},
|
||||||
"prometheus": {
|
"prometheus": {
|
||||||
|
@ -43,6 +47,7 @@
|
||||||
],
|
],
|
||||||
"service": "prometheus@internal",
|
"service": "prometheus@internal",
|
||||||
"rule": "PathPrefix(`/metrics`)",
|
"rule": "PathPrefix(`/metrics`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775807
|
"priority": 9223372036854775807
|
||||||
},
|
},
|
||||||
"rest": {
|
"rest": {
|
||||||
|
@ -51,6 +56,7 @@
|
||||||
],
|
],
|
||||||
"service": "rest@internal",
|
"service": "rest@internal",
|
||||||
"rule": "PathPrefix(`/api/providers`)",
|
"rule": "PathPrefix(`/api/providers`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775807
|
"priority": 9223372036854775807
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
|
@ -7,6 +7,7 @@
|
||||||
],
|
],
|
||||||
"service": "ping@internal",
|
"service": "ping@internal",
|
||||||
"rule": "PathPrefix(`/ping`)",
|
"rule": "PathPrefix(`/ping`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775807
|
"priority": 9223372036854775807
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
|
@ -7,6 +7,7 @@
|
||||||
],
|
],
|
||||||
"service": "prometheus@internal",
|
"service": "prometheus@internal",
|
||||||
"rule": "PathPrefix(`/metrics`)",
|
"rule": "PathPrefix(`/metrics`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775807
|
"priority": 9223372036854775807
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
|
@ -9,7 +9,8 @@
|
||||||
"redirect-web-to-websecure"
|
"redirect-web-to-websecure"
|
||||||
],
|
],
|
||||||
"service": "noop@internal",
|
"service": "noop@internal",
|
||||||
"rule": "HostRegexp(`^.+$`)"
|
"rule": "HostRegexp(`^.+$`)",
|
||||||
|
"ruleSyntax": "v3"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"services": {
|
"services": {
|
||||||
|
|
|
@ -9,7 +9,8 @@
|
||||||
"redirect-web-to-443"
|
"redirect-web-to-443"
|
||||||
],
|
],
|
||||||
"service": "noop@internal",
|
"service": "noop@internal",
|
||||||
"rule": "HostRegexp(`^.+$`)"
|
"rule": "HostRegexp(`^.+$`)",
|
||||||
|
"ruleSyntax": "v3"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"services": {
|
"services": {
|
||||||
|
|
|
@ -9,7 +9,8 @@
|
||||||
"redirect-web-to-websecure"
|
"redirect-web-to-websecure"
|
||||||
],
|
],
|
||||||
"service": "noop@internal",
|
"service": "noop@internal",
|
||||||
"rule": "HostRegexp(`^.+$`)"
|
"rule": "HostRegexp(`^.+$`)",
|
||||||
|
"ruleSyntax": "v3"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"services": {
|
"services": {
|
||||||
|
|
|
@ -7,6 +7,7 @@
|
||||||
],
|
],
|
||||||
"service": "rest@internal",
|
"service": "rest@internal",
|
||||||
"rule": "PathPrefix(`/api/providers`)",
|
"rule": "PathPrefix(`/api/providers`)",
|
||||||
|
"ruleSyntax": "v3",
|
||||||
"priority": 9223372036854775807
|
"priority": 9223372036854775807
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
|
@ -106,6 +106,7 @@ func (i *Provider) acme(cfg *dynamic.Configuration) {
|
||||||
if len(eps) > 0 {
|
if len(eps) > 0 {
|
||||||
rt := &dynamic.Router{
|
rt := &dynamic.Router{
|
||||||
Rule: "PathPrefix(`/.well-known/acme-challenge/`)",
|
Rule: "PathPrefix(`/.well-known/acme-challenge/`)",
|
||||||
|
RuleSyntax: "v3",
|
||||||
EntryPoints: eps,
|
EntryPoints: eps,
|
||||||
Service: "acme-http@internal",
|
Service: "acme-http@internal",
|
||||||
Priority: math.MaxInt,
|
Priority: math.MaxInt,
|
||||||
|
@ -141,6 +142,7 @@ func (i *Provider) redirection(ctx context.Context, cfg *dynamic.Configuration)
|
||||||
|
|
||||||
rt := &dynamic.Router{
|
rt := &dynamic.Router{
|
||||||
Rule: "HostRegexp(`^.+$`)",
|
Rule: "HostRegexp(`^.+$`)",
|
||||||
|
RuleSyntax: "v3",
|
||||||
EntryPoints: []string{name},
|
EntryPoints: []string{name},
|
||||||
Middlewares: []string{mdName},
|
Middlewares: []string{mdName},
|
||||||
Service: "noop@internal",
|
Service: "noop@internal",
|
||||||
|
@ -241,6 +243,7 @@ func (i *Provider) apiConfiguration(cfg *dynamic.Configuration) {
|
||||||
Service: "api@internal",
|
Service: "api@internal",
|
||||||
Priority: math.MaxInt - 1,
|
Priority: math.MaxInt - 1,
|
||||||
Rule: "PathPrefix(`/api`)",
|
Rule: "PathPrefix(`/api`)",
|
||||||
|
RuleSyntax: "v3",
|
||||||
}
|
}
|
||||||
|
|
||||||
if i.staticCfg.API.Dashboard {
|
if i.staticCfg.API.Dashboard {
|
||||||
|
@ -249,6 +252,7 @@ func (i *Provider) apiConfiguration(cfg *dynamic.Configuration) {
|
||||||
Service: "dashboard@internal",
|
Service: "dashboard@internal",
|
||||||
Priority: math.MaxInt - 2,
|
Priority: math.MaxInt - 2,
|
||||||
Rule: "PathPrefix(`/`)",
|
Rule: "PathPrefix(`/`)",
|
||||||
|
RuleSyntax: "v3",
|
||||||
Middlewares: []string{"dashboard_redirect@internal", "dashboard_stripprefix@internal"},
|
Middlewares: []string{"dashboard_redirect@internal", "dashboard_stripprefix@internal"},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -270,6 +274,7 @@ func (i *Provider) apiConfiguration(cfg *dynamic.Configuration) {
|
||||||
Service: "api@internal",
|
Service: "api@internal",
|
||||||
Priority: math.MaxInt - 1,
|
Priority: math.MaxInt - 1,
|
||||||
Rule: "PathPrefix(`/debug`)",
|
Rule: "PathPrefix(`/debug`)",
|
||||||
|
RuleSyntax: "v3",
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -292,6 +297,7 @@ func (i *Provider) pingConfiguration(cfg *dynamic.Configuration) {
|
||||||
Service: "ping@internal",
|
Service: "ping@internal",
|
||||||
Priority: math.MaxInt,
|
Priority: math.MaxInt,
|
||||||
Rule: "PathPrefix(`/ping`)",
|
Rule: "PathPrefix(`/ping`)",
|
||||||
|
RuleSyntax: "v3",
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -309,6 +315,7 @@ func (i *Provider) restConfiguration(cfg *dynamic.Configuration) {
|
||||||
Service: "rest@internal",
|
Service: "rest@internal",
|
||||||
Priority: math.MaxInt,
|
Priority: math.MaxInt,
|
||||||
Rule: "PathPrefix(`/api/providers`)",
|
Rule: "PathPrefix(`/api/providers`)",
|
||||||
|
RuleSyntax: "v3",
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -326,6 +333,7 @@ func (i *Provider) prometheusConfiguration(cfg *dynamic.Configuration) {
|
||||||
Service: "prometheus@internal",
|
Service: "prometheus@internal",
|
||||||
Priority: math.MaxInt,
|
Priority: math.MaxInt,
|
||||||
Rule: "PathPrefix(`/metrics`)",
|
Rule: "PathPrefix(`/metrics`)",
|
||||||
|
RuleSyntax: "v3",
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue