package envoy_extensions_request_id_uuid_v3

import "github.com/envoyproxy/go-control-plane/envoy/extensions/request_id/uuid/v3"

Index

Variables

var File_envoy_extensions_request_id_uuid_v3_uuid_proto protoreflect.FileDescriptor

Types

type UuidRequestIdConfig

type UuidRequestIdConfig struct {

	// Whether the implementation alters the UUID to contain the trace sampling decision as per the
	// `UuidRequestIdConfig` message documentation. This defaults to true. If disabled no
	// modification to the UUID will be performed. It is important to note that if disabled,
	// stable sampling of traces, access logs, etc. will no longer work and only random sampling will
	// be possible.
	PackTraceReason *wrappers.BoolValue `protobuf:"bytes,1,opt,name=pack_trace_reason,json=packTraceReason,proto3" json:"pack_trace_reason,omitempty"`
	// contains filtered or unexported fields
}

Configuration for the default UUID request ID extension which has the following behavior:

  1. Request ID is propagated using the :ref:`x-request-id <config_http_conn_man_headers_x-request-id>` header.
  1. Request ID is a universally unique identifier `(UUID4) <https://en.wikipedia.org/wiki/Universally_unique_identifier#Version_4_(random)>`_.
  1. Tracing decision (sampled, forced, etc) is set in 14th nibble of the UUID. By default this will overwrite existing UUIDs received in the *x-request-id* header if the trace sampling decision is changed. The 14th nibble of the UUID4 has been chosen because it is fixed to '4' by the standard. Thus, '4' indicates a default UUID and no trace status. This nibble is swapped to:

    a. '9': Sampled. b. 'a': Force traced due to server-side override. c. 'b': Force traced due to client-side request ID joining.

    See the :ref:`x-request-id <config_http_conn_man_headers_x-request-id>` documentation for more information.

func (*UuidRequestIdConfig) Descriptor

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

Deprecated: Use UuidRequestIdConfig.ProtoReflect.Descriptor instead.

func (*UuidRequestIdConfig) GetPackTraceReason

func (x *UuidRequestIdConfig) GetPackTraceReason() *wrappers.BoolValue

func (*UuidRequestIdConfig) ProtoMessage

func (*UuidRequestIdConfig) ProtoMessage()

func (*UuidRequestIdConfig) ProtoReflect

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

func (*UuidRequestIdConfig) Reset

func (x *UuidRequestIdConfig) Reset()

func (*UuidRequestIdConfig) String

func (x *UuidRequestIdConfig) String() string

func (*UuidRequestIdConfig) Validate

func (m *UuidRequestIdConfig) Validate() error

Validate checks the field values on UuidRequestIdConfig with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.

type UuidRequestIdConfigValidationError

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

UuidRequestIdConfigValidationError is the validation error returned by UuidRequestIdConfig.Validate if the designated constraints aren't met.

func (UuidRequestIdConfigValidationError) Cause

Cause function returns cause value.

func (UuidRequestIdConfigValidationError) Error

Error satisfies the builtin error interface

func (UuidRequestIdConfigValidationError) ErrorName

ErrorName returns error name.

func (UuidRequestIdConfigValidationError) Field

Field function returns field value.

func (UuidRequestIdConfigValidationError) Key

Key function returns key value.

func (UuidRequestIdConfigValidationError) Reason

Reason function returns reason value.

Source Files

uuid.pb.go uuid.pb.validate.go

Version
v0.9.9
Published
May 21, 2021
Platform
windows/amd64
Imports
18 packages
Last checked
23 minutes ago

Tools for package owners.