...

Source file src/github.com/datawire/ambassador/v2/pkg/api/envoy/config/metrics/v4alpha/stats.pb.go

Documentation: github.com/datawire/ambassador/v2/pkg/api/envoy/config/metrics/v4alpha

     1  // Code generated by protoc-gen-go. DO NOT EDIT.
     2  // versions:
     3  // 	protoc-gen-go v1.25.0
     4  // 	protoc        v3.14.0
     5  // source: envoy/config/metrics/v4alpha/stats.proto
     6  
     7  package envoy_config_metrics_v4alpha
     8  
     9  import (
    10  	_ "github.com/cncf/udpa/go/udpa/annotations"
    11  	v4alpha1 "github.com/datawire/ambassador/v2/pkg/api/envoy/config/core/v4alpha"
    12  	v4alpha "github.com/datawire/ambassador/v2/pkg/api/envoy/type/matcher/v4alpha"
    13  	_ "github.com/envoyproxy/protoc-gen-validate/validate"
    14  	proto "github.com/golang/protobuf/proto"
    15  	any "github.com/golang/protobuf/ptypes/any"
    16  	_ "github.com/golang/protobuf/ptypes/struct"
    17  	wrappers "github.com/golang/protobuf/ptypes/wrappers"
    18  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    19  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    20  	reflect "reflect"
    21  	sync "sync"
    22  )
    23  
    24  const (
    25  	// Verify that this generated code is sufficiently up-to-date.
    26  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    27  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    28  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    29  )
    30  
    31  // This is a compile-time assertion that a sufficiently up-to-date version
    32  // of the legacy proto package is being used.
    33  const _ = proto.ProtoPackageIsVersion4
    34  
    35  // Configuration for pluggable stats sinks.
    36  type StatsSink struct {
    37  	state         protoimpl.MessageState
    38  	sizeCache     protoimpl.SizeCache
    39  	unknownFields protoimpl.UnknownFields
    40  
    41  	// The name of the stats sink to instantiate. The name must match a supported
    42  	// stats sink. The built-in stats sinks are:
    43  	//
    44  	// * :ref:`envoy.stat_sinks.statsd <envoy_api_msg_config.metrics.v4alpha.StatsdSink>`
    45  	// * :ref:`envoy.stat_sinks.dog_statsd <envoy_api_msg_config.metrics.v4alpha.DogStatsdSink>`
    46  	// * :ref:`envoy.stat_sinks.metrics_service <envoy_api_msg_config.metrics.v4alpha.MetricsServiceConfig>`
    47  	// * :ref:`envoy.stat_sinks.hystrix <envoy_api_msg_config.metrics.v4alpha.HystrixSink>`
    48  	//
    49  	// Sinks optionally support tagged/multiple dimensional metrics.
    50  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
    51  	// Stats sink specific configuration which depends on the sink being instantiated. See
    52  	// :ref:`StatsdSink <envoy_api_msg_config.metrics.v4alpha.StatsdSink>` for an example.
    53  	//
    54  	// Types that are assignable to ConfigType:
    55  	//	*StatsSink_TypedConfig
    56  	ConfigType isStatsSink_ConfigType `protobuf_oneof:"config_type"`
    57  }
    58  
    59  func (x *StatsSink) Reset() {
    60  	*x = StatsSink{}
    61  	if protoimpl.UnsafeEnabled {
    62  		mi := &file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[0]
    63  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
    64  		ms.StoreMessageInfo(mi)
    65  	}
    66  }
    67  
    68  func (x *StatsSink) String() string {
    69  	return protoimpl.X.MessageStringOf(x)
    70  }
    71  
    72  func (*StatsSink) ProtoMessage() {}
    73  
    74  func (x *StatsSink) ProtoReflect() protoreflect.Message {
    75  	mi := &file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[0]
    76  	if protoimpl.UnsafeEnabled && x != nil {
    77  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
    78  		if ms.LoadMessageInfo() == nil {
    79  			ms.StoreMessageInfo(mi)
    80  		}
    81  		return ms
    82  	}
    83  	return mi.MessageOf(x)
    84  }
    85  
    86  // Deprecated: Use StatsSink.ProtoReflect.Descriptor instead.
    87  func (*StatsSink) Descriptor() ([]byte, []int) {
    88  	return file_envoy_config_metrics_v4alpha_stats_proto_rawDescGZIP(), []int{0}
    89  }
    90  
    91  func (x *StatsSink) GetName() string {
    92  	if x != nil {
    93  		return x.Name
    94  	}
    95  	return ""
    96  }
    97  
    98  func (m *StatsSink) GetConfigType() isStatsSink_ConfigType {
    99  	if m != nil {
   100  		return m.ConfigType
   101  	}
   102  	return nil
   103  }
   104  
   105  func (x *StatsSink) GetTypedConfig() *any.Any {
   106  	if x, ok := x.GetConfigType().(*StatsSink_TypedConfig); ok {
   107  		return x.TypedConfig
   108  	}
   109  	return nil
   110  }
   111  
   112  type isStatsSink_ConfigType interface {
   113  	isStatsSink_ConfigType()
   114  }
   115  
   116  type StatsSink_TypedConfig struct {
   117  	TypedConfig *any.Any `protobuf:"bytes,3,opt,name=typed_config,json=typedConfig,proto3,oneof"`
   118  }
   119  
   120  func (*StatsSink_TypedConfig) isStatsSink_ConfigType() {}
   121  
   122  // Statistics configuration such as tagging.
   123  type StatsConfig struct {
   124  	state         protoimpl.MessageState
   125  	sizeCache     protoimpl.SizeCache
   126  	unknownFields protoimpl.UnknownFields
   127  
   128  	// Each stat name is iteratively processed through these tag specifiers.
   129  	// When a tag is matched, the first capture group is removed from the name so
   130  	// later :ref:`TagSpecifiers <envoy_api_msg_config.metrics.v4alpha.TagSpecifier>` cannot match that
   131  	// same portion of the match.
   132  	StatsTags []*TagSpecifier `protobuf:"bytes,1,rep,name=stats_tags,json=statsTags,proto3" json:"stats_tags,omitempty"`
   133  	// Use all default tag regexes specified in Envoy. These can be combined with
   134  	// custom tags specified in :ref:`stats_tags
   135  	// <envoy_api_field_config.metrics.v4alpha.StatsConfig.stats_tags>`. They will be processed before
   136  	// the custom tags.
   137  	//
   138  	// .. note::
   139  	//
   140  	//   If any default tags are specified twice, the config will be considered
   141  	//   invalid.
   142  	//
   143  	// See :repo:`well_known_names.h <source/common/config/well_known_names.h>` for a list of the
   144  	// default tags in Envoy.
   145  	//
   146  	// If not provided, the value is assumed to be true.
   147  	UseAllDefaultTags *wrappers.BoolValue `protobuf:"bytes,2,opt,name=use_all_default_tags,json=useAllDefaultTags,proto3" json:"use_all_default_tags,omitempty"`
   148  	// Inclusion/exclusion matcher for stat name creation. If not provided, all stats are instantiated
   149  	// as normal. Preventing the instantiation of certain families of stats can improve memory
   150  	// performance for Envoys running especially large configs.
   151  	//
   152  	// .. warning::
   153  	//   Excluding stats may affect Envoy's behavior in undocumented ways. See
   154  	//   `issue #8771 <https://github.com/envoyproxy/envoy/issues/8771>`_ for more information.
   155  	//   If any unexpected behavior changes are observed, please open a new issue immediately.
   156  	StatsMatcher *StatsMatcher `protobuf:"bytes,3,opt,name=stats_matcher,json=statsMatcher,proto3" json:"stats_matcher,omitempty"`
   157  	// Defines rules for setting the histogram buckets. Rules are evaluated in order, and the first
   158  	// match is applied. If no match is found (or if no rules are set), the following default buckets
   159  	// are used:
   160  	//
   161  	//   .. code-block:: json
   162  	//
   163  	//     [
   164  	//       0.5,
   165  	//       1,
   166  	//       5,
   167  	//       10,
   168  	//       25,
   169  	//       50,
   170  	//       100,
   171  	//       250,
   172  	//       500,
   173  	//       1000,
   174  	//       2500,
   175  	//       5000,
   176  	//       10000,
   177  	//       30000,
   178  	//       60000,
   179  	//       300000,
   180  	//       600000,
   181  	//       1800000,
   182  	//       3600000
   183  	//     ]
   184  	HistogramBucketSettings []*HistogramBucketSettings `protobuf:"bytes,4,rep,name=histogram_bucket_settings,json=histogramBucketSettings,proto3" json:"histogram_bucket_settings,omitempty"`
   185  }
   186  
   187  func (x *StatsConfig) Reset() {
   188  	*x = StatsConfig{}
   189  	if protoimpl.UnsafeEnabled {
   190  		mi := &file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[1]
   191  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   192  		ms.StoreMessageInfo(mi)
   193  	}
   194  }
   195  
   196  func (x *StatsConfig) String() string {
   197  	return protoimpl.X.MessageStringOf(x)
   198  }
   199  
   200  func (*StatsConfig) ProtoMessage() {}
   201  
   202  func (x *StatsConfig) ProtoReflect() protoreflect.Message {
   203  	mi := &file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[1]
   204  	if protoimpl.UnsafeEnabled && x != nil {
   205  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   206  		if ms.LoadMessageInfo() == nil {
   207  			ms.StoreMessageInfo(mi)
   208  		}
   209  		return ms
   210  	}
   211  	return mi.MessageOf(x)
   212  }
   213  
   214  // Deprecated: Use StatsConfig.ProtoReflect.Descriptor instead.
   215  func (*StatsConfig) Descriptor() ([]byte, []int) {
   216  	return file_envoy_config_metrics_v4alpha_stats_proto_rawDescGZIP(), []int{1}
   217  }
   218  
   219  func (x *StatsConfig) GetStatsTags() []*TagSpecifier {
   220  	if x != nil {
   221  		return x.StatsTags
   222  	}
   223  	return nil
   224  }
   225  
   226  func (x *StatsConfig) GetUseAllDefaultTags() *wrappers.BoolValue {
   227  	if x != nil {
   228  		return x.UseAllDefaultTags
   229  	}
   230  	return nil
   231  }
   232  
   233  func (x *StatsConfig) GetStatsMatcher() *StatsMatcher {
   234  	if x != nil {
   235  		return x.StatsMatcher
   236  	}
   237  	return nil
   238  }
   239  
   240  func (x *StatsConfig) GetHistogramBucketSettings() []*HistogramBucketSettings {
   241  	if x != nil {
   242  		return x.HistogramBucketSettings
   243  	}
   244  	return nil
   245  }
   246  
   247  // Configuration for disabling stat instantiation.
   248  type StatsMatcher struct {
   249  	state         protoimpl.MessageState
   250  	sizeCache     protoimpl.SizeCache
   251  	unknownFields protoimpl.UnknownFields
   252  
   253  	// Types that are assignable to StatsMatcher:
   254  	//	*StatsMatcher_RejectAll
   255  	//	*StatsMatcher_ExclusionList
   256  	//	*StatsMatcher_InclusionList
   257  	StatsMatcher isStatsMatcher_StatsMatcher `protobuf_oneof:"stats_matcher"`
   258  }
   259  
   260  func (x *StatsMatcher) Reset() {
   261  	*x = StatsMatcher{}
   262  	if protoimpl.UnsafeEnabled {
   263  		mi := &file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[2]
   264  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   265  		ms.StoreMessageInfo(mi)
   266  	}
   267  }
   268  
   269  func (x *StatsMatcher) String() string {
   270  	return protoimpl.X.MessageStringOf(x)
   271  }
   272  
   273  func (*StatsMatcher) ProtoMessage() {}
   274  
   275  func (x *StatsMatcher) ProtoReflect() protoreflect.Message {
   276  	mi := &file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[2]
   277  	if protoimpl.UnsafeEnabled && x != nil {
   278  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   279  		if ms.LoadMessageInfo() == nil {
   280  			ms.StoreMessageInfo(mi)
   281  		}
   282  		return ms
   283  	}
   284  	return mi.MessageOf(x)
   285  }
   286  
   287  // Deprecated: Use StatsMatcher.ProtoReflect.Descriptor instead.
   288  func (*StatsMatcher) Descriptor() ([]byte, []int) {
   289  	return file_envoy_config_metrics_v4alpha_stats_proto_rawDescGZIP(), []int{2}
   290  }
   291  
   292  func (m *StatsMatcher) GetStatsMatcher() isStatsMatcher_StatsMatcher {
   293  	if m != nil {
   294  		return m.StatsMatcher
   295  	}
   296  	return nil
   297  }
   298  
   299  func (x *StatsMatcher) GetRejectAll() bool {
   300  	if x, ok := x.GetStatsMatcher().(*StatsMatcher_RejectAll); ok {
   301  		return x.RejectAll
   302  	}
   303  	return false
   304  }
   305  
   306  func (x *StatsMatcher) GetExclusionList() *v4alpha.ListStringMatcher {
   307  	if x, ok := x.GetStatsMatcher().(*StatsMatcher_ExclusionList); ok {
   308  		return x.ExclusionList
   309  	}
   310  	return nil
   311  }
   312  
   313  func (x *StatsMatcher) GetInclusionList() *v4alpha.ListStringMatcher {
   314  	if x, ok := x.GetStatsMatcher().(*StatsMatcher_InclusionList); ok {
   315  		return x.InclusionList
   316  	}
   317  	return nil
   318  }
   319  
   320  type isStatsMatcher_StatsMatcher interface {
   321  	isStatsMatcher_StatsMatcher()
   322  }
   323  
   324  type StatsMatcher_RejectAll struct {
   325  	// If `reject_all` is true, then all stats are disabled. If `reject_all` is false, then all
   326  	// stats are enabled.
   327  	RejectAll bool `protobuf:"varint,1,opt,name=reject_all,json=rejectAll,proto3,oneof"`
   328  }
   329  
   330  type StatsMatcher_ExclusionList struct {
   331  	// Exclusive match. All stats are enabled except for those matching one of the supplied
   332  	// StringMatcher protos.
   333  	ExclusionList *v4alpha.ListStringMatcher `protobuf:"bytes,2,opt,name=exclusion_list,json=exclusionList,proto3,oneof"`
   334  }
   335  
   336  type StatsMatcher_InclusionList struct {
   337  	// Inclusive match. No stats are enabled except for those matching one of the supplied
   338  	// StringMatcher protos.
   339  	InclusionList *v4alpha.ListStringMatcher `protobuf:"bytes,3,opt,name=inclusion_list,json=inclusionList,proto3,oneof"`
   340  }
   341  
   342  func (*StatsMatcher_RejectAll) isStatsMatcher_StatsMatcher() {}
   343  
   344  func (*StatsMatcher_ExclusionList) isStatsMatcher_StatsMatcher() {}
   345  
   346  func (*StatsMatcher_InclusionList) isStatsMatcher_StatsMatcher() {}
   347  
   348  // Designates a tag name and value pair. The value may be either a fixed value
   349  // or a regex providing the value via capture groups. The specified tag will be
   350  // unconditionally set if a fixed value, otherwise it will only be set if one
   351  // or more capture groups in the regex match.
   352  type TagSpecifier struct {
   353  	state         protoimpl.MessageState
   354  	sizeCache     protoimpl.SizeCache
   355  	unknownFields protoimpl.UnknownFields
   356  
   357  	// Attaches an identifier to the tag values to identify the tag being in the
   358  	// sink. Envoy has a set of default names and regexes to extract dynamic
   359  	// portions of existing stats, which can be found in :repo:`well_known_names.h
   360  	// <source/common/config/well_known_names.h>` in the Envoy repository. If a :ref:`tag_name
   361  	// <envoy_api_field_config.metrics.v4alpha.TagSpecifier.tag_name>` is provided in the config and
   362  	// neither :ref:`regex <envoy_api_field_config.metrics.v4alpha.TagSpecifier.regex>` or
   363  	// :ref:`fixed_value <envoy_api_field_config.metrics.v4alpha.TagSpecifier.fixed_value>` were specified,
   364  	// Envoy will attempt to find that name in its set of defaults and use the accompanying regex.
   365  	//
   366  	// .. note::
   367  	//
   368  	//   It is invalid to specify the same tag name twice in a config.
   369  	TagName string `protobuf:"bytes,1,opt,name=tag_name,json=tagName,proto3" json:"tag_name,omitempty"`
   370  	// Types that are assignable to TagValue:
   371  	//	*TagSpecifier_Regex
   372  	//	*TagSpecifier_FixedValue
   373  	TagValue isTagSpecifier_TagValue `protobuf_oneof:"tag_value"`
   374  }
   375  
   376  func (x *TagSpecifier) Reset() {
   377  	*x = TagSpecifier{}
   378  	if protoimpl.UnsafeEnabled {
   379  		mi := &file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[3]
   380  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   381  		ms.StoreMessageInfo(mi)
   382  	}
   383  }
   384  
   385  func (x *TagSpecifier) String() string {
   386  	return protoimpl.X.MessageStringOf(x)
   387  }
   388  
   389  func (*TagSpecifier) ProtoMessage() {}
   390  
   391  func (x *TagSpecifier) ProtoReflect() protoreflect.Message {
   392  	mi := &file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[3]
   393  	if protoimpl.UnsafeEnabled && x != nil {
   394  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   395  		if ms.LoadMessageInfo() == nil {
   396  			ms.StoreMessageInfo(mi)
   397  		}
   398  		return ms
   399  	}
   400  	return mi.MessageOf(x)
   401  }
   402  
   403  // Deprecated: Use TagSpecifier.ProtoReflect.Descriptor instead.
   404  func (*TagSpecifier) Descriptor() ([]byte, []int) {
   405  	return file_envoy_config_metrics_v4alpha_stats_proto_rawDescGZIP(), []int{3}
   406  }
   407  
   408  func (x *TagSpecifier) GetTagName() string {
   409  	if x != nil {
   410  		return x.TagName
   411  	}
   412  	return ""
   413  }
   414  
   415  func (m *TagSpecifier) GetTagValue() isTagSpecifier_TagValue {
   416  	if m != nil {
   417  		return m.TagValue
   418  	}
   419  	return nil
   420  }
   421  
   422  func (x *TagSpecifier) GetRegex() string {
   423  	if x, ok := x.GetTagValue().(*TagSpecifier_Regex); ok {
   424  		return x.Regex
   425  	}
   426  	return ""
   427  }
   428  
   429  func (x *TagSpecifier) GetFixedValue() string {
   430  	if x, ok := x.GetTagValue().(*TagSpecifier_FixedValue); ok {
   431  		return x.FixedValue
   432  	}
   433  	return ""
   434  }
   435  
   436  type isTagSpecifier_TagValue interface {
   437  	isTagSpecifier_TagValue()
   438  }
   439  
   440  type TagSpecifier_Regex struct {
   441  	// Designates a tag to strip from the tag extracted name and provide as a named
   442  	// tag value for all statistics. This will only occur if any part of the name
   443  	// matches the regex provided with one or more capture groups.
   444  	//
   445  	// The first capture group identifies the portion of the name to remove. The
   446  	// second capture group (which will normally be nested inside the first) will
   447  	// designate the value of the tag for the statistic. If no second capture
   448  	// group is provided, the first will also be used to set the value of the tag.
   449  	// All other capture groups will be ignored.
   450  	//
   451  	// Example 1. a stat name ``cluster.foo_cluster.upstream_rq_timeout`` and
   452  	// one tag specifier:
   453  	//
   454  	// .. code-block:: json
   455  	//
   456  	//   {
   457  	//     "tag_name": "envoy.cluster_name",
   458  	//     "regex": "^cluster\\.((.+?)\\.)"
   459  	//   }
   460  	//
   461  	// Note that the regex will remove ``foo_cluster.`` making the tag extracted
   462  	// name ``cluster.upstream_rq_timeout`` and the tag value for
   463  	// ``envoy.cluster_name`` will be ``foo_cluster`` (note: there will be no
   464  	// ``.`` character because of the second capture group).
   465  	//
   466  	// Example 2. a stat name
   467  	// ``http.connection_manager_1.user_agent.ios.downstream_cx_total`` and two
   468  	// tag specifiers:
   469  	//
   470  	// .. code-block:: json
   471  	//
   472  	//   [
   473  	//     {
   474  	//       "tag_name": "envoy.http_user_agent",
   475  	//       "regex": "^http(?=\\.).*?\\.user_agent\\.((.+?)\\.)\\w+?$"
   476  	//     },
   477  	//     {
   478  	//       "tag_name": "envoy.http_conn_manager_prefix",
   479  	//       "regex": "^http\\.((.*?)\\.)"
   480  	//     }
   481  	//   ]
   482  	//
   483  	// The two regexes of the specifiers will be processed in the definition order.
   484  	//
   485  	// The first regex will remove ``ios.``, leaving the tag extracted name
   486  	// ``http.connection_manager_1.user_agent.downstream_cx_total``. The tag
   487  	// ``envoy.http_user_agent`` will be added with tag value ``ios``.
   488  	//
   489  	// The second regex will remove ``connection_manager_1.`` from the tag
   490  	// extracted name produced by the first regex
   491  	// ``http.connection_manager_1.user_agent.downstream_cx_total``, leaving
   492  	// ``http.user_agent.downstream_cx_total`` as the tag extracted name. The tag
   493  	// ``envoy.http_conn_manager_prefix`` will be added with the tag value
   494  	// ``connection_manager_1``.
   495  	Regex string `protobuf:"bytes,2,opt,name=regex,proto3,oneof"`
   496  }
   497  
   498  type TagSpecifier_FixedValue struct {
   499  	// Specifies a fixed tag value for the ``tag_name``.
   500  	FixedValue string `protobuf:"bytes,3,opt,name=fixed_value,json=fixedValue,proto3,oneof"`
   501  }
   502  
   503  func (*TagSpecifier_Regex) isTagSpecifier_TagValue() {}
   504  
   505  func (*TagSpecifier_FixedValue) isTagSpecifier_TagValue() {}
   506  
   507  // Specifies a matcher for stats and the buckets that matching stats should use.
   508  type HistogramBucketSettings struct {
   509  	state         protoimpl.MessageState
   510  	sizeCache     protoimpl.SizeCache
   511  	unknownFields protoimpl.UnknownFields
   512  
   513  	// The stats that this rule applies to. The match is applied to the original stat name
   514  	// before tag-extraction, for example `cluster.exampleclustername.upstream_cx_length_ms`.
   515  	Match *v4alpha.StringMatcher `protobuf:"bytes,1,opt,name=match,proto3" json:"match,omitempty"`
   516  	// Each value is the upper bound of a bucket. Each bucket must be greater than 0 and unique.
   517  	// The order of the buckets does not matter.
   518  	Buckets []float64 `protobuf:"fixed64,2,rep,packed,name=buckets,proto3" json:"buckets,omitempty"`
   519  }
   520  
   521  func (x *HistogramBucketSettings) Reset() {
   522  	*x = HistogramBucketSettings{}
   523  	if protoimpl.UnsafeEnabled {
   524  		mi := &file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[4]
   525  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   526  		ms.StoreMessageInfo(mi)
   527  	}
   528  }
   529  
   530  func (x *HistogramBucketSettings) String() string {
   531  	return protoimpl.X.MessageStringOf(x)
   532  }
   533  
   534  func (*HistogramBucketSettings) ProtoMessage() {}
   535  
   536  func (x *HistogramBucketSettings) ProtoReflect() protoreflect.Message {
   537  	mi := &file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[4]
   538  	if protoimpl.UnsafeEnabled && x != nil {
   539  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   540  		if ms.LoadMessageInfo() == nil {
   541  			ms.StoreMessageInfo(mi)
   542  		}
   543  		return ms
   544  	}
   545  	return mi.MessageOf(x)
   546  }
   547  
   548  // Deprecated: Use HistogramBucketSettings.ProtoReflect.Descriptor instead.
   549  func (*HistogramBucketSettings) Descriptor() ([]byte, []int) {
   550  	return file_envoy_config_metrics_v4alpha_stats_proto_rawDescGZIP(), []int{4}
   551  }
   552  
   553  func (x *HistogramBucketSettings) GetMatch() *v4alpha.StringMatcher {
   554  	if x != nil {
   555  		return x.Match
   556  	}
   557  	return nil
   558  }
   559  
   560  func (x *HistogramBucketSettings) GetBuckets() []float64 {
   561  	if x != nil {
   562  		return x.Buckets
   563  	}
   564  	return nil
   565  }
   566  
   567  // Stats configuration proto schema for built-in *envoy.stat_sinks.statsd* sink. This sink does not support
   568  // tagged metrics.
   569  // [#extension: envoy.stat_sinks.statsd]
   570  type StatsdSink struct {
   571  	state         protoimpl.MessageState
   572  	sizeCache     protoimpl.SizeCache
   573  	unknownFields protoimpl.UnknownFields
   574  
   575  	// Types that are assignable to StatsdSpecifier:
   576  	//	*StatsdSink_Address
   577  	//	*StatsdSink_TcpClusterName
   578  	StatsdSpecifier isStatsdSink_StatsdSpecifier `protobuf_oneof:"statsd_specifier"`
   579  	// Optional custom prefix for StatsdSink. If
   580  	// specified, this will override the default prefix.
   581  	// For example:
   582  	//
   583  	// .. code-block:: json
   584  	//
   585  	//   {
   586  	//     "prefix" : "envoy-prod"
   587  	//   }
   588  	//
   589  	// will change emitted stats to
   590  	//
   591  	// .. code-block:: cpp
   592  	//
   593  	//   envoy-prod.test_counter:1|c
   594  	//   envoy-prod.test_timer:5|ms
   595  	//
   596  	// Note that the default prefix, "envoy", will be used if a prefix is not
   597  	// specified.
   598  	//
   599  	// Stats with default prefix:
   600  	//
   601  	// .. code-block:: cpp
   602  	//
   603  	//   envoy.test_counter:1|c
   604  	//   envoy.test_timer:5|ms
   605  	Prefix string `protobuf:"bytes,3,opt,name=prefix,proto3" json:"prefix,omitempty"`
   606  }
   607  
   608  func (x *StatsdSink) Reset() {
   609  	*x = StatsdSink{}
   610  	if protoimpl.UnsafeEnabled {
   611  		mi := &file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[5]
   612  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   613  		ms.StoreMessageInfo(mi)
   614  	}
   615  }
   616  
   617  func (x *StatsdSink) String() string {
   618  	return protoimpl.X.MessageStringOf(x)
   619  }
   620  
   621  func (*StatsdSink) ProtoMessage() {}
   622  
   623  func (x *StatsdSink) ProtoReflect() protoreflect.Message {
   624  	mi := &file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[5]
   625  	if protoimpl.UnsafeEnabled && x != nil {
   626  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   627  		if ms.LoadMessageInfo() == nil {
   628  			ms.StoreMessageInfo(mi)
   629  		}
   630  		return ms
   631  	}
   632  	return mi.MessageOf(x)
   633  }
   634  
   635  // Deprecated: Use StatsdSink.ProtoReflect.Descriptor instead.
   636  func (*StatsdSink) Descriptor() ([]byte, []int) {
   637  	return file_envoy_config_metrics_v4alpha_stats_proto_rawDescGZIP(), []int{5}
   638  }
   639  
   640  func (m *StatsdSink) GetStatsdSpecifier() isStatsdSink_StatsdSpecifier {
   641  	if m != nil {
   642  		return m.StatsdSpecifier
   643  	}
   644  	return nil
   645  }
   646  
   647  func (x *StatsdSink) GetAddress() *v4alpha1.Address {
   648  	if x, ok := x.GetStatsdSpecifier().(*StatsdSink_Address); ok {
   649  		return x.Address
   650  	}
   651  	return nil
   652  }
   653  
   654  func (x *StatsdSink) GetTcpClusterName() string {
   655  	if x, ok := x.GetStatsdSpecifier().(*StatsdSink_TcpClusterName); ok {
   656  		return x.TcpClusterName
   657  	}
   658  	return ""
   659  }
   660  
   661  func (x *StatsdSink) GetPrefix() string {
   662  	if x != nil {
   663  		return x.Prefix
   664  	}
   665  	return ""
   666  }
   667  
   668  type isStatsdSink_StatsdSpecifier interface {
   669  	isStatsdSink_StatsdSpecifier()
   670  }
   671  
   672  type StatsdSink_Address struct {
   673  	// The UDP address of a running `statsd <https://github.com/etsy/statsd>`_
   674  	// compliant listener. If specified, statistics will be flushed to this
   675  	// address.
   676  	Address *v4alpha1.Address `protobuf:"bytes,1,opt,name=address,proto3,oneof"`
   677  }
   678  
   679  type StatsdSink_TcpClusterName struct {
   680  	// The name of a cluster that is running a TCP `statsd
   681  	// <https://github.com/etsy/statsd>`_ compliant listener. If specified,
   682  	// Envoy will connect to this cluster to flush statistics.
   683  	TcpClusterName string `protobuf:"bytes,2,opt,name=tcp_cluster_name,json=tcpClusterName,proto3,oneof"`
   684  }
   685  
   686  func (*StatsdSink_Address) isStatsdSink_StatsdSpecifier() {}
   687  
   688  func (*StatsdSink_TcpClusterName) isStatsdSink_StatsdSpecifier() {}
   689  
   690  // Stats configuration proto schema for built-in *envoy.stat_sinks.dog_statsd* sink.
   691  // The sink emits stats with `DogStatsD <https://docs.datadoghq.com/guides/dogstatsd/>`_
   692  // compatible tags. Tags are configurable via :ref:`StatsConfig
   693  // <envoy_api_msg_config.metrics.v4alpha.StatsConfig>`.
   694  // [#extension: envoy.stat_sinks.dog_statsd]
   695  type DogStatsdSink struct {
   696  	state         protoimpl.MessageState
   697  	sizeCache     protoimpl.SizeCache
   698  	unknownFields protoimpl.UnknownFields
   699  
   700  	// Types that are assignable to DogStatsdSpecifier:
   701  	//	*DogStatsdSink_Address
   702  	DogStatsdSpecifier isDogStatsdSink_DogStatsdSpecifier `protobuf_oneof:"dog_statsd_specifier"`
   703  	// Optional custom metric name prefix. See :ref:`StatsdSink's prefix field
   704  	// <envoy_api_field_config.metrics.v4alpha.StatsdSink.prefix>` for more details.
   705  	Prefix string `protobuf:"bytes,3,opt,name=prefix,proto3" json:"prefix,omitempty"`
   706  	// Optional max datagram size to use when sending UDP messages. By default Envoy
   707  	// will emit one metric per datagram. By specifying a max-size larger than a single
   708  	// metric, Envoy will emit multiple, new-line separated metrics. The max datagram
   709  	// size should not exceed your network's MTU.
   710  	//
   711  	// Note that this value may not be respected if smaller than a single metric.
   712  	MaxBytesPerDatagram *wrappers.UInt64Value `protobuf:"bytes,4,opt,name=max_bytes_per_datagram,json=maxBytesPerDatagram,proto3" json:"max_bytes_per_datagram,omitempty"`
   713  }
   714  
   715  func (x *DogStatsdSink) Reset() {
   716  	*x = DogStatsdSink{}
   717  	if protoimpl.UnsafeEnabled {
   718  		mi := &file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[6]
   719  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   720  		ms.StoreMessageInfo(mi)
   721  	}
   722  }
   723  
   724  func (x *DogStatsdSink) String() string {
   725  	return protoimpl.X.MessageStringOf(x)
   726  }
   727  
   728  func (*DogStatsdSink) ProtoMessage() {}
   729  
   730  func (x *DogStatsdSink) ProtoReflect() protoreflect.Message {
   731  	mi := &file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[6]
   732  	if protoimpl.UnsafeEnabled && x != nil {
   733  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   734  		if ms.LoadMessageInfo() == nil {
   735  			ms.StoreMessageInfo(mi)
   736  		}
   737  		return ms
   738  	}
   739  	return mi.MessageOf(x)
   740  }
   741  
   742  // Deprecated: Use DogStatsdSink.ProtoReflect.Descriptor instead.
   743  func (*DogStatsdSink) Descriptor() ([]byte, []int) {
   744  	return file_envoy_config_metrics_v4alpha_stats_proto_rawDescGZIP(), []int{6}
   745  }
   746  
   747  func (m *DogStatsdSink) GetDogStatsdSpecifier() isDogStatsdSink_DogStatsdSpecifier {
   748  	if m != nil {
   749  		return m.DogStatsdSpecifier
   750  	}
   751  	return nil
   752  }
   753  
   754  func (x *DogStatsdSink) GetAddress() *v4alpha1.Address {
   755  	if x, ok := x.GetDogStatsdSpecifier().(*DogStatsdSink_Address); ok {
   756  		return x.Address
   757  	}
   758  	return nil
   759  }
   760  
   761  func (x *DogStatsdSink) GetPrefix() string {
   762  	if x != nil {
   763  		return x.Prefix
   764  	}
   765  	return ""
   766  }
   767  
   768  func (x *DogStatsdSink) GetMaxBytesPerDatagram() *wrappers.UInt64Value {
   769  	if x != nil {
   770  		return x.MaxBytesPerDatagram
   771  	}
   772  	return nil
   773  }
   774  
   775  type isDogStatsdSink_DogStatsdSpecifier interface {
   776  	isDogStatsdSink_DogStatsdSpecifier()
   777  }
   778  
   779  type DogStatsdSink_Address struct {
   780  	// The UDP address of a running DogStatsD compliant listener. If specified,
   781  	// statistics will be flushed to this address.
   782  	Address *v4alpha1.Address `protobuf:"bytes,1,opt,name=address,proto3,oneof"`
   783  }
   784  
   785  func (*DogStatsdSink_Address) isDogStatsdSink_DogStatsdSpecifier() {}
   786  
   787  // Stats configuration proto schema for built-in *envoy.stat_sinks.hystrix* sink.
   788  // The sink emits stats in `text/event-stream
   789  // <https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events/Using_server-sent_events>`_
   790  // formatted stream for use by `Hystrix dashboard
   791  // <https://github.com/Netflix-Skunkworks/hystrix-dashboard/wiki>`_.
   792  //
   793  // Note that only a single HystrixSink should be configured.
   794  //
   795  // Streaming is started through an admin endpoint :http:get:`/hystrix_event_stream`.
   796  // [#extension: envoy.stat_sinks.hystrix]
   797  type HystrixSink struct {
   798  	state         protoimpl.MessageState
   799  	sizeCache     protoimpl.SizeCache
   800  	unknownFields protoimpl.UnknownFields
   801  
   802  	// The number of buckets the rolling statistical window is divided into.
   803  	//
   804  	// Each time the sink is flushed, all relevant Envoy statistics are sampled and
   805  	// added to the rolling window (removing the oldest samples in the window
   806  	// in the process). The sink then outputs the aggregate statistics across the
   807  	// current rolling window to the event stream(s).
   808  	//
   809  	// rolling_window(ms) = stats_flush_interval(ms) * num_of_buckets
   810  	//
   811  	// More detailed explanation can be found in `Hystrix wiki
   812  	// <https://github.com/Netflix/Hystrix/wiki/Metrics-and-Monitoring#hystrixrollingnumber>`_.
   813  	NumBuckets int64 `protobuf:"varint,1,opt,name=num_buckets,json=numBuckets,proto3" json:"num_buckets,omitempty"`
   814  }
   815  
   816  func (x *HystrixSink) Reset() {
   817  	*x = HystrixSink{}
   818  	if protoimpl.UnsafeEnabled {
   819  		mi := &file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[7]
   820  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   821  		ms.StoreMessageInfo(mi)
   822  	}
   823  }
   824  
   825  func (x *HystrixSink) String() string {
   826  	return protoimpl.X.MessageStringOf(x)
   827  }
   828  
   829  func (*HystrixSink) ProtoMessage() {}
   830  
   831  func (x *HystrixSink) ProtoReflect() protoreflect.Message {
   832  	mi := &file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[7]
   833  	if protoimpl.UnsafeEnabled && x != nil {
   834  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   835  		if ms.LoadMessageInfo() == nil {
   836  			ms.StoreMessageInfo(mi)
   837  		}
   838  		return ms
   839  	}
   840  	return mi.MessageOf(x)
   841  }
   842  
   843  // Deprecated: Use HystrixSink.ProtoReflect.Descriptor instead.
   844  func (*HystrixSink) Descriptor() ([]byte, []int) {
   845  	return file_envoy_config_metrics_v4alpha_stats_proto_rawDescGZIP(), []int{7}
   846  }
   847  
   848  func (x *HystrixSink) GetNumBuckets() int64 {
   849  	if x != nil {
   850  		return x.NumBuckets
   851  	}
   852  	return 0
   853  }
   854  
   855  var File_envoy_config_metrics_v4alpha_stats_proto protoreflect.FileDescriptor
   856  
   857  var file_envoy_config_metrics_v4alpha_stats_proto_rawDesc = []byte{
   858  	0x0a, 0x28, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x6d,
   859  	0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2f, 0x76, 0x34, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2f, 0x73,
   860  	0x74, 0x61, 0x74, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1c, 0x65, 0x6e, 0x76, 0x6f,
   861  	0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73,
   862  	0x2e, 0x76, 0x34, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x1a, 0x27, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f,
   863  	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x63, 0x6f, 0x72, 0x65, 0x2f, 0x76, 0x34, 0x61, 0x6c,
   864  	0x70, 0x68, 0x61, 0x2f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74,
   865  	0x6f, 0x1a, 0x27, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x2f, 0x6d, 0x61,
   866  	0x74, 0x63, 0x68, 0x65, 0x72, 0x2f, 0x76, 0x34, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2f, 0x73, 0x74,
   867  	0x72, 0x69, 0x6e, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67,
   868  	0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x61, 0x6e, 0x79, 0x2e,
   869  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72,
   870  	0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x70, 0x72,
   871  	0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74,
   872  	0x6f, 0x62, 0x75, 0x66, 0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x73, 0x2e, 0x70, 0x72,
   873  	0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61,
   874  	0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f,
   875  	0x74, 0x6f, 0x1a, 0x21, 0x75, 0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
   876  	0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x69, 0x6e, 0x67, 0x2e,
   877  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f,
   878  	0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xa1,
   879  	0x01, 0x0a, 0x09, 0x53, 0x74, 0x61, 0x74, 0x73, 0x53, 0x69, 0x6e, 0x6b, 0x12, 0x12, 0x0a, 0x04,
   880  	0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
   881  	0x12, 0x39, 0x0a, 0x0c, 0x74, 0x79, 0x70, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
   882  	0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
   883  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x48, 0x00, 0x52, 0x0b,
   884  	0x74, 0x79, 0x70, 0x65, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x3a, 0x28, 0x9a, 0xc5, 0x88,
   885  	0x1e, 0x23, 0x0a, 0x21, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
   886  	0x2e, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x76, 0x33, 0x2e, 0x53, 0x74, 0x61, 0x74,
   887  	0x73, 0x53, 0x69, 0x6e, 0x6b, 0x42, 0x0d, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f,
   888  	0x74, 0x79, 0x70, 0x65, 0x4a, 0x04, 0x08, 0x02, 0x10, 0x03, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66,
   889  	0x69, 0x67, 0x22, 0x95, 0x03, 0x0a, 0x0b, 0x53, 0x74, 0x61, 0x74, 0x73, 0x43, 0x6f, 0x6e, 0x66,
   890  	0x69, 0x67, 0x12, 0x49, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x73, 0x5f, 0x74, 0x61, 0x67, 0x73,
   891  	0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63,
   892  	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x76, 0x34,
   893  	0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x54, 0x61, 0x67, 0x53, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69,
   894  	0x65, 0x72, 0x52, 0x09, 0x73, 0x74, 0x61, 0x74, 0x73, 0x54, 0x61, 0x67, 0x73, 0x12, 0x4b, 0x0a,
   895  	0x14, 0x75, 0x73, 0x65, 0x5f, 0x61, 0x6c, 0x6c, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74,
   896  	0x5f, 0x74, 0x61, 0x67, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f,
   897  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f,
   898  	0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x11, 0x75, 0x73, 0x65, 0x41, 0x6c, 0x6c, 0x44,
   899  	0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x54, 0x61, 0x67, 0x73, 0x12, 0x4f, 0x0a, 0x0d, 0x73, 0x74,
   900  	0x61, 0x74, 0x73, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28,
   901  	0x0b, 0x32, 0x2a, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
   902  	0x2e, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x76, 0x34, 0x61, 0x6c, 0x70, 0x68, 0x61,
   903  	0x2e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x52, 0x0c, 0x73,
   904  	0x74, 0x61, 0x74, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x12, 0x71, 0x0a, 0x19, 0x68,
   905  	0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x5f,
   906  	0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35,
   907  	0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x6d, 0x65,
   908  	0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x76, 0x34, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x48, 0x69,
   909  	0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x53, 0x65, 0x74,
   910  	0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x17, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d,
   911  	0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x3a, 0x2a,
   912  	0x9a, 0xc5, 0x88, 0x1e, 0x25, 0x0a, 0x23, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e,
   913  	0x66, 0x69, 0x67, 0x2e, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x76, 0x33, 0x2e, 0x53,
   914  	0x74, 0x61, 0x74, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0xa2, 0x02, 0x0a, 0x0c, 0x53,
   915  	0x74, 0x61, 0x74, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0a, 0x72,
   916  	0x65, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x61, 0x6c, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x48,
   917  	0x00, 0x52, 0x09, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x6c, 0x6c, 0x12, 0x56, 0x0a, 0x0e,
   918  	0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x02,
   919  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x74, 0x79, 0x70,
   920  	0x65, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x76, 0x34, 0x61, 0x6c, 0x70, 0x68,
   921  	0x61, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63,
   922  	0x68, 0x65, 0x72, 0x48, 0x00, 0x52, 0x0d, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x6f, 0x6e,
   923  	0x4c, 0x69, 0x73, 0x74, 0x12, 0x56, 0x0a, 0x0e, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x6f,
   924  	0x6e, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x65,
   925  	0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65,
   926  	0x72, 0x2e, 0x76, 0x34, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x74,
   927  	0x72, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x48, 0x00, 0x52, 0x0d, 0x69,
   928  	0x6e, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x3a, 0x2b, 0x9a, 0xc5,
   929  	0x88, 0x1e, 0x26, 0x0a, 0x24, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69,
   930  	0x67, 0x2e, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x76, 0x33, 0x2e, 0x53, 0x74, 0x61,
   931  	0x74, 0x73, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x42, 0x14, 0x0a, 0x0d, 0x73, 0x74, 0x61,
   932  	0x74, 0x73, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x12, 0x03, 0xf8, 0x42, 0x01, 0x22,
   933  	0xa8, 0x01, 0x0a, 0x0c, 0x54, 0x61, 0x67, 0x53, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x72,
   934  	0x12, 0x19, 0x0a, 0x08, 0x74, 0x61, 0x67, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
   935  	0x28, 0x09, 0x52, 0x07, 0x74, 0x61, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x05, 0x72,
   936  	0x65, 0x67, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x72,
   937  	0x03, 0x28, 0x80, 0x08, 0x48, 0x00, 0x52, 0x05, 0x72, 0x65, 0x67, 0x65, 0x78, 0x12, 0x21, 0x0a,
   938  	0x0b, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01,
   939  	0x28, 0x09, 0x48, 0x00, 0x52, 0x0a, 0x66, 0x69, 0x78, 0x65, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65,
   940  	0x3a, 0x2b, 0x9a, 0xc5, 0x88, 0x1e, 0x26, 0x0a, 0x24, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63,
   941  	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x76, 0x33,
   942  	0x2e, 0x54, 0x61, 0x67, 0x53, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x72, 0x42, 0x0b, 0x0a,
   943  	0x09, 0x74, 0x61, 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xcf, 0x01, 0x0a, 0x17, 0x48,
   944  	0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x53, 0x65,
   945  	0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x49, 0x0a, 0x05, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18,
   946  	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x74, 0x79,
   947  	0x70, 0x65, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x76, 0x34, 0x61, 0x6c, 0x70,
   948  	0x68, 0x61, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72,
   949  	0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x52, 0x05, 0x6d, 0x61, 0x74, 0x63,
   950  	0x68, 0x12, 0x31, 0x0a, 0x07, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03,
   951  	0x28, 0x01, 0x42, 0x17, 0xfa, 0x42, 0x14, 0x92, 0x01, 0x11, 0x08, 0x01, 0x18, 0x01, 0x22, 0x0b,
   952  	0x12, 0x09, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x52, 0x07, 0x62, 0x75, 0x63,
   953  	0x6b, 0x65, 0x74, 0x73, 0x3a, 0x36, 0x9a, 0xc5, 0x88, 0x1e, 0x31, 0x0a, 0x2f, 0x65, 0x6e, 0x76,
   954  	0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63,
   955  	0x73, 0x2e, 0x76, 0x33, 0x2e, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x42, 0x75,
   956  	0x63, 0x6b, 0x65, 0x74, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x22, 0xd4, 0x01, 0x0a,
   957  	0x0a, 0x53, 0x74, 0x61, 0x74, 0x73, 0x64, 0x53, 0x69, 0x6e, 0x6b, 0x12, 0x3e, 0x0a, 0x07, 0x61,
   958  	0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x65,
   959  	0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72, 0x65,
   960  	0x2e, 0x76, 0x34, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
   961  	0x48, 0x00, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x74,
   962  	0x63, 0x70, 0x5f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18,
   963  	0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0e, 0x74, 0x63, 0x70, 0x43, 0x6c, 0x75, 0x73,
   964  	0x74, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69,
   965  	0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x3a,
   966  	0x29, 0x9a, 0xc5, 0x88, 0x1e, 0x24, 0x0a, 0x22, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f,
   967  	0x6e, 0x66, 0x69, 0x67, 0x2e, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x76, 0x33, 0x2e,
   968  	0x53, 0x74, 0x61, 0x74, 0x73, 0x64, 0x53, 0x69, 0x6e, 0x6b, 0x42, 0x17, 0x0a, 0x10, 0x73, 0x74,
   969  	0x61, 0x74, 0x73, 0x64, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x03,
   970  	0xf8, 0x42, 0x01, 0x22, 0x94, 0x02, 0x0a, 0x0d, 0x44, 0x6f, 0x67, 0x53, 0x74, 0x61, 0x74, 0x73,
   971  	0x64, 0x53, 0x69, 0x6e, 0x6b, 0x12, 0x3e, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
   972  	0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63,
   973  	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x34, 0x61, 0x6c, 0x70,
   974  	0x68, 0x61, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x48, 0x00, 0x52, 0x07, 0x61, 0x64,
   975  	0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18,
   976  	0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x5a, 0x0a,
   977  	0x16, 0x6d, 0x61, 0x78, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x64,
   978  	0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e,
   979  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
   980  	0x55, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x07, 0xfa, 0x42, 0x04,
   981  	0x32, 0x02, 0x20, 0x00, 0x52, 0x13, 0x6d, 0x61, 0x78, 0x42, 0x79, 0x74, 0x65, 0x73, 0x50, 0x65,
   982  	0x72, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x3a, 0x2c, 0x9a, 0xc5, 0x88, 0x1e, 0x27,
   983  	0x0a, 0x25, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x6d,
   984  	0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x76, 0x33, 0x2e, 0x44, 0x6f, 0x67, 0x53, 0x74, 0x61,
   985  	0x74, 0x73, 0x64, 0x53, 0x69, 0x6e, 0x6b, 0x42, 0x1b, 0x0a, 0x14, 0x64, 0x6f, 0x67, 0x5f, 0x73,
   986  	0x74, 0x61, 0x74, 0x73, 0x64, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12,
   987  	0x03, 0xf8, 0x42, 0x01, 0x4a, 0x04, 0x08, 0x02, 0x10, 0x03, 0x22, 0x5a, 0x0a, 0x0b, 0x48, 0x79,
   988  	0x73, 0x74, 0x72, 0x69, 0x78, 0x53, 0x69, 0x6e, 0x6b, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x75, 0x6d,
   989  	0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a,
   990  	0x6e, 0x75, 0x6d, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x3a, 0x2a, 0x9a, 0xc5, 0x88, 0x1e,
   991  	0x25, 0x0a, 0x23, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e,
   992  	0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x76, 0x33, 0x2e, 0x48, 0x79, 0x73, 0x74, 0x72,
   993  	0x69, 0x78, 0x53, 0x69, 0x6e, 0x6b, 0x42, 0x42, 0x0a, 0x2a, 0x69, 0x6f, 0x2e, 0x65, 0x6e, 0x76,
   994  	0x6f, 0x79, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f,
   995  	0x6e, 0x66, 0x69, 0x67, 0x2e, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x76, 0x34, 0x61,
   996  	0x6c, 0x70, 0x68, 0x61, 0x42, 0x0a, 0x53, 0x74, 0x61, 0x74, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f,
   997  	0x50, 0x01, 0xba, 0x80, 0xc8, 0xd1, 0x06, 0x02, 0x10, 0x03, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74,
   998  	0x6f, 0x33,
   999  }
  1000  
  1001  var (
  1002  	file_envoy_config_metrics_v4alpha_stats_proto_rawDescOnce sync.Once
  1003  	file_envoy_config_metrics_v4alpha_stats_proto_rawDescData = file_envoy_config_metrics_v4alpha_stats_proto_rawDesc
  1004  )
  1005  
  1006  func file_envoy_config_metrics_v4alpha_stats_proto_rawDescGZIP() []byte {
  1007  	file_envoy_config_metrics_v4alpha_stats_proto_rawDescOnce.Do(func() {
  1008  		file_envoy_config_metrics_v4alpha_stats_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_config_metrics_v4alpha_stats_proto_rawDescData)
  1009  	})
  1010  	return file_envoy_config_metrics_v4alpha_stats_proto_rawDescData
  1011  }
  1012  
  1013  var file_envoy_config_metrics_v4alpha_stats_proto_msgTypes = make([]protoimpl.MessageInfo, 8)
  1014  var file_envoy_config_metrics_v4alpha_stats_proto_goTypes = []interface{}{
  1015  	(*StatsSink)(nil),                 // 0: envoy.config.metrics.v4alpha.StatsSink
  1016  	(*StatsConfig)(nil),               // 1: envoy.config.metrics.v4alpha.StatsConfig
  1017  	(*StatsMatcher)(nil),              // 2: envoy.config.metrics.v4alpha.StatsMatcher
  1018  	(*TagSpecifier)(nil),              // 3: envoy.config.metrics.v4alpha.TagSpecifier
  1019  	(*HistogramBucketSettings)(nil),   // 4: envoy.config.metrics.v4alpha.HistogramBucketSettings
  1020  	(*StatsdSink)(nil),                // 5: envoy.config.metrics.v4alpha.StatsdSink
  1021  	(*DogStatsdSink)(nil),             // 6: envoy.config.metrics.v4alpha.DogStatsdSink
  1022  	(*HystrixSink)(nil),               // 7: envoy.config.metrics.v4alpha.HystrixSink
  1023  	(*any.Any)(nil),                   // 8: google.protobuf.Any
  1024  	(*wrappers.BoolValue)(nil),        // 9: google.protobuf.BoolValue
  1025  	(*v4alpha.ListStringMatcher)(nil), // 10: envoy.type.matcher.v4alpha.ListStringMatcher
  1026  	(*v4alpha.StringMatcher)(nil),     // 11: envoy.type.matcher.v4alpha.StringMatcher
  1027  	(*v4alpha1.Address)(nil),          // 12: envoy.config.core.v4alpha.Address
  1028  	(*wrappers.UInt64Value)(nil),      // 13: google.protobuf.UInt64Value
  1029  }
  1030  var file_envoy_config_metrics_v4alpha_stats_proto_depIdxs = []int32{
  1031  	8,  // 0: envoy.config.metrics.v4alpha.StatsSink.typed_config:type_name -> google.protobuf.Any
  1032  	3,  // 1: envoy.config.metrics.v4alpha.StatsConfig.stats_tags:type_name -> envoy.config.metrics.v4alpha.TagSpecifier
  1033  	9,  // 2: envoy.config.metrics.v4alpha.StatsConfig.use_all_default_tags:type_name -> google.protobuf.BoolValue
  1034  	2,  // 3: envoy.config.metrics.v4alpha.StatsConfig.stats_matcher:type_name -> envoy.config.metrics.v4alpha.StatsMatcher
  1035  	4,  // 4: envoy.config.metrics.v4alpha.StatsConfig.histogram_bucket_settings:type_name -> envoy.config.metrics.v4alpha.HistogramBucketSettings
  1036  	10, // 5: envoy.config.metrics.v4alpha.StatsMatcher.exclusion_list:type_name -> envoy.type.matcher.v4alpha.ListStringMatcher
  1037  	10, // 6: envoy.config.metrics.v4alpha.StatsMatcher.inclusion_list:type_name -> envoy.type.matcher.v4alpha.ListStringMatcher
  1038  	11, // 7: envoy.config.metrics.v4alpha.HistogramBucketSettings.match:type_name -> envoy.type.matcher.v4alpha.StringMatcher
  1039  	12, // 8: envoy.config.metrics.v4alpha.StatsdSink.address:type_name -> envoy.config.core.v4alpha.Address
  1040  	12, // 9: envoy.config.metrics.v4alpha.DogStatsdSink.address:type_name -> envoy.config.core.v4alpha.Address
  1041  	13, // 10: envoy.config.metrics.v4alpha.DogStatsdSink.max_bytes_per_datagram:type_name -> google.protobuf.UInt64Value
  1042  	11, // [11:11] is the sub-list for method output_type
  1043  	11, // [11:11] is the sub-list for method input_type
  1044  	11, // [11:11] is the sub-list for extension type_name
  1045  	11, // [11:11] is the sub-list for extension extendee
  1046  	0,  // [0:11] is the sub-list for field type_name
  1047  }
  1048  
  1049  func init() { file_envoy_config_metrics_v4alpha_stats_proto_init() }
  1050  func file_envoy_config_metrics_v4alpha_stats_proto_init() {
  1051  	if File_envoy_config_metrics_v4alpha_stats_proto != nil {
  1052  		return
  1053  	}
  1054  	if !protoimpl.UnsafeEnabled {
  1055  		file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
  1056  			switch v := v.(*StatsSink); i {
  1057  			case 0:
  1058  				return &v.state
  1059  			case 1:
  1060  				return &v.sizeCache
  1061  			case 2:
  1062  				return &v.unknownFields
  1063  			default:
  1064  				return nil
  1065  			}
  1066  		}
  1067  		file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
  1068  			switch v := v.(*StatsConfig); i {
  1069  			case 0:
  1070  				return &v.state
  1071  			case 1:
  1072  				return &v.sizeCache
  1073  			case 2:
  1074  				return &v.unknownFields
  1075  			default:
  1076  				return nil
  1077  			}
  1078  		}
  1079  		file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
  1080  			switch v := v.(*StatsMatcher); i {
  1081  			case 0:
  1082  				return &v.state
  1083  			case 1:
  1084  				return &v.sizeCache
  1085  			case 2:
  1086  				return &v.unknownFields
  1087  			default:
  1088  				return nil
  1089  			}
  1090  		}
  1091  		file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
  1092  			switch v := v.(*TagSpecifier); i {
  1093  			case 0:
  1094  				return &v.state
  1095  			case 1:
  1096  				return &v.sizeCache
  1097  			case 2:
  1098  				return &v.unknownFields
  1099  			default:
  1100  				return nil
  1101  			}
  1102  		}
  1103  		file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
  1104  			switch v := v.(*HistogramBucketSettings); i {
  1105  			case 0:
  1106  				return &v.state
  1107  			case 1:
  1108  				return &v.sizeCache
  1109  			case 2:
  1110  				return &v.unknownFields
  1111  			default:
  1112  				return nil
  1113  			}
  1114  		}
  1115  		file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
  1116  			switch v := v.(*StatsdSink); i {
  1117  			case 0:
  1118  				return &v.state
  1119  			case 1:
  1120  				return &v.sizeCache
  1121  			case 2:
  1122  				return &v.unknownFields
  1123  			default:
  1124  				return nil
  1125  			}
  1126  		}
  1127  		file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
  1128  			switch v := v.(*DogStatsdSink); i {
  1129  			case 0:
  1130  				return &v.state
  1131  			case 1:
  1132  				return &v.sizeCache
  1133  			case 2:
  1134  				return &v.unknownFields
  1135  			default:
  1136  				return nil
  1137  			}
  1138  		}
  1139  		file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
  1140  			switch v := v.(*HystrixSink); i {
  1141  			case 0:
  1142  				return &v.state
  1143  			case 1:
  1144  				return &v.sizeCache
  1145  			case 2:
  1146  				return &v.unknownFields
  1147  			default:
  1148  				return nil
  1149  			}
  1150  		}
  1151  	}
  1152  	file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[0].OneofWrappers = []interface{}{
  1153  		(*StatsSink_TypedConfig)(nil),
  1154  	}
  1155  	file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[2].OneofWrappers = []interface{}{
  1156  		(*StatsMatcher_RejectAll)(nil),
  1157  		(*StatsMatcher_ExclusionList)(nil),
  1158  		(*StatsMatcher_InclusionList)(nil),
  1159  	}
  1160  	file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[3].OneofWrappers = []interface{}{
  1161  		(*TagSpecifier_Regex)(nil),
  1162  		(*TagSpecifier_FixedValue)(nil),
  1163  	}
  1164  	file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[5].OneofWrappers = []interface{}{
  1165  		(*StatsdSink_Address)(nil),
  1166  		(*StatsdSink_TcpClusterName)(nil),
  1167  	}
  1168  	file_envoy_config_metrics_v4alpha_stats_proto_msgTypes[6].OneofWrappers = []interface{}{
  1169  		(*DogStatsdSink_Address)(nil),
  1170  	}
  1171  	type x struct{}
  1172  	out := protoimpl.TypeBuilder{
  1173  		File: protoimpl.DescBuilder{
  1174  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  1175  			RawDescriptor: file_envoy_config_metrics_v4alpha_stats_proto_rawDesc,
  1176  			NumEnums:      0,
  1177  			NumMessages:   8,
  1178  			NumExtensions: 0,
  1179  			NumServices:   0,
  1180  		},
  1181  		GoTypes:           file_envoy_config_metrics_v4alpha_stats_proto_goTypes,
  1182  		DependencyIndexes: file_envoy_config_metrics_v4alpha_stats_proto_depIdxs,
  1183  		MessageInfos:      file_envoy_config_metrics_v4alpha_stats_proto_msgTypes,
  1184  	}.Build()
  1185  	File_envoy_config_metrics_v4alpha_stats_proto = out.File
  1186  	file_envoy_config_metrics_v4alpha_stats_proto_rawDesc = nil
  1187  	file_envoy_config_metrics_v4alpha_stats_proto_goTypes = nil
  1188  	file_envoy_config_metrics_v4alpha_stats_proto_depIdxs = nil
  1189  }
  1190  

View as plain text