grpc_statsv3

package
v1.33.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: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var File_envoy_extensions_filters_http_grpc_stats_v3_config_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type FilterConfig

type FilterConfig struct {

	// If true, the filter maintains a filter state object with the request and response message
	// counts.
	EmitFilterState bool `protobuf:"varint,1,opt,name=emit_filter_state,json=emitFilterState,proto3" json:"emit_filter_state,omitempty"`
	// Types that are assignable to PerMethodStatSpecifier:
	//
	//	*FilterConfig_IndividualMethodStatsAllowlist
	//	*FilterConfig_StatsForAllMethods
	PerMethodStatSpecifier isFilterConfig_PerMethodStatSpecifier `protobuf_oneof:"per_method_stat_specifier"`
	// If true, the filter will gather a histogram for the request time of the upstream.
	// It works with :ref:`stats_for_all_methods
	// <envoy_v3_api_field_extensions.filters.http.grpc_stats.v3.FilterConfig.stats_for_all_methods>`
	// and :ref:`individual_method_stats_allowlist
	// <envoy_v3_api_field_extensions.filters.http.grpc_stats.v3.FilterConfig.individual_method_stats_allowlist>` the same way
	// request_message_count and response_message_count works.
	EnableUpstreamStats bool `protobuf:"varint,4,opt,name=enable_upstream_stats,json=enableUpstreamStats,proto3" json:"enable_upstream_stats,omitempty"`
	// If true, the filter will replace dots in the grpc_service_name with underscores before emitting
	// the metrics. Only works when :ref:`stats_for_all_methods
	// <envoy_v3_api_field_extensions.filters.http.grpc_stats.v3.FilterConfig.stats_for_all_methods>`
	// is set to true. It could cause metrics to be merged if the edited service name conflicts with
	// an existing service. For example there are both service "foo.bar" & "foo_bar" running.
	// This config can fix incorrect gRPC metrics with dots because the existing stats tag extractor
	// assumes no dots in the gRPC service name. By default this is set as false.
	ReplaceDotsInGrpcServiceName bool `` /* 154-byte string literal not displayed */
	// contains filtered or unexported fields
}

gRPC statistics filter configuration [#next-free-field: 6]

func (*FilterConfig) Descriptor deprecated

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

Deprecated: Use FilterConfig.ProtoReflect.Descriptor instead.

func (*FilterConfig) GetEmitFilterState

func (x *FilterConfig) GetEmitFilterState() bool

func (*FilterConfig) GetEnableUpstreamStats

func (x *FilterConfig) GetEnableUpstreamStats() bool

func (*FilterConfig) GetIndividualMethodStatsAllowlist

func (x *FilterConfig) GetIndividualMethodStatsAllowlist() *v3.GrpcMethodList

func (*FilterConfig) GetPerMethodStatSpecifier

func (m *FilterConfig) GetPerMethodStatSpecifier() isFilterConfig_PerMethodStatSpecifier

func (*FilterConfig) GetReplaceDotsInGrpcServiceName

func (x *FilterConfig) GetReplaceDotsInGrpcServiceName() bool

func (*FilterConfig) GetStatsForAllMethods

func (x *FilterConfig) GetStatsForAllMethods() *wrapperspb.BoolValue

func (*FilterConfig) ProtoMessage

func (*FilterConfig) ProtoMessage()

func (*FilterConfig) ProtoReflect

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

func (*FilterConfig) Reset

func (x *FilterConfig) Reset()

func (*FilterConfig) String

func (x *FilterConfig) String() string

type FilterConfig_IndividualMethodStatsAllowlist

type FilterConfig_IndividualMethodStatsAllowlist struct {
	// If set, specifies an allowlist of service/methods that will have individual stats
	// emitted for them. Any call that does not match the allowlist will be counted
	// in a stat with no method specifier: “cluster.<name>.grpc.*“.
	IndividualMethodStatsAllowlist *v3.GrpcMethodList `protobuf:"bytes,2,opt,name=individual_method_stats_allowlist,json=individualMethodStatsAllowlist,proto3,oneof"`
}

type FilterConfig_StatsForAllMethods

type FilterConfig_StatsForAllMethods struct {
	// If set to true, emit stats for all service/method names.
	//
	// If set to false, emit stats for all service/message types to the same stats without including
	// the service/method in the name, with prefix “cluster.<name>.grpc“. This can be useful if
	// service/method granularity is not needed, or if each cluster only receives a single method.
	//
	// .. attention::
	//
	//	This option is only safe if all clients are trusted. If this option is enabled
	//	with untrusted clients, the clients could cause unbounded growth in the number of stats in
	//	Envoy, using unbounded memory and potentially slowing down stats pipelines.
	//
	// .. attention::
	//
	//	If neither “individual_method_stats_allowlist“ nor “stats_for_all_methods“ is set, the
	//	behavior will default to “stats_for_all_methods=false“.
	StatsForAllMethods *wrapperspb.BoolValue `protobuf:"bytes,3,opt,name=stats_for_all_methods,json=statsForAllMethods,proto3,oneof"`
}

type FilterObject

type FilterObject struct {

	// Count of request messages in the request stream.
	RequestMessageCount uint64 `protobuf:"varint,1,opt,name=request_message_count,json=requestMessageCount,proto3" json:"request_message_count,omitempty"`
	// Count of response messages in the response stream.
	ResponseMessageCount uint64 `protobuf:"varint,2,opt,name=response_message_count,json=responseMessageCount,proto3" json:"response_message_count,omitempty"`
	// contains filtered or unexported fields
}

gRPC statistics filter state object in protobuf form.

func (*FilterObject) Descriptor deprecated

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

Deprecated: Use FilterObject.ProtoReflect.Descriptor instead.

func (*FilterObject) GetRequestMessageCount

func (x *FilterObject) GetRequestMessageCount() uint64

func (*FilterObject) GetResponseMessageCount

func (x *FilterObject) GetResponseMessageCount() uint64

func (*FilterObject) ProtoMessage

func (*FilterObject) ProtoMessage()

func (*FilterObject) ProtoReflect

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

func (*FilterObject) Reset

func (x *FilterObject) Reset()

func (*FilterObject) String

func (x *FilterObject) String() string

Jump to

Keyboard shortcuts

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