1// Copyright 2015 Google LLC 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15// Code generated by protoc-gen-go. DO NOT EDIT. 16// versions: 17// protoc-gen-go v1.26.0 18// protoc v3.12.2 19// source: google/api/metric.proto 20 21package metric 22 23import ( 24 reflect "reflect" 25 sync "sync" 26 27 api "google.golang.org/genproto/googleapis/api" 28 label "google.golang.org/genproto/googleapis/api/label" 29 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 30 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 31 durationpb "google.golang.org/protobuf/types/known/durationpb" 32) 33 34const ( 35 // Verify that this generated code is sufficiently up-to-date. 36 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 37 // Verify that runtime/protoimpl is sufficiently up-to-date. 38 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 39) 40 41// The kind of measurement. It describes how the data is reported. 42// For information on setting the start time and end time based on 43// the MetricKind, see [TimeInterval][google.monitoring.v3.TimeInterval]. 44type MetricDescriptor_MetricKind int32 45 46const ( 47 // Do not use this default value. 48 MetricDescriptor_METRIC_KIND_UNSPECIFIED MetricDescriptor_MetricKind = 0 49 // An instantaneous measurement of a value. 50 MetricDescriptor_GAUGE MetricDescriptor_MetricKind = 1 51 // The change in a value during a time interval. 52 MetricDescriptor_DELTA MetricDescriptor_MetricKind = 2 53 // A value accumulated over a time interval. Cumulative 54 // measurements in a time series should have the same start time 55 // and increasing end times, until an event resets the cumulative 56 // value to zero and sets a new start time for the following 57 // points. 58 MetricDescriptor_CUMULATIVE MetricDescriptor_MetricKind = 3 59) 60 61// Enum value maps for MetricDescriptor_MetricKind. 62var ( 63 MetricDescriptor_MetricKind_name = map[int32]string{ 64 0: "METRIC_KIND_UNSPECIFIED", 65 1: "GAUGE", 66 2: "DELTA", 67 3: "CUMULATIVE", 68 } 69 MetricDescriptor_MetricKind_value = map[string]int32{ 70 "METRIC_KIND_UNSPECIFIED": 0, 71 "GAUGE": 1, 72 "DELTA": 2, 73 "CUMULATIVE": 3, 74 } 75) 76 77func (x MetricDescriptor_MetricKind) Enum() *MetricDescriptor_MetricKind { 78 p := new(MetricDescriptor_MetricKind) 79 *p = x 80 return p 81} 82 83func (x MetricDescriptor_MetricKind) String() string { 84 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 85} 86 87func (MetricDescriptor_MetricKind) Descriptor() protoreflect.EnumDescriptor { 88 return file_google_api_metric_proto_enumTypes[0].Descriptor() 89} 90 91func (MetricDescriptor_MetricKind) Type() protoreflect.EnumType { 92 return &file_google_api_metric_proto_enumTypes[0] 93} 94 95func (x MetricDescriptor_MetricKind) Number() protoreflect.EnumNumber { 96 return protoreflect.EnumNumber(x) 97} 98 99// Deprecated: Use MetricDescriptor_MetricKind.Descriptor instead. 100func (MetricDescriptor_MetricKind) EnumDescriptor() ([]byte, []int) { 101 return file_google_api_metric_proto_rawDescGZIP(), []int{0, 0} 102} 103 104// The value type of a metric. 105type MetricDescriptor_ValueType int32 106 107const ( 108 // Do not use this default value. 109 MetricDescriptor_VALUE_TYPE_UNSPECIFIED MetricDescriptor_ValueType = 0 110 // The value is a boolean. 111 // This value type can be used only if the metric kind is `GAUGE`. 112 MetricDescriptor_BOOL MetricDescriptor_ValueType = 1 113 // The value is a signed 64-bit integer. 114 MetricDescriptor_INT64 MetricDescriptor_ValueType = 2 115 // The value is a double precision floating point number. 116 MetricDescriptor_DOUBLE MetricDescriptor_ValueType = 3 117 // The value is a text string. 118 // This value type can be used only if the metric kind is `GAUGE`. 119 MetricDescriptor_STRING MetricDescriptor_ValueType = 4 120 // The value is a [`Distribution`][google.api.Distribution]. 121 MetricDescriptor_DISTRIBUTION MetricDescriptor_ValueType = 5 122 // The value is money. 123 MetricDescriptor_MONEY MetricDescriptor_ValueType = 6 124) 125 126// Enum value maps for MetricDescriptor_ValueType. 127var ( 128 MetricDescriptor_ValueType_name = map[int32]string{ 129 0: "VALUE_TYPE_UNSPECIFIED", 130 1: "BOOL", 131 2: "INT64", 132 3: "DOUBLE", 133 4: "STRING", 134 5: "DISTRIBUTION", 135 6: "MONEY", 136 } 137 MetricDescriptor_ValueType_value = map[string]int32{ 138 "VALUE_TYPE_UNSPECIFIED": 0, 139 "BOOL": 1, 140 "INT64": 2, 141 "DOUBLE": 3, 142 "STRING": 4, 143 "DISTRIBUTION": 5, 144 "MONEY": 6, 145 } 146) 147 148func (x MetricDescriptor_ValueType) Enum() *MetricDescriptor_ValueType { 149 p := new(MetricDescriptor_ValueType) 150 *p = x 151 return p 152} 153 154func (x MetricDescriptor_ValueType) String() string { 155 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 156} 157 158func (MetricDescriptor_ValueType) Descriptor() protoreflect.EnumDescriptor { 159 return file_google_api_metric_proto_enumTypes[1].Descriptor() 160} 161 162func (MetricDescriptor_ValueType) Type() protoreflect.EnumType { 163 return &file_google_api_metric_proto_enumTypes[1] 164} 165 166func (x MetricDescriptor_ValueType) Number() protoreflect.EnumNumber { 167 return protoreflect.EnumNumber(x) 168} 169 170// Deprecated: Use MetricDescriptor_ValueType.Descriptor instead. 171func (MetricDescriptor_ValueType) EnumDescriptor() ([]byte, []int) { 172 return file_google_api_metric_proto_rawDescGZIP(), []int{0, 1} 173} 174 175// Defines a metric type and its schema. Once a metric descriptor is created, 176// deleting or altering it stops data collection and makes the metric type's 177// existing data unusable. 178// 179type MetricDescriptor struct { 180 state protoimpl.MessageState 181 sizeCache protoimpl.SizeCache 182 unknownFields protoimpl.UnknownFields 183 184 // The resource name of the metric descriptor. 185 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 186 // The metric type, including its DNS name prefix. The type is not 187 // URL-encoded. All user-defined metric types have the DNS name 188 // `custom.googleapis.com` or `external.googleapis.com`. Metric types should 189 // use a natural hierarchical grouping. For example: 190 // 191 // "custom.googleapis.com/invoice/paid/amount" 192 // "external.googleapis.com/prometheus/up" 193 // "appengine.googleapis.com/http/server/response_latencies" 194 Type string `protobuf:"bytes,8,opt,name=type,proto3" json:"type,omitempty"` 195 // The set of labels that can be used to describe a specific 196 // instance of this metric type. For example, the 197 // `appengine.googleapis.com/http/server/response_latencies` metric 198 // type has a label for the HTTP response code, `response_code`, so 199 // you can look at latencies for successful responses or just 200 // for responses that failed. 201 Labels []*label.LabelDescriptor `protobuf:"bytes,2,rep,name=labels,proto3" json:"labels,omitempty"` 202 // Whether the metric records instantaneous values, changes to a value, etc. 203 // Some combinations of `metric_kind` and `value_type` might not be supported. 204 MetricKind MetricDescriptor_MetricKind `protobuf:"varint,3,opt,name=metric_kind,json=metricKind,proto3,enum=google.api.MetricDescriptor_MetricKind" json:"metric_kind,omitempty"` 205 // Whether the measurement is an integer, a floating-point number, etc. 206 // Some combinations of `metric_kind` and `value_type` might not be supported. 207 ValueType MetricDescriptor_ValueType `protobuf:"varint,4,opt,name=value_type,json=valueType,proto3,enum=google.api.MetricDescriptor_ValueType" json:"value_type,omitempty"` 208 // The units in which the metric value is reported. It is only applicable 209 // if the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The `unit` 210 // defines the representation of the stored metric values. 211 // 212 // Different systems might scale the values to be more easily displayed (so a 213 // value of `0.02kBy` _might_ be displayed as `20By`, and a value of 214 // `3523kBy` _might_ be displayed as `3.5MBy`). However, if the `unit` is 215 // `kBy`, then the value of the metric is always in thousands of bytes, no 216 // matter how it might be displayed. 217 // 218 // If you want a custom metric to record the exact number of CPU-seconds used 219 // by a job, you can create an `INT64 CUMULATIVE` metric whose `unit` is 220 // `s{CPU}` (or equivalently `1s{CPU}` or just `s`). If the job uses 12,005 221 // CPU-seconds, then the value is written as `12005`. 222 // 223 // Alternatively, if you want a custom metric to record data in a more 224 // granular way, you can create a `DOUBLE CUMULATIVE` metric whose `unit` is 225 // `ks{CPU}`, and then write the value `12.005` (which is `12005/1000`), 226 // or use `Kis{CPU}` and write `11.723` (which is `12005/1024`). 227 // 228 // The supported units are a subset of [The Unified Code for Units of 229 // Measure](https://unitsofmeasure.org/ucum.html) standard: 230 // 231 // **Basic units (UNIT)** 232 // 233 // * `bit` bit 234 // * `By` byte 235 // * `s` second 236 // * `min` minute 237 // * `h` hour 238 // * `d` day 239 // * `1` dimensionless 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 // 252 // * `m` milli (10^-3) 253 // * `u` micro (10^-6) 254 // * `n` nano (10^-9) 255 // * `p` pico (10^-12) 256 // * `f` femto (10^-15) 257 // * `a` atto (10^-18) 258 // * `z` zepto (10^-21) 259 // * `y` yocto (10^-24) 260 // 261 // * `Ki` kibi (2^10) 262 // * `Mi` mebi (2^20) 263 // * `Gi` gibi (2^30) 264 // * `Ti` tebi (2^40) 265 // * `Pi` pebi (2^50) 266 // 267 // **Grammar** 268 // 269 // The grammar also includes these connectors: 270 // 271 // * `/` division or ratio (as an infix operator). For examples, 272 // `kBy/{email}` or `MiBy/10ms` (although you should almost never 273 // have `/s` in a metric `unit`; rates should always be computed at 274 // query time from the underlying cumulative or delta value). 275 // * `.` multiplication or composition (as an infix operator). For 276 // examples, `GBy.d` or `k{watt}.h`. 277 // 278 // The grammar for a unit is as follows: 279 // 280 // Expression = Component { "." Component } { "/" Component } ; 281 // 282 // Component = ( [ PREFIX ] UNIT | "%" ) [ Annotation ] 283 // | Annotation 284 // | "1" 285 // ; 286 // 287 // Annotation = "{" NAME "}" ; 288 // 289 // Notes: 290 // 291 // * `Annotation` is just a comment if it follows a `UNIT`. If the annotation 292 // is used alone, then the unit is equivalent to `1`. For examples, 293 // `{request}/s == 1/s`, `By{transmitted}/s == By/s`. 294 // * `NAME` is a sequence of non-blank printable ASCII characters not 295 // containing `{` or `}`. 296 // * `1` represents a unitary [dimensionless 297 // unit](https://en.wikipedia.org/wiki/Dimensionless_quantity) of 1, such 298 // as in `1/s`. It is typically used when none of the basic units are 299 // appropriate. For example, "new users per day" can be represented as 300 // `1/d` or `{new-users}/d` (and a metric value `5` would mean "5 new 301 // users). Alternatively, "thousands of page views per day" would be 302 // represented as `1000/d` or `k1/d` or `k{page_views}/d` (and a metric 303 // value of `5.3` would mean "5300 page views per day"). 304 // * `%` represents dimensionless value of 1/100, and annotates values giving 305 // a percentage (so the metric values are typically in the range of 0..100, 306 // and a metric value `3` means "3 percent"). 307 // * `10^2.%` indicates a metric contains a ratio, typically in the range 308 // 0..1, that will be multiplied by 100 and displayed as a percentage 309 // (so a metric value `0.03` means "3 percent"). 310 Unit string `protobuf:"bytes,5,opt,name=unit,proto3" json:"unit,omitempty"` 311 // A detailed description of the metric, which can be used in documentation. 312 Description string `protobuf:"bytes,6,opt,name=description,proto3" json:"description,omitempty"` 313 // A concise name for the metric, which can be displayed in user interfaces. 314 // Use sentence case without an ending period, for example "Request count". 315 // This field is optional but it is recommended to be set for any metrics 316 // associated with user-visible concepts, such as Quota. 317 DisplayName string `protobuf:"bytes,7,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"` 318 // Optional. Metadata which can be used to guide usage of the metric. 319 Metadata *MetricDescriptor_MetricDescriptorMetadata `protobuf:"bytes,10,opt,name=metadata,proto3" json:"metadata,omitempty"` 320 // Optional. The launch stage of the metric definition. 321 LaunchStage api.LaunchStage `protobuf:"varint,12,opt,name=launch_stage,json=launchStage,proto3,enum=google.api.LaunchStage" json:"launch_stage,omitempty"` 322 // Read-only. If present, then a [time 323 // series][google.monitoring.v3.TimeSeries], which is identified partially by 324 // a metric type and a [MonitoredResourceDescriptor][google.api.MonitoredResourceDescriptor], that is associated 325 // with this metric type can only be associated with one of the monitored 326 // resource types listed here. 327 MonitoredResourceTypes []string `protobuf:"bytes,13,rep,name=monitored_resource_types,json=monitoredResourceTypes,proto3" json:"monitored_resource_types,omitempty"` 328} 329 330func (x *MetricDescriptor) Reset() { 331 *x = MetricDescriptor{} 332 if protoimpl.UnsafeEnabled { 333 mi := &file_google_api_metric_proto_msgTypes[0] 334 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 335 ms.StoreMessageInfo(mi) 336 } 337} 338 339func (x *MetricDescriptor) String() string { 340 return protoimpl.X.MessageStringOf(x) 341} 342 343func (*MetricDescriptor) ProtoMessage() {} 344 345func (x *MetricDescriptor) ProtoReflect() protoreflect.Message { 346 mi := &file_google_api_metric_proto_msgTypes[0] 347 if protoimpl.UnsafeEnabled && x != nil { 348 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 349 if ms.LoadMessageInfo() == nil { 350 ms.StoreMessageInfo(mi) 351 } 352 return ms 353 } 354 return mi.MessageOf(x) 355} 356 357// Deprecated: Use MetricDescriptor.ProtoReflect.Descriptor instead. 358func (*MetricDescriptor) Descriptor() ([]byte, []int) { 359 return file_google_api_metric_proto_rawDescGZIP(), []int{0} 360} 361 362func (x *MetricDescriptor) GetName() string { 363 if x != nil { 364 return x.Name 365 } 366 return "" 367} 368 369func (x *MetricDescriptor) GetType() string { 370 if x != nil { 371 return x.Type 372 } 373 return "" 374} 375 376func (x *MetricDescriptor) GetLabels() []*label.LabelDescriptor { 377 if x != nil { 378 return x.Labels 379 } 380 return nil 381} 382 383func (x *MetricDescriptor) GetMetricKind() MetricDescriptor_MetricKind { 384 if x != nil { 385 return x.MetricKind 386 } 387 return MetricDescriptor_METRIC_KIND_UNSPECIFIED 388} 389 390func (x *MetricDescriptor) GetValueType() MetricDescriptor_ValueType { 391 if x != nil { 392 return x.ValueType 393 } 394 return MetricDescriptor_VALUE_TYPE_UNSPECIFIED 395} 396 397func (x *MetricDescriptor) GetUnit() string { 398 if x != nil { 399 return x.Unit 400 } 401 return "" 402} 403 404func (x *MetricDescriptor) GetDescription() string { 405 if x != nil { 406 return x.Description 407 } 408 return "" 409} 410 411func (x *MetricDescriptor) GetDisplayName() string { 412 if x != nil { 413 return x.DisplayName 414 } 415 return "" 416} 417 418func (x *MetricDescriptor) GetMetadata() *MetricDescriptor_MetricDescriptorMetadata { 419 if x != nil { 420 return x.Metadata 421 } 422 return nil 423} 424 425func (x *MetricDescriptor) GetLaunchStage() api.LaunchStage { 426 if x != nil { 427 return x.LaunchStage 428 } 429 return api.LaunchStage_LAUNCH_STAGE_UNSPECIFIED 430} 431 432func (x *MetricDescriptor) GetMonitoredResourceTypes() []string { 433 if x != nil { 434 return x.MonitoredResourceTypes 435 } 436 return nil 437} 438 439// A specific metric, identified by specifying values for all of the 440// labels of a [`MetricDescriptor`][google.api.MetricDescriptor]. 441type Metric struct { 442 state protoimpl.MessageState 443 sizeCache protoimpl.SizeCache 444 unknownFields protoimpl.UnknownFields 445 446 // An existing metric type, see [google.api.MetricDescriptor][google.api.MetricDescriptor]. 447 // For example, `custom.googleapis.com/invoice/paid/amount`. 448 Type string `protobuf:"bytes,3,opt,name=type,proto3" json:"type,omitempty"` 449 // The set of label values that uniquely identify this metric. All 450 // labels listed in the `MetricDescriptor` must be assigned values. 451 Labels map[string]string `protobuf:"bytes,2,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` 452} 453 454func (x *Metric) Reset() { 455 *x = Metric{} 456 if protoimpl.UnsafeEnabled { 457 mi := &file_google_api_metric_proto_msgTypes[1] 458 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 459 ms.StoreMessageInfo(mi) 460 } 461} 462 463func (x *Metric) String() string { 464 return protoimpl.X.MessageStringOf(x) 465} 466 467func (*Metric) ProtoMessage() {} 468 469func (x *Metric) ProtoReflect() protoreflect.Message { 470 mi := &file_google_api_metric_proto_msgTypes[1] 471 if protoimpl.UnsafeEnabled && x != nil { 472 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 473 if ms.LoadMessageInfo() == nil { 474 ms.StoreMessageInfo(mi) 475 } 476 return ms 477 } 478 return mi.MessageOf(x) 479} 480 481// Deprecated: Use Metric.ProtoReflect.Descriptor instead. 482func (*Metric) Descriptor() ([]byte, []int) { 483 return file_google_api_metric_proto_rawDescGZIP(), []int{1} 484} 485 486func (x *Metric) GetType() string { 487 if x != nil { 488 return x.Type 489 } 490 return "" 491} 492 493func (x *Metric) GetLabels() map[string]string { 494 if x != nil { 495 return x.Labels 496 } 497 return nil 498} 499 500// Additional annotations that can be used to guide the usage of a metric. 501type MetricDescriptor_MetricDescriptorMetadata struct { 502 state protoimpl.MessageState 503 sizeCache protoimpl.SizeCache 504 unknownFields protoimpl.UnknownFields 505 506 // Deprecated. Must use the [MetricDescriptor.launch_stage][google.api.MetricDescriptor.launch_stage] instead. 507 // 508 // Deprecated: Do not use. 509 LaunchStage api.LaunchStage `protobuf:"varint,1,opt,name=launch_stage,json=launchStage,proto3,enum=google.api.LaunchStage" json:"launch_stage,omitempty"` 510 // The sampling period of metric data points. For metrics which are written 511 // periodically, consecutive data points are stored at this time interval, 512 // excluding data loss due to errors. Metrics with a higher granularity have 513 // a smaller sampling period. 514 SamplePeriod *durationpb.Duration `protobuf:"bytes,2,opt,name=sample_period,json=samplePeriod,proto3" json:"sample_period,omitempty"` 515 // The delay of data points caused by ingestion. Data points older than this 516 // age are guaranteed to be ingested and available to be read, excluding 517 // data loss due to errors. 518 IngestDelay *durationpb.Duration `protobuf:"bytes,3,opt,name=ingest_delay,json=ingestDelay,proto3" json:"ingest_delay,omitempty"` 519} 520 521func (x *MetricDescriptor_MetricDescriptorMetadata) Reset() { 522 *x = MetricDescriptor_MetricDescriptorMetadata{} 523 if protoimpl.UnsafeEnabled { 524 mi := &file_google_api_metric_proto_msgTypes[2] 525 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 526 ms.StoreMessageInfo(mi) 527 } 528} 529 530func (x *MetricDescriptor_MetricDescriptorMetadata) String() string { 531 return protoimpl.X.MessageStringOf(x) 532} 533 534func (*MetricDescriptor_MetricDescriptorMetadata) ProtoMessage() {} 535 536func (x *MetricDescriptor_MetricDescriptorMetadata) ProtoReflect() protoreflect.Message { 537 mi := &file_google_api_metric_proto_msgTypes[2] 538 if protoimpl.UnsafeEnabled && x != nil { 539 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 540 if ms.LoadMessageInfo() == nil { 541 ms.StoreMessageInfo(mi) 542 } 543 return ms 544 } 545 return mi.MessageOf(x) 546} 547 548// Deprecated: Use MetricDescriptor_MetricDescriptorMetadata.ProtoReflect.Descriptor instead. 549func (*MetricDescriptor_MetricDescriptorMetadata) Descriptor() ([]byte, []int) { 550 return file_google_api_metric_proto_rawDescGZIP(), []int{0, 0} 551} 552 553// Deprecated: Do not use. 554func (x *MetricDescriptor_MetricDescriptorMetadata) GetLaunchStage() api.LaunchStage { 555 if x != nil { 556 return x.LaunchStage 557 } 558 return api.LaunchStage_LAUNCH_STAGE_UNSPECIFIED 559} 560 561func (x *MetricDescriptor_MetricDescriptorMetadata) GetSamplePeriod() *durationpb.Duration { 562 if x != nil { 563 return x.SamplePeriod 564 } 565 return nil 566} 567 568func (x *MetricDescriptor_MetricDescriptorMetadata) GetIngestDelay() *durationpb.Duration { 569 if x != nil { 570 return x.IngestDelay 571 } 572 return nil 573} 574 575var File_google_api_metric_proto protoreflect.FileDescriptor 576 577var file_google_api_metric_proto_rawDesc = []byte{ 578 0x0a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6d, 0x65, 0x74, 579 0x72, 0x69, 0x63, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 580 0x65, 0x2e, 0x61, 0x70, 0x69, 0x1a, 0x16, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 581 0x69, 0x2f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x67, 582 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 583 0x5f, 0x73, 0x74, 0x61, 0x67, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 584 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 585 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xc1, 0x07, 0x0a, 586 0x10, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 587 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 588 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 589 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x33, 0x0a, 0x06, 0x6c, 0x61, 0x62, 590 0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 591 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x44, 0x65, 0x73, 0x63, 592 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x48, 593 0x0a, 0x0b, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x03, 0x20, 594 0x01, 0x28, 0x0e, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 595 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 596 0x72, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x0a, 0x6d, 0x65, 597 0x74, 0x72, 0x69, 0x63, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x45, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 598 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x67, 599 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 600 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 601 0x54, 0x79, 0x70, 0x65, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 602 0x12, 0x0a, 0x04, 0x75, 0x6e, 0x69, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 603 0x6e, 0x69, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 604 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 605 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 606 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 607 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x51, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 608 0x64, 0x61, 0x74, 0x61, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 609 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 610 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 611 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 612 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x3a, 0x0a, 0x0c, 0x6c, 613 0x61, 0x75, 0x6e, 0x63, 0x68, 0x5f, 0x73, 0x74, 0x61, 0x67, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 614 0x0e, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x4c, 615 0x61, 0x75, 0x6e, 0x63, 0x68, 0x53, 0x74, 0x61, 0x67, 0x65, 0x52, 0x0b, 0x6c, 0x61, 0x75, 0x6e, 616 0x63, 0x68, 0x53, 0x74, 0x61, 0x67, 0x65, 0x12, 0x38, 0x0a, 0x18, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 617 0x6f, 0x72, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x79, 618 0x70, 0x65, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x09, 0x52, 0x16, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 619 0x6f, 0x72, 0x65, 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 620 0x73, 0x1a, 0xd8, 0x01, 0x0a, 0x18, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x73, 0x63, 621 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x3e, 622 0x0a, 0x0c, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x5f, 0x73, 0x74, 0x61, 0x67, 0x65, 0x18, 0x01, 623 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 624 0x69, 0x2e, 0x4c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x53, 0x74, 0x61, 0x67, 0x65, 0x42, 0x02, 0x18, 625 0x01, 0x52, 0x0b, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x53, 0x74, 0x61, 0x67, 0x65, 0x12, 0x3e, 626 0x0a, 0x0d, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x18, 627 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 628 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 629 0x52, 0x0c, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x3c, 630 0x0a, 0x0c, 0x69, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x03, 631 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 632 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 633 0x0b, 0x69, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x22, 0x4f, 0x0a, 0x0a, 634 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x1b, 0x0a, 0x17, 0x4d, 0x45, 635 0x54, 0x52, 0x49, 0x43, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 636 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x47, 0x41, 0x55, 0x47, 0x45, 637 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x44, 0x45, 0x4c, 0x54, 0x41, 0x10, 0x02, 0x12, 0x0e, 0x0a, 638 0x0a, 0x43, 0x55, 0x4d, 0x55, 0x4c, 0x41, 0x54, 0x49, 0x56, 0x45, 0x10, 0x03, 0x22, 0x71, 0x0a, 639 0x09, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x16, 0x56, 0x41, 640 0x4c, 0x55, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 641 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x42, 0x4f, 0x4f, 0x4c, 0x10, 0x01, 642 0x12, 0x09, 0x0a, 0x05, 0x49, 0x4e, 0x54, 0x36, 0x34, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x44, 643 0x4f, 0x55, 0x42, 0x4c, 0x45, 0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x54, 0x52, 0x49, 0x4e, 644 0x47, 0x10, 0x04, 0x12, 0x10, 0x0a, 0x0c, 0x44, 0x49, 0x53, 0x54, 0x52, 0x49, 0x42, 0x55, 0x54, 645 0x49, 0x4f, 0x4e, 0x10, 0x05, 0x12, 0x09, 0x0a, 0x05, 0x4d, 0x4f, 0x4e, 0x45, 0x59, 0x10, 0x06, 646 0x22, 0x8f, 0x01, 0x0a, 0x06, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x12, 0x12, 0x0a, 0x04, 0x74, 647 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 648 0x36, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 649 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x4d, 0x65, 0x74, 650 0x72, 0x69, 0x63, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 651 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 652 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 653 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 654 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 655 0x38, 0x01, 0x42, 0x5f, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 656 0x2e, 0x61, 0x70, 0x69, 0x42, 0x0b, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x50, 0x72, 0x6f, 0x74, 657 0x6f, 0x50, 0x01, 0x5a, 0x37, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 658 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 659 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6d, 660 0x65, 0x74, 0x72, 0x69, 0x63, 0x3b, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0xa2, 0x02, 0x04, 0x47, 661 0x41, 0x50, 0x49, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 662} 663 664var ( 665 file_google_api_metric_proto_rawDescOnce sync.Once 666 file_google_api_metric_proto_rawDescData = file_google_api_metric_proto_rawDesc 667) 668 669func file_google_api_metric_proto_rawDescGZIP() []byte { 670 file_google_api_metric_proto_rawDescOnce.Do(func() { 671 file_google_api_metric_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_api_metric_proto_rawDescData) 672 }) 673 return file_google_api_metric_proto_rawDescData 674} 675 676var file_google_api_metric_proto_enumTypes = make([]protoimpl.EnumInfo, 2) 677var file_google_api_metric_proto_msgTypes = make([]protoimpl.MessageInfo, 4) 678var file_google_api_metric_proto_goTypes = []interface{}{ 679 (MetricDescriptor_MetricKind)(0), // 0: google.api.MetricDescriptor.MetricKind 680 (MetricDescriptor_ValueType)(0), // 1: google.api.MetricDescriptor.ValueType 681 (*MetricDescriptor)(nil), // 2: google.api.MetricDescriptor 682 (*Metric)(nil), // 3: google.api.Metric 683 (*MetricDescriptor_MetricDescriptorMetadata)(nil), // 4: google.api.MetricDescriptor.MetricDescriptorMetadata 684 nil, // 5: google.api.Metric.LabelsEntry 685 (*label.LabelDescriptor)(nil), // 6: google.api.LabelDescriptor 686 (api.LaunchStage)(0), // 7: google.api.LaunchStage 687 (*durationpb.Duration)(nil), // 8: google.protobuf.Duration 688} 689var file_google_api_metric_proto_depIdxs = []int32{ 690 6, // 0: google.api.MetricDescriptor.labels:type_name -> google.api.LabelDescriptor 691 0, // 1: google.api.MetricDescriptor.metric_kind:type_name -> google.api.MetricDescriptor.MetricKind 692 1, // 2: google.api.MetricDescriptor.value_type:type_name -> google.api.MetricDescriptor.ValueType 693 4, // 3: google.api.MetricDescriptor.metadata:type_name -> google.api.MetricDescriptor.MetricDescriptorMetadata 694 7, // 4: google.api.MetricDescriptor.launch_stage:type_name -> google.api.LaunchStage 695 5, // 5: google.api.Metric.labels:type_name -> google.api.Metric.LabelsEntry 696 7, // 6: google.api.MetricDescriptor.MetricDescriptorMetadata.launch_stage:type_name -> google.api.LaunchStage 697 8, // 7: google.api.MetricDescriptor.MetricDescriptorMetadata.sample_period:type_name -> google.protobuf.Duration 698 8, // 8: google.api.MetricDescriptor.MetricDescriptorMetadata.ingest_delay:type_name -> google.protobuf.Duration 699 9, // [9:9] is the sub-list for method output_type 700 9, // [9:9] is the sub-list for method input_type 701 9, // [9:9] is the sub-list for extension type_name 702 9, // [9:9] is the sub-list for extension extendee 703 0, // [0:9] is the sub-list for field type_name 704} 705 706func init() { file_google_api_metric_proto_init() } 707func file_google_api_metric_proto_init() { 708 if File_google_api_metric_proto != nil { 709 return 710 } 711 if !protoimpl.UnsafeEnabled { 712 file_google_api_metric_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 713 switch v := v.(*MetricDescriptor); i { 714 case 0: 715 return &v.state 716 case 1: 717 return &v.sizeCache 718 case 2: 719 return &v.unknownFields 720 default: 721 return nil 722 } 723 } 724 file_google_api_metric_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 725 switch v := v.(*Metric); i { 726 case 0: 727 return &v.state 728 case 1: 729 return &v.sizeCache 730 case 2: 731 return &v.unknownFields 732 default: 733 return nil 734 } 735 } 736 file_google_api_metric_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 737 switch v := v.(*MetricDescriptor_MetricDescriptorMetadata); i { 738 case 0: 739 return &v.state 740 case 1: 741 return &v.sizeCache 742 case 2: 743 return &v.unknownFields 744 default: 745 return nil 746 } 747 } 748 } 749 type x struct{} 750 out := protoimpl.TypeBuilder{ 751 File: protoimpl.DescBuilder{ 752 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 753 RawDescriptor: file_google_api_metric_proto_rawDesc, 754 NumEnums: 2, 755 NumMessages: 4, 756 NumExtensions: 0, 757 NumServices: 0, 758 }, 759 GoTypes: file_google_api_metric_proto_goTypes, 760 DependencyIndexes: file_google_api_metric_proto_depIdxs, 761 EnumInfos: file_google_api_metric_proto_enumTypes, 762 MessageInfos: file_google_api_metric_proto_msgTypes, 763 }.Build() 764 File_google_api_metric_proto = out.File 765 file_google_api_metric_proto_rawDesc = nil 766 file_google_api_metric_proto_goTypes = nil 767 file_google_api_metric_proto_depIdxs = nil 768} 769