proto

package
v0.10.5 Latest Latest
Warning

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

Go to latest
Published: Oct 23, 2019 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

View Source
const Default_ProbeDef_IntervalMsec int32 = 2000
View Source
const Default_ProbeDef_LatencyUnit string = "us"
View Source
const Default_ProbeDef_TimeoutMsec int32 = 1000

Variables

View Source
var ProbeDef_IPVersion_name = map[int32]string{
	0: "IP_VERSION_UNSPECIFIED",
	1: "IPV4",
	2: "IPV6",
}
View Source
var ProbeDef_IPVersion_value = map[string]int32{
	"IP_VERSION_UNSPECIFIED": 0,
	"IPV4":                   1,
	"IPV6":                   2,
}
View Source
var ProbeDef_Type_name = map[int32]string{
	0:  "PING",
	1:  "HTTP",
	2:  "DNS",
	3:  "EXTERNAL",
	4:  "UDP",
	5:  "UDP_LISTENER",
	98: "EXTENSION",
	99: "USER_DEFINED",
}
View Source
var ProbeDef_Type_value = map[string]int32{
	"PING":         0,
	"HTTP":         1,
	"DNS":          2,
	"EXTERNAL":     3,
	"UDP":          4,
	"UDP_LISTENER": 5,
	"EXTENSION":    98,
	"USER_DEFINED": 99,
}

Functions

This section is empty.

Types

type AdditionalLabel added in v0.10.5

