stats

package
v1.5.0-beta5 Latest Latest
Warning

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

Go to latest
Published: Jul 7, 2020 License: Apache-2.0 Imports: 12 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Stats

type Stats struct {
	// Virtual clusters allow exposing additional statistics for traffic served by a Virtual Host.
	VirtualClusters      []*VirtualCluster `protobuf:"bytes,10,rep,name=virtual_clusters,json=virtualClusters,proto3" json:"virtual_clusters,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

This plugin provides additional configuration options to expose statistics.

func (*Stats) Descriptor

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

func (*Stats) Equal

func (this *Stats) Equal(that interface{}) bool

func (*Stats) GetVirtualClusters

func (m *Stats) GetVirtualClusters() []*VirtualCluster

func (*Stats) Hash added in v1.2.13

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

Hash function

func (*Stats) ProtoMessage

func (*Stats) ProtoMessage()

func (*Stats) Reset

func (m *Stats) Reset()

func (*Stats) String

func (m *Stats) String() string

func (*Stats) XXX_DiscardUnknown

func (m *Stats) XXX_DiscardUnknown()

func (*Stats) XXX_Marshal

func (m *Stats) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Stats) XXX_Merge

func (m *Stats) XXX_Merge(src proto.Message)

func (*Stats) XXX_Size

func (m *Stats) XXX_Size() int

func (*Stats) XXX_Unmarshal

func (m *Stats) XXX_Unmarshal(b []byte) error

type VirtualCluster

type VirtualCluster struct {
	// The name of the virtual cluster. This value will be used together with the virtual host name to
	// compute the name of the statistics emitted by this virtual cluster. Statistics names will be in the form:
	// vhost.<virtual host name>.vcluster.<virtual cluster name>.<stat name>.
	// See [the official Envoy documentation](https://www.envoyproxy.io/docs/envoy/v1.5.0/configuration/http_filters/router_filter#config-http-filters-router-stats)
	// for more information about the statistics emitted when virtual cluster configurations are specified.
	//
	// Note: This string should not contain any dots ("."), as this is a reserved character for Envoy statistics names.
	// Any dot present in the virtual cluster name will be replaced with an underscore ("_") character by Gloo.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// The regex pattern used by Envoy to decide whether to expose statistics for a particular request.
	// Please note that **the entire path** of the request must match the regex (e.g. the regex `/rides/d+` matches
	// the path `/rides/0`, but not `/rides/123/456`).
	// The regex grammar used is defined [here](https://en.cppreference.com/w/cpp/regex/ecmascript).
	Pattern string `protobuf:"bytes,2,opt,name=pattern,proto3" json:"pattern,omitempty"`
	// If specified, statistics will be exposed only for requests matching the given HTTP method.
	Method               string   `protobuf:"bytes,3,opt,name=method,proto3" json:"method,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

Virtual clusters allow you to expose statistics for virtual host traffic that matches certain criteria. This is useful because what the application considers to be an endpoint does often not map directly to the routing configuration, so Envoy does not emit per endpoint statistics. Using virtual clusters you can define logical endpoints and have Envoy emit dedicated statistics for any matching request. Virtual cluster statistics are emitted on the downstream side and thus include network level failures.

Please note that virtual clusters add overhead to the processing of each requests and should not be overused.

func (*VirtualCluster) Descriptor

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

func (*VirtualCluster) Equal

func (this *VirtualCluster) Equal(that interface{}) bool

func (*VirtualCluster) GetMethod

func (m *VirtualCluster) GetMethod() string

func (*VirtualCluster) GetName

func (m *VirtualCluster) GetName() string

func (*VirtualCluster) GetPattern

func (m *VirtualCluster) GetPattern() string

func (*VirtualCluster) Hash added in v1.2.13

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

Hash function

func (*VirtualCluster) ProtoMessage

func (*VirtualCluster) ProtoMessage()

func (*VirtualCluster) Reset

func (m *VirtualCluster) Reset()

func (*VirtualCluster) String

func (m *VirtualCluster) String() string

func (*VirtualCluster) XXX_DiscardUnknown

func (m *VirtualCluster) XXX_DiscardUnknown()

func (*VirtualCluster) XXX_Marshal

func (m *VirtualCluster) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*VirtualCluster) XXX_Merge

func (m *VirtualCluster) XXX_Merge(src proto.Message)

func (*VirtualCluster) XXX_Size

func (m *VirtualCluster) XXX_Size() int

func (*VirtualCluster) XXX_Unmarshal

func (m *VirtualCluster) XXX_Unmarshal(b []byte) error

Jump to

Keyboard shortcuts

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