proxylatency

package
v1.17.5 Latest Latest
Warning

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

Go to latest
Published: Aug 26, 2024 License: Apache-2.0 Imports: 19 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ProxyLatency_Measurement_name = map[int32]string{
		0: "LAST_INCOMING_FIRST_OUTGOING",
		1: "FIRST_INCOMING_FIRST_OUTGOING",
		2: "LAST_INCOMING_LAST_OUTGOING",
		3: "FIRST_INCOMING_LAST_OUTGOING",
	}
	ProxyLatency_Measurement_value = map[string]int32{
		"LAST_INCOMING_FIRST_OUTGOING":  0,
		"FIRST_INCOMING_FIRST_OUTGOING": 1,
		"LAST_INCOMING_LAST_OUTGOING":   2,
		"FIRST_INCOMING_LAST_OUTGOING":  3,
	}
)

Enum value maps for ProxyLatency_Measurement.

View Source
var File_github_com_solo_io_gloo_projects_gloo_api_external_envoy_extensions_proxylatency_proxylatency_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type ProxyLatency

type ProxyLatency struct {

	// How to measure the request.
	// Affects the output stats.
	// Does not affect metadata.
	Request ProxyLatency_Measurement `` /* 139-byte string literal not displayed */
	// When FIRST_OUTGOING (i.e. LAST_INCOMING_FIRST_OUTGOING or FIRST_INCOMING_FIRST_OUTGOING) is
	// instead of when the first byte is sent upstream. This has the advantage of not measuring the time
	// selected for request measurment, finish measuring proxy latency when decodeHeader for this
	// it takes a connection to form, which may skew the P99.
	// filter is hit instead of when the first byte is sent upstream. This has the advantage of not
	// for this to work the filter should be inserted last, just before the router filter.
	// measuring the time it takes a connection to form, which may skew the P99. For this to work
	// this filter should be inserted last, just before the router filter. This has no effect if
	// other measurement type is selected, and has no effect on how response is measured.
	MeasureRequestInternally bool `` /* 136-byte string literal not displayed */
	// How measure the response.
	Response ProxyLatency_Measurement `` /* 141-byte string literal not displayed */
	// Charge a stat per upstream cluster. If not specified, defaults to true.
	ChargeClusterStat *wrappers.BoolValue `protobuf:"bytes,3,opt,name=charge_cluster_stat,json=chargeClusterStat,proto3" json:"charge_cluster_stat,omitempty"`
	// Charge a stat per listener. If not specified, defaults to true.
	ChargeListenerStat *wrappers.BoolValue `protobuf:"bytes,4,opt,name=charge_listener_stat,json=chargeListenerStat,proto3" json:"charge_listener_stat,omitempty"`
	// Whether request timing is emitted to dynamic metadata.
	// If enabled, defaults to true.
	EmitDynamicMetadata *wrappers.BoolValue `protobuf:"bytes,6,opt,name=emit_dynamic_metadata,json=emitDynamicMetadata,proto3" json:"emit_dynamic_metadata,omitempty"`
	// contains filtered or unexported fields
}

Configure the proxy latency filter. This filter measures the latency incurred by the filter chain in a histogram. The filter fields are similar to the settings for [`COMMON_DURATION`](https://www.envoyproxy.io/docs/envoy/latest/configuration/observability/access_log/usage.html), introduced in Envoy 1.31. The filter also emits the following additional dynamic metadata fields, which you can use to augment the existing upstream options for access logging: - request_out_internal: first_byte_processed_millis - request_out: firstUpstreamTxByteSent - response_out: firstDownstreamTxByteSent

func (*ProxyLatency) Clone added in v1.8.24

func (m *ProxyLatency) Clone() proto.Message

Clone function

func (*ProxyLatency) Descriptor deprecated

func (*ProxyLatency) Descriptor() ([]byte, []int)

Deprecated: Use ProxyLatency.ProtoReflect.Descriptor instead.

func (*ProxyLatency) Equal

func (m *ProxyLatency) Equal(that interface{}) bool

Equal function

func (*ProxyLatency) GetChargeClusterStat

func (x *ProxyLatency) GetChargeClusterStat() *wrappers.BoolValue

func (*ProxyLatency) GetChargeListenerStat

func (x *ProxyLatency) GetChargeListenerStat() *wrappers.BoolValue

func (*ProxyLatency) GetEmitDynamicMetadata added in v1.4.6

func (x *ProxyLatency) GetEmitDynamicMetadata() *wrappers.BoolValue

func (*ProxyLatency) GetMeasureRequestInternally

func (x *ProxyLatency) GetMeasureRequestInternally() bool

func (*ProxyLatency) GetRequest

func (x *ProxyLatency) GetRequest() ProxyLatency_Measurement

func (*ProxyLatency) GetResponse

func (x *ProxyLatency) GetResponse() ProxyLatency_Measurement

func (*ProxyLatency) Hash added in v1.6.0

func (m *ProxyLatency) Hash(hasher hash.Hash64) (uint64, error)

Hash function

func (*ProxyLatency) ProtoMessage

func (*ProxyLatency) ProtoMessage()

func (*ProxyLatency) ProtoReflect added in v1.6.0

func (x *ProxyLatency) ProtoReflect() protoreflect.Message

func (*ProxyLatency) Reset

func (x *ProxyLatency) Reset()

func (*ProxyLatency) String

func (x *ProxyLatency) String() string

type ProxyLatency_Measurement

type ProxyLatency_Measurement int32

How to perform the latency measurement. Given an incoming request from downstream and outging request to upstream; or incoming response from upstream and outgoing repsonse to downstream, This outlines how to measure the latency used by the proxy.

const (
	// Count from the last byte of the incoming request\response to the first byte of the outgoing request\response.
	ProxyLatency_LAST_INCOMING_FIRST_OUTGOING ProxyLatency_Measurement = 0
	// Count from the first byte of the incoming request\response to the first byte of the outgoing request\response.
	ProxyLatency_FIRST_INCOMING_FIRST_OUTGOING ProxyLatency_Measurement = 1
	// Count from the last byte of the incoming request\response to the last byte of the outgoing request\response.
	ProxyLatency_LAST_INCOMING_LAST_OUTGOING ProxyLatency_Measurement = 2
	// Count from the first byte of the incoming request\response to the last byte of the outgoing request\response.
	ProxyLatency_FIRST_INCOMING_LAST_OUTGOING ProxyLatency_Measurement = 3
)

func (ProxyLatency_Measurement) Descriptor added in v1.6.0

func (ProxyLatency_Measurement) Enum added in v1.6.0

func (ProxyLatency_Measurement) EnumDescriptor deprecated

func (ProxyLatency_Measurement) EnumDescriptor() ([]byte, []int)

Deprecated: Use ProxyLatency_Measurement.Descriptor instead.

func (ProxyLatency_Measurement) Number added in v1.6.0

func (ProxyLatency_Measurement) String

func (x ProxyLatency_Measurement) String() string

func (ProxyLatency_Measurement) Type added in v1.6.0

Jump to

Keyboard shortcuts

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