type AdditionalLabel struct {
	Key *string `protobuf:"bytes,1,req,name=key" json:"key,omitempty"`
	// Value can either be a static value or can be derived from target's labels.
	// To get value from target's labels, use target.labels.<target's label key>
	// as value.
	Value                *string  `protobuf:"bytes,2,req,name=value" json:"value,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*AdditionalLabel) Descriptor added in v0.10.5

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

func (*AdditionalLabel) GetKey added in v0.10.5

func (m *AdditionalLabel) GetKey() string

func (*AdditionalLabel) GetValue added in v0.10.5

func (m *AdditionalLabel) GetValue() string

func (*AdditionalLabel) ProtoMessage added in v0.10.5

func (*AdditionalLabel) ProtoMessage()

func (*AdditionalLabel) Reset added in v0.10.5

func (m *AdditionalLabel) Reset()

func (*AdditionalLabel) String added in v0.10.5

func (m *AdditionalLabel) String() string

func (*AdditionalLabel) XXX_DiscardUnknown added in v0.10.5

func (m *AdditionalLabel) XXX_DiscardUnknown()

func (*AdditionalLabel) XXX_Marshal added in v0.10.5

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

func (*AdditionalLabel) XXX_Merge added in v0.10.5

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

func (*AdditionalLabel) XXX_Size added in v0.10.5

func (m *AdditionalLabel) XXX_Size() int

func (*AdditionalLabel) XXX_Unmarshal added in v0.10.5

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

type DebugOptions added in v0.10.2

type DebugOptions struct {
	// Whether to log metrics or not.
	LogMetrics           *bool    `protobuf:"varint,1,opt,name=log_metrics,json=logMetrics" json:"log_metrics,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*DebugOptions) Descriptor added in v0.10.2

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

func (*DebugOptions) GetLogMetrics added in v0.10.2

func (m *DebugOptions) GetLogMetrics() bool

func (*DebugOptions) ProtoMessage added in v0.10.2

func (*DebugOptions) ProtoMessage()

func (*DebugOptions) Reset added in v0.10.2

func (m *DebugOptions) Reset()

func (*DebugOptions) String added in v0.10.2

func (m *DebugOptions) String() string

func (*DebugOptions) XXX_DiscardUnknown added in v0.10.2

func (m *DebugOptions) XXX_DiscardUnknown()

func (*DebugOptions) XXX_Marshal added in v0.10.2

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

func (*DebugOptions) XXX_Merge added in v0.10.2

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

func (*DebugOptions) XXX_Size added in v0.10.2

func (m *DebugOptions) XXX_Size() int

func (*DebugOptions) XXX_Unmarshal added in v0.10.2

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

type ProbeDef

type ProbeDef struct {
	Name *string        `protobuf:"bytes,1,req,name=name" json:"name,omitempty"`
	Type *ProbeDef_Type `protobuf:"varint,2,req,name=type,enum=cloudprober.probes.ProbeDef_Type" json:"type,omitempty"`
	// Which machines this probe should run on. If defined, cloudprober will run
	// this probe only if machine's hostname matches this value.
	RunOn *string `protobuf:"bytes,3,opt,name=run_on,json=runOn" json:"run_on,omitempty"`
	// Interval between two probes
	IntervalMsec *int32 `protobuf:"varint,4,opt,name=interval_msec,json=intervalMsec,def=2000" json:"interval_msec,omitempty"`
	// Timeout for each probe
	TimeoutMsec *int32 `protobuf:"varint,5,opt,name=timeout_msec,json=timeoutMsec,def=1000" json:"timeout_msec,omitempty"`
	// Targets for the probe
	Targets *proto1.TargetsDef `protobuf:"bytes,6,req,name=targets" json:"targets,omitempty"`
	// Latency distribution. If specified, latency is stored as a distribution.
	LatencyDistribution *proto2.Dist `protobuf:"bytes,7,opt,name=latency_distribution,json=latencyDistribution" json:"latency_distribution,omitempty"`
	// Latency unit. Any string that's parseable by time.ParseDuration.
	// Valid values: "ns", "us" (or "µs"), "ms", "s", "m", "h".
	LatencyUnit *string `protobuf:"bytes,8,opt,name=latency_unit,json=latencyUnit,def=us" json:"latency_unit,omitempty"`
	// Validators are in experimental phase right now and can change at any time.
	// NOTE: Only PING, HTTP and DNS probes support validators.
	Validator []*proto3.Validator `protobuf:"bytes,9,rep,name=validator" json:"validator,omitempty"`
	// Set the source IP to send packets from, either by providing an IP address
	// directly, or a network interface.
	//
	// Types that are valid to be assigned to SourceIpConfig:
	//	*ProbeDef_SourceIp
	//	*ProbeDef_SourceInterface
	SourceIpConfig isProbeDef_SourceIpConfig `protobuf_oneof:"source_ip_config"`
	IpVersion      *ProbeDef_IPVersion       `` /* 126-byte string literal not displayed */
	// How often to export stats. Probes usually run at a higher frequency (e.g.
	// every second); stats from individual probes are aggregated within
	// cloudprober until exported. In most cases, users don't need to change the
	// default.
	//
	// By default this field is set in the following way:
	// For all probes except UDP:
	//   stats_export_interval=max(interval, 10s)
	// For UDP:
	//   stats_export_interval=max(2*max(interval, timeout), 10s)
	StatsExportIntervalMsec *int32 `` /* 129-byte string literal not displayed */
	// Additional labels to add to the probe results. Label's value can either be
	// static or can be derived from target's labels.
	//
	// Example:
	//   additional_label {
	//     key: "src_zone"
	//     value: "{{.zone}}"
	//   }
	//   additional_label {
	//     key: "src_zone"
	//     value: "target.labels.zone"
	//   }
	AdditionalLabel []*AdditionalLabel `protobuf:"bytes,14,rep,name=additional_label,json=additionalLabel" json:"additional_label,omitempty"`
	// Types that are valid to be assigned to Probe:
	//	*ProbeDef_PingProbe
	//	*ProbeDef_HttpProbe
	//	*ProbeDef_DnsProbe
	//	*ProbeDef_ExternalProbe
	//	*ProbeDef_UdpProbe
	//	*ProbeDef_UdpListenerProbe
	//	*ProbeDef_UserDefinedProbe
	Probe                        isProbeDef_Probe `protobuf_oneof:"probe"`
	DebugOptions                 *DebugOptions    `protobuf:"bytes,100,opt,name=debug_options,json=debugOptions" json:"debug_options,omitempty"`
	XXX_NoUnkeyedLiteral         struct{}         `json:"-"`
	proto.XXX_InternalExtensions `json:"-"`
	XXX_unrecognized             []byte `json:"-"`
	XXX_sizecache                int32  `json:"-"`
}

func (*ProbeDef) Descriptor

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

func (*ProbeDef) ExtensionRangeArray

func (*ProbeDef) ExtensionRangeArray() []proto.ExtensionRange

func (*ProbeDef) GetAdditionalLabel added in v0.10.5

func (m *ProbeDef) GetAdditionalLabel() []*AdditionalLabel

func (*ProbeDef) GetDebugOptions added in v0.10.2

func (m *ProbeDef) GetDebugOptions() *DebugOptions

func (*ProbeDef) GetDnsProbe

func (m *ProbeDef) GetDnsProbe() *proto6.ProbeConf

func (*ProbeDef) GetExternalProbe

func (m *ProbeDef) GetExternalProbe() *proto7.ProbeConf

func (*ProbeDef) GetHttpProbe

func (m *ProbeDef) GetHttpProbe() *proto5.ProbeConf

func (*ProbeDef) GetIntervalMsec

func (m *ProbeDef) GetIntervalMsec() int32

func (*ProbeDef) GetIpVersion added in v0.10.3

func (m *ProbeDef) GetIpVersion() ProbeDef_IPVersion

func (*ProbeDef) GetLatencyDistribution

func (m *ProbeDef) GetLatencyDistribution() *proto2.Dist

func (*ProbeDef) GetLatencyUnit

func (m *ProbeDef) GetLatencyUnit() string

func (*ProbeDef) GetName

func (m *ProbeDef) GetName() string

func (*ProbeDef) GetPingProbe

func (m *ProbeDef) GetPingProbe() *proto4.ProbeConf

func (*ProbeDef) GetProbe

func (m *ProbeDef) GetProbe() isProbeDef_Probe

func (*ProbeDef) GetRunOn

func (m *ProbeDef) GetRunOn() string

func (*ProbeDef) GetSourceInterface added in v0.10.2

func (m *ProbeDef) GetSourceInterface() string

func (*ProbeDef) GetSourceIp added in v0.10.2

func (m *ProbeDef) GetSourceIp() string

func (*ProbeDef) GetSourceIpConfig added in v0.10.2

func (m *ProbeDef) GetSourceIpConfig() isProbeDef_SourceIpConfig

func (*ProbeDef) GetStatsExportIntervalMsec added in v0.10.3

func (m *ProbeDef) GetStatsExportIntervalMsec() int32

func (*ProbeDef) GetTargets

func (m *ProbeDef) GetTargets() *proto1.TargetsDef

func (*ProbeDef) GetTimeoutMsec

func (m *ProbeDef) GetTimeoutMsec() int32

func (*ProbeDef) GetType

func (m *ProbeDef) GetType() ProbeDef_Type

func (*ProbeDef) GetUdpListenerProbe

func (m *ProbeDef) GetUdpListenerProbe() *proto9.ProbeConf

func (*ProbeDef) GetUdpProbe

func (m *ProbeDef) GetUdpProbe() *proto8.ProbeConf

func (*ProbeDef) GetUserDefinedProbe

func (m *ProbeDef) GetUserDefinedProbe() string

func (*ProbeDef) GetValidator

func (m *ProbeDef) GetValidator() []*proto3.Validator

func (*ProbeDef) ProtoMessage

func (*ProbeDef) ProtoMessage()

func (*ProbeDef) Reset

func (m *ProbeDef) Reset()

func (*ProbeDef) String

func (m *ProbeDef) String() string

func (*ProbeDef) XXX_DiscardUnknown

func (m *ProbeDef) XXX_DiscardUnknown()

func (*ProbeDef) XXX_Marshal

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

func (*ProbeDef) XXX_Merge

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

func (*ProbeDef) XXX_OneofWrappers added in v0.10.4

func (*ProbeDef) XXX_OneofWrappers() []interface{}

XXX_OneofWrappers is for the internal use of the proto package.

func (*ProbeDef) XXX_Size

func (m *ProbeDef) XXX_Size() int

func (*ProbeDef) XXX_Unmarshal

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

type ProbeDef_DnsProbe

type ProbeDef_DnsProbe struct {
	DnsProbe *proto6.ProbeConf `protobuf:"bytes,22,opt,name=dns_probe,json=dnsProbe,oneof"`
}

type ProbeDef_ExternalProbe

type ProbeDef_ExternalProbe struct {
	ExternalProbe *proto7.ProbeConf `protobuf:"bytes,23,opt,name=external_probe,json=externalProbe,oneof"`
}

type ProbeDef_HttpProbe

type ProbeDef_HttpProbe struct {
	HttpProbe *proto5.ProbeConf `protobuf:"bytes,21,opt,name=http_probe,json=httpProbe,oneof"`
}

type ProbeDef_IPVersion added in v0.10.3

type ProbeDef_IPVersion int32

IP version to use for networking probes. If specified, this is used at the time of resolving a target, picking the correct IP for the source IP if source_interface option is provided, and to craft the packet correctly for PING probes.

If ip_version is not configured but source_ip is provided, we get ip_version from it. If both are confgiured, an error is returned if there is a conflict between the two.

If left unspecified and both addresses are available in resolve call or on source interface, IPv4 is preferred. Future work: provide an option to prefer IPv4 and IPv6 explicitly.

const (
	ProbeDef_IP_VERSION_UNSPECIFIED ProbeDef_IPVersion = 0
	ProbeDef_IPV4                   ProbeDef_IPVersion = 1
	ProbeDef_IPV6                   ProbeDef_IPVersion = 2
)

func (ProbeDef_IPVersion) Enum added in v0.10.3

func (ProbeDef_IPVersion) EnumDescriptor added in v0.10.3

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

func (ProbeDef_IPVersion) String added in v0.10.3

func (x ProbeDef_IPVersion) String() string

func (*ProbeDef_IPVersion) UnmarshalJSON added in v0.10.3

func (x *ProbeDef_IPVersion) UnmarshalJSON(data []byte) error

type ProbeDef_PingProbe

type ProbeDef_PingProbe struct {
	PingProbe *proto4.ProbeConf `protobuf:"bytes,20,opt,name=ping_probe,json=pingProbe,oneof"`
}

type ProbeDef_SourceInterface added in v0.10.2

type ProbeDef_SourceInterface struct {
	SourceInterface string `protobuf:"bytes,11,opt,name=source_interface,json=sourceInterface,oneof"`
}

type ProbeDef_SourceIp added in v0.10.2

type ProbeDef_SourceIp struct {
	SourceIp string `protobuf:"bytes,10,opt,name=source_ip,json=sourceIp,oneof"`
}

type ProbeDef_Type

type ProbeDef_Type int32
const (
	ProbeDef_PING         ProbeDef_Type = 0
	ProbeDef_HTTP         ProbeDef_Type = 1
	ProbeDef_DNS          ProbeDef_Type = 2
	ProbeDef_EXTERNAL     ProbeDef_Type = 3
	ProbeDef_UDP          ProbeDef_Type = 4
	ProbeDef_UDP_LISTENER ProbeDef_Type = 5
	// One of the extension probe types. See "extensions" below for more
	// details.
	ProbeDef_EXTENSION ProbeDef_Type = 98
	// USER_DEFINED probe type is for a one off probe that you want to compile
	// into cloudprober, but you don't expect it to be reused. If you expect
	// it to be reused, you should consider adding it using the extensions
	// mechanism.
	ProbeDef_USER_DEFINED ProbeDef_Type = 99
)

func (ProbeDef_Type) Enum

func (x ProbeDef_Type) Enum() *ProbeDef_Type

func (ProbeDef_Type) EnumDescriptor

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

func (ProbeDef_Type) String

func (x ProbeDef_Type) String() string

func (*ProbeDef_Type) UnmarshalJSON

func (x *ProbeDef_Type) UnmarshalJSON(data []byte) error

type ProbeDef_UdpListenerProbe

type ProbeDef_UdpListenerProbe struct {
	UdpListenerProbe *proto9.ProbeConf `protobuf:"bytes,25,opt,name=udp_listener_probe,json=udpListenerProbe,oneof"`
}

type ProbeDef_UdpProbe

type ProbeDef_UdpProbe struct {
	UdpProbe *proto8.ProbeConf `protobuf:"bytes,24,opt,name=udp_probe,json=udpProbe,oneof"`
}

type ProbeDef_UserDefinedProbe

type ProbeDef_UserDefinedProbe struct {
	UserDefinedProbe string `protobuf:"bytes,99,opt,name=user_defined_probe,json=userDefinedProbe,oneof"`
}

Jump to

Keyboard shortcuts

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