github.com/hxx258456/ccgo@v0.0.5-0.20230213014102-48b35f46f66f/go-control-plane/envoy/data/cluster/v3/outlier_detection_event.pb.go (about)

     1  // Code generated by protoc-gen-go. DO NOT EDIT.
     2  // versions:
     3  // 	protoc-gen-go v1.25.0
     4  // 	protoc        v3.16.0
     5  // source: envoy/data/cluster/v3/outlier_detection_event.proto
     6  
     7  package envoy_data_cluster_v3
     8  
     9  import (
    10  	_ "github.com/cncf/xds/go/udpa/annotations"
    11  	_ "github.com/envoyproxy/protoc-gen-validate/validate"
    12  	proto "github.com/golang/protobuf/proto"
    13  	timestamp "github.com/golang/protobuf/ptypes/timestamp"
    14  	wrappers "github.com/golang/protobuf/ptypes/wrappers"
    15  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    16  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    17  	reflect "reflect"
    18  	sync "sync"
    19  )
    20  
    21  const (
    22  	// Verify that this generated code is sufficiently up-to-date.
    23  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    24  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    25  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    26  )
    27  
    28  // This is a compile-time assertion that a sufficiently up-to-date version
    29  // of the legacy proto package is being used.
    30  const _ = proto.ProtoPackageIsVersion4
    31  
    32  // Type of ejection that took place
    33  type OutlierEjectionType int32
    34  
    35  const (
    36  	// In case upstream host returns certain number of consecutive 5xx.
    37  	// If
    38  	// :ref:`outlier_detection.split_external_local_origin_errors<envoy_v3_api_field_config.cluster.v3.OutlierDetection.split_external_local_origin_errors>`
    39  	// is *false*, all type of errors are treated as HTTP 5xx errors.
    40  	// See :ref:`Cluster outlier detection <arch_overview_outlier_detection>` documentation for
    41  	// details.
    42  	OutlierEjectionType_CONSECUTIVE_5XX OutlierEjectionType = 0
    43  	// In case upstream host returns certain number of consecutive gateway errors
    44  	OutlierEjectionType_CONSECUTIVE_GATEWAY_FAILURE OutlierEjectionType = 1
    45  	// Runs over aggregated success rate statistics from every host in cluster
    46  	// and selects hosts for which ratio of successful replies deviates from other hosts
    47  	// in the cluster.
    48  	// If
    49  	// :ref:`outlier_detection.split_external_local_origin_errors<envoy_v3_api_field_config.cluster.v3.OutlierDetection.split_external_local_origin_errors>`
    50  	// is *false*, all errors (externally and locally generated) are used to calculate success rate
    51  	// statistics. See :ref:`Cluster outlier detection <arch_overview_outlier_detection>`
    52  	// documentation for details.
    53  	OutlierEjectionType_SUCCESS_RATE OutlierEjectionType = 2
    54  	// Consecutive local origin failures: Connection failures, resets, timeouts, etc
    55  	// This type of ejection happens only when
    56  	// :ref:`outlier_detection.split_external_local_origin_errors<envoy_v3_api_field_config.cluster.v3.OutlierDetection.split_external_local_origin_errors>`
    57  	// is set to *true*.
    58  	// See :ref:`Cluster outlier detection <arch_overview_outlier_detection>` documentation for
    59  	OutlierEjectionType_CONSECUTIVE_LOCAL_ORIGIN_FAILURE OutlierEjectionType = 3
    60  	// Runs over aggregated success rate statistics for local origin failures
    61  	// for all hosts in the cluster and selects hosts for which success rate deviates from other
    62  	// hosts in the cluster. This type of ejection happens only when
    63  	// :ref:`outlier_detection.split_external_local_origin_errors<envoy_v3_api_field_config.cluster.v3.OutlierDetection.split_external_local_origin_errors>`
    64  	// is set to *true*.
    65  	// See :ref:`Cluster outlier detection <arch_overview_outlier_detection>` documentation for
    66  	OutlierEjectionType_SUCCESS_RATE_LOCAL_ORIGIN OutlierEjectionType = 4
    67  	// Runs over aggregated success rate statistics from every host in cluster and selects hosts for
    68  	// which ratio of failed replies is above configured value.
    69  	OutlierEjectionType_FAILURE_PERCENTAGE OutlierEjectionType = 5
    70  	// Runs over aggregated success rate statistics for local origin failures from every host in
    71  	// cluster and selects hosts for which ratio of failed replies is above configured value.
    72  	OutlierEjectionType_FAILURE_PERCENTAGE_LOCAL_ORIGIN OutlierEjectionType = 6
    73  )
    74  
    75  // Enum value maps for OutlierEjectionType.
    76  var (
    77  	OutlierEjectionType_name = map[int32]string{
    78  		0: "CONSECUTIVE_5XX",
    79  		1: "CONSECUTIVE_GATEWAY_FAILURE",
    80  		2: "SUCCESS_RATE",
    81  		3: "CONSECUTIVE_LOCAL_ORIGIN_FAILURE",
    82  		4: "SUCCESS_RATE_LOCAL_ORIGIN",
    83  		5: "FAILURE_PERCENTAGE",
    84  		6: "FAILURE_PERCENTAGE_LOCAL_ORIGIN",
    85  	}
    86  	OutlierEjectionType_value = map[string]int32{
    87  		"CONSECUTIVE_5XX":                  0,
    88  		"CONSECUTIVE_GATEWAY_FAILURE":      1,
    89  		"SUCCESS_RATE":                     2,
    90  		"CONSECUTIVE_LOCAL_ORIGIN_FAILURE": 3,
    91  		"SUCCESS_RATE_LOCAL_ORIGIN":        4,
    92  		"FAILURE_PERCENTAGE":               5,
    93  		"FAILURE_PERCENTAGE_LOCAL_ORIGIN":  6,
    94  	}
    95  )
    96  
    97  func (x OutlierEjectionType) Enum() *OutlierEjectionType {
    98  	p := new(OutlierEjectionType)
    99  	*p = x
   100  	return p
   101  }
   102  
   103  func (x OutlierEjectionType) String() string {
   104  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   105  }
   106  
   107  func (OutlierEjectionType) Descriptor() protoreflect.EnumDescriptor {
   108  	return file_envoy_data_cluster_v3_outlier_detection_event_proto_enumTypes[0].Descriptor()
   109  }
   110  
   111  func (OutlierEjectionType) Type() protoreflect.EnumType {
   112  	return &file_envoy_data_cluster_v3_outlier_detection_event_proto_enumTypes[0]
   113  }
   114  
   115  func (x OutlierEjectionType) Number() protoreflect.EnumNumber {
   116  	return protoreflect.EnumNumber(x)
   117  }
   118  
   119  // Deprecated: Use OutlierEjectionType.Descriptor instead.
   120  func (OutlierEjectionType) EnumDescriptor() ([]byte, []int) {
   121  	return file_envoy_data_cluster_v3_outlier_detection_event_proto_rawDescGZIP(), []int{0}
   122  }
   123  
   124  // Represents possible action applied to upstream host
   125  type Action int32
   126  
   127  const (
   128  	// In case host was excluded from service
   129  	Action_EJECT Action = 0
   130  	// In case host was brought back into service
   131  	Action_UNEJECT Action = 1
   132  )
   133  
   134  // Enum value maps for Action.
   135  var (
   136  	Action_name = map[int32]string{
   137  		0: "EJECT",
   138  		1: "UNEJECT",
   139  	}
   140  	Action_value = map[string]int32{
   141  		"EJECT":   0,
   142  		"UNEJECT": 1,
   143  	}
   144  )
   145  
   146  func (x Action) Enum() *Action {
   147  	p := new(Action)
   148  	*p = x
   149  	return p
   150  }
   151  
   152  func (x Action) String() string {
   153  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   154  }
   155  
   156  func (Action) Descriptor() protoreflect.EnumDescriptor {
   157  	return file_envoy_data_cluster_v3_outlier_detection_event_proto_enumTypes[1].Descriptor()
   158  }
   159  
   160  func (Action) Type() protoreflect.EnumType {
   161  	return &file_envoy_data_cluster_v3_outlier_detection_event_proto_enumTypes[1]
   162  }
   163  
   164  func (x Action) Number() protoreflect.EnumNumber {
   165  	return protoreflect.EnumNumber(x)
   166  }
   167  
   168  // Deprecated: Use Action.Descriptor instead.
   169  func (Action) EnumDescriptor() ([]byte, []int) {
   170  	return file_envoy_data_cluster_v3_outlier_detection_event_proto_rawDescGZIP(), []int{1}
   171  }
   172  
   173  // [#next-free-field: 12]
   174  type OutlierDetectionEvent struct {
   175  	state         protoimpl.MessageState
   176  	sizeCache     protoimpl.SizeCache
   177  	unknownFields protoimpl.UnknownFields
   178  
   179  	// In case of eject represents type of ejection that took place.
   180  	Type OutlierEjectionType `protobuf:"varint,1,opt,name=type,proto3,enum=envoy.data.cluster.v3.OutlierEjectionType" json:"type,omitempty"`
   181  	// Timestamp for event.
   182  	Timestamp *timestamp.Timestamp `protobuf:"bytes,2,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
   183  	// The time in seconds since the last action (either an ejection or unejection) took place.
   184  	SecsSinceLastAction *wrappers.UInt64Value `protobuf:"bytes,3,opt,name=secs_since_last_action,json=secsSinceLastAction,proto3" json:"secs_since_last_action,omitempty"`
   185  	// The :ref:`cluster <envoy_v3_api_msg_config.cluster.v3.Cluster>` that owns the ejected host.
   186  	ClusterName string `protobuf:"bytes,4,opt,name=cluster_name,json=clusterName,proto3" json:"cluster_name,omitempty"`
   187  	// The URL of the ejected host. E.g., ``tcp://1.2.3.4:80``.
   188  	UpstreamUrl string `protobuf:"bytes,5,opt,name=upstream_url,json=upstreamUrl,proto3" json:"upstream_url,omitempty"`
   189  	// The action that took place.
   190  	Action Action `protobuf:"varint,6,opt,name=action,proto3,enum=envoy.data.cluster.v3.Action" json:"action,omitempty"`
   191  	// If ``action`` is ``eject``, specifies the number of times the host has been ejected (local to
   192  	// that Envoy and gets reset if the host gets removed from the upstream cluster for any reason and
   193  	// then re-added).
   194  	NumEjections uint32 `protobuf:"varint,7,opt,name=num_ejections,json=numEjections,proto3" json:"num_ejections,omitempty"`
   195  	// If ``action`` is ``eject``, specifies if the ejection was enforced. ``true`` means the host was
   196  	// ejected. ``false`` means the event was logged but the host was not actually ejected.
   197  	Enforced bool `protobuf:"varint,8,opt,name=enforced,proto3" json:"enforced,omitempty"`
   198  	// Types that are assignable to Event:
   199  	//	*OutlierDetectionEvent_EjectSuccessRateEvent
   200  	//	*OutlierDetectionEvent_EjectConsecutiveEvent
   201  	//	*OutlierDetectionEvent_EjectFailurePercentageEvent
   202  	Event isOutlierDetectionEvent_Event `protobuf_oneof:"event"`
   203  }
   204  
   205  func (x *OutlierDetectionEvent) Reset() {
   206  	*x = OutlierDetectionEvent{}
   207  	if protoimpl.UnsafeEnabled {
   208  		mi := &file_envoy_data_cluster_v3_outlier_detection_event_proto_msgTypes[0]
   209  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   210  		ms.StoreMessageInfo(mi)
   211  	}
   212  }
   213  
   214  func (x *OutlierDetectionEvent) String() string {
   215  	return protoimpl.X.MessageStringOf(x)
   216  }
   217  
   218  func (*OutlierDetectionEvent) ProtoMessage() {}
   219  
   220  func (x *OutlierDetectionEvent) ProtoReflect() protoreflect.Message {
   221  	mi := &file_envoy_data_cluster_v3_outlier_detection_event_proto_msgTypes[0]
   222  	if protoimpl.UnsafeEnabled && x != nil {
   223  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   224  		if ms.LoadMessageInfo() == nil {
   225  			ms.StoreMessageInfo(mi)
   226  		}
   227  		return ms
   228  	}
   229  	return mi.MessageOf(x)
   230  }
   231  
   232  // Deprecated: Use OutlierDetectionEvent.ProtoReflect.Descriptor instead.
   233  func (*OutlierDetectionEvent) Descriptor() ([]byte, []int) {
   234  	return file_envoy_data_cluster_v3_outlier_detection_event_proto_rawDescGZIP(), []int{0}
   235  }
   236  
   237  func (x *OutlierDetectionEvent) GetType() OutlierEjectionType {
   238  	if x != nil {
   239  		return x.Type
   240  	}
   241  	return OutlierEjectionType_CONSECUTIVE_5XX
   242  }
   243  
   244  func (x *OutlierDetectionEvent) GetTimestamp() *timestamp.Timestamp {
   245  	if x != nil {
   246  		return x.Timestamp
   247  	}
   248  	return nil
   249  }
   250  
   251  func (x *OutlierDetectionEvent) GetSecsSinceLastAction() *wrappers.UInt64Value {
   252  	if x != nil {
   253  		return x.SecsSinceLastAction
   254  	}
   255  	return nil
   256  }
   257  
   258  func (x *OutlierDetectionEvent) GetClusterName() string {
   259  	if x != nil {
   260  		return x.ClusterName
   261  	}
   262  	return ""
   263  }
   264  
   265  func (x *OutlierDetectionEvent) GetUpstreamUrl() string {
   266  	if x != nil {
   267  		return x.UpstreamUrl
   268  	}
   269  	return ""
   270  }
   271  
   272  func (x *OutlierDetectionEvent) GetAction() Action {
   273  	if x != nil {
   274  		return x.Action
   275  	}
   276  	return Action_EJECT
   277  }
   278  
   279  func (x *OutlierDetectionEvent) GetNumEjections() uint32 {
   280  	if x != nil {
   281  		return x.NumEjections
   282  	}
   283  	return 0
   284  }
   285  
   286  func (x *OutlierDetectionEvent) GetEnforced() bool {
   287  	if x != nil {
   288  		return x.Enforced
   289  	}
   290  	return false
   291  }
   292  
   293  func (m *OutlierDetectionEvent) GetEvent() isOutlierDetectionEvent_Event {
   294  	if m != nil {
   295  		return m.Event
   296  	}
   297  	return nil
   298  }
   299  
   300  func (x *OutlierDetectionEvent) GetEjectSuccessRateEvent() *OutlierEjectSuccessRate {
   301  	if x, ok := x.GetEvent().(*OutlierDetectionEvent_EjectSuccessRateEvent); ok {
   302  		return x.EjectSuccessRateEvent
   303  	}
   304  	return nil
   305  }
   306  
   307  func (x *OutlierDetectionEvent) GetEjectConsecutiveEvent() *OutlierEjectConsecutive {
   308  	if x, ok := x.GetEvent().(*OutlierDetectionEvent_EjectConsecutiveEvent); ok {
   309  		return x.EjectConsecutiveEvent
   310  	}
   311  	return nil
   312  }
   313  
   314  func (x *OutlierDetectionEvent) GetEjectFailurePercentageEvent() *OutlierEjectFailurePercentage {
   315  	if x, ok := x.GetEvent().(*OutlierDetectionEvent_EjectFailurePercentageEvent); ok {
   316  		return x.EjectFailurePercentageEvent
   317  	}
   318  	return nil
   319  }
   320  
   321  type isOutlierDetectionEvent_Event interface {
   322  	isOutlierDetectionEvent_Event()
   323  }
   324  
   325  type OutlierDetectionEvent_EjectSuccessRateEvent struct {
   326  	EjectSuccessRateEvent *OutlierEjectSuccessRate `protobuf:"bytes,9,opt,name=eject_success_rate_event,json=ejectSuccessRateEvent,proto3,oneof"`
   327  }
   328  
   329  type OutlierDetectionEvent_EjectConsecutiveEvent struct {
   330  	EjectConsecutiveEvent *OutlierEjectConsecutive `protobuf:"bytes,10,opt,name=eject_consecutive_event,json=ejectConsecutiveEvent,proto3,oneof"`
   331  }
   332  
   333  type OutlierDetectionEvent_EjectFailurePercentageEvent struct {
   334  	EjectFailurePercentageEvent *OutlierEjectFailurePercentage `protobuf:"bytes,11,opt,name=eject_failure_percentage_event,json=ejectFailurePercentageEvent,proto3,oneof"`
   335  }
   336  
   337  func (*OutlierDetectionEvent_EjectSuccessRateEvent) isOutlierDetectionEvent_Event() {}
   338  
   339  func (*OutlierDetectionEvent_EjectConsecutiveEvent) isOutlierDetectionEvent_Event() {}
   340  
   341  func (*OutlierDetectionEvent_EjectFailurePercentageEvent) isOutlierDetectionEvent_Event() {}
   342  
   343  type OutlierEjectSuccessRate struct {
   344  	state         protoimpl.MessageState
   345  	sizeCache     protoimpl.SizeCache
   346  	unknownFields protoimpl.UnknownFields
   347  
   348  	// Host’s success rate at the time of the ejection event on a 0-100 range.
   349  	HostSuccessRate uint32 `protobuf:"varint,1,opt,name=host_success_rate,json=hostSuccessRate,proto3" json:"host_success_rate,omitempty"`
   350  	// Average success rate of the hosts in the cluster at the time of the ejection event on a 0-100
   351  	// range.
   352  	ClusterAverageSuccessRate uint32 `protobuf:"varint,2,opt,name=cluster_average_success_rate,json=clusterAverageSuccessRate,proto3" json:"cluster_average_success_rate,omitempty"`
   353  	// Success rate ejection threshold at the time of the ejection event.
   354  	ClusterSuccessRateEjectionThreshold uint32 `protobuf:"varint,3,opt,name=cluster_success_rate_ejection_threshold,json=clusterSuccessRateEjectionThreshold,proto3" json:"cluster_success_rate_ejection_threshold,omitempty"`
   355  }
   356  
   357  func (x *OutlierEjectSuccessRate) Reset() {
   358  	*x = OutlierEjectSuccessRate{}
   359  	if protoimpl.UnsafeEnabled {
   360  		mi := &file_envoy_data_cluster_v3_outlier_detection_event_proto_msgTypes[1]
   361  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   362  		ms.StoreMessageInfo(mi)
   363  	}
   364  }
   365  
   366  func (x *OutlierEjectSuccessRate) String() string {
   367  	return protoimpl.X.MessageStringOf(x)
   368  }
   369  
   370  func (*OutlierEjectSuccessRate) ProtoMessage() {}
   371  
   372  func (x *OutlierEjectSuccessRate) ProtoReflect() protoreflect.Message {
   373  	mi := &file_envoy_data_cluster_v3_outlier_detection_event_proto_msgTypes[1]
   374  	if protoimpl.UnsafeEnabled && x != nil {
   375  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   376  		if ms.LoadMessageInfo() == nil {
   377  			ms.StoreMessageInfo(mi)
   378  		}
   379  		return ms
   380  	}
   381  	return mi.MessageOf(x)
   382  }
   383  
   384  // Deprecated: Use OutlierEjectSuccessRate.ProtoReflect.Descriptor instead.
   385  func (*OutlierEjectSuccessRate) Descriptor() ([]byte, []int) {
   386  	return file_envoy_data_cluster_v3_outlier_detection_event_proto_rawDescGZIP(), []int{1}
   387  }
   388  
   389  func (x *OutlierEjectSuccessRate) GetHostSuccessRate() uint32 {
   390  	if x != nil {
   391  		return x.HostSuccessRate
   392  	}
   393  	return 0
   394  }
   395  
   396  func (x *OutlierEjectSuccessRate) GetClusterAverageSuccessRate() uint32 {
   397  	if x != nil {
   398  		return x.ClusterAverageSuccessRate
   399  	}
   400  	return 0
   401  }
   402  
   403  func (x *OutlierEjectSuccessRate) GetClusterSuccessRateEjectionThreshold() uint32 {
   404  	if x != nil {
   405  		return x.ClusterSuccessRateEjectionThreshold
   406  	}
   407  	return 0
   408  }
   409  
   410  type OutlierEjectConsecutive struct {
   411  	state         protoimpl.MessageState
   412  	sizeCache     protoimpl.SizeCache
   413  	unknownFields protoimpl.UnknownFields
   414  }
   415  
   416  func (x *OutlierEjectConsecutive) Reset() {
   417  	*x = OutlierEjectConsecutive{}
   418  	if protoimpl.UnsafeEnabled {
   419  		mi := &file_envoy_data_cluster_v3_outlier_detection_event_proto_msgTypes[2]
   420  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   421  		ms.StoreMessageInfo(mi)
   422  	}
   423  }
   424  
   425  func (x *OutlierEjectConsecutive) String() string {
   426  	return protoimpl.X.MessageStringOf(x)
   427  }
   428  
   429  func (*OutlierEjectConsecutive) ProtoMessage() {}
   430  
   431  func (x *OutlierEjectConsecutive) ProtoReflect() protoreflect.Message {
   432  	mi := &file_envoy_data_cluster_v3_outlier_detection_event_proto_msgTypes[2]
   433  	if protoimpl.UnsafeEnabled && x != nil {
   434  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   435  		if ms.LoadMessageInfo() == nil {
   436  			ms.StoreMessageInfo(mi)
   437  		}
   438  		return ms
   439  	}
   440  	return mi.MessageOf(x)
   441  }
   442  
   443  // Deprecated: Use OutlierEjectConsecutive.ProtoReflect.Descriptor instead.
   444  func (*OutlierEjectConsecutive) Descriptor() ([]byte, []int) {
   445  	return file_envoy_data_cluster_v3_outlier_detection_event_proto_rawDescGZIP(), []int{2}
   446  }
   447  
   448  type OutlierEjectFailurePercentage struct {
   449  	state         protoimpl.MessageState
   450  	sizeCache     protoimpl.SizeCache
   451  	unknownFields protoimpl.UnknownFields
   452  
   453  	// Host's success rate at the time of the ejection event on a 0-100 range.
   454  	HostSuccessRate uint32 `protobuf:"varint,1,opt,name=host_success_rate,json=hostSuccessRate,proto3" json:"host_success_rate,omitempty"`
   455  }
   456  
   457  func (x *OutlierEjectFailurePercentage) Reset() {
   458  	*x = OutlierEjectFailurePercentage{}
   459  	if protoimpl.UnsafeEnabled {
   460  		mi := &file_envoy_data_cluster_v3_outlier_detection_event_proto_msgTypes[3]
   461  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   462  		ms.StoreMessageInfo(mi)
   463  	}
   464  }
   465  
   466  func (x *OutlierEjectFailurePercentage) String() string {
   467  	return protoimpl.X.MessageStringOf(x)
   468  }
   469  
   470  func (*OutlierEjectFailurePercentage) ProtoMessage() {}
   471  
   472  func (x *OutlierEjectFailurePercentage) ProtoReflect() protoreflect.Message {
   473  	mi := &file_envoy_data_cluster_v3_outlier_detection_event_proto_msgTypes[3]
   474  	if protoimpl.UnsafeEnabled && x != nil {
   475  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   476  		if ms.LoadMessageInfo() == nil {
   477  			ms.StoreMessageInfo(mi)
   478  		}
   479  		return ms
   480  	}
   481  	return mi.MessageOf(x)
   482  }
   483  
   484  // Deprecated: Use OutlierEjectFailurePercentage.ProtoReflect.Descriptor instead.
   485  func (*OutlierEjectFailurePercentage) Descriptor() ([]byte, []int) {
   486  	return file_envoy_data_cluster_v3_outlier_detection_event_proto_rawDescGZIP(), []int{3}
   487  }
   488  
   489  func (x *OutlierEjectFailurePercentage) GetHostSuccessRate() uint32 {
   490  	if x != nil {
   491  		return x.HostSuccessRate
   492  	}
   493  	return 0
   494  }
   495  
   496  var File_envoy_data_cluster_v3_outlier_detection_event_proto protoreflect.FileDescriptor
   497  
   498  var file_envoy_data_cluster_v3_outlier_detection_event_proto_rawDesc = []byte{
   499  	0x0a, 0x33, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x63, 0x6c, 0x75,
   500  	0x73, 0x74, 0x65, 0x72, 0x2f, 0x76, 0x33, 0x2f, 0x6f, 0x75, 0x74, 0x6c, 0x69, 0x65, 0x72, 0x5f,
   501  	0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e,
   502  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x15, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x64, 0x61, 0x74,
   503  	0x61, 0x2e, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2e, 0x76, 0x33, 0x1a, 0x1f, 0x67, 0x6f,
   504  	0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69,
   505  	0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67,
   506  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x77,
   507  	0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x75,
   508  	0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
   509  	0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x21, 0x75, 0x64,
   510  	0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x76,
   511  	0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
   512  	0x17, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61,
   513  	0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xe1, 0x06, 0x0a, 0x15, 0x4f, 0x75, 0x74,
   514  	0x6c, 0x69, 0x65, 0x72, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x76, 0x65,
   515  	0x6e, 0x74, 0x12, 0x48, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e,
   516  	0x32, 0x2a, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x63, 0x6c,
   517  	0x75, 0x73, 0x74, 0x65, 0x72, 0x2e, 0x76, 0x33, 0x2e, 0x4f, 0x75, 0x74, 0x6c, 0x69, 0x65, 0x72,
   518  	0x45, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x42, 0x08, 0xfa, 0x42,
   519  	0x05, 0x82, 0x01, 0x02, 0x10, 0x01, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x38, 0x0a, 0x09,
   520  	0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
   521  	0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
   522  	0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x74, 0x69, 0x6d,
   523  	0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x51, 0x0a, 0x16, 0x73, 0x65, 0x63, 0x73, 0x5f, 0x73,
   524  	0x69, 0x6e, 0x63, 0x65, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e,
   525  	0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
   526  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56,
   527  	0x61, 0x6c, 0x75, 0x65, 0x52, 0x13, 0x73, 0x65, 0x63, 0x73, 0x53, 0x69, 0x6e, 0x63, 0x65, 0x4c,
   528  	0x61, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2a, 0x0a, 0x0c, 0x63, 0x6c, 0x75,
   529  	0x73, 0x74, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42,
   530  	0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65,
   531  	0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x0c, 0x75, 0x70, 0x73, 0x74, 0x72, 0x65, 0x61,
   532  	0x6d, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04,
   533  	0x72, 0x02, 0x10, 0x01, 0x52, 0x0b, 0x75, 0x70, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x55, 0x72,
   534  	0x6c, 0x12, 0x3f, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28,
   535  	0x0e, 0x32, 0x1d, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x63,
   536  	0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2e, 0x76, 0x33, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e,
   537  	0x42, 0x08, 0xfa, 0x42, 0x05, 0x82, 0x01, 0x02, 0x10, 0x01, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69,
   538  	0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x6e, 0x75, 0x6d, 0x5f, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x69,
   539  	0x6f, 0x6e, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6e, 0x75, 0x6d, 0x45, 0x6a,
   540  	0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x66, 0x6f, 0x72,
   541  	0x63, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x65, 0x6e, 0x66, 0x6f, 0x72,
   542  	0x63, 0x65, 0x64, 0x12, 0x69, 0x0a, 0x18, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x73, 0x75, 0x63,
   543  	0x63, 0x65, 0x73, 0x73, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18,
   544  	0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x64, 0x61,
   545  	0x74, 0x61, 0x2e, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2e, 0x76, 0x33, 0x2e, 0x4f, 0x75,
   546  	0x74, 0x6c, 0x69, 0x65, 0x72, 0x45, 0x6a, 0x65, 0x63, 0x74, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73,
   547  	0x73, 0x52, 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x15, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x53, 0x75,
   548  	0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x61, 0x74, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x68,
   549  	0x0a, 0x17, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x74,
   550  	0x69, 0x76, 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32,
   551  	0x2e, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x63, 0x6c, 0x75,
   552  	0x73, 0x74, 0x65, 0x72, 0x2e, 0x76, 0x33, 0x2e, 0x4f, 0x75, 0x74, 0x6c, 0x69, 0x65, 0x72, 0x45,
   553  	0x6a, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x74, 0x69, 0x76, 0x65, 0x48,
   554  	0x00, 0x52, 0x15, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x74,
   555  	0x69, 0x76, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x7b, 0x0a, 0x1e, 0x65, 0x6a, 0x65, 0x63,
   556  	0x74, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e,
   557  	0x74, 0x61, 0x67, 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b,
   558  	0x32, 0x34, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x63, 0x6c,
   559  	0x75, 0x73, 0x74, 0x65, 0x72, 0x2e, 0x76, 0x33, 0x2e, 0x4f, 0x75, 0x74, 0x6c, 0x69, 0x65, 0x72,
   560  	0x45, 0x6a, 0x65, 0x63, 0x74, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x50, 0x65, 0x72, 0x63,
   561  	0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x1b, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x46,
   562  	0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65,
   563  	0x45, 0x76, 0x65, 0x6e, 0x74, 0x3a, 0x37, 0x9a, 0xc5, 0x88, 0x1e, 0x32, 0x0a, 0x30, 0x65, 0x6e,
   564  	0x76, 0x6f, 0x79, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
   565  	0x2e, 0x76, 0x32, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x4f, 0x75, 0x74, 0x6c, 0x69, 0x65, 0x72,
   566  	0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x42, 0x0c,
   567  	0x0a, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x03, 0xf8, 0x42, 0x01, 0x22, 0xb2, 0x02, 0x0a,
   568  	0x17, 0x4f, 0x75, 0x74, 0x6c, 0x69, 0x65, 0x72, 0x45, 0x6a, 0x65, 0x63, 0x74, 0x53, 0x75, 0x63,
   569  	0x63, 0x65, 0x73, 0x73, 0x52, 0x61, 0x74, 0x65, 0x12, 0x33, 0x0a, 0x11, 0x68, 0x6f, 0x73, 0x74,
   570  	0x5f, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20,
   571  	0x01, 0x28, 0x0d, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x2a, 0x02, 0x18, 0x64, 0x52, 0x0f, 0x68, 0x6f,
   572  	0x73, 0x74, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x61, 0x74, 0x65, 0x12, 0x48, 0x0a,
   573  	0x1c, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65,
   574  	0x5f, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20,
   575  	0x01, 0x28, 0x0d, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x2a, 0x02, 0x18, 0x64, 0x52, 0x19, 0x63, 0x6c,
   576  	0x75, 0x73, 0x74, 0x65, 0x72, 0x41, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x53, 0x75, 0x63, 0x63,
   577  	0x65, 0x73, 0x73, 0x52, 0x61, 0x74, 0x65, 0x12, 0x5d, 0x0a, 0x27, 0x63, 0x6c, 0x75, 0x73, 0x74,
   578  	0x65, 0x72, 0x5f, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f,
   579  	0x65, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f,
   580  	0x6c, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x2a, 0x02, 0x18,
   581  	0x64, 0x52, 0x23, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73,
   582  	0x73, 0x52, 0x61, 0x74, 0x65, 0x45, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x68, 0x72,
   583  	0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x3a, 0x39, 0x9a, 0xc5, 0x88, 0x1e, 0x34, 0x0a, 0x32, 0x65,
   584  	0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65,
   585  	0x72, 0x2e, 0x76, 0x32, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x4f, 0x75, 0x74, 0x6c, 0x69, 0x65,
   586  	0x72, 0x45, 0x6a, 0x65, 0x63, 0x74, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x61, 0x74,
   587  	0x65, 0x22, 0x54, 0x0a, 0x17, 0x4f, 0x75, 0x74, 0x6c, 0x69, 0x65, 0x72, 0x45, 0x6a, 0x65, 0x63,
   588  	0x74, 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x74, 0x69, 0x76, 0x65, 0x3a, 0x39, 0x9a, 0xc5,
   589  	0x88, 0x1e, 0x34, 0x0a, 0x32, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e,
   590  	0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2e, 0x76, 0x32, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e,
   591  	0x4f, 0x75, 0x74, 0x6c, 0x69, 0x65, 0x72, 0x45, 0x6a, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x6e, 0x73,
   592  	0x65, 0x63, 0x75, 0x74, 0x69, 0x76, 0x65, 0x22, 0x95, 0x01, 0x0a, 0x1d, 0x4f, 0x75, 0x74, 0x6c,
   593  	0x69, 0x65, 0x72, 0x45, 0x6a, 0x65, 0x63, 0x74, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x50,
   594  	0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x12, 0x33, 0x0a, 0x11, 0x68, 0x6f, 0x73,
   595  	0x74, 0x5f, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x01,
   596  	0x20, 0x01, 0x28, 0x0d, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x2a, 0x02, 0x18, 0x64, 0x52, 0x0f, 0x68,
   597  	0x6f, 0x73, 0x74, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x61, 0x74, 0x65, 0x3a, 0x3f,
   598  	0x9a, 0xc5, 0x88, 0x1e, 0x3a, 0x0a, 0x38, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x64, 0x61, 0x74,
   599  	0x61, 0x2e, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2e, 0x76, 0x32, 0x61, 0x6c, 0x70, 0x68,
   600  	0x61, 0x2e, 0x4f, 0x75, 0x74, 0x6c, 0x69, 0x65, 0x72, 0x45, 0x6a, 0x65, 0x63, 0x74, 0x46, 0x61,
   601  	0x69, 0x6c, 0x75, 0x72, 0x65, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x2a,
   602  	0xdf, 0x01, 0x0a, 0x13, 0x4f, 0x75, 0x74, 0x6c, 0x69, 0x65, 0x72, 0x45, 0x6a, 0x65, 0x63, 0x74,
   603  	0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x13, 0x0a, 0x0f, 0x43, 0x4f, 0x4e, 0x53, 0x45,
   604  	0x43, 0x55, 0x54, 0x49, 0x56, 0x45, 0x5f, 0x35, 0x58, 0x58, 0x10, 0x00, 0x12, 0x1f, 0x0a, 0x1b,
   605  	0x43, 0x4f, 0x4e, 0x53, 0x45, 0x43, 0x55, 0x54, 0x49, 0x56, 0x45, 0x5f, 0x47, 0x41, 0x54, 0x45,
   606  	0x57, 0x41, 0x59, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x10, 0x01, 0x12, 0x10, 0x0a,
   607  	0x0c, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x52, 0x41, 0x54, 0x45, 0x10, 0x02, 0x12,
   608  	0x24, 0x0a, 0x20, 0x43, 0x4f, 0x4e, 0x53, 0x45, 0x43, 0x55, 0x54, 0x49, 0x56, 0x45, 0x5f, 0x4c,
   609  	0x4f, 0x43, 0x41, 0x4c, 0x5f, 0x4f, 0x52, 0x49, 0x47, 0x49, 0x4e, 0x5f, 0x46, 0x41, 0x49, 0x4c,
   610  	0x55, 0x52, 0x45, 0x10, 0x03, 0x12, 0x1d, 0x0a, 0x19, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53,
   611  	0x5f, 0x52, 0x41, 0x54, 0x45, 0x5f, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x5f, 0x4f, 0x52, 0x49, 0x47,
   612  	0x49, 0x4e, 0x10, 0x04, 0x12, 0x16, 0x0a, 0x12, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f,
   613  	0x50, 0x45, 0x52, 0x43, 0x45, 0x4e, 0x54, 0x41, 0x47, 0x45, 0x10, 0x05, 0x12, 0x23, 0x0a, 0x1f,
   614  	0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x50, 0x45, 0x52, 0x43, 0x45, 0x4e, 0x54, 0x41,
   615  	0x47, 0x45, 0x5f, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x5f, 0x4f, 0x52, 0x49, 0x47, 0x49, 0x4e, 0x10,
   616  	0x06, 0x2a, 0x20, 0x0a, 0x06, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x09, 0x0a, 0x05, 0x45,
   617  	0x4a, 0x45, 0x43, 0x54, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x45, 0x4a, 0x45, 0x43,
   618  	0x54, 0x10, 0x01, 0x42, 0x4b, 0x0a, 0x23, 0x69, 0x6f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x70,
   619  	0x72, 0x6f, 0x78, 0x79, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e,
   620  	0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2e, 0x76, 0x33, 0x42, 0x1a, 0x4f, 0x75, 0x74, 0x6c,
   621  	0x69, 0x65, 0x72, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x76, 0x65, 0x6e,
   622  	0x74, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0xba, 0x80, 0xc8, 0xd1, 0x06, 0x02, 0x10, 0x02,
   623  	0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
   624  }
   625  
   626  var (
   627  	file_envoy_data_cluster_v3_outlier_detection_event_proto_rawDescOnce sync.Once
   628  	file_envoy_data_cluster_v3_outlier_detection_event_proto_rawDescData = file_envoy_data_cluster_v3_outlier_detection_event_proto_rawDesc
   629  )
   630  
   631  func file_envoy_data_cluster_v3_outlier_detection_event_proto_rawDescGZIP() []byte {
   632  	file_envoy_data_cluster_v3_outlier_detection_event_proto_rawDescOnce.Do(func() {
   633  		file_envoy_data_cluster_v3_outlier_detection_event_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_data_cluster_v3_outlier_detection_event_proto_rawDescData)
   634  	})
   635  	return file_envoy_data_cluster_v3_outlier_detection_event_proto_rawDescData
   636  }
   637  
   638  var file_envoy_data_cluster_v3_outlier_detection_event_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
   639  var file_envoy_data_cluster_v3_outlier_detection_event_proto_msgTypes = make([]protoimpl.MessageInfo, 4)
   640  var file_envoy_data_cluster_v3_outlier_detection_event_proto_goTypes = []interface{}{
   641  	(OutlierEjectionType)(0),              // 0: envoy.data.cluster.v3.OutlierEjectionType
   642  	(Action)(0),                           // 1: envoy.data.cluster.v3.Action
   643  	(*OutlierDetectionEvent)(nil),         // 2: envoy.data.cluster.v3.OutlierDetectionEvent
   644  	(*OutlierEjectSuccessRate)(nil),       // 3: envoy.data.cluster.v3.OutlierEjectSuccessRate
   645  	(*OutlierEjectConsecutive)(nil),       // 4: envoy.data.cluster.v3.OutlierEjectConsecutive
   646  	(*OutlierEjectFailurePercentage)(nil), // 5: envoy.data.cluster.v3.OutlierEjectFailurePercentage
   647  	(*timestamp.Timestamp)(nil),           // 6: google.protobuf.Timestamp
   648  	(*wrappers.UInt64Value)(nil),          // 7: google.protobuf.UInt64Value
   649  }
   650  var file_envoy_data_cluster_v3_outlier_detection_event_proto_depIdxs = []int32{
   651  	0, // 0: envoy.data.cluster.v3.OutlierDetectionEvent.type:type_name -> envoy.data.cluster.v3.OutlierEjectionType
   652  	6, // 1: envoy.data.cluster.v3.OutlierDetectionEvent.timestamp:type_name -> google.protobuf.Timestamp
   653  	7, // 2: envoy.data.cluster.v3.OutlierDetectionEvent.secs_since_last_action:type_name -> google.protobuf.UInt64Value
   654  	1, // 3: envoy.data.cluster.v3.OutlierDetectionEvent.action:type_name -> envoy.data.cluster.v3.Action
   655  	3, // 4: envoy.data.cluster.v3.OutlierDetectionEvent.eject_success_rate_event:type_name -> envoy.data.cluster.v3.OutlierEjectSuccessRate
   656  	4, // 5: envoy.data.cluster.v3.OutlierDetectionEvent.eject_consecutive_event:type_name -> envoy.data.cluster.v3.OutlierEjectConsecutive
   657  	5, // 6: envoy.data.cluster.v3.OutlierDetectionEvent.eject_failure_percentage_event:type_name -> envoy.data.cluster.v3.OutlierEjectFailurePercentage
   658  	7, // [7:7] is the sub-list for method output_type
   659  	7, // [7:7] is the sub-list for method input_type
   660  	7, // [7:7] is the sub-list for extension type_name
   661  	7, // [7:7] is the sub-list for extension extendee
   662  	0, // [0:7] is the sub-list for field type_name
   663  }
   664  
   665  func init() { file_envoy_data_cluster_v3_outlier_detection_event_proto_init() }
   666  func file_envoy_data_cluster_v3_outlier_detection_event_proto_init() {
   667  	if File_envoy_data_cluster_v3_outlier_detection_event_proto != nil {
   668  		return
   669  	}
   670  	if !protoimpl.UnsafeEnabled {
   671  		file_envoy_data_cluster_v3_outlier_detection_event_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
   672  			switch v := v.(*OutlierDetectionEvent); i {
   673  			case 0:
   674  				return &v.state
   675  			case 1:
   676  				return &v.sizeCache
   677  			case 2:
   678  				return &v.unknownFields
   679  			default:
   680  				return nil
   681  			}
   682  		}
   683  		file_envoy_data_cluster_v3_outlier_detection_event_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
   684  			switch v := v.(*OutlierEjectSuccessRate); i {
   685  			case 0:
   686  				return &v.state
   687  			case 1:
   688  				return &v.sizeCache
   689  			case 2:
   690  				return &v.unknownFields
   691  			default:
   692  				return nil
   693  			}
   694  		}
   695  		file_envoy_data_cluster_v3_outlier_detection_event_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
   696  			switch v := v.(*OutlierEjectConsecutive); i {
   697  			case 0:
   698  				return &v.state
   699  			case 1:
   700  				return &v.sizeCache
   701  			case 2:
   702  				return &v.unknownFields
   703  			default:
   704  				return nil
   705  			}
   706  		}
   707  		file_envoy_data_cluster_v3_outlier_detection_event_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
   708  			switch v := v.(*OutlierEjectFailurePercentage); i {
   709  			case 0:
   710  				return &v.state
   711  			case 1:
   712  				return &v.sizeCache
   713  			case 2:
   714  				return &v.unknownFields
   715  			default:
   716  				return nil
   717  			}
   718  		}
   719  	}
   720  	file_envoy_data_cluster_v3_outlier_detection_event_proto_msgTypes[0].OneofWrappers = []interface{}{
   721  		(*OutlierDetectionEvent_EjectSuccessRateEvent)(nil),
   722  		(*OutlierDetectionEvent_EjectConsecutiveEvent)(nil),
   723  		(*OutlierDetectionEvent_EjectFailurePercentageEvent)(nil),
   724  	}
   725  	type x struct{}
   726  	out := protoimpl.TypeBuilder{
   727  		File: protoimpl.DescBuilder{
   728  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
   729  			RawDescriptor: file_envoy_data_cluster_v3_outlier_detection_event_proto_rawDesc,
   730  			NumEnums:      2,
   731  			NumMessages:   4,
   732  			NumExtensions: 0,
   733  			NumServices:   0,
   734  		},
   735  		GoTypes:           file_envoy_data_cluster_v3_outlier_detection_event_proto_goTypes,
   736  		DependencyIndexes: file_envoy_data_cluster_v3_outlier_detection_event_proto_depIdxs,
   737  		EnumInfos:         file_envoy_data_cluster_v3_outlier_detection_event_proto_enumTypes,
   738  		MessageInfos:      file_envoy_data_cluster_v3_outlier_detection_event_proto_msgTypes,
   739  	}.Build()
   740  	File_envoy_data_cluster_v3_outlier_detection_event_proto = out.File
   741  	file_envoy_data_cluster_v3_outlier_detection_event_proto_rawDesc = nil
   742  	file_envoy_data_cluster_v3_outlier_detection_event_proto_goTypes = nil
   743  	file_envoy_data_cluster_v3_outlier_detection_event_proto_depIdxs = nil
   744  }