spectrepb

package
v0.48.0 Latest Latest
Warning

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

Go to latest
Published: Nov 4, 2026 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	Direction_name = map[int32]string{
		0: "DIRECTION_UNSPECIFIED",
		1: "DIRECTION_INGRESS",
		2: "DIRECTION_EGRESS",
	}
	Direction_value = map[string]int32{
		"DIRECTION_UNSPECIFIED": 0,
		"DIRECTION_INGRESS":     1,
		"DIRECTION_EGRESS":      2,
	}
)

Enum value maps for Direction.

View Source
var (
	Quarantine_Kind_name = map[int32]string{
		0: "KIND_UNSPECIFIED",
		1: "KIND_DIVERGENT",
		2: "KIND_UNABLE",
		3: "KIND_UNMATCHED",
		4: "KIND_UNLISTED",
		5: "KIND_CAPACITY",
		6: "KIND_PAIRING",
	}
	Quarantine_Kind_value = map[string]int32{
		"KIND_UNSPECIFIED": 0,
		"KIND_DIVERGENT":   1,
		"KIND_UNABLE":      2,
		"KIND_UNMATCHED":   3,
		"KIND_UNLISTED":    4,
		"KIND_CAPACITY":    5,
		"KIND_PAIRING":     6,
	}
)

Enum value maps for Quarantine_Kind.

View Source
var File_spectre_v1_spectre_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type ClearDivergencesRequest

type ClearDivergencesRequest struct {
	Service     string `protobuf:"bytes,1,opt,name=service,proto3" json:"service,omitempty"`
	Environment string `protobuf:"bytes,2,opt,name=environment,proto3" json:"environment,omitempty"`
	// contains filtered or unexported fields
}

ClearDivergencesRequest names the service environment whose divergences to clear.

func (*ClearDivergencesRequest) Descriptor deprecated

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

Deprecated: Use ClearDivergencesRequest.ProtoReflect.Descriptor instead.

func (*ClearDivergencesRequest) GetEnvironment

func (x *ClearDivergencesRequest) GetEnvironment() string

func (*ClearDivergencesRequest) GetService

func (x *ClearDivergencesRequest) GetService() string

func (*ClearDivergencesRequest) ProtoMessage

func (*ClearDivergencesRequest) ProtoMessage()

func (*ClearDivergencesRequest) ProtoReflect

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

func (*ClearDivergencesRequest) Reset

func (x *ClearDivergencesRequest) Reset()

func (*ClearDivergencesRequest) String

func (x *ClearDivergencesRequest) String() string

type ClearDivergencesResponse

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

func (*ClearDivergencesResponse) Descriptor deprecated

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

Deprecated: Use ClearDivergencesResponse.ProtoReflect.Descriptor instead.

func (*ClearDivergencesResponse) ProtoMessage

func (*ClearDivergencesResponse) ProtoMessage()

func (*ClearDivergencesResponse) ProtoReflect

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

func (*ClearDivergencesResponse) Reset

func (x *ClearDivergencesResponse) Reset()

func (*ClearDivergencesResponse) String

func (x *ClearDivergencesResponse) String() string

type Direction

type Direction int32

Direction names the proxy that carries traffic.

const (
	Direction_DIRECTION_UNSPECIFIED Direction = 0
	// Requests to the proxied service.
	Direction_DIRECTION_INGRESS Direction = 1
	// Requests from the service to a dependency.
	Direction_DIRECTION_EGRESS Direction = 2
)

func (Direction) Descriptor

func (Direction) Descriptor() protoreflect.EnumDescriptor

func (Direction) Enum

func (x Direction) Enum() *Direction

func (Direction) EnumDescriptor deprecated

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

Deprecated: Use Direction.Descriptor instead.

func (Direction) Number

func (x Direction) Number() protoreflect.EnumNumber

func (Direction) String

func (x Direction) String() string

func (Direction) Type

type Divergence

type Divergence struct {
	Service     string `protobuf:"bytes,1,opt,name=service,proto3" json:"service,omitempty"`
	Environment string `protobuf:"bytes,2,opt,name=environment,proto3" json:"environment,omitempty"`
	// Revision is the commit of the candidate the mirror ran.
	Revision   string      `protobuf:"bytes,3,opt,name=revision,proto3" json:"revision,omitempty"`
	Quarantine *Quarantine `protobuf:"bytes,4,opt,name=quarantine,proto3" json:"quarantine,omitempty"`
	// contains filtered or unexported fields
}

Divergence is the latest quarantine of one direction of a service environment's mirror. It outlives the mirror run that reported it.

func (*Divergence) Descriptor deprecated

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

