github.com/cloudwan/edgelq-sdk@v1.15.4/monitoring/resources/v3/metric_descriptor/metric_descriptor.pb.go (about)

     1  // Code generated by protoc-gen-goten-go
     2  // File: edgelq/monitoring/proto/v3/metric_descriptor.proto
     3  // DO NOT EDIT!!!
     4  
     5  package metric_descriptor
     6  
     7  import (
     8  	"fmt"
     9  	"reflect"
    10  	"sync"
    11  
    12  	"google.golang.org/protobuf/encoding/protojson"
    13  	"google.golang.org/protobuf/proto"
    14  	preflect "google.golang.org/protobuf/reflect/protoreflect"
    15  	"google.golang.org/protobuf/runtime/protoimpl"
    16  )
    17  
    18  // proto imports
    19  import (
    20  	api "github.com/cloudwan/edgelq-sdk/common/api"
    21  	common "github.com/cloudwan/edgelq-sdk/monitoring/resources/v3/common"
    22  	monitored_resource_descriptor "github.com/cloudwan/edgelq-sdk/monitoring/resources/v3/monitored_resource_descriptor"
    23  	project "github.com/cloudwan/edgelq-sdk/monitoring/resources/v3/project"
    24  	meta "github.com/cloudwan/goten-sdk/types/meta"
    25  )
    26  
    27  // Reference imports to suppress errors if they are not otherwise used.
    28  var (
    29  	_ = fmt.Errorf
    30  	_ = reflect.Method{}
    31  	_ = sync.Once{}
    32  
    33  	_ = protojson.MarshalOptions{}
    34  	_ = proto.MarshalOptions{}
    35  	_ = preflect.Value{}
    36  	_ = protoimpl.DescBuilder{}
    37  )
    38  
    39  // make sure we're using proto imports
    40  var (
    41  	_ = api.LaunchStage(0)
    42  	_ = &common.LabelDescriptor{}
    43  	_ = &monitored_resource_descriptor.MonitoredResourceDescriptor{}
    44  	_ = &project.Project{}
    45  	_ = &meta.Meta{}
    46  )
    47  
    48  const (
    49  	// Verify that this generated code is sufficiently up-to-date.
    50  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    51  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    52  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    53  )
    54  
    55  // The kind of measurement. It describes how the data is reported.
    56  type MetricDescriptor_MetricKind int32
    57  
    58  const (
    59  	// Do not use this default value.
    60  	MetricDescriptor_METRIC_KIND_UNSPECIFIED MetricDescriptor_MetricKind = 0
    61  	// An instantaneous measurement of a value.
    62  	MetricDescriptor_GAUGE MetricDescriptor_MetricKind = 1
    63  	// The change in a value during a time interval.
    64  	MetricDescriptor_DELTA MetricDescriptor_MetricKind = 2
    65  	// A value accumulated over a time interval.  Cumulative
    66  	// measurements in a time series should have the same start time
    67  	// and increasing end times, until an event resets the cumulative
    68  	// value to zero and sets a new start time for the following
    69  	// points.
    70  	MetricDescriptor_CUMULATIVE MetricDescriptor_MetricKind = 3
    71  )
    72  
    73  var (
    74  	MetricDescriptor_MetricKind_name = map[int32]string{
    75  		0: "METRIC_KIND_UNSPECIFIED",
    76  		1: "GAUGE",
    77  		2: "DELTA",
    78  		3: "CUMULATIVE",
    79  	}
    80  
    81  	MetricDescriptor_MetricKind_value = map[string]int32{
    82  		"METRIC_KIND_UNSPECIFIED": 0,
    83  		"GAUGE":                   1,
    84  		"DELTA":                   2,
    85  		"CUMULATIVE":              3,
    86  	}
    87  )
    88  
    89  func (x MetricDescriptor_MetricKind) Enum() *MetricDescriptor_MetricKind {
    90  	p := new(MetricDescriptor_MetricKind)
    91  	*p = x
    92  	return p
    93  }
    94  
    95  func (x MetricDescriptor_MetricKind) String() string {
    96  	return protoimpl.X.EnumStringOf(x.Descriptor(), preflect.EnumNumber(x))
    97  }
    98  
    99  func (MetricDescriptor_MetricKind) Descriptor() preflect.EnumDescriptor {
   100  	return edgelq_monitoring_proto_v3_metric_descriptor_proto_enumTypes[0].Descriptor()
   101  }
   102  
   103  func (MetricDescriptor_MetricKind) Type() preflect.EnumType {
   104  	return &edgelq_monitoring_proto_v3_metric_descriptor_proto_enumTypes[0]
   105  }
   106  
   107  func (x MetricDescriptor_MetricKind) Number() preflect.EnumNumber {
   108  	return preflect.EnumNumber(x)
   109  }
   110  
   111  // Deprecated, Use MetricDescriptor_MetricKind.ProtoReflect.Descriptor instead.
   112  func (MetricDescriptor_MetricKind) EnumDescriptor() ([]byte, []int) {
   113  	return edgelq_monitoring_proto_v3_metric_descriptor_proto_rawDescGZIP(), []int{0, 0}
   114  }
   115  
   116  // The value type of a metric.
   117  type MetricDescriptor_ValueType int32
   118  
   119  const (
   120  	// Do not use this default value.
   121  	MetricDescriptor_VALUE_TYPE_UNSPECIFIED MetricDescriptor_ValueType = 0
   122  	// The value is a boolean.
   123  	// This value type can be used only if the metric kind is `GAUGE`.
   124  	MetricDescriptor_BOOL MetricDescriptor_ValueType = 1
   125  	// The value is a signed 64-bit integer.
   126  	MetricDescriptor_INT64 MetricDescriptor_ValueType = 2
   127  	// The value is a double precision floating point number.
   128  	MetricDescriptor_DOUBLE MetricDescriptor_ValueType = 3
   129  	// The value is a text string.
   130  	// This value type can be used only if the metric kind is `GAUGE`.
   131  	MetricDescriptor_STRING MetricDescriptor_ValueType = 4
   132  	// The value is a [`Distribution`][google.api.Distribution].
   133  	MetricDescriptor_DISTRIBUTION MetricDescriptor_ValueType = 5
   134  	// The value is money.
   135  	MetricDescriptor_MONEY MetricDescriptor_ValueType = 6
   136  )
   137  
   138  var (
   139  	MetricDescriptor_ValueType_name = map[int32]string{
   140  		0: "VALUE_TYPE_UNSPECIFIED",
   141  		1: "BOOL",
   142  		2: "INT64",
   143  		3: "DOUBLE",
   144  		4: "STRING",
   145  		5: "DISTRIBUTION",
   146  		6: "MONEY",
   147  	}
   148  
   149  	MetricDescriptor_ValueType_value = map[string]int32{
   150  		"VALUE_TYPE_UNSPECIFIED": 0,
   151  		"BOOL":                   1,
   152  		"INT64":                  2,
   153  		"DOUBLE":                 3,
   154  		"STRING":                 4,
   155  		"DISTRIBUTION":           5,
   156  		"MONEY":                  6,
   157  	}
   158  )
   159  
   160  func (x MetricDescriptor_ValueType) Enum() *MetricDescriptor_ValueType {
   161  	p := new(MetricDescriptor_ValueType)
   162  	*p = x
   163  	return p
   164  }
   165  
   166  func (x MetricDescriptor_ValueType) String() string {
   167  	return protoimpl.X.EnumStringOf(x.Descriptor(), preflect.EnumNumber(x))
   168  }
   169  
   170  func (MetricDescriptor_ValueType) Descriptor() preflect.EnumDescriptor {
   171  	return edgelq_monitoring_proto_v3_metric_descriptor_proto_enumTypes[1].Descriptor()
   172  }
   173  
   174  func (MetricDescriptor_ValueType) Type() preflect.EnumType {
   175  	return &edgelq_monitoring_proto_v3_metric_descriptor_proto_enumTypes[1]
   176  }
   177  
   178  func (x MetricDescriptor_ValueType) Number() preflect.EnumNumber {
   179  	return preflect.EnumNumber(x)
   180  }
   181  
   182  // Deprecated, Use MetricDescriptor_ValueType.ProtoReflect.Descriptor instead.
   183  func (MetricDescriptor_ValueType) EnumDescriptor() ([]byte, []int) {
   184  	return edgelq_monitoring_proto_v3_metric_descriptor_proto_rawDescGZIP(), []int{0, 1}
   185  }
   186  
   187  // Defines a metric type and its schema. Once a metric descriptor is created,
   188  // deleting or altering it stops data collection and makes the metric type's
   189  // existing data unusable.
   190  type MetricDescriptor struct {
   191  	state         protoimpl.MessageState
   192  	sizeCache     protoimpl.SizeCache
   193  	unknownFields protoimpl.UnknownFields
   194  	// Metadata
   195  	Metadata *meta.Meta `protobuf:"bytes,35,opt,name=metadata,proto3" json:"metadata,omitempty"`
   196  	// The resource name of the metric descriptor.
   197  	// When creating a new instance, this field is optional and if not provided,
   198  	// it will be generated automatically. Last ID segment must conform to the
   199  	// following regex: [\\w./-]{4,128}
   200  	Name *Name `protobuf:"bytes,1,opt,customtype=Name,name=name,proto3" json:"name,omitempty"`
   201  	// The metric type, including its DNS name prefix. The type is not
   202  	// URL-encoded.  All user-defined metric types have the DNS name
   203  	// `custom.googleapis.com` or `external.googleapis.com`.  Metric types should
   204  	// use a natural hierarchical grouping. For example:
   205  	//
   206  	//     "custom.googleapis.com/invoice/paid/amount"
   207  	//     "external.googleapis.com/prometheus/up"
   208  	//     "appengine.googleapis.com/http/server/response_latencies"
   209  	Type string `protobuf:"bytes,8,opt,name=type,proto3" json:"type,omitempty"`
   210  	// associated resource_types (also used to infer defaults)
   211  	// examples, devices.edgelq.com/Device, watchdog.edgelq.com/Agent
   212  	// if not set, defaults to "global" resource type.
   213  	ResourceTypes []string `protobuf:"bytes,34,rep,name=resource_types,json=resourceTypes,proto3" json:"resource_types,omitempty"`
   214  	// The set of labels that can be used to describe a specific
   215  	// instance of this metric type. For example, the
   216  	// `appengine.googleapis.com/http/server/response_latencies` metric
   217  	// type has a label for the HTTP response code, `response_code`, so
   218  	// you can look at latencies for successful responses or just
   219  	// for responses that failed.
   220  	Labels []*common.LabelDescriptor `protobuf:"bytes,2,rep,name=labels,proto3" json:"labels,omitempty"`
   221  	// Whether the metric records instantaneous values, changes to a value, etc.
   222  	// Some combinations of `metric_kind` and `value_type` might not be supported.
   223  	MetricKind MetricDescriptor_MetricKind `protobuf:"varint,3,opt,name=metric_kind,json=metricKind,proto3,enum=ntt.monitoring.v3.MetricDescriptor_MetricKind" json:"metric_kind,omitempty"`
   224  	// Whether the measurement is an integer, a floating-point number, etc.
   225  	// Some combinations of `metric_kind` and `value_type` might not be supported.
   226  	ValueType MetricDescriptor_ValueType `protobuf:"varint,4,opt,name=value_type,json=valueType,proto3,enum=ntt.monitoring.v3.MetricDescriptor_ValueType" json:"value_type,omitempty"`
   227  	// The unit in which the metric value is reported. It is only applicable
   228  	// if the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The
   229  	// supported units are a subset of [The Unified Code for Units of
   230  	// Measure](http://unitsofmeasure.org/ucum.html) standard:
   231  	//
   232  	// **Basic units (UNIT)**
   233  	//
   234  	// * `bit`   bit
   235  	// * `By`    byte
   236  	// * `s`     second
   237  	// * `min`   minute
   238  	// * `h`     hour
   239  	// * `d`     day
   240  	//
   241  	// **Prefixes (PREFIX)**
   242  	//
   243  	// * `k`     kilo    (10**3)
   244  	// * `M`     mega    (10**6)
   245  	// * `G`     giga    (10**9)
   246  	// * `T`     tera    (10**12)
   247  	// * `P`     peta    (10**15)
   248  	// * `E`     exa     (10**18)
   249  	// * `Z`     zetta   (10**21)
   250  	// * `Y`     yotta   (10**24)
   251  	// * `m`     milli   (10**-3)
   252  	// * `u`     micro   (10**-6)
   253  	// * `n`     nano    (10**-9)
   254  	// * `p`     pico    (10**-12)
   255  	// * `f`     femto   (10**-15)
   256  	// * `a`     atto    (10**-18)
   257  	// * `z`     zepto   (10**-21)
   258  	// * `y`     yocto   (10**-24)
   259  	// * `Ki`    kibi    (2**10)
   260  	// * `Mi`    mebi    (2**20)
   261  	// * `Gi`    gibi    (2**30)
   262  	// * `Ti`    tebi    (2**40)
   263  	//
   264  	// **Grammar**
   265  	//
   266  	// The grammar also includes these connectors:
   267  	//
   268  	// * `/`    division (as an infix operator, e.g. `1/s`).
   269  	// * `.`    multiplication (as an infix operator, e.g. `GBy.d`)
   270  	//
   271  	// The grammar for a unit is as follows:
   272  	//
   273  	//     Expression = Component { "." Component } { "/" Component } ;
   274  	//
   275  	//     Component = ( [ PREFIX ] UNIT | "%" ) [ Annotation ]
   276  	//               | Annotation
   277  	//               | "1"
   278  	//               ;
   279  	//
   280  	//     Annotation = "{" NAME "}" ;
   281  	//
   282  	// Notes:
   283  	//
   284  	// * `Annotation` is just a comment if it follows a `UNIT` and is
   285  	//    equivalent to `1` if it is used alone. For examples,
   286  	//    `{requests}/s == 1/s`, `By{transmitted}/s == By/s`.
   287  	// * `NAME` is a sequence of non-blank printable ASCII characters not
   288  	//    containing '{' or '}'.
   289  	// * `1` represents dimensionless value 1, such as in `1/s`.
   290  	// * `%` represents dimensionless value 1/100, and annotates values giving
   291  	//    a percentage.
   292  	Unit string `protobuf:"bytes,5,opt,name=unit,proto3" json:"unit,omitempty"`
   293  	// A detailed description of the metric, which can be used in documentation.
   294  	Description string `protobuf:"bytes,6,opt,name=description,proto3" json:"description,omitempty"`
   295  	// A concise name for the metric, which can be displayed in user interfaces.
   296  	// Use sentence case without an ending period, for example "Request count".
   297  	// This field is optional but it is recommended to be set for any metrics
   298  	// associated with user-visible concepts, such as Quota.
   299  	DisplayName string `protobuf:"bytes,7,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
   300  	// Optional. Metadata which can be used to guide usage of the metric.
   301  	MetricDescriptorMetadata *MetricDescriptor_MetricDescriptorMetadata `protobuf:"bytes,10,opt,name=metric_descriptor_metadata,json=metricDescriptorMetadata,proto3" json:"metric_descriptor_metadata,omitempty"`
   302  	// Distribution bucketing options - define only when ValueType is
   303  	// Distribution. Used for validating input.
   304  	DistributionBucketOptions *common.Distribution_BucketOptions `protobuf:"bytes,31,opt,name=distribution_bucket_options,json=distributionBucketOptions,proto3" json:"distribution_bucket_options,omitempty"`
   305  	// Promoted Label Key Sets allow defining multiple indexing rules for
   306  	// underlying backend enabling query optimizations. Metric promoted label sets
   307  	// are combined with MonitoredResource promoted label sets and result in
   308  	// PromotedKeySet.
   309  	PromotedLabelKeySets []*common.LabelKeySet `protobuf:"bytes,32,rep,name=promoted_label_key_sets,json=promotedLabelKeySets,proto3" json:"promoted_label_key_sets,omitempty"`
   310  	// Indexing allows tweaking storage usage by tweaking amount of "duplicate"
   311  	// data with different promotion criteria. It's important consideration for
   312  	// balancing time series query performance and storage cost.
   313  	IndexSpec *MetricDescriptor_IndexSpec `protobuf:"bytes,36,opt,name=index_spec,json=indexSpec,proto3" json:"index_spec,omitempty"`
   314  	// Storage settings
   315  	StorageConfig *MetricDescriptor_StorageConfig `protobuf:"bytes,33,opt,name=storage_config,json=storageConfig,proto3" json:"storage_config,omitempty"`
   316  }
   317  
   318  func (m *MetricDescriptor) Reset() {
   319  	*m = MetricDescriptor{}
   320  	if protoimpl.UnsafeEnabled {
   321  		mi := &edgelq_monitoring_proto_v3_metric_descriptor_proto_msgTypes[0]
   322  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
   323  		ms.StoreMessageInfo(mi)
   324  	}
   325  }
   326  
   327  func (m *MetricDescriptor) String() string {
   328  	return protoimpl.X.MessageStringOf(m)
   329  }
   330  
   331  func (*MetricDescriptor) ProtoMessage() {}
   332  
   333  func (m *MetricDescriptor) ProtoReflect() preflect.Message {
   334  	mi := &edgelq_monitoring_proto_v3_metric_descriptor_proto_msgTypes[0]
   335  	if protoimpl.UnsafeEnabled && m != nil {
   336  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
   337  		if ms.LoadMessageInfo() == nil {
   338  			ms.StoreMessageInfo(mi)
   339  		}
   340  		return ms
   341  	}
   342  	return mi.MessageOf(m)
   343  }
   344  
   345  func (*MetricDescriptor) GotenMessage() {}
   346  
   347  // Deprecated, Use MetricDescriptor.ProtoReflect.Descriptor instead.
   348  func (*MetricDescriptor) Descriptor() ([]byte, []int) {
   349  	return edgelq_monitoring_proto_v3_metric_descriptor_proto_rawDescGZIP(), []int{0}
   350  }
   351  
   352  func (m *MetricDescriptor) Unmarshal(b []byte) error {
   353  	return proto.Unmarshal(b, m)
   354  }
   355  
   356  func (m *MetricDescriptor) Marshal() ([]byte, error) {
   357  	return proto.Marshal(m)
   358  }
   359  
   360  func (m *MetricDescriptor) MarshalJSON() ([]byte, error) {
   361  	return protojson.MarshalOptions{}.Marshal(m)
   362  }
   363  
   364  func (m *MetricDescriptor) UnmarshalJSON(data []byte) error {
   365  	return protojson.Unmarshal(data, m)
   366  }
   367  
   368  func (m *MetricDescriptor) GetMetadata() *meta.Meta {
   369  	if m != nil {
   370  		return m.Metadata
   371  	}
   372  	return nil
   373  }
   374  
   375  func (m *MetricDescriptor) GetName() *Name {
   376  	if m != nil {
   377  		return m.Name
   378  	}
   379  	return nil
   380  }
   381  
   382  func (m *MetricDescriptor) GetType() string {
   383  	if m != nil {
   384  		return m.Type
   385  	}
   386  	return ""
   387  }
   388  
   389  func (m *MetricDescriptor) GetResourceTypes() []string {
   390  	if m != nil {
   391  		return m.ResourceTypes
   392  	}
   393  	return nil
   394  }
   395  
   396  func (m *MetricDescriptor) GetLabels() []*common.LabelDescriptor {
   397  	if m != nil {
   398  		return m.Labels
   399  	}
   400  	return nil
   401  }
   402  
   403  func (m *MetricDescriptor) GetMetricKind() MetricDescriptor_MetricKind {
   404  	if m != nil {
   405  		return m.MetricKind
   406  	}
   407  	return MetricDescriptor_METRIC_KIND_UNSPECIFIED
   408  }
   409  
   410  func (m *MetricDescriptor) GetValueType() MetricDescriptor_ValueType {
   411  	if m != nil {
   412  		return m.ValueType
   413  	}
   414  	return MetricDescriptor_VALUE_TYPE_UNSPECIFIED
   415  }
   416  
   417  func (m *MetricDescriptor) GetUnit() string {
   418  	if m != nil {
   419  		return m.Unit
   420  	}
   421  	return ""
   422  }
   423  
   424  func (m *MetricDescriptor) GetDescription() string {
   425  	if m != nil {
   426  		return m.Description
   427  	}
   428  	return ""
   429  }
   430  
   431  func (m *MetricDescriptor) GetDisplayName() string {
   432  	if m != nil {
   433  		return m.DisplayName
   434  	}
   435  	return ""
   436  }
   437  
   438  func (m *MetricDescriptor) GetMetricDescriptorMetadata() *MetricDescriptor_MetricDescriptorMetadata {
   439  	if m != nil {
   440  		return m.MetricDescriptorMetadata
   441  	}
   442  	return nil
   443  }
   444  
   445  func (m *MetricDescriptor) GetDistributionBucketOptions() *common.Distribution_BucketOptions {
   446  	if m != nil {
   447  		return m.DistributionBucketOptions
   448  	}
   449  	return nil
   450  }
   451  
   452  func (m *MetricDescriptor) GetPromotedLabelKeySets() []*common.LabelKeySet {
   453  	if m != nil {
   454  		return m.PromotedLabelKeySets
   455  	}
   456  	return nil
   457  }
   458  
   459  func (m *MetricDescriptor) GetIndexSpec() *MetricDescriptor_IndexSpec {
   460  	if m != nil {
   461  		return m.IndexSpec
   462  	}
   463  	return nil
   464  }
   465  
   466  func (m *MetricDescriptor) GetStorageConfig() *MetricDescriptor_StorageConfig {
   467  	if m != nil {
   468  		return m.StorageConfig
   469  	}
   470  	return nil
   471  }
   472  
   473  func (m *MetricDescriptor) SetMetadata(fv *meta.Meta) {
   474  	if m == nil {
   475  		panic(fmt.Errorf("can't set %s on nil %s", "Metadata", "MetricDescriptor"))
   476  	}
   477  	m.Metadata = fv
   478  }
   479  
   480  func (m *MetricDescriptor) SetName(fv *Name) {
   481  	if m == nil {
   482  		panic(fmt.Errorf("can't set %s on nil %s", "Name", "MetricDescriptor"))
   483  	}
   484  	m.Name = fv
   485  }
   486  
   487  func (m *MetricDescriptor) SetType(fv string) {
   488  	if m == nil {
   489  		panic(fmt.Errorf("can't set %s on nil %s", "Type", "MetricDescriptor"))
   490  	}
   491  	m.Type = fv
   492  }
   493  
   494  func (m *MetricDescriptor) SetResourceTypes(fv []string) {
   495  	if m == nil {
   496  		panic(fmt.Errorf("can't set %s on nil %s", "ResourceTypes", "MetricDescriptor"))
   497  	}
   498  	m.ResourceTypes = fv
   499  }
   500  
   501  func (m *MetricDescriptor) SetLabels(fv []*common.LabelDescriptor) {
   502  	if m == nil {
   503  		panic(fmt.Errorf("can't set %s on nil %s", "Labels", "MetricDescriptor"))
   504  	}
   505  	m.Labels = fv
   506  }
   507  
   508  func (m *MetricDescriptor) SetMetricKind(fv MetricDescriptor_MetricKind) {
   509  	if m == nil {
   510  		panic(fmt.Errorf("can't set %s on nil %s", "MetricKind", "MetricDescriptor"))
   511  	}
   512  	m.MetricKind = fv
   513  }
   514  
   515  func (m *MetricDescriptor) SetValueType(fv MetricDescriptor_ValueType) {
   516  	if m == nil {
   517  		panic(fmt.Errorf("can't set %s on nil %s", "ValueType", "MetricDescriptor"))
   518  	}
   519  	m.ValueType = fv
   520  }
   521  
   522  func (m *MetricDescriptor) SetUnit(fv string) {
   523  	if m == nil {
   524  		panic(fmt.Errorf("can't set %s on nil %s", "Unit", "MetricDescriptor"))
   525  	}
   526  	m.Unit = fv
   527  }
   528  
   529  func (m *MetricDescriptor) SetDescription(fv string) {
   530  	if m == nil {
   531  		panic(fmt.Errorf("can't set %s on nil %s", "Description", "MetricDescriptor"))
   532  	}
   533  	m.Description = fv
   534  }
   535  
   536  func (m *MetricDescriptor) SetDisplayName(fv string) {
   537  	if m == nil {
   538  		panic(fmt.Errorf("can't set %s on nil %s", "DisplayName", "MetricDescriptor"))
   539  	}
   540  	m.DisplayName = fv
   541  }
   542  
   543  func (m *MetricDescriptor) SetMetricDescriptorMetadata(fv *MetricDescriptor_MetricDescriptorMetadata) {
   544  	if m == nil {
   545  		panic(fmt.Errorf("can't set %s on nil %s", "MetricDescriptorMetadata", "MetricDescriptor"))
   546  	}
   547  	m.MetricDescriptorMetadata = fv
   548  }
   549  
   550  func (m *MetricDescriptor) SetDistributionBucketOptions(fv *common.Distribution_BucketOptions) {
   551  	if m == nil {
   552  		panic(fmt.Errorf("can't set %s on nil %s", "DistributionBucketOptions", "MetricDescriptor"))
   553  	}
   554  	m.DistributionBucketOptions = fv
   555  }
   556  
   557  func (m *MetricDescriptor) SetPromotedLabelKeySets(fv []*common.LabelKeySet) {
   558  	if m == nil {
   559  		panic(fmt.Errorf("can't set %s on nil %s", "PromotedLabelKeySets", "MetricDescriptor"))
   560  	}
   561  	m.PromotedLabelKeySets = fv
   562  }
   563  
   564  func (m *MetricDescriptor) SetIndexSpec(fv *MetricDescriptor_IndexSpec) {
   565  	if m == nil {
   566  		panic(fmt.Errorf("can't set %s on nil %s", "IndexSpec", "MetricDescriptor"))
   567  	}
   568  	m.IndexSpec = fv
   569  }
   570  
   571  func (m *MetricDescriptor) SetStorageConfig(fv *MetricDescriptor_StorageConfig) {
   572  	if m == nil {
   573  		panic(fmt.Errorf("can't set %s on nil %s", "StorageConfig", "MetricDescriptor"))
   574  	}
   575  	m.StorageConfig = fv
   576  }
   577  
   578  // Additional annotations that can be used to guide the usage of a metric.
   579  type MetricDescriptor_MetricDescriptorMetadata struct {
   580  	state         protoimpl.MessageState
   581  	sizeCache     protoimpl.SizeCache
   582  	unknownFields protoimpl.UnknownFields
   583  	// The launch stage of the metric definition.
   584  	LaunchStage api.LaunchStage `protobuf:"varint,1,opt,name=launch_stage,json=launchStage,proto3,enum=ntt.api.LaunchStage" json:"launch_stage,omitempty"`
   585  }
   586  
   587  func (m *MetricDescriptor_MetricDescriptorMetadata) Reset() {
   588  	*m = MetricDescriptor_MetricDescriptorMetadata{}
   589  	if protoimpl.UnsafeEnabled {
   590  		mi := &edgelq_monitoring_proto_v3_metric_descriptor_proto_msgTypes[1]
   591  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
   592  		ms.StoreMessageInfo(mi)
   593  	}
   594  }
   595  
   596  func (m *MetricDescriptor_MetricDescriptorMetadata) String() string {
   597  	return protoimpl.X.MessageStringOf(m)
   598  }
   599  
   600  func (*MetricDescriptor_MetricDescriptorMetadata) ProtoMessage() {}
   601  
   602  func (m *MetricDescriptor_MetricDescriptorMetadata) ProtoReflect() preflect.Message {
   603  	mi := &edgelq_monitoring_proto_v3_metric_descriptor_proto_msgTypes[1]
   604  	if protoimpl.UnsafeEnabled && m != nil {
   605  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
   606  		if ms.LoadMessageInfo() == nil {
   607  			ms.StoreMessageInfo(mi)
   608  		}
   609  		return ms
   610  	}
   611  	return mi.MessageOf(m)
   612  }
   613  
   614  func (*MetricDescriptor_MetricDescriptorMetadata) GotenMessage() {}
   615  
   616  // Deprecated, Use MetricDescriptor_MetricDescriptorMetadata.ProtoReflect.Descriptor instead.
   617  func (*MetricDescriptor_MetricDescriptorMetadata) Descriptor() ([]byte, []int) {
   618  	return edgelq_monitoring_proto_v3_metric_descriptor_proto_rawDescGZIP(), []int{0, 0}
   619  }
   620  
   621  func (m *MetricDescriptor_MetricDescriptorMetadata) Unmarshal(b []byte) error {
   622  	return proto.Unmarshal(b, m)
   623  }
   624  
   625  func (m *MetricDescriptor_MetricDescriptorMetadata) Marshal() ([]byte, error) {
   626  	return proto.Marshal(m)
   627  }
   628  
   629  func (m *MetricDescriptor_MetricDescriptorMetadata) MarshalJSON() ([]byte, error) {
   630  	return protojson.MarshalOptions{}.Marshal(m)
   631  }
   632  
   633  func (m *MetricDescriptor_MetricDescriptorMetadata) UnmarshalJSON(data []byte) error {
   634  	return protojson.Unmarshal(data, m)
   635  }
   636  
   637  func (m *MetricDescriptor_MetricDescriptorMetadata) GetLaunchStage() api.LaunchStage {
   638  	if m != nil {
   639  		return m.LaunchStage
   640  	}
   641  	return api.LaunchStage_LAUNCH_STAGE_UNSPECIFIED
   642  }
   643  
   644  func (m *MetricDescriptor_MetricDescriptorMetadata) SetLaunchStage(fv api.LaunchStage) {
   645  	if m == nil {
   646  		panic(fmt.Errorf("can't set %s on nil %s", "LaunchStage", "MetricDescriptor_MetricDescriptorMetadata"))
   647  	}
   648  	m.LaunchStage = fv
   649  }
   650  
   651  type MetricDescriptor_IndexSpec struct {
   652  	state         protoimpl.MessageState
   653  	sizeCache     protoimpl.SizeCache
   654  	unknownFields protoimpl.UnknownFields
   655  	// PerResource index
   656  	PerResource []*MetricDescriptor_IndexSpec_PerMonitoredResource `protobuf:"bytes,1,rep,name=per_resource,json=perResource,proto3" json:"per_resource,omitempty"`
   657  }
   658  
   659  func (m *MetricDescriptor_IndexSpec) Reset() {
   660  	*m = MetricDescriptor_IndexSpec{}
   661  	if protoimpl.UnsafeEnabled {
   662  		mi := &edgelq_monitoring_proto_v3_metric_descriptor_proto_msgTypes[2]
   663  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
   664  		ms.StoreMessageInfo(mi)
   665  	}
   666  }
   667  
   668  func (m *MetricDescriptor_IndexSpec) String() string {
   669  	return protoimpl.X.MessageStringOf(m)
   670  }
   671  
   672  func (*MetricDescriptor_IndexSpec) ProtoMessage() {}
   673  
   674  func (m *MetricDescriptor_IndexSpec) ProtoReflect() preflect.Message {
   675  	mi := &edgelq_monitoring_proto_v3_metric_descriptor_proto_msgTypes[2]
   676  	if protoimpl.UnsafeEnabled && m != nil {
   677  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
   678  		if ms.LoadMessageInfo() == nil {
   679  			ms.StoreMessageInfo(mi)
   680  		}
   681  		return ms
   682  	}
   683  	return mi.MessageOf(m)
   684  }
   685  
   686  func (*MetricDescriptor_IndexSpec) GotenMessage() {}
   687  
   688  // Deprecated, Use MetricDescriptor_IndexSpec.ProtoReflect.Descriptor instead.
   689  func (*MetricDescriptor_IndexSpec) Descriptor() ([]byte, []int) {
   690  	return edgelq_monitoring_proto_v3_metric_descriptor_proto_rawDescGZIP(), []int{0, 1}
   691  }
   692  
   693  func (m *MetricDescriptor_IndexSpec) Unmarshal(b []byte) error {
   694  	return proto.Unmarshal(b, m)
   695  }
   696  
   697  func (m *MetricDescriptor_IndexSpec) Marshal() ([]byte, error) {
   698  	return proto.Marshal(m)
   699  }
   700  
   701  func (m *MetricDescriptor_IndexSpec) MarshalJSON() ([]byte, error) {
   702  	return protojson.MarshalOptions{}.Marshal(m)
   703  }
   704  
   705  func (m *MetricDescriptor_IndexSpec) UnmarshalJSON(data []byte) error {
   706  	return protojson.Unmarshal(data, m)
   707  }
   708  
   709  func (m *MetricDescriptor_IndexSpec) GetPerResource() []*MetricDescriptor_IndexSpec_PerMonitoredResource {
   710  	if m != nil {
   711  		return m.PerResource
   712  	}
   713  	return nil
   714  }
   715  
   716  func (m *MetricDescriptor_IndexSpec) SetPerResource(fv []*MetricDescriptor_IndexSpec_PerMonitoredResource) {
   717  	if m == nil {
   718  		panic(fmt.Errorf("can't set %s on nil %s", "PerResource", "MetricDescriptor_IndexSpec"))
   719  	}
   720  	m.PerResource = fv
   721  }
   722  
   723  // Backend storage config
   724  type MetricDescriptor_StorageConfig struct {
   725  	state         protoimpl.MessageState
   726  	sizeCache     protoimpl.SizeCache
   727  	unknownFields protoimpl.UnknownFields
   728  	// whether to store raw points
   729  	StoreRawPoints bool `protobuf:"varint,1,opt,name=store_raw_points,json=storeRawPoints,proto3" json:"store_raw_points,omitempty"`
   730  }
   731  
   732  func (m *MetricDescriptor_StorageConfig) Reset() {
   733  	*m = MetricDescriptor_StorageConfig{}
   734  	if protoimpl.UnsafeEnabled {
   735  		mi := &edgelq_monitoring_proto_v3_metric_descriptor_proto_msgTypes[3]
   736  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
   737  		ms.StoreMessageInfo(mi)
   738  	}
   739  }
   740  
   741  func (m *MetricDescriptor_StorageConfig) String() string {
   742  	return protoimpl.X.MessageStringOf(m)
   743  }
   744  
   745  func (*MetricDescriptor_StorageConfig) ProtoMessage() {}
   746  
   747  func (m *MetricDescriptor_StorageConfig) ProtoReflect() preflect.Message {
   748  	mi := &edgelq_monitoring_proto_v3_metric_descriptor_proto_msgTypes[3]
   749  	if protoimpl.UnsafeEnabled && m != nil {
   750  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
   751  		if ms.LoadMessageInfo() == nil {
   752  			ms.StoreMessageInfo(mi)
   753  		}
   754  		return ms
   755  	}
   756  	return mi.MessageOf(m)
   757  }
   758  
   759  func (*MetricDescriptor_StorageConfig) GotenMessage() {}
   760  
   761  // Deprecated, Use MetricDescriptor_StorageConfig.ProtoReflect.Descriptor instead.
   762  func (*MetricDescriptor_StorageConfig) Descriptor() ([]byte, []int) {
   763  	return edgelq_monitoring_proto_v3_metric_descriptor_proto_rawDescGZIP(), []int{0, 2}
   764  }
   765  
   766  func (m *MetricDescriptor_StorageConfig) Unmarshal(b []byte) error {
   767  	return proto.Unmarshal(b, m)
   768  }
   769  
   770  func (m *MetricDescriptor_StorageConfig) Marshal() ([]byte, error) {
   771  	return proto.Marshal(m)
   772  }
   773  
   774  func (m *MetricDescriptor_StorageConfig) MarshalJSON() ([]byte, error) {
   775  	return protojson.MarshalOptions{}.Marshal(m)
   776  }
   777  
   778  func (m *MetricDescriptor_StorageConfig) UnmarshalJSON(data []byte) error {
   779  	return protojson.Unmarshal(data, m)
   780  }
   781  
   782  func (m *MetricDescriptor_StorageConfig) GetStoreRawPoints() bool {
   783  	if m != nil {
   784  		return m.StoreRawPoints
   785  	}
   786  	return false
   787  }
   788  
   789  func (m *MetricDescriptor_StorageConfig) SetStoreRawPoints(fv bool) {
   790  	if m == nil {
   791  		panic(fmt.Errorf("can't set %s on nil %s", "StoreRawPoints", "MetricDescriptor_StorageConfig"))
   792  	}
   793  	m.StoreRawPoints = fv
   794  }
   795  
   796  type MetricDescriptor_IndexSpec_Index struct {
   797  	state         protoimpl.MessageState
   798  	sizeCache     protoimpl.SizeCache
   799  	unknownFields protoimpl.UnknownFields
   800  	// each label is of format: `{metric,resource}.labels.<label-key>`.
   801  	// since resource and metric labels are mixed. Full path is required.
   802  	PromotedLabels []string `protobuf:"bytes,2,rep,name=promoted_labels,json=promotedLabels,proto3" json:"promoted_labels,omitempty"`
   803  	// whether this index is write-only and not usable for querying
   804  	WriteOnly bool `protobuf:"varint,3,opt,name=write_only,json=writeOnly,proto3" json:"write_only,omitempty"`
   805  }
   806  
   807  func (m *MetricDescriptor_IndexSpec_Index) Reset() {
   808  	*m = MetricDescriptor_IndexSpec_Index{}
   809  	if protoimpl.UnsafeEnabled {
   810  		mi := &edgelq_monitoring_proto_v3_metric_descriptor_proto_msgTypes[4]
   811  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
   812  		ms.StoreMessageInfo(mi)
   813  	}
   814  }
   815  
   816  func (m *MetricDescriptor_IndexSpec_Index) String() string {
   817  	return protoimpl.X.MessageStringOf(m)
   818  }
   819  
   820  func (*MetricDescriptor_IndexSpec_Index) ProtoMessage() {}
   821  
   822  func (m *MetricDescriptor_IndexSpec_Index) ProtoReflect() preflect.Message {
   823  	mi := &edgelq_monitoring_proto_v3_metric_descriptor_proto_msgTypes[4]
   824  	if protoimpl.UnsafeEnabled && m != nil {
   825  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
   826  		if ms.LoadMessageInfo() == nil {
   827  			ms.StoreMessageInfo(mi)
   828  		}
   829  		return ms
   830  	}
   831  	return mi.MessageOf(m)
   832  }
   833  
   834  func (*MetricDescriptor_IndexSpec_Index) GotenMessage() {}
   835  
   836  // Deprecated, Use MetricDescriptor_IndexSpec_Index.ProtoReflect.Descriptor instead.
   837  func (*MetricDescriptor_IndexSpec_Index) Descriptor() ([]byte, []int) {
   838  	return edgelq_monitoring_proto_v3_metric_descriptor_proto_rawDescGZIP(), []int{0, 1, 0}
   839  }
   840  
   841  func (m *MetricDescriptor_IndexSpec_Index) Unmarshal(b []byte) error {
   842  	return proto.Unmarshal(b, m)
   843  }
   844  
   845  func (m *MetricDescriptor_IndexSpec_Index) Marshal() ([]byte, error) {
   846  	return proto.Marshal(m)
   847  }
   848  
   849  func (m *MetricDescriptor_IndexSpec_Index) MarshalJSON() ([]byte, error) {
   850  	return protojson.MarshalOptions{}.Marshal(m)
   851  }
   852  
   853  func (m *MetricDescriptor_IndexSpec_Index) UnmarshalJSON(data []byte) error {
   854  	return protojson.Unmarshal(data, m)
   855  }
   856  
   857  func (m *MetricDescriptor_IndexSpec_Index) GetPromotedLabels() []string {
   858  	if m != nil {
   859  		return m.PromotedLabels
   860  	}
   861  	return nil
   862  }
   863  
   864  func (m *MetricDescriptor_IndexSpec_Index) GetWriteOnly() bool {
   865  	if m != nil {
   866  		return m.WriteOnly
   867  	}
   868  	return false
   869  }
   870  
   871  func (m *MetricDescriptor_IndexSpec_Index) SetPromotedLabels(fv []string) {
   872  	if m == nil {
   873  		panic(fmt.Errorf("can't set %s on nil %s", "PromotedLabels", "MetricDescriptor_IndexSpec_Index"))
   874  	}
   875  	m.PromotedLabels = fv
   876  }
   877  
   878  func (m *MetricDescriptor_IndexSpec_Index) SetWriteOnly(fv bool) {
   879  	if m == nil {
   880  		panic(fmt.Errorf("can't set %s on nil %s", "WriteOnly", "MetricDescriptor_IndexSpec_Index"))
   881  	}
   882  	m.WriteOnly = fv
   883  }
   884  
   885  type MetricDescriptor_IndexSpec_PerMonitoredResource struct {
   886  	state         protoimpl.MessageState
   887  	sizeCache     protoimpl.SizeCache
   888  	unknownFields protoimpl.UnknownFields
   889  	Resource      *monitored_resource_descriptor.Reference `protobuf:"bytes,1,opt,customtype=Reference,name=resource,proto3" json:"resource,omitempty"`
   890  	// List of indices for given metric and resource pair
   891  	Indices []*MetricDescriptor_IndexSpec_Index `protobuf:"bytes,2,rep,name=indices,proto3" json:"indices,omitempty"`
   892  }
   893  
   894  func (m *MetricDescriptor_IndexSpec_PerMonitoredResource) Reset() {
   895  	*m = MetricDescriptor_IndexSpec_PerMonitoredResource{}
   896  	if protoimpl.UnsafeEnabled {
   897  		mi := &edgelq_monitoring_proto_v3_metric_descriptor_proto_msgTypes[5]
   898  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
   899  		ms.StoreMessageInfo(mi)
   900  	}
   901  }
   902  
   903  func (m *MetricDescriptor_IndexSpec_PerMonitoredResource) String() string {
   904  	return protoimpl.X.MessageStringOf(m)
   905  }
   906  
   907  func (*MetricDescriptor_IndexSpec_PerMonitoredResource) ProtoMessage() {}
   908  
   909  func (m *MetricDescriptor_IndexSpec_PerMonitoredResource) ProtoReflect() preflect.Message {
   910  	mi := &edgelq_monitoring_proto_v3_metric_descriptor_proto_msgTypes[5]
   911  	if protoimpl.UnsafeEnabled && m != nil {
   912  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
   913  		if ms.LoadMessageInfo() == nil {
   914  			ms.StoreMessageInfo(mi)
   915  		}
   916  		return ms
   917  	}
   918  	return mi.MessageOf(m)
   919  }
   920  
   921  func (*MetricDescriptor_IndexSpec_PerMonitoredResource) GotenMessage() {}
   922  
   923  // Deprecated, Use MetricDescriptor_IndexSpec_PerMonitoredResource.ProtoReflect.Descriptor instead.
   924  func (*MetricDescriptor_IndexSpec_PerMonitoredResource) Descriptor() ([]byte, []int) {
   925  	return edgelq_monitoring_proto_v3_metric_descriptor_proto_rawDescGZIP(), []int{0, 1, 1}
   926  }
   927  
   928  func (m *MetricDescriptor_IndexSpec_PerMonitoredResource) Unmarshal(b []byte) error {
   929  	return proto.Unmarshal(b, m)
   930  }
   931  
   932  func (m *MetricDescriptor_IndexSpec_PerMonitoredResource) Marshal() ([]byte, error) {
   933  	return proto.Marshal(m)
   934  }
   935  
   936  func (m *MetricDescriptor_IndexSpec_PerMonitoredResource) MarshalJSON() ([]byte, error) {
   937  	return protojson.MarshalOptions{}.Marshal(m)
   938  }
   939  
   940  func (m *MetricDescriptor_IndexSpec_PerMonitoredResource) UnmarshalJSON(data []byte) error {
   941  	return protojson.Unmarshal(data, m)
   942  }
   943  
   944  func (m *MetricDescriptor_IndexSpec_PerMonitoredResource) GetResource() *monitored_resource_descriptor.Reference {
   945  	if m != nil {
   946  		return m.Resource
   947  	}
   948  	return nil
   949  }
   950  
   951  func (m *MetricDescriptor_IndexSpec_PerMonitoredResource) GetIndices() []*MetricDescriptor_IndexSpec_Index {
   952  	if m != nil {
   953  		return m.Indices
   954  	}
   955  	return nil
   956  }
   957  
   958  func (m *MetricDescriptor_IndexSpec_PerMonitoredResource) SetResource(fv *monitored_resource_descriptor.Reference) {
   959  	if m == nil {
   960  		panic(fmt.Errorf("can't set %s on nil %s", "Resource", "MetricDescriptor_IndexSpec_PerMonitoredResource"))
   961  	}
   962  	m.Resource = fv
   963  }
   964  
   965  func (m *MetricDescriptor_IndexSpec_PerMonitoredResource) SetIndices(fv []*MetricDescriptor_IndexSpec_Index) {
   966  	if m == nil {
   967  		panic(fmt.Errorf("can't set %s on nil %s", "Indices", "MetricDescriptor_IndexSpec_PerMonitoredResource"))
   968  	}
   969  	m.Indices = fv
   970  }
   971  
   972  var edgelq_monitoring_proto_v3_metric_descriptor_proto preflect.FileDescriptor
   973  
   974  var edgelq_monitoring_proto_v3_metric_descriptor_proto_rawDesc = []byte{
   975  	0x0a, 0x32, 0x65, 0x64, 0x67, 0x65, 0x6c, 0x71, 0x2f, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72,
   976  	0x69, 0x6e, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x76, 0x33, 0x2f, 0x6d, 0x65, 0x74,
   977  	0x72, 0x69, 0x63, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x70,
   978  	0x72, 0x6f, 0x74, 0x6f, 0x12, 0x11, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f,
   979  	0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
   980  	0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f,
   981  	0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x74, 0x65, 0x6e, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61,
   982  	0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70,
   983  	0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x67, 0x6f, 0x74, 0x65, 0x6e, 0x2f, 0x61, 0x6e, 0x6e, 0x6f,
   984  	0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x67, 0x6f, 0x74, 0x65, 0x6e, 0x2e, 0x70, 0x72,
   985  	0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x74, 0x65, 0x6e, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74,
   986  	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e,
   987  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x67, 0x6f, 0x74, 0x65, 0x6e, 0x2f, 0x61, 0x6e, 0x6e,
   988  	0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x70,
   989  	0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x74, 0x65, 0x6e, 0x2f, 0x61, 0x6e, 0x6e, 0x6f,
   990  	0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e,
   991  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x24, 0x65, 0x64, 0x67, 0x65, 0x6c, 0x71, 0x2f, 0x61, 0x75,
   992  	0x64, 0x69, 0x74, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
   993  	0x61, 0x75, 0x64, 0x69, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x16, 0x67, 0x6f, 0x74,
   994  	0x65, 0x6e, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x70, 0x72,
   995  	0x6f, 0x74, 0x6f, 0x1a, 0x24, 0x65, 0x64, 0x67, 0x65, 0x6c, 0x71, 0x2f, 0x63, 0x6f, 0x6d, 0x6d,
   996  	0x6f, 0x6e, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x5f, 0x73, 0x74,
   997  	0x61, 0x67, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x27, 0x65, 0x64, 0x67, 0x65, 0x6c,
   998  	0x71, 0x2f, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2f, 0x70, 0x72, 0x6f,
   999  	0x74, 0x6f, 0x2f, 0x76, 0x33, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f,
  1000  	0x74, 0x6f, 0x22, 0xf1, 0x11, 0x0a, 0x10, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73,
  1001  	0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x12, 0x2d, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64,
  1002  	0x61, 0x74, 0x61, 0x18, 0x23, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x67, 0x6f, 0x74, 0x65,
  1003  	0x6e, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65,
  1004  	0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x2c, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01,
  1005  	0x20, 0x01, 0x28, 0x09, 0x42, 0x18, 0xb2, 0xda, 0x21, 0x14, 0x0a, 0x12, 0x0a, 0x10, 0x4d, 0x65,
  1006  	0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x52, 0x04,
  1007  	0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01,
  1008  	0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x2f, 0x0a, 0x0e, 0x72, 0x65, 0x73, 0x6f,
  1009  	0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x22, 0x20, 0x03, 0x28, 0x09,
  1010  	0x42, 0x08, 0xca, 0xc6, 0x27, 0x04, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0d, 0x72, 0x65, 0x73, 0x6f,
  1011  	0x75, 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x46, 0x0a, 0x06, 0x6c, 0x61, 0x62,
  1012  	0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6e, 0x74, 0x74, 0x2e,
  1013  	0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x2e, 0x4c, 0x61,
  1014  	0x62, 0x65, 0x6c, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x42, 0x0a, 0xca,
  1015  	0xc6, 0x27, 0x06, 0x42, 0x04, 0x12, 0x02, 0x08, 0x0d, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c,
  1016  	0x73, 0x12, 0x4f, 0x0a, 0x0b, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x6b, 0x69, 0x6e, 0x64,
  1017  	0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e,
  1018  	0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69,
  1019  	0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x4d, 0x65, 0x74, 0x72,
  1020  	0x69, 0x63, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x0a, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x4b, 0x69,
  1021  	0x6e, 0x64, 0x12, 0x4c, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65,
  1022  	0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2d, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e,
  1023  	0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69,
  1024  	0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x56, 0x61, 0x6c, 0x75,
  1025  	0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, 0x65,
  1026  	0x12, 0x12, 0x0a, 0x04, 0x75, 0x6e, 0x69, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
  1027  	0x75, 0x6e, 0x69, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
  1028  	0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72,
  1029  	0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61,
  1030  	0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69,
  1031  	0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x7a, 0x0a, 0x1a, 0x6d, 0x65, 0x74,
  1032  	0x72, 0x69, 0x63, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x6d,
  1033  	0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3c, 0x2e,
  1034  	0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76,
  1035  	0x33, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
  1036  	0x6f, 0x72, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
  1037  	0x74, 0x6f, 0x72, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x18, 0x6d, 0x65, 0x74,
  1038  	0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x4d, 0x65, 0x74,
  1039  	0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x6d, 0x0a, 0x1b, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62,
  1040  	0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x6f, 0x70, 0x74,
  1041  	0x69, 0x6f, 0x6e, 0x73, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x6e, 0x74, 0x74,
  1042  	0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x2e, 0x44,
  1043  	0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x42, 0x75, 0x63, 0x6b,
  1044  	0x65, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x19, 0x64, 0x69, 0x73, 0x74, 0x72,
  1045  	0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x4f, 0x70, 0x74,
  1046  	0x69, 0x6f, 0x6e, 0x73, 0x12, 0x55, 0x0a, 0x17, 0x70, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x64,
  1047  	0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x73, 0x65, 0x74, 0x73, 0x18,
  1048  	0x20, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69,
  1049  	0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x4b,
  1050  	0x65, 0x79, 0x53, 0x65, 0x74, 0x52, 0x14, 0x70, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x64, 0x4c,
  1051  	0x61, 0x62, 0x65, 0x6c, 0x4b, 0x65, 0x79, 0x53, 0x65, 0x74, 0x73, 0x12, 0x4c, 0x0a, 0x0a, 0x69,
  1052  	0x6e, 0x64, 0x65, 0x78, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0b, 0x32,
  1053  	0x2d, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67,
  1054  	0x2e, 0x76, 0x33, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69,
  1055  	0x70, 0x74, 0x6f, 0x72, 0x2e, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x53, 0x70, 0x65, 0x63, 0x52, 0x09,
  1056  	0x69, 0x6e, 0x64, 0x65, 0x78, 0x53, 0x70, 0x65, 0x63, 0x12, 0x58, 0x0a, 0x0e, 0x73, 0x74, 0x6f,
  1057  	0x72, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x21, 0x20, 0x01, 0x28,
  1058  	0x0b, 0x32, 0x31, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69,
  1059  	0x6e, 0x67, 0x2e, 0x76, 0x33, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63,
  1060  	0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x43, 0x6f,
  1061  	0x6e, 0x66, 0x69, 0x67, 0x52, 0x0d, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e,
  1062  	0x66, 0x69, 0x67, 0x1a, 0x53, 0x0a, 0x18, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73,
  1063  	0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12,
  1064  	0x37, 0x0a, 0x0c, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x5f, 0x73, 0x74, 0x61, 0x67, 0x65, 0x18,
  1065  	0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x61, 0x70, 0x69, 0x2e,
  1066  	0x4c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x53, 0x74, 0x61, 0x67, 0x65, 0x52, 0x0b, 0x6c, 0x61, 0x75,
  1067  	0x6e, 0x63, 0x68, 0x53, 0x74, 0x61, 0x67, 0x65, 0x1a, 0xee, 0x02, 0x0a, 0x09, 0x49, 0x6e, 0x64,
  1068  	0x65, 0x78, 0x53, 0x70, 0x65, 0x63, 0x12, 0x65, 0x0a, 0x0c, 0x70, 0x65, 0x72, 0x5f, 0x72, 0x65,
  1069  	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x42, 0x2e, 0x6e,
  1070  	0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33,
  1071  	0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f,
  1072  	0x72, 0x2e, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x50, 0x65, 0x72, 0x4d,
  1073  	0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
  1074  	0x52, 0x0b, 0x70, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x1a, 0x4f, 0x0a,
  1075  	0x05, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x6d, 0x6f, 0x74,
  1076  	0x65, 0x64, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52,
  1077  	0x0e, 0x70, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x64, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12,
  1078  	0x1d, 0x0a, 0x0a, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x03, 0x20,
  1079  	0x01, 0x28, 0x08, 0x52, 0x09, 0x77, 0x72, 0x69, 0x74, 0x65, 0x4f, 0x6e, 0x6c, 0x79, 0x1a, 0xa8,
  1080  	0x01, 0x0a, 0x14, 0x50, 0x65, 0x72, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x52,
  1081  	0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x41, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75,
  1082  	0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x25, 0xb2, 0xda, 0x21, 0x21, 0x12,
  1083  	0x1f, 0x0a, 0x1b, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x52, 0x65, 0x73, 0x6f,
  1084  	0x75, 0x72, 0x63, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x10, 0x06,
  1085  	0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x4d, 0x0a, 0x07, 0x69, 0x6e,
  1086  	0x64, 0x69, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x6e, 0x74,
  1087  	0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x2e,
  1088  	0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72,
  1089  	0x2e, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x49, 0x6e, 0x64, 0x65, 0x78,
  1090  	0x52, 0x07, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x1a, 0x39, 0x0a, 0x0d, 0x53, 0x74, 0x6f,
  1091  	0x72, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x28, 0x0a, 0x10, 0x73, 0x74,
  1092  	0x6f, 0x72, 0x65, 0x5f, 0x72, 0x61, 0x77, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x01,
  1093  	0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x52, 0x61, 0x77, 0x50, 0x6f,
  1094  	0x69, 0x6e, 0x74, 0x73, 0x22, 0x4f, 0x0a, 0x0a, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x4b, 0x69,
  1095  	0x6e, 0x64, 0x12, 0x1b, 0x0a, 0x17, 0x4d, 0x45, 0x54, 0x52, 0x49, 0x43, 0x5f, 0x4b, 0x49, 0x4e,
  1096  	0x44, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12,
  1097  	0x09, 0x0a, 0x05, 0x47, 0x41, 0x55, 0x47, 0x45, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x44, 0x45,
  1098  	0x4c, 0x54, 0x41, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x43, 0x55, 0x4d, 0x55, 0x4c, 0x41, 0x54,
  1099  	0x49, 0x56, 0x45, 0x10, 0x03, 0x22, 0x71, 0x0a, 0x09, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79,
  1100  	0x70, 0x65, 0x12, 0x1a, 0x0a, 0x16, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45,
  1101  	0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x08,
  1102  	0x0a, 0x04, 0x42, 0x4f, 0x4f, 0x4c, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x49, 0x4e, 0x54, 0x36,
  1103  	0x34, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x44, 0x4f, 0x55, 0x42, 0x4c, 0x45, 0x10, 0x03, 0x12,
  1104  	0x0a, 0x0a, 0x06, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x04, 0x12, 0x10, 0x0a, 0x0c, 0x44,
  1105  	0x49, 0x53, 0x54, 0x52, 0x49, 0x42, 0x55, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x05, 0x12, 0x09, 0x0a,
  1106  	0x05, 0x4d, 0x4f, 0x4e, 0x45, 0x59, 0x10, 0x06, 0x3a, 0xcb, 0x04, 0xea, 0x41, 0x62, 0x0a, 0x26,
  1107  	0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x65, 0x64, 0x67, 0x65, 0x6c,
  1108  	0x71, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63,
  1109  	0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x12, 0x38, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
  1110  	0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6d, 0x65, 0x74, 0x72, 0x69,
  1111  	0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x73, 0x2f, 0x7b, 0x6d, 0x65,
  1112  	0x74, 0x72, 0x69, 0x63, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x7d,
  1113  	0x92, 0xd9, 0x21, 0xb5, 0x01, 0x0a, 0x11, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73,
  1114  	0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x11, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63,
  1115  	0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x73, 0x1a, 0x07, 0x50, 0x72, 0x6f,
  1116  	0x6a, 0x65, 0x63, 0x74, 0x2a, 0x0e, 0x5b, 0x5c, 0x77, 0x2e, 0x2f, 0x2d, 0x5d, 0x7b, 0x34, 0x2c,
  1117  	0x31, 0x32, 0x38, 0x7d, 0x38, 0x05, 0x42, 0x72, 0x08, 0x02, 0x12, 0x06, 0x0a, 0x04, 0x6e, 0x61,
  1118  	0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61,
  1119  	0x6d, 0x65, 0x12, 0x06, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x0d, 0x0a, 0x0b, 0x6d, 0x65,
  1120  	0x74, 0x72, 0x69, 0x63, 0x5f, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x0c, 0x0a, 0x0a, 0x76, 0x61, 0x6c,
  1121  	0x75, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x12, 0x06, 0x0a, 0x04, 0x75, 0x6e, 0x69, 0x74, 0x12,
  1122  	0x29, 0x0a, 0x27, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
  1123  	0x70, 0x74, 0x6f, 0x72, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x6c, 0x61,
  1124  	0x75, 0x6e, 0x63, 0x68, 0x5f, 0x73, 0x74, 0x61, 0x67, 0x65, 0xb2, 0xdf, 0x21, 0x41, 0x0a, 0x3f,
  1125  	0x0a, 0x3d, 0x0a, 0x06, 0x62, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x04, 0x6e, 0x61, 0x6d, 0x65,
  1126  	0x1a, 0x26, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a,
  1127  	0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72,
  1128  	0x69, 0x70, 0x74, 0x6f, 0x72, 0x73, 0x2f, 0x2d, 0x2a, 0x05, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0xda,
  1129  	0x94, 0x23, 0x08, 0x12, 0x06, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0xc2, 0x85, 0x2c, 0xd6, 0x01,
  1130  	0x22, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0x06, 0x6c, 0x61,
  1131  	0x62, 0x65, 0x6c, 0x73, 0x22, 0x0b, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x6b, 0x69, 0x6e,
  1132  	0x64, 0x22, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x22, 0x04, 0x75,
  1133  	0x6e, 0x69, 0x74, 0x22, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
  1134  	0x22, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x1b,
  1135  	0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x75, 0x63,
  1136  	0x6b, 0x65, 0x74, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x17, 0x70, 0x72, 0x6f,
  1137  	0x6d, 0x6f, 0x74, 0x65, 0x64, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x5f, 0x6b, 0x65, 0x79, 0x5f,
  1138  	0x73, 0x65, 0x74, 0x73, 0x22, 0x0e, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74,
  1139  	0x79, 0x70, 0x65, 0x73, 0x22, 0x0a, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x73, 0x70, 0x65, 0x63,
  1140  	0x22, 0x0e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
  1141  	0x42, 0x1a, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
  1142  	0x74, 0x6f, 0x72, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x42, 0x08, 0x6d, 0x65,
  1143  	0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x42, 0xd1, 0x02, 0xe8, 0xde, 0x21, 0x01, 0xd2, 0xff, 0xd0,
  1144  	0x02, 0x5b, 0x0a, 0x17, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72,
  1145  	0x69, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x12, 0x40, 0x67, 0x69, 0x74,
  1146  	0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x77, 0x61, 0x6e,
  1147  	0x2f, 0x65, 0x64, 0x67, 0x65, 0x6c, 0x71, 0x2f, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69,
  1148  	0x6e, 0x67, 0x2f, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2f, 0x76, 0x33, 0x2f, 0x6d, 0x65, 0x74, 0x72,
  1149  	0x69, 0x63, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0xa2, 0x80, 0xd1,
  1150  	0x02, 0x5d, 0x0a, 0x18, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72,
  1151  	0x69, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x41, 0x67, 0x69,
  1152  	0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x77, 0x61,
  1153  	0x6e, 0x2f, 0x65, 0x64, 0x67, 0x65, 0x6c, 0x71, 0x2f, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72,
  1154  	0x69, 0x6e, 0x67, 0x2f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x2f, 0x76, 0x33, 0x2f, 0x6d, 0x65,
  1155  	0x74, 0x72, 0x69, 0x63, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x0a,
  1156  	0x18, 0x63, 0x6f, 0x6d, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72,
  1157  	0x69, 0x6e, 0x67, 0x2e, 0x70, 0x62, 0x2e, 0x76, 0x33, 0x42, 0x15, 0x4d, 0x65, 0x74, 0x72, 0x69,
  1158  	0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f,
  1159  	0x50, 0x01, 0x5a, 0x56, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63,
  1160  	0x6c, 0x6f, 0x75, 0x64, 0x77, 0x61, 0x6e, 0x2f, 0x65, 0x64, 0x67, 0x65, 0x6c, 0x71, 0x2f, 0x6d,
  1161  	0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72,
  1162  	0x63, 0x65, 0x73, 0x2f, 0x76, 0x33, 0x2f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x64, 0x65,
  1163  	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x3b, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f,
  1164  	0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74,
  1165  	0x6f, 0x33,
  1166  }
  1167  
  1168  var (
  1169  	edgelq_monitoring_proto_v3_metric_descriptor_proto_rawDescOnce sync.Once
  1170  	edgelq_monitoring_proto_v3_metric_descriptor_proto_rawDescData = edgelq_monitoring_proto_v3_metric_descriptor_proto_rawDesc
  1171  )
  1172  
  1173  func edgelq_monitoring_proto_v3_metric_descriptor_proto_rawDescGZIP() []byte {
  1174  	edgelq_monitoring_proto_v3_metric_descriptor_proto_rawDescOnce.Do(func() {
  1175  		edgelq_monitoring_proto_v3_metric_descriptor_proto_rawDescData = protoimpl.X.CompressGZIP(edgelq_monitoring_proto_v3_metric_descriptor_proto_rawDescData)
  1176  	})
  1177  	return edgelq_monitoring_proto_v3_metric_descriptor_proto_rawDescData
  1178  }
  1179  
  1180  var edgelq_monitoring_proto_v3_metric_descriptor_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
  1181  var edgelq_monitoring_proto_v3_metric_descriptor_proto_msgTypes = make([]protoimpl.MessageInfo, 6)
  1182  var edgelq_monitoring_proto_v3_metric_descriptor_proto_goTypes = []interface{}{
  1183  	(MetricDescriptor_MetricKind)(0),                        // 0: ntt.monitoring.v3.MetricDescriptor_MetricKind
  1184  	(MetricDescriptor_ValueType)(0),                         // 1: ntt.monitoring.v3.MetricDescriptor_ValueType
  1185  	(*MetricDescriptor)(nil),                                // 2: ntt.monitoring.v3.MetricDescriptor
  1186  	(*MetricDescriptor_MetricDescriptorMetadata)(nil),       // 3: ntt.monitoring.v3.MetricDescriptor.MetricDescriptorMetadata
  1187  	(*MetricDescriptor_IndexSpec)(nil),                      // 4: ntt.monitoring.v3.MetricDescriptor.IndexSpec
  1188  	(*MetricDescriptor_StorageConfig)(nil),                  // 5: ntt.monitoring.v3.MetricDescriptor.StorageConfig
  1189  	(*MetricDescriptor_IndexSpec_Index)(nil),                // 6: ntt.monitoring.v3.MetricDescriptor.IndexSpec.Index
  1190  	(*MetricDescriptor_IndexSpec_PerMonitoredResource)(nil), // 7: ntt.monitoring.v3.MetricDescriptor.IndexSpec.PerMonitoredResource
  1191  	(*meta.Meta)(nil),                                       // 8: goten.types.Meta
  1192  	(*common.LabelDescriptor)(nil),                          // 9: ntt.monitoring.v3.LabelDescriptor
  1193  	(*common.Distribution_BucketOptions)(nil),               // 10: ntt.monitoring.v3.Distribution.BucketOptions
  1194  	(*common.LabelKeySet)(nil),                              // 11: ntt.monitoring.v3.LabelKeySet
  1195  	(api.LaunchStage)(0),                                    // 12: ntt.api.LaunchStage
  1196  }
  1197  var edgelq_monitoring_proto_v3_metric_descriptor_proto_depIdxs = []int32{
  1198  	8,  // 0: ntt.monitoring.v3.MetricDescriptor.metadata:type_name -> goten.types.Meta
  1199  	9,  // 1: ntt.monitoring.v3.MetricDescriptor.labels:type_name -> ntt.monitoring.v3.LabelDescriptor
  1200  	0,  // 2: ntt.monitoring.v3.MetricDescriptor.metric_kind:type_name -> ntt.monitoring.v3.MetricDescriptor_MetricKind
  1201  	1,  // 3: ntt.monitoring.v3.MetricDescriptor.value_type:type_name -> ntt.monitoring.v3.MetricDescriptor_ValueType
  1202  	3,  // 4: ntt.monitoring.v3.MetricDescriptor.metric_descriptor_metadata:type_name -> ntt.monitoring.v3.MetricDescriptor.MetricDescriptorMetadata
  1203  	10, // 5: ntt.monitoring.v3.MetricDescriptor.distribution_bucket_options:type_name -> ntt.monitoring.v3.Distribution.BucketOptions
  1204  	11, // 6: ntt.monitoring.v3.MetricDescriptor.promoted_label_key_sets:type_name -> ntt.monitoring.v3.LabelKeySet
  1205  	4,  // 7: ntt.monitoring.v3.MetricDescriptor.index_spec:type_name -> ntt.monitoring.v3.MetricDescriptor.IndexSpec
  1206  	5,  // 8: ntt.monitoring.v3.MetricDescriptor.storage_config:type_name -> ntt.monitoring.v3.MetricDescriptor.StorageConfig
  1207  	12, // 9: ntt.monitoring.v3.MetricDescriptor.MetricDescriptorMetadata.launch_stage:type_name -> ntt.api.LaunchStage
  1208  	7,  // 10: ntt.monitoring.v3.MetricDescriptor.IndexSpec.per_resource:type_name -> ntt.monitoring.v3.MetricDescriptor.IndexSpec.PerMonitoredResource
  1209  	6,  // 11: ntt.monitoring.v3.MetricDescriptor.IndexSpec.PerMonitoredResource.indices:type_name -> ntt.monitoring.v3.MetricDescriptor.IndexSpec.Index
  1210  	12, // [12:12] is the sub-list for method output_type
  1211  	12, // [12:12] is the sub-list for method input_type
  1212  	12, // [12:12] is the sub-list for extension type_name
  1213  	12, // [12:12] is the sub-list for extension extendee
  1214  	0,  // [0:12] is the sub-list for field type_name
  1215  }
  1216  
  1217  func init() { edgelq_monitoring_proto_v3_metric_descriptor_proto_init() }
  1218  func edgelq_monitoring_proto_v3_metric_descriptor_proto_init() {
  1219  	if edgelq_monitoring_proto_v3_metric_descriptor_proto != nil {
  1220  		return
  1221  	}
  1222  	if !protoimpl.UnsafeEnabled {
  1223  
  1224  		edgelq_monitoring_proto_v3_metric_descriptor_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
  1225  			switch v := v.(*MetricDescriptor); i {
  1226  			case 0:
  1227  				return &v.state
  1228  			case 1:
  1229  				return &v.sizeCache
  1230  			case 2:
  1231  				return &v.unknownFields
  1232  			default:
  1233  				return nil
  1234  			}
  1235  		}
  1236  		edgelq_monitoring_proto_v3_metric_descriptor_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
  1237  			switch v := v.(*MetricDescriptor_MetricDescriptorMetadata); i {
  1238  			case 0:
  1239  				return &v.state
  1240  			case 1:
  1241  				return &v.sizeCache
  1242  			case 2:
  1243  				return &v.unknownFields
  1244  			default:
  1245  				return nil
  1246  			}
  1247  		}
  1248  		edgelq_monitoring_proto_v3_metric_descriptor_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
  1249  			switch v := v.(*MetricDescriptor_IndexSpec); i {
  1250  			case 0:
  1251  				return &v.state
  1252  			case 1:
  1253  				return &v.sizeCache
  1254  			case 2:
  1255  				return &v.unknownFields
  1256  			default:
  1257  				return nil
  1258  			}
  1259  		}
  1260  		edgelq_monitoring_proto_v3_metric_descriptor_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
  1261  			switch v := v.(*MetricDescriptor_StorageConfig); i {
  1262  			case 0:
  1263  				return &v.state
  1264  			case 1:
  1265  				return &v.sizeCache
  1266  			case 2:
  1267  				return &v.unknownFields
  1268  			default:
  1269  				return nil
  1270  			}
  1271  		}
  1272  		edgelq_monitoring_proto_v3_metric_descriptor_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
  1273  			switch v := v.(*MetricDescriptor_IndexSpec_Index); i {
  1274  			case 0:
  1275  				return &v.state
  1276  			case 1:
  1277  				return &v.sizeCache
  1278  			case 2:
  1279  				return &v.unknownFields
  1280  			default:
  1281  				return nil
  1282  			}
  1283  		}
  1284  		edgelq_monitoring_proto_v3_metric_descriptor_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
  1285  			switch v := v.(*MetricDescriptor_IndexSpec_PerMonitoredResource); i {
  1286  			case 0:
  1287  				return &v.state
  1288  			case 1:
  1289  				return &v.sizeCache
  1290  			case 2:
  1291  				return &v.unknownFields
  1292  			default:
  1293  				return nil
  1294  			}
  1295  		}
  1296  	}
  1297  
  1298  	type x struct{}
  1299  	out := protoimpl.TypeBuilder{
  1300  		File: protoimpl.DescBuilder{
  1301  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  1302  			RawDescriptor: edgelq_monitoring_proto_v3_metric_descriptor_proto_rawDesc,
  1303  			NumEnums:      2,
  1304  			NumMessages:   6,
  1305  			NumExtensions: 0,
  1306  			NumServices:   0,
  1307  		},
  1308  		GoTypes:           edgelq_monitoring_proto_v3_metric_descriptor_proto_goTypes,
  1309  		DependencyIndexes: edgelq_monitoring_proto_v3_metric_descriptor_proto_depIdxs,
  1310  		EnumInfos:         edgelq_monitoring_proto_v3_metric_descriptor_proto_enumTypes,
  1311  		MessageInfos:      edgelq_monitoring_proto_v3_metric_descriptor_proto_msgTypes,
  1312  	}.Build()
  1313  	edgelq_monitoring_proto_v3_metric_descriptor_proto = out.File
  1314  	edgelq_monitoring_proto_v3_metric_descriptor_proto_rawDesc = nil
  1315  	edgelq_monitoring_proto_v3_metric_descriptor_proto_goTypes = nil
  1316  	edgelq_monitoring_proto_v3_metric_descriptor_proto_depIdxs = nil
  1317  }