Documentation ¶
Index ¶
- Constants
- Variables
- type DebugOptions
- func (*DebugOptions) Descriptor() ([]byte, []int)
- func (m *DebugOptions) GetLogMetrics() bool
- func (*DebugOptions) ProtoMessage()
- func (m *DebugOptions) Reset()
- func (m *DebugOptions) String() string
- func (m *DebugOptions) XXX_DiscardUnknown()
- func (m *DebugOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (dst *DebugOptions) XXX_Merge(src proto.Message)
- func (m *DebugOptions) XXX_Size() int
- func (m *DebugOptions) XXX_Unmarshal(b []byte) error
- type ProbeDef
- func (*ProbeDef) Descriptor() ([]byte, []int)
- func (*ProbeDef) ExtensionRangeArray() []proto.ExtensionRange
- func (m *ProbeDef) GetDebugOptions() *DebugOptions
- func (m *ProbeDef) GetDnsProbe() *proto6.ProbeConf
- func (m *ProbeDef) GetExternalProbe() *proto7.ProbeConf
- func (m *ProbeDef) GetHttpProbe() *proto5.ProbeConf
- func (m *ProbeDef) GetIntervalMsec() int32
- func (m *ProbeDef) GetIpVersion() ProbeDef_IPVersion
- func (m *ProbeDef) GetLatencyDistribution() *proto2.Dist
- func (m *ProbeDef) GetLatencyUnit() string
- func (m *ProbeDef) GetName() string
- func (m *ProbeDef) GetPingProbe() *proto4.ProbeConf
- func (m *ProbeDef) GetProbe() isProbeDef_Probe
- func (m *ProbeDef) GetRunOn() string
- func (m *ProbeDef) GetSourceInterface() string
- func (m *ProbeDef) GetSourceIp() string
- func (m *ProbeDef) GetSourceIpConfig() isProbeDef_SourceIpConfig
- func (m *ProbeDef) GetStatsExportIntervalMsec() int32
- func (m *ProbeDef) GetTargets() *proto1.TargetsDef
- func (m *ProbeDef) GetTimeoutMsec() int32
- func (m *ProbeDef) GetType() ProbeDef_Type
- func (m *ProbeDef) GetUdpListenerProbe() *proto9.ProbeConf
- func (m *ProbeDef) GetUdpProbe() *proto8.ProbeConf
- func (m *ProbeDef) GetUserDefinedProbe() string
- func (m *ProbeDef) GetValidator() []*proto3.Validator
- func (*ProbeDef) ProtoMessage()
- func (m *ProbeDef) Reset()
- func (m *ProbeDef) String() string
- func (m *ProbeDef) XXX_DiscardUnknown()
- func (m *ProbeDef) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (dst *ProbeDef) XXX_Merge(src proto.Message)
- func (*ProbeDef) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, ...)
- func (m *ProbeDef) XXX_Size() int
- func (m *ProbeDef) XXX_Unmarshal(b []byte) error
- type ProbeDef_DnsProbe
- type ProbeDef_ExternalProbe
- type ProbeDef_HttpProbe
- type ProbeDef_IPVersion
- type ProbeDef_PingProbe
- type ProbeDef_SourceInterface
- type ProbeDef_SourceIp
- type ProbeDef_Type
- type ProbeDef_UdpListenerProbe
- type ProbeDef_UdpProbe
- type ProbeDef_UserDefinedProbe
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 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 (dst *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 */ // 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) ExtensionRangeArray ¶
func (*ProbeDef) ExtensionRangeArray() []proto.ExtensionRange
func (*ProbeDef) GetDebugOptions ¶ added in v0.10.2
func (m *ProbeDef) GetDebugOptions() *DebugOptions
func (*ProbeDef) GetDnsProbe ¶
func (*ProbeDef) GetExternalProbe ¶
func (*ProbeDef) GetHttpProbe ¶
func (*ProbeDef) GetIntervalMsec ¶
func (*ProbeDef) GetIpVersion ¶ added in v0.10.3
func (m *ProbeDef) GetIpVersion() ProbeDef_IPVersion
func (*ProbeDef) GetLatencyDistribution ¶
func (*ProbeDef) GetLatencyUnit ¶
func (*ProbeDef) GetPingProbe ¶
func (*ProbeDef) GetSourceInterface ¶ added in v0.10.2
func (*ProbeDef) GetSourceIp ¶ added in v0.10.2
func (*ProbeDef) GetSourceIpConfig ¶ added in v0.10.2
func (m *ProbeDef) GetSourceIpConfig() isProbeDef_SourceIpConfig
func (*ProbeDef) GetStatsExportIntervalMsec ¶ added in v0.10.3
func (*ProbeDef) GetTargets ¶
func (m *ProbeDef) GetTargets() *proto1.TargetsDef
func (*ProbeDef) GetTimeoutMsec ¶
func (*ProbeDef) GetType ¶
func (m *ProbeDef) GetType() ProbeDef_Type
func (*ProbeDef) GetUdpListenerProbe ¶
func (*ProbeDef) GetUdpProbe ¶
func (*ProbeDef) GetUserDefinedProbe ¶
func (*ProbeDef) GetValidator ¶
func (*ProbeDef) ProtoMessage ¶
func (*ProbeDef) ProtoMessage()
func (*ProbeDef) XXX_DiscardUnknown ¶
func (m *ProbeDef) XXX_DiscardUnknown()
func (*ProbeDef) XXX_Marshal ¶
func (*ProbeDef) XXX_OneofFuncs ¶
func (*ProbeDef) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})
XXX_OneofFuncs is for the internal use of the proto package.
func (*ProbeDef) XXX_Unmarshal ¶
type ProbeDef_DnsProbe ¶
type ProbeDef_ExternalProbe ¶
type ProbeDef_HttpProbe ¶
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 (x ProbeDef_IPVersion) Enum() *ProbeDef_IPVersion
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_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_UdpProbe ¶
type ProbeDef_UserDefinedProbe ¶
type ProbeDef_UserDefinedProbe struct {
UserDefinedProbe string `protobuf:"bytes,99,opt,name=user_defined_probe,json=userDefinedProbe,oneof"`
}
Click to show internal directories.
Click to hide internal directories.