Deprecated: Use Divergence.ProtoReflect.Descriptor instead.

func (*Divergence) GetEnvironment

func (x *Divergence) GetEnvironment() string

func (*Divergence) GetQuarantine

func (x *Divergence) GetQuarantine() *Quarantine

func (*Divergence) GetRevision

func (x *Divergence) GetRevision() string

func (*Divergence) GetService

func (x *Divergence) GetService() string

func (*Divergence) ProtoMessage

func (*Divergence) ProtoMessage()

func (*Divergence) ProtoReflect

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

func (*Divergence) Reset

func (x *Divergence) Reset()

func (*Divergence) String

func (x *Divergence) String() string

type Keepalive added in v0.48.0

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

Keepalive carries nothing; it only keeps a quiet stream alive.

func (*Keepalive) Descriptor deprecated added in v0.48.0

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

Deprecated: Use Keepalive.ProtoReflect.Descriptor instead.

func (*Keepalive) ProtoMessage added in v0.48.0

func (*Keepalive) ProtoMessage()

func (*Keepalive) ProtoReflect added in v0.48.0

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

func (*Keepalive) Reset added in v0.48.0

func (x *Keepalive) Reset()

func (*Keepalive) String added in v0.48.0

func (x *Keepalive) String() string

type ListDivergencesRequest

type ListDivergencesRequest struct {
	Service     *string `protobuf:"bytes,1,opt,name=service,proto3,oneof" json:"service,omitempty"`
	Environment *string `protobuf:"bytes,2,opt,name=environment,proto3,oneof" json:"environment,omitempty"`
	Revision    *string `protobuf:"bytes,3,opt,name=revision,proto3,oneof" json:"revision,omitempty"`
	// Node matches only quarantines on routes of that migration state node.
	Node *string `protobuf:"bytes,4,opt,name=node,proto3,oneof" json:"node,omitempty"`
	// contains filtered or unexported fields
}

ListDivergencesRequest filters mirror states and divergences. An unset filter matches every value.

func (*ListDivergencesRequest) Descriptor deprecated

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

Deprecated: Use ListDivergencesRequest.ProtoReflect.Descriptor instead.

func (*ListDivergencesRequest) GetEnvironment

func (x *ListDivergencesRequest) GetEnvironment() string

func (*ListDivergencesRequest) GetNode

func (x *ListDivergencesRequest) GetNode() string

func (*ListDivergencesRequest) GetRevision

func (x *ListDivergencesRequest) GetRevision() string

func (*ListDivergencesRequest) GetService

func (x *ListDivergencesRequest) GetService() string

func (*ListDivergencesRequest) ProtoMessage

func (*ListDivergencesRequest) ProtoMessage()

func (*ListDivergencesRequest) ProtoReflect

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

func (*ListDivergencesRequest) Reset

func (x *ListDivergencesRequest) Reset()

func (*ListDivergencesRequest) String

func (x *ListDivergencesRequest) String() string

type ListDivergencesResponse

type ListDivergencesResponse struct {
	States      []*State      `protobuf:"bytes,1,rep,name=states,proto3" json:"states,omitempty"`
	Divergences []*Divergence `protobuf:"bytes,2,rep,name=divergences,proto3" json:"divergences,omitempty"`
	// contains filtered or unexported fields
}

func (*ListDivergencesResponse) Descriptor deprecated

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

Deprecated: Use ListDivergencesResponse.ProtoReflect.Descriptor instead.

func (*ListDivergencesResponse) GetDivergences

func (x *ListDivergencesResponse) GetDivergences() []*Divergence

func (*ListDivergencesResponse) GetStates added in v0.47.0

func (x *ListDivergencesResponse) GetStates() []*State

func (*ListDivergencesResponse) ProtoMessage

func (*ListDivergencesResponse) ProtoMessage()

func (*ListDivergencesResponse) ProtoReflect

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

func (*ListDivergencesResponse) Reset

func (x *ListDivergencesResponse) Reset()

func (*ListDivergencesResponse) String

func (x *ListDivergencesResponse) String() string

type Quarantine

type Quarantine struct {
	Since *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=since,proto3" json:"since,omitempty"`
	Kind  Quarantine_Kind        `protobuf:"varint,2,opt,name=kind,proto3,enum=spectre.v1.Quarantine_Kind" json:"kind,omitempty"`
	// Traffic is absent when no single request caused the quarantine.
	Traffic *Traffic `protobuf:"bytes,3,opt,name=traffic,proto3" json:"traffic,omitempty"`
	// Node is the migration state node that owns an ingress route.
	Node        *string  `protobuf:"bytes,4,opt,name=node,proto3,oneof" json:"node,omitempty"`
	Differences []string `protobuf:"bytes,5,rep,name=differences,proto3" json:"differences,omitempty"`
	Detail      string   `protobuf:"bytes,6,opt,name=detail,proto3" json:"detail,omitempty"`
	// Direction is the proxy that quarantined the candidate.
	Direction Direction `protobuf:"varint,7,opt,name=direction,proto3,enum=spectre.v1.Direction" json:"direction,omitempty"`
	// contains filtered or unexported fields
}

Quarantine is why a proxy quarantined the candidate. It never carries payload values.

func (*Quarantine) Descriptor deprecated

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

Deprecated: Use Quarantine.ProtoReflect.Descriptor instead.

func (*Quarantine) GetDetail

func (x *Quarantine) GetDetail() string

func (*Quarantine) GetDifferences

func (x *Quarantine) GetDifferences() []string

func (*Quarantine) GetDirection added in v0.47.0

func (x *Quarantine) GetDirection() Direction

func (*Quarantine) GetKind

func (x *Quarantine) GetKind() Quarantine_Kind

func (*Quarantine) GetNode

func (x *Quarantine) GetNode() string

func (*Quarantine) GetSince

func (x *Quarantine) GetSince() *timestamppb.Timestamp

func (*Quarantine) GetTraffic

func (x *Quarantine) GetTraffic() *Traffic

func (*Quarantine) ProtoMessage

func (*Quarantine) ProtoMessage()

func (*Quarantine) ProtoReflect

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

func (*Quarantine) Reset

func (x *Quarantine) Reset()

func (*Quarantine) String

func (x *Quarantine) String() string

type Quarantine_Kind

type Quarantine_Kind int32

Kind is why the proxy quarantined the candidate.

const (
	Quarantine_KIND_UNSPECIFIED Quarantine_Kind = 0
	// The candidate's responses differ from the reference's.
	Quarantine_KIND_DIVERGENT Quarantine_Kind = 1
	// The mirror could not compare or replay traffic.
	Quarantine_KIND_UNABLE Quarantine_Kind = 2
	// The candidate made a dependency request the reference did not.
	Quarantine_KIND_UNMATCHED Quarantine_Kind = 3
	// An ingress route is in no node of the migration state.
	Quarantine_KIND_UNLISTED Quarantine_Kind = 4
	// Candidate work exceeded a concurrency or buffer limit.
	Quarantine_KIND_CAPACITY Quarantine_Kind = 5
	// The mirror could not pair candidate and reference traffic.
	Quarantine_KIND_PAIRING Quarantine_Kind = 6
)

func (Quarantine_Kind) Descriptor

func (Quarantine_Kind) Enum

func (x Quarantine_Kind) Enum() *Quarantine_Kind

func (Quarantine_Kind) EnumDescriptor deprecated

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

Deprecated: Use Quarantine_Kind.Descriptor instead.

func (Quarantine_Kind) Number

func (Quarantine_Kind) String

func (x Quarantine_Kind) String() string

func (Quarantine_Kind) Type

type State added in v0.47.0

type State struct {
	Service     string `protobuf:"bytes,1,opt,name=service,proto3" json:"service,omitempty"`
	Environment string `protobuf:"bytes,2,opt,name=environment,proto3" json:"environment,omitempty"`
	// Revision is the commit of the candidate the mirror runs.
	Revision string `protobuf:"bytes,3,opt,name=revision,proto3" json:"revision,omitempty"`
	// SpectreVersion is the version of SPECTRE the mirror runs.
	SpectreVersion string `protobuf:"bytes,4,opt,name=spectre_version,json=spectreVersion,proto3" json:"spectre_version,omitempty"`
	// Uptime is how long the mirror has run. Quarantine lasts until the mirror
	// restarts, so a mirror holding no quarantine has been healthy this long.
	Uptime *durationpb.Duration `protobuf:"bytes,5,opt,name=uptime,proto3" json:"uptime,omitempty"`
	// Quarantines holds at most one quarantine per direction.
	Quarantines []*Quarantine `protobuf:"bytes,6,rep,name=quarantines,proto3" json:"quarantines,omitempty"`
	// contains filtered or unexported fields
}

State is what the mirror of one service environment runs and holds.

func (*State) Descriptor deprecated added in v0.47.0

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

Deprecated: Use State.ProtoReflect.Descriptor instead.

func (*State) GetEnvironment added in v0.47.0

func (x *State) GetEnvironment() string

func (*State) GetQuarantines added in v0.47.0

func (x *State) GetQuarantines() []*Quarantine

func (*State) GetRevision added in v0.47.0

func (x *State) GetRevision() string

func (*State) GetService added in v0.47.0

func (x *State) GetService() string

func (*State) GetSpectreVersion added in v0.47.0

func (x *State) GetSpectreVersion() string

func (*State) GetUptime added in v0.47.0

func (x *State) GetUptime() *durationpb.Duration

func (*State) ProtoMessage added in v0.47.0

func (*State) ProtoMessage()

func (*State) ProtoReflect added in v0.47.0

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

func (*State) Reset added in v0.47.0

func (x *State) Reset()

func (*State) String added in v0.47.0

func (x *State) String() string

type Traffic

type Traffic struct {
	Direction Direction `protobuf:"varint,1,opt,name=direction,proto3,enum=spectre.v1.Direction" json:"direction,omitempty"`
	// Protocol is open-ended, because custom binaries may add protocols.
	Protocol string `protobuf:"bytes,2,opt,name=protocol,proto3" json:"protocol,omitempty"`
	Route    string `protobuf:"bytes,3,opt,name=route,proto3" json:"route,omitempty"`
	// contains filtered or unexported fields
}

Traffic identifies the request that caused a quarantine.

func (*Traffic) Descriptor deprecated

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

Deprecated: Use Traffic.ProtoReflect.Descriptor instead.

func (*Traffic) GetDirection

func (x *Traffic) GetDirection() Direction

func (*Traffic) GetProtocol

func (x *Traffic) GetProtocol() string

func (*Traffic) GetRoute

func (x *Traffic) GetRoute() string

func (*Traffic) ProtoMessage

func (*Traffic) ProtoMessage()

func (*Traffic) ProtoReflect

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

func (*Traffic) Reset

func (x *Traffic) Reset()

func (*Traffic) String

func (x *Traffic) String() string

type UpdateRequest added in v0.47.0

type UpdateRequest struct {

	// Types that are valid to be assigned to Update:
	//
	//	*UpdateRequest_State
	//	*UpdateRequest_Quarantine
	//	*UpdateRequest_Keepalive
	Update isUpdateRequest_Update `protobuf_oneof:"update"`
	// contains filtered or unexported fields
}

func (*UpdateRequest) Descriptor deprecated added in v0.47.0

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

Deprecated: Use UpdateRequest.ProtoReflect.Descriptor instead.

func (*UpdateRequest) GetKeepalive added in v0.48.0

func (x *UpdateRequest) GetKeepalive() *Keepalive

func (*UpdateRequest) GetQuarantine added in v0.48.0

func (x *UpdateRequest) GetQuarantine() *Quarantine

func (*UpdateRequest) GetState added in v0.47.0

func (x *UpdateRequest) GetState() *State

func (*UpdateRequest) GetUpdate added in v0.48.0

func (x *UpdateRequest) GetUpdate() isUpdateRequest_Update

func (*UpdateRequest) ProtoMessage added in v0.47.0

func (*UpdateRequest) ProtoMessage()

func (*UpdateRequest) ProtoReflect added in v0.47.0

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

func (*UpdateRequest) Reset added in v0.47.0

func (x *UpdateRequest) Reset()

func (*UpdateRequest) String added in v0.47.0

func (x *UpdateRequest) String() string

type UpdateRequest_Keepalive added in v0.48.0

type UpdateRequest_Keepalive struct {
	// Keepalive shows the mirror still runs when nothing has changed.
	Keepalive *Keepalive `protobuf:"bytes,3,opt,name=keepalive,proto3,oneof"`
}

type UpdateRequest_Quarantine added in v0.48.0

type UpdateRequest_Quarantine struct {
	// Quarantine adds the quarantine of its direction to the state.
	Quarantine *Quarantine `protobuf:"bytes,2,opt,name=quarantine,proto3,oneof"`
}

type UpdateRequest_State added in v0.48.0

type UpdateRequest_State struct {
	// State replaces the mirror's whole state. Every stream begins with it.
	State *State `protobuf:"bytes,1,opt,name=state,proto3,oneof"`
}

type UpdateResponse added in v0.47.0

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

func (*UpdateResponse) Descriptor deprecated added in v0.47.0

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

Deprecated: Use UpdateResponse.ProtoReflect.Descriptor instead.

func (*UpdateResponse) ProtoMessage added in v0.47.0

func (*UpdateResponse) ProtoMessage()

func (*UpdateResponse) ProtoReflect added in v0.47.0

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

func (*UpdateResponse) Reset added in v0.47.0

func (x *UpdateResponse) Reset()

func (*UpdateResponse) String added in v0.47.0

func (x *UpdateResponse) String() string

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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