mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-22 19:31:44 +00:00
Merge pull request #110516 from MikeSpreitzer/bundle-metrics-registration
Bundle metrics registration into test server creation
This commit is contained in:
commit
9f0be547cd
@ -29,9 +29,11 @@ import (
|
|||||||
"k8s.io/apiserver/pkg/authentication/user"
|
"k8s.io/apiserver/pkg/authentication/user"
|
||||||
apifilters "k8s.io/apiserver/pkg/endpoints/filters"
|
apifilters "k8s.io/apiserver/pkg/endpoints/filters"
|
||||||
apirequest "k8s.io/apiserver/pkg/endpoints/request"
|
apirequest "k8s.io/apiserver/pkg/endpoints/request"
|
||||||
|
fcmetrics "k8s.io/apiserver/pkg/util/flowcontrol/metrics"
|
||||||
)
|
)
|
||||||
|
|
||||||
func createMaxInflightServer(callsWg, blockWg *sync.WaitGroup, disableCallsWg *bool, disableCallsWgMutex *sync.Mutex, nonMutating, mutating int) *httptest.Server {
|
func createMaxInflightServer(callsWg, blockWg *sync.WaitGroup, disableCallsWg *bool, disableCallsWgMutex *sync.Mutex, nonMutating, mutating int) *httptest.Server {
|
||||||
|
fcmetrics.Register()
|
||||||
longRunningRequestCheck := BasicLongRunningRequestCheck(sets.NewString("watch"), sets.NewString("proxy"))
|
longRunningRequestCheck := BasicLongRunningRequestCheck(sets.NewString("watch"), sets.NewString("proxy"))
|
||||||
|
|
||||||
requestInfoFactory := &apirequest.RequestInfoFactory{APIPrefixes: sets.NewString("apis", "api"), GrouplessAPIPrefixes: sets.NewString("api")}
|
requestInfoFactory := &apirequest.RequestInfoFactory{APIPrefixes: sets.NewString("apis", "api"), GrouplessAPIPrefixes: sets.NewString("api")}
|
||||||
|
@ -158,6 +158,8 @@ func newApfServerWithHooks(t *testing.T, decision mockDecision, onExecute, postE
|
|||||||
}
|
}
|
||||||
|
|
||||||
func newApfServerWithFilter(t *testing.T, flowControlFilter utilflowcontrol.Interface, onExecute, postExecute func()) *httptest.Server {
|
func newApfServerWithFilter(t *testing.T, flowControlFilter utilflowcontrol.Interface, onExecute, postExecute func()) *httptest.Server {
|
||||||
|
epmetrics.Register()
|
||||||
|
fcmetrics.Register()
|
||||||
apfServer := httptest.NewServer(newApfHandlerWithFilter(t, flowControlFilter, onExecute, postExecute))
|
apfServer := httptest.NewServer(newApfHandlerWithFilter(t, flowControlFilter, onExecute, postExecute))
|
||||||
return apfServer
|
return apfServer
|
||||||
}
|
}
|
||||||
@ -185,8 +187,6 @@ func newApfHandlerWithFilter(t *testing.T, flowControlFilter utilflowcontrol.Int
|
|||||||
}
|
}
|
||||||
|
|
||||||
func TestApfSkipLongRunningRequest(t *testing.T) {
|
func TestApfSkipLongRunningRequest(t *testing.T) {
|
||||||
epmetrics.Register()
|
|
||||||
|
|
||||||
server := newApfServerWithSingleRequest(t, decisionSkipFilter)
|
server := newApfServerWithSingleRequest(t, decisionSkipFilter)
|
||||||
defer server.Close()
|
defer server.Close()
|
||||||
|
|
||||||
@ -202,8 +202,6 @@ func TestApfSkipLongRunningRequest(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func TestApfRejectRequest(t *testing.T) {
|
func TestApfRejectRequest(t *testing.T) {
|
||||||
epmetrics.Register()
|
|
||||||
|
|
||||||
server := newApfServerWithSingleRequest(t, decisionReject)
|
server := newApfServerWithSingleRequest(t, decisionReject)
|
||||||
defer server.Close()
|
defer server.Close()
|
||||||
|
|
||||||
@ -355,8 +353,6 @@ func TestApfExecuteMultipleRequests(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func TestApfCancelWaitRequest(t *testing.T) {
|
func TestApfCancelWaitRequest(t *testing.T) {
|
||||||
epmetrics.Register()
|
|
||||||
|
|
||||||
server := newApfServerWithSingleRequest(t, decisionCancelWait)
|
server := newApfServerWithSingleRequest(t, decisionCancelWait)
|
||||||
defer server.Close()
|
defer server.Close()
|
||||||
|
|
||||||
@ -536,6 +532,9 @@ func TestApfRejectWatchRequestsWithInitializationSignal(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func TestApfWatchPanic(t *testing.T) {
|
func TestApfWatchPanic(t *testing.T) {
|
||||||
|
epmetrics.Register()
|
||||||
|
fcmetrics.Register()
|
||||||
|
|
||||||
fakeFilter := newFakeWatchApfFilter(1)
|
fakeFilter := newFakeWatchApfFilter(1)
|
||||||
|
|
||||||
onExecuteFunc := func() {
|
onExecuteFunc := func() {
|
||||||
@ -561,6 +560,8 @@ func TestApfWatchPanic(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func TestApfWatchHandlePanic(t *testing.T) {
|
func TestApfWatchHandlePanic(t *testing.T) {
|
||||||
|
epmetrics.Register()
|
||||||
|
fcmetrics.Register()
|
||||||
preExecutePanicingFilter := newFakeWatchApfFilter(1)
|
preExecutePanicingFilter := newFakeWatchApfFilter(1)
|
||||||
preExecutePanicingFilter.preExecutePanic = true
|
preExecutePanicingFilter.preExecutePanic = true
|
||||||
|
|
||||||
@ -614,6 +615,8 @@ func TestApfWatchHandlePanic(t *testing.T) {
|
|||||||
// Even though in production we are not using httptest.Server, this logic is shared
|
// Even though in production we are not using httptest.Server, this logic is shared
|
||||||
// across these two.
|
// across these two.
|
||||||
func TestContextClosesOnRequestProcessed(t *testing.T) {
|
func TestContextClosesOnRequestProcessed(t *testing.T) {
|
||||||
|
epmetrics.Register()
|
||||||
|
fcmetrics.Register()
|
||||||
wg := sync.WaitGroup{}
|
wg := sync.WaitGroup{}
|
||||||
wg.Add(1)
|
wg.Add(1)
|
||||||
handler := func(w http.ResponseWriter, r *http.Request) {
|
handler := func(w http.ResponseWriter, r *http.Request) {
|
||||||
@ -652,6 +655,8 @@ func (f *fakeFilterRequestDigest) Handle(ctx context.Context,
|
|||||||
}
|
}
|
||||||
|
|
||||||
func TestApfWithRequestDigest(t *testing.T) {
|
func TestApfWithRequestDigest(t *testing.T) {
|
||||||
|
epmetrics.Register()
|
||||||
|
fcmetrics.Register()
|
||||||
longRunningFunc := func(_ *http.Request, _ *apirequest.RequestInfo) bool { return false }
|
longRunningFunc := func(_ *http.Request, _ *apirequest.RequestInfo) bool { return false }
|
||||||
fakeFilter := &fakeFilterRequestDigest{}
|
fakeFilter := &fakeFilterRequestDigest{}
|
||||||
|
|
||||||
@ -690,6 +695,7 @@ func TestApfWithRequestDigest(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func TestPriorityAndFairnessWithPanicRecoveryAndTimeoutFilter(t *testing.T) {
|
func TestPriorityAndFairnessWithPanicRecoveryAndTimeoutFilter(t *testing.T) {
|
||||||
|
epmetrics.Register()
|
||||||
fcmetrics.Register()
|
fcmetrics.Register()
|
||||||
|
|
||||||
t.Run("priority level concurrency is set to 1, request handler panics, next request should not be rejected", func(t *testing.T) {
|
t.Run("priority level concurrency is set to 1, request handler panics, next request should not be rejected", func(t *testing.T) {
|
||||||
|
Loading…
Reference in New Issue
Block a user