check / check (push) Successful in 3m32s
Each client address may make 60 requests to /metrics a minute, through the same httprate middleware and TRUSTED_PROXIES resolution the report route uses, with an allowance of its own. The limit runs before the basic auth, so past it the answer is 429 and the password is not checked. backend/README.md says so; a test uses up one client's allowance on wrong passwords, gets 429 with the right one, and checks that another client behind the same nginx still gets in. Model: opus-5-5
24 lines
650 B
Go
24 lines
650 B
Go
package server
|
|
|
|
import "github.com/go-chi/chi/v5"
|
|
|
|
// Router exposes the router to the external tests, which add routes
|
|
// of their own to it after SetupRoutes.
|
|
func (s *Server) Router() *chi.Mux {
|
|
return s.router
|
|
}
|
|
|
|
// MaxRequestBodyBytes exposes the router-wide body limit to the
|
|
// external tests.
|
|
const MaxRequestBodyBytes = maxRequestBodyBytes
|
|
|
|
// MetricsRequestsPerMinute exposes the /metrics rate limit to the
|
|
// external tests.
|
|
const MetricsRequestsPerMinute = metricsRequestsPerMinute
|
|
|
|
// ListenAddr exposes the address the server listens on to the
|
|
// external tests.
|
|
func (s *Server) ListenAddr() string {
|
|
return s.newHTTPServer().Addr
|
|
}
|