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