file_system_bufferv3

package
v1.34.0-20240426201503... Latest Latest
Warning

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

Go to latest
Published: unknown License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var File_envoy_extensions_filters_http_file_system_buffer_v3_file_system_buffer_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type BufferBehavior

type BufferBehavior struct {

	// Types that are assignable to Behavior:
	//
	//	*BufferBehavior_StreamWhenPossible_
	//	*BufferBehavior_Bypass_
	//	*BufferBehavior_InjectContentLengthIfNecessary_
	//	*BufferBehavior_FullyBufferAndAlwaysInjectContentLength_
	//	*BufferBehavior_FullyBuffer_
	Behavior isBufferBehavior_Behavior `protobuf_oneof:"behavior"`
	// contains filtered or unexported fields
}

The behavior of the filter for a stream. [#next-free-field: 6]

func (*BufferBehavior) Descriptor deprecated

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

Deprecated: Use BufferBehavior.ProtoReflect.Descriptor instead.

func (*BufferBehavior) GetBehavior

func (m *BufferBehavior) GetBehavior() isBufferBehavior_Behavior

func (*BufferBehavior) GetBypass

func (x *BufferBehavior) GetBypass() *BufferBehavior_Bypass

func (*BufferBehavior) GetFullyBuffer

func (x *BufferBehavior) GetFullyBuffer() *BufferBehavior_FullyBuffer

func (*BufferBehavior) GetFullyBufferAndAlwaysInjectContentLength

func (x *BufferBehavior) GetFullyBufferAndAlwaysInjectContentLength() *BufferBehavior_FullyBufferAndAlwaysInjectContentLength

func (*BufferBehavior) GetInjectContentLengthIfNecessary

func (x *BufferBehavior) GetInjectContentLengthIfNecessary() *BufferBehavior_InjectContentLengthIfNecessary

func (*BufferBehavior) GetStreamWhenPossible

func (x *BufferBehavior) GetStreamWhenPossible() *BufferBehavior_StreamWhenPossible

func (*BufferBehavior) ProtoMessage

func (*BufferBehavior) ProtoMessage()

func (*BufferBehavior) ProtoReflect

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

func (*BufferBehavior) Reset

func (x *BufferBehavior) Reset()

func (*BufferBehavior) String

func (x *BufferBehavior) String() string

type BufferBehavior_Bypass

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

func (*BufferBehavior_Bypass) Descriptor deprecated

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

Deprecated: Use BufferBehavior_Bypass.ProtoReflect.Descriptor instead.

func (*BufferBehavior_Bypass) ProtoMessage

func (*BufferBehavior_Bypass) ProtoMessage()

func (*BufferBehavior_Bypass) ProtoReflect

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

func (*BufferBehavior_Bypass) Reset

func (x *BufferBehavior_Bypass) Reset()

func (*BufferBehavior_Bypass) String

func (x *BufferBehavior_Bypass) String() string

type BufferBehavior_Bypass_

type BufferBehavior_Bypass_ struct {
	// Never buffer, do nothing.
	Bypass *BufferBehavior_Bypass `protobuf:"bytes,2,opt,name=bypass,proto3,oneof"`
}

type BufferBehavior_FullyBuffer

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

func (*BufferBehavior_FullyBuffer) Descriptor deprecated

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

Deprecated: Use BufferBehavior_FullyBuffer.ProtoReflect.Descriptor instead.

func (*BufferBehavior_FullyBuffer) ProtoMessage

func (*BufferBehavior_FullyBuffer) ProtoMessage()

func (*BufferBehavior_FullyBuffer) ProtoReflect

func (*BufferBehavior_FullyBuffer) Reset

func (x *BufferBehavior_FullyBuffer) Reset()

func (*BufferBehavior_FullyBuffer) String

func (x *BufferBehavior_FullyBuffer) String() string

type BufferBehavior_FullyBufferAndAlwaysInjectContentLength

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

func (*BufferBehavior_FullyBufferAndAlwaysInjectContentLength) Descriptor deprecated

Deprecated: Use BufferBehavior_FullyBufferAndAlwaysInjectContentLength.ProtoReflect.Descriptor instead.

func (*BufferBehavior_FullyBufferAndAlwaysInjectContentLength) ProtoMessage

func (*BufferBehavior_FullyBufferAndAlwaysInjectContentLength) ProtoReflect

func (*BufferBehavior_FullyBufferAndAlwaysInjectContentLength) Reset

func (*BufferBehavior_FullyBufferAndAlwaysInjectContentLength) String

type BufferBehavior_FullyBufferAndAlwaysInjectContentLength_

type BufferBehavior_FullyBufferAndAlwaysInjectContentLength_ struct {
	// Always buffer the entire input, and inject “content-length“,
	// overwriting any provided content-length header.
	FullyBufferAndAlwaysInjectContentLength *BufferBehavior_FullyBufferAndAlwaysInjectContentLength `` /* 131-byte string literal not displayed */
}

type BufferBehavior_FullyBuffer_

type BufferBehavior_FullyBuffer_ struct {
	// Always buffer the entire input, do not modify “content-length“.
	FullyBuffer *BufferBehavior_FullyBuffer `protobuf:"bytes,5,opt,name=fully_buffer,json=fullyBuffer,proto3,oneof"`
}

type BufferBehavior_InjectContentLengthIfNecessary

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

func (*BufferBehavior_InjectContentLengthIfNecessary) Descriptor deprecated

Deprecated: Use BufferBehavior_InjectContentLengthIfNecessary.ProtoReflect.Descriptor instead.

func (*BufferBehavior_InjectContentLengthIfNecessary) ProtoMessage

func (*BufferBehavior_InjectContentLengthIfNecessary) ProtoReflect

func (*BufferBehavior_InjectContentLengthIfNecessary) Reset

func (*BufferBehavior_InjectContentLengthIfNecessary) String

type BufferBehavior_InjectContentLengthIfNecessary_

type BufferBehavior_InjectContentLengthIfNecessary_ struct {
	// If “content-length“ is not present, buffer the entire input,
	// inject “content-length“ header, then output.
	// If “content-length“ is already present, act like “stream_when_possible“.
	InjectContentLengthIfNecessary *BufferBehavior_InjectContentLengthIfNecessary `protobuf:"bytes,3,opt,name=inject_content_length_if_necessary,json=injectContentLengthIfNecessary,proto3,oneof"`
}

type BufferBehavior_StreamWhenPossible

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

func (*BufferBehavior_StreamWhenPossible) Descriptor deprecated

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

Deprecated: Use BufferBehavior_StreamWhenPossible.ProtoReflect.Descriptor instead.

func (*BufferBehavior_StreamWhenPossible) ProtoMessage

func (*BufferBehavior_StreamWhenPossible) ProtoMessage()

func (*BufferBehavior_StreamWhenPossible) ProtoReflect

func (*BufferBehavior_StreamWhenPossible) Reset

func (*BufferBehavior_StreamWhenPossible) String

type BufferBehavior_StreamWhenPossible_

type BufferBehavior_StreamWhenPossible_ struct {
	// Don't inject “content-length“ header.
	// Output immediately, buffer only if output is slower than input.
	StreamWhenPossible *BufferBehavior_StreamWhenPossible `protobuf:"bytes,1,opt,name=stream_when_possible,json=streamWhenPossible,proto3,oneof"`
}

type FileSystemBufferFilterConfig

type FileSystemBufferFilterConfig struct {

	// A configuration for an AsyncFileManager.
	//
	// If unset in route, vhost and listener, and the behavior is not “bypass“
	// in both directions, an Internal Server Error response will be sent.
	ManagerConfig *v3.AsyncFileManagerConfig `protobuf:"bytes,1,opt,name=manager_config,json=managerConfig,proto3" json:"manager_config,omitempty"`
	// An optional path to which the unlinked files should be written - this may
	// determine which physical storage device will be used.
	//
	// If unset in route, vhost and listener, will use the environment variable
	// “TMPDIR“, or, if that's also unset, will use “/tmp“.
	StorageBufferPath *wrapperspb.StringValue `protobuf:"bytes,2,opt,name=storage_buffer_path,json=storageBufferPath,proto3" json:"storage_buffer_path,omitempty"`
	// Optional configuration for how to buffer (or not) requests.
	// If unset in route, vhost and listener, “StreamConfig“ default values will be used
	// (with behavior “stream_when_possible“)
	Request *StreamConfig `protobuf:"bytes,3,opt,name=request,proto3" json:"request,omitempty"`
	// Optional configuration for how to buffer (or not) responses.
	// If unset in route, vhost and listener, “StreamConfig“ default values will be used
	// (with behavior “stream_when_possible“)
	Response *StreamConfig `protobuf:"bytes,4,opt,name=response,proto3" json:"response,omitempty"`
	// contains filtered or unexported fields
}

A :ref:`file system buffer <config_http_filters_file_system_buffer>` filter configuration.

Route-specific configs override only the fields they explicitly include; unset fields inherit from the vhost or listener-level config, or, if never set, and not required, use a default value.

func (*FileSystemBufferFilterConfig) Descriptor deprecated

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

Deprecated: Use FileSystemBufferFilterConfig.ProtoReflect.Descriptor instead.

func (*FileSystemBufferFilterConfig) GetManagerConfig

func (*FileSystemBufferFilterConfig) GetRequest

func (x *FileSystemBufferFilterConfig) GetRequest() *StreamConfig

func (*FileSystemBufferFilterConfig) GetResponse

func (x *FileSystemBufferFilterConfig) GetResponse() *StreamConfig

func (*FileSystemBufferFilterConfig) GetStorageBufferPath

func (x *FileSystemBufferFilterConfig) GetStorageBufferPath() *wrapperspb.StringValue

func (*FileSystemBufferFilterConfig) ProtoMessage

func (*FileSystemBufferFilterConfig) ProtoMessage()

func (*FileSystemBufferFilterConfig) ProtoReflect

func (*FileSystemBufferFilterConfig) Reset

func (x *FileSystemBufferFilterConfig) Reset()

func (*FileSystemBufferFilterConfig) String

type StreamConfig

type StreamConfig struct {

	// Whether to bypass / stream / fully buffer / etc.
	// If unset in route, vhost and listener config, the default is “stream_when_possible“.
	Behavior *BufferBehavior `protobuf:"bytes,1,opt,name=behavior,proto3" json:"behavior,omitempty"`
	// The amount stored in the memory buffer before buffering to disk.
	// If unset in route, vhost and listener config, defaults to a hardcoded value of 1MiB
	MemoryBufferBytesLimit *wrapperspb.UInt64Value `` /* 131-byte string literal not displayed */
	// The maximum storage (excluding memory) to be buffered in this filter.
	// If unset in route, vhost and listener config, defaults to a hardcoded value of 32MiB
	StorageBufferBytesLimit *wrapperspb.UInt64Value `` /* 134-byte string literal not displayed */
	// The maximum amount that can be queued for writing to storage, above which the
	// source is requested to pause. If unset, defaults to the same value as
	// “memory_buffer_bytes_limit“.
	//
	// For example, assuming the recipient is not consuming data at all, if
	// “memory_buffer_bytes_limit“ was 32MiB, and “storage_buffer_queue_high_watermark_bytes“
	// was 64MiB, and the filesystem is backed up so writes are not occurring promptly,
	// then:
	//
	//   - Any request less than 32MiB will eventually pass through without ever attempting
	//     to write to disk.
	//   - Any request with over 32MiB buffered will start trying to write to disk.
	//     If it reaches (32+64)MiB buffered in memory (write to disk isn't keeping up), a high
	//     watermark signal is sent to the source.
	//   - Any stream whose total size exceeds
	//     “memory_buffer_bytes_limit + storage_buffer_bytes_limit“ will provoke an error.
	//     (Note, if the recipient *is* consuming data then it is possible for such an
	//     oversized request to pass through the buffer filter, provided the recipient
	//     isn't consuming data too slowly.)
	//
	// The low watermark signal is sent when the memory buffer is at size
	// “memory_buffer_bytes_limit + (storage_buffer_queue_high_watermark_bytes / 2)“.
	StorageBufferQueueHighWatermarkBytes *wrapperspb.UInt64Value `` /* 177-byte string literal not displayed */
	// contains filtered or unexported fields
}

The configuration for one direction of the filter behavior.

func (*StreamConfig) Descriptor deprecated

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

Deprecated: Use StreamConfig.ProtoReflect.Descriptor instead.

func (*StreamConfig) GetBehavior

func (x *StreamConfig) GetBehavior() *BufferBehavior

func (*StreamConfig) GetMemoryBufferBytesLimit

func (x *StreamConfig) GetMemoryBufferBytesLimit() *wrapperspb.UInt64Value

func (*StreamConfig) GetStorageBufferBytesLimit

func (x *StreamConfig) GetStorageBufferBytesLimit() *wrapperspb.UInt64Value

func (*StreamConfig) GetStorageBufferQueueHighWatermarkBytes

func (x *StreamConfig) GetStorageBufferQueueHighWatermarkBytes() *wrapperspb.UInt64Value

func (*StreamConfig) ProtoMessage

func (*StreamConfig) ProtoMessage()

func (*StreamConfig) ProtoReflect

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

func (*StreamConfig) Reset

func (x *StreamConfig) Reset()

func (*StreamConfig) String

func (x *StreamConfig) String() string

Jump to

Keyboard shortcuts

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