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