handler

package
v0.4.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 19, 2019 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ActivationHandler

type ActivationHandler struct {
	Activator activator.Activator
	Logger    *zap.SugaredLogger
	Transport http.RoundTripper
	Reporter  activator.StatsReporter
	Throttler *activator.Throttler
}

ActivationHandler will wait for an active endpoint for a revision to be available before proxing the request

func (*ActivationHandler) ServeHTTP

func (a *ActivationHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)

type ConcurrencyReporter added in v0.4.0

type ConcurrencyReporter struct {
	// contains filtered or unexported fields
}

ConcurrencyReporter reports stats based on incoming requests and ticks.

func NewConcurrencyReporter

func NewConcurrencyReporter(podName string, reqChan chan ReqEvent, reportChan <-chan time.Time, statChan chan *autoscaler.StatMessage) *ConcurrencyReporter

NewConcurrencyReporter creates a ConcurrencyReporter which listens to incoming ReqEvents on reqChan and ticks on reportChan and reports stats on statChan.

func NewConcurrencyReporterWithClock added in v0.4.0

func NewConcurrencyReporterWithClock(podName string, reqChan chan ReqEvent, reportChan <-chan time.Time, statChan chan *autoscaler.StatMessage, clock system.Clock) *ConcurrencyReporter

NewConcurrencyReporterWithClock instantiates a new concurrency reporter which uses the passed clock.

func (*ConcurrencyReporter) Run added in v0.4.0

func (cr *ConcurrencyReporter) Run(stopCh <-chan struct{})

Run runs until stopCh is closed and processes events on all incoming channels

type EnforceMaxContentLengthHandler

type EnforceMaxContentLengthHandler struct {
	NextHandler           http.Handler
	MaxContentLengthBytes int64
}

EnforceMaxContentLengthHandler prevents uploads larger than `MaxContentLengthBytes`

func (*EnforceMaxContentLengthHandler) ServeHTTP

type FilteringHandler

type FilteringHandler struct {
	NextHandler http.Handler
}

FilteringHandler will filter requests sent by the activator itself.

func (*FilteringHandler) ServeHTTP

func (h *FilteringHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)

type ProbeHandler added in v0.4.0

type ProbeHandler struct {
	NextHandler http.Handler
}

ProbeHandler handles responding to Knative internal network probes.

func (*ProbeHandler) ServeHTTP added in v0.4.0

func (h *ProbeHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)

type ReqEvent

type ReqEvent struct {
	Key       string
	EventType ReqEventType
}

ReqEvent represents an incoming/finished request with a given key

type ReqEventType

type ReqEventType int

ReqEventType specifies the type of event (In/Out)

const (
	// ReqIn represents an incoming request
	ReqIn ReqEventType = iota
	// ReqOut represents a finished request
	ReqOut
)

type RequestEventHandler

type RequestEventHandler struct {
	ReqChan chan ReqEvent
	// contains filtered or unexported fields
}

RequestEventHandler sends events to the given channel.

func NewRequestEventHandler

func NewRequestEventHandler(reqChan chan ReqEvent, next http.Handler) *RequestEventHandler

NewRequestEventHandler creates a handler that sends events about incoming/closed http connections to the given channel.

func (*RequestEventHandler) ServeHTTP

func (h *RequestEventHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL