github.com/cloudwan/edgelq-sdk@v1.15.4/monitoring/resources/v4/common/common.pb.go (about) 1 // Code generated by protoc-gen-goten-go 2 // File: edgelq/monitoring/proto/v4/common.proto 3 // DO NOT EDIT!!! 4 5 package common 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 durationpb "google.golang.org/protobuf/types/known/durationpb" 21 timestamppb "google.golang.org/protobuf/types/known/timestamppb" 22 ) 23 24 // Reference imports to suppress errors if they are not otherwise used. 25 var ( 26 _ = fmt.Errorf 27 _ = reflect.Method{} 28 _ = sync.Once{} 29 30 _ = protojson.MarshalOptions{} 31 _ = proto.MarshalOptions{} 32 _ = preflect.Value{} 33 _ = protoimpl.DescBuilder{} 34 ) 35 36 // make sure we're using proto imports 37 var ( 38 _ = &durationpb.Duration{} 39 _ = ×tamppb.Timestamp{} 40 ) 41 42 const ( 43 // Verify that this generated code is sufficiently up-to-date. 44 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 45 // Verify that runtime/protoimpl is sufficiently up-to-date. 46 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 47 ) 48 49 // Controls which fields are returned by `ListTimeSeries`. 50 type TimeSeriesView int32 51 52 const ( 53 // Returns the identity of the metric(s), the time series, 54 // and the time series data. 55 TimeSeriesView_FULL TimeSeriesView = 0 56 // Returns the identity of the metric and the time series resource, 57 // but not the time series data. 58 TimeSeriesView_HEADERS TimeSeriesView = 1 59 ) 60 61 var ( 62 TimeSeriesView_name = map[int32]string{ 63 0: "FULL", 64 1: "HEADERS", 65 } 66 67 TimeSeriesView_value = map[string]int32{ 68 "FULL": 0, 69 "HEADERS": 1, 70 } 71 ) 72 73 func (x TimeSeriesView) Enum() *TimeSeriesView { 74 p := new(TimeSeriesView) 75 *p = x 76 return p 77 } 78 79 func (x TimeSeriesView) String() string { 80 return protoimpl.X.EnumStringOf(x.Descriptor(), preflect.EnumNumber(x)) 81 } 82 83 func (TimeSeriesView) Descriptor() preflect.EnumDescriptor { 84 return edgelq_monitoring_proto_v4_common_proto_enumTypes[0].Descriptor() 85 } 86 87 func (TimeSeriesView) Type() preflect.EnumType { 88 return &edgelq_monitoring_proto_v4_common_proto_enumTypes[0] 89 } 90 91 func (x TimeSeriesView) Number() preflect.EnumNumber { 92 return preflect.EnumNumber(x) 93 } 94 95 // Deprecated, Use TimeSeriesView.ProtoReflect.Descriptor instead. 96 func (TimeSeriesView) EnumDescriptor() ([]byte, []int) { 97 return edgelq_monitoring_proto_v4_common_proto_rawDescGZIP(), []int{0} 98 } 99 100 // Value types that can be used as label values. 101 type LabelDescriptor_ValueType int32 102 103 const ( 104 // A variable-length string. This is the default. 105 LabelDescriptor_STRING LabelDescriptor_ValueType = 0 106 // Boolean; true or false. 107 LabelDescriptor_BOOL LabelDescriptor_ValueType = 1 108 // A 64-bit signed integer. 109 LabelDescriptor_INT64 LabelDescriptor_ValueType = 2 110 ) 111 112 var ( 113 LabelDescriptor_ValueType_name = map[int32]string{ 114 0: "STRING", 115 1: "BOOL", 116 2: "INT64", 117 } 118 119 LabelDescriptor_ValueType_value = map[string]int32{ 120 "STRING": 0, 121 "BOOL": 1, 122 "INT64": 2, 123 } 124 ) 125 126 func (x LabelDescriptor_ValueType) Enum() *LabelDescriptor_ValueType { 127 p := new(LabelDescriptor_ValueType) 128 *p = x 129 return p 130 } 131 132 func (x LabelDescriptor_ValueType) String() string { 133 return protoimpl.X.EnumStringOf(x.Descriptor(), preflect.EnumNumber(x)) 134 } 135 136 func (LabelDescriptor_ValueType) Descriptor() preflect.EnumDescriptor { 137 return edgelq_monitoring_proto_v4_common_proto_enumTypes[1].Descriptor() 138 } 139 140 func (LabelDescriptor_ValueType) Type() preflect.EnumType { 141 return &edgelq_monitoring_proto_v4_common_proto_enumTypes[1] 142 } 143 144 func (x LabelDescriptor_ValueType) Number() preflect.EnumNumber { 145 return preflect.EnumNumber(x) 146 } 147 148 // Deprecated, Use LabelDescriptor_ValueType.ProtoReflect.Descriptor instead. 149 func (LabelDescriptor_ValueType) EnumDescriptor() ([]byte, []int) { 150 return edgelq_monitoring_proto_v4_common_proto_rawDescGZIP(), []int{0, 0} 151 } 152 153 // The Aligner describes how to bring the data points in a single 154 // time series into temporal alignment. 155 type Aggregation_Aligner int32 156 157 const ( 158 // No alignment. Raw data is returned. Not valid if cross-time 159 // series reduction is requested. The value type of the result is 160 // the same as the value type of the input. 161 Aggregation_ALIGN_NONE Aggregation_Aligner = 0 162 // Align and convert to delta metric type. This alignment is valid 163 // for cumulative metrics and delta metrics. Aligning an existing 164 // delta metric to a delta metric requires that the alignment 165 // period be increased. The value type of the result is the same 166 // as the value type of the input. 167 // 168 // One can think of this aligner as a rate but without time units; that 169 // is, the output is conceptually (second_point - first_point). 170 Aggregation_ALIGN_DELTA Aggregation_Aligner = 1 171 // Align and convert to a rate. This alignment is valid for 172 // cumulative metrics and delta metrics with numeric values. The output is a 173 // gauge metric with value type 174 // [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE]. 175 // 176 // One can think of this aligner as conceptually providing the slope of 177 // the line that passes through the value at the start and end of the 178 // window. In other words, this is conceptually ((y1 - y0)/(t1 - t0)), 179 // and the output unit is one that has a "/time" dimension. 180 // 181 // If, by rate, you are looking for percentage change, see the 182 // `ALIGN_PERCENT_CHANGE` aligner option. 183 Aggregation_ALIGN_RATE Aggregation_Aligner = 2 184 // Align time series via aggregation. The resulting data point in 185 // the alignment period is the minimum of all data points in the 186 // period. This alignment is valid for gauge and delta metrics with numeric 187 // values. The value type of the result is either 188 // [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE], or 189 // [INT64][google.api.MetricDescriptor.ValueType.INT64], depending 190 // whether original type is int64, or double/distribution. 191 Aggregation_ALIGN_MIN Aggregation_Aligner = 10 192 // Align time series via aggregation. The resulting data point in 193 // the alignment period is the maximum of all data points in the 194 // period. This alignment is valid for gauge and delta metrics with numeric 195 // values. The value type of the result is either 196 // [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE], or 197 // [INT64][google.api.MetricDescriptor.ValueType.INT64], depending 198 // whether original type is int64, or double/distribution. 199 Aggregation_ALIGN_MAX Aggregation_Aligner = 11 200 // Align time series via aggregation. The resulting data point in 201 // the alignment period is the average or arithmetic mean of all 202 // data points in the period. This alignment is valid for gauge and delta 203 // metrics with numeric values. The value type of the output is 204 // [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE]. 205 Aggregation_ALIGN_MEAN Aggregation_Aligner = 12 206 // Align time series via aggregation. The resulting data point in 207 // the alignment period is the count of all data points in the 208 // period. This alignment is valid for gauge and delta metrics with numeric 209 // or Boolean values. The value type of the output is 210 // [INT64][google.api.MetricDescriptor.ValueType.INT64]. 211 Aggregation_ALIGN_COUNT Aggregation_Aligner = 13 212 // Align time series via aggregation. The resulting data point in 213 // the alignment period is the sum of all data points in the 214 // period. This alignment is valid for gauge and delta metrics with numeric 215 // and distribution values. The value type of the output is the 216 // same as the value type of the input. 217 Aggregation_ALIGN_SUM Aggregation_Aligner = 14 218 // Align time series via aggregation. The resulting data point in 219 // the alignment period is the standard deviation of all data 220 // points in the period. This alignment is valid for gauge and delta metrics 221 // with numeric values. The value type of the output is 222 // [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE]. 223 Aggregation_ALIGN_STDDEV Aggregation_Aligner = 15 224 // Align time series via aggregation. The resulting data point in 225 // the alignment period is the 99th percentile of all data 226 // points in the period. This alignment is valid for gauge and delta metrics 227 // with distribution values. The output is a gauge metric with value type 228 // [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE]. 229 Aggregation_ALIGN_PERCENTILE_99 Aggregation_Aligner = 18 230 // Align time series via aggregation. The resulting data point in 231 // the alignment period is the 95th percentile of all data 232 // points in the period. This alignment is valid for gauge and delta metrics 233 // with distribution values. The output is a gauge metric with value type 234 // [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE]. 235 Aggregation_ALIGN_PERCENTILE_95 Aggregation_Aligner = 19 236 // Align time series via aggregation. The resulting data point in 237 // the alignment period is the 50th percentile of all data 238 // points in the period. This alignment is valid for gauge and delta metrics 239 // with distribution values. The output is a gauge metric with value type 240 // [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE]. 241 Aggregation_ALIGN_PERCENTILE_50 Aggregation_Aligner = 20 242 // Align time series via aggregation. The resulting data point in 243 // the alignment period is the 5th percentile of all data 244 // points in the period. This alignment is valid for gauge and delta metrics 245 // with distribution values. The output is a gauge metric with value type 246 // [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE]. 247 Aggregation_ALIGN_PERCENTILE_05 Aggregation_Aligner = 21 248 // Outputs Distribution without bucketing with stats like: Min, Max, Count, 249 // Mean, SumOfSquaredDeviations valid only for LONG, DOUBLE and DISTRIBUTION 250 // value types 251 Aggregation_ALIGN_SUMMARY Aggregation_Aligner = 45 252 ) 253 254 var ( 255 Aggregation_Aligner_name = map[int32]string{ 256 0: "ALIGN_NONE", 257 1: "ALIGN_DELTA", 258 2: "ALIGN_RATE", 259 10: "ALIGN_MIN", 260 11: "ALIGN_MAX", 261 12: "ALIGN_MEAN", 262 13: "ALIGN_COUNT", 263 14: "ALIGN_SUM", 264 15: "ALIGN_STDDEV", 265 18: "ALIGN_PERCENTILE_99", 266 19: "ALIGN_PERCENTILE_95", 267 20: "ALIGN_PERCENTILE_50", 268 21: "ALIGN_PERCENTILE_05", 269 45: "ALIGN_SUMMARY", 270 } 271 272 Aggregation_Aligner_value = map[string]int32{ 273 "ALIGN_NONE": 0, 274 "ALIGN_DELTA": 1, 275 "ALIGN_RATE": 2, 276 "ALIGN_MIN": 10, 277 "ALIGN_MAX": 11, 278 "ALIGN_MEAN": 12, 279 "ALIGN_COUNT": 13, 280 "ALIGN_SUM": 14, 281 "ALIGN_STDDEV": 15, 282 "ALIGN_PERCENTILE_99": 18, 283 "ALIGN_PERCENTILE_95": 19, 284 "ALIGN_PERCENTILE_50": 20, 285 "ALIGN_PERCENTILE_05": 21, 286 "ALIGN_SUMMARY": 45, 287 } 288 ) 289 290 func (x Aggregation_Aligner) Enum() *Aggregation_Aligner { 291 p := new(Aggregation_Aligner) 292 *p = x 293 return p 294 } 295 296 func (x Aggregation_Aligner) String() string { 297 return protoimpl.X.EnumStringOf(x.Descriptor(), preflect.EnumNumber(x)) 298 } 299 300 func (Aggregation_Aligner) Descriptor() preflect.EnumDescriptor { 301 return edgelq_monitoring_proto_v4_common_proto_enumTypes[2].Descriptor() 302 } 303 304 func (Aggregation_Aligner) Type() preflect.EnumType { 305 return &edgelq_monitoring_proto_v4_common_proto_enumTypes[2] 306 } 307 308 func (x Aggregation_Aligner) Number() preflect.EnumNumber { 309 return preflect.EnumNumber(x) 310 } 311 312 // Deprecated, Use Aggregation_Aligner.ProtoReflect.Descriptor instead. 313 func (Aggregation_Aligner) EnumDescriptor() ([]byte, []int) { 314 return edgelq_monitoring_proto_v4_common_proto_rawDescGZIP(), []int{6, 0} 315 } 316 317 // A Reducer describes how to aggregate data points from multiple 318 // time series into a single time series. 319 type Aggregation_Reducer int32 320 321 const ( 322 // No cross-time series reduction. The output of the aligner is 323 // returned. 324 Aggregation_REDUCE_NONE Aggregation_Reducer = 0 325 // Reduce by computing the mean across time series for each 326 // alignment period. This reducer is valid for delta and 327 // gauge metrics with numeric or distribution values. The value type of the 328 // output is [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE]. 329 Aggregation_REDUCE_MEAN Aggregation_Reducer = 1 330 // Reduce by computing the minimum across time series for each 331 // alignment period. This reducer is valid for delta and 332 // gauge metrics with numeric values. The value type of the output 333 // is the same as the value type of the input. 334 Aggregation_REDUCE_MIN Aggregation_Reducer = 2 335 // Reduce by computing the maximum across time series for each 336 // alignment period. This reducer is valid for delta and 337 // gauge metrics with numeric values. The value type of the output 338 // is the same as the value type of the input. 339 Aggregation_REDUCE_MAX Aggregation_Reducer = 3 340 // Reduce by computing the sum across time series for each 341 // alignment period. This reducer is valid for delta and 342 // gauge metrics with numeric and distribution values. The value type of 343 // the output is the same as the value type of the input. 344 Aggregation_REDUCE_SUM Aggregation_Reducer = 4 345 // Reduce by computing the standard deviation across time series 346 // for each alignment period. This reducer is valid for delta 347 // and gauge metrics with numeric or distribution values. The value type of 348 // the output is [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE]. 349 Aggregation_REDUCE_STDDEV Aggregation_Reducer = 5 350 // Reduce by computing the count of data points across time series 351 // for each alignment period. This reducer is valid for delta 352 // and gauge metrics of numeric, Boolean, distribution, and string value 353 // type. The value type of the output is 354 // [INT64][google.api.MetricDescriptor.ValueType.INT64]. 355 Aggregation_REDUCE_COUNT Aggregation_Reducer = 6 356 // Reduce by computing 99th percentile of data points across time series 357 // for each alignment period. This reducer is valid for gauge and delta 358 // metrics of numeric and distribution type. The value of the output is 359 // [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE] 360 Aggregation_REDUCE_PERCENTILE_99 Aggregation_Reducer = 9 361 // Reduce by computing 95th percentile of data points across time series 362 // for each alignment period. This reducer is valid for gauge and delta 363 // metrics of numeric and distribution type. The value of the output is 364 // [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE] 365 Aggregation_REDUCE_PERCENTILE_95 Aggregation_Reducer = 10 366 // Reduce by computing 50th percentile of data points across time series 367 // for each alignment period. This reducer is valid for gauge and delta 368 // metrics of numeric and distribution type. The value of the output is 369 // [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE] 370 Aggregation_REDUCE_PERCENTILE_50 Aggregation_Reducer = 11 371 // Reduce by computing 5th percentile of data points across time series 372 // for each alignment period. This reducer is valid for gauge and delta 373 // metrics of numeric and distribution type. The value of the output is 374 // [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE] 375 Aggregation_REDUCE_PERCENTILE_05 Aggregation_Reducer = 12 376 // Reduce with Distribution with stats like: Min, Max, Count, Mean, 377 // SumOfSquaredDeviations, histogram. This reducer is valid for gauge and 378 // delta metrics of numeric and distribution type. The value of the output 379 // is [DISTRIBUTION][google.api.MetricDescriptor.ValueType.DISTRIBUTION] 380 Aggregation_REDUCE_SUMMARY Aggregation_Reducer = 13 381 ) 382 383 var ( 384 Aggregation_Reducer_name = map[int32]string{ 385 0: "REDUCE_NONE", 386 1: "REDUCE_MEAN", 387 2: "REDUCE_MIN", 388 3: "REDUCE_MAX", 389 4: "REDUCE_SUM", 390 5: "REDUCE_STDDEV", 391 6: "REDUCE_COUNT", 392 9: "REDUCE_PERCENTILE_99", 393 10: "REDUCE_PERCENTILE_95", 394 11: "REDUCE_PERCENTILE_50", 395 12: "REDUCE_PERCENTILE_05", 396 13: "REDUCE_SUMMARY", 397 } 398 399 Aggregation_Reducer_value = map[string]int32{ 400 "REDUCE_NONE": 0, 401 "REDUCE_MEAN": 1, 402 "REDUCE_MIN": 2, 403 "REDUCE_MAX": 3, 404 "REDUCE_SUM": 4, 405 "REDUCE_STDDEV": 5, 406 "REDUCE_COUNT": 6, 407 "REDUCE_PERCENTILE_99": 9, 408 "REDUCE_PERCENTILE_95": 10, 409 "REDUCE_PERCENTILE_50": 11, 410 "REDUCE_PERCENTILE_05": 12, 411 "REDUCE_SUMMARY": 13, 412 } 413 ) 414 415 func (x Aggregation_Reducer) Enum() *Aggregation_Reducer { 416 p := new(Aggregation_Reducer) 417 *p = x 418 return p 419 } 420 421 func (x Aggregation_Reducer) String() string { 422 return protoimpl.X.EnumStringOf(x.Descriptor(), preflect.EnumNumber(x)) 423 } 424 425 func (Aggregation_Reducer) Descriptor() preflect.EnumDescriptor { 426 return edgelq_monitoring_proto_v4_common_proto_enumTypes[3].Descriptor() 427 } 428 429 func (Aggregation_Reducer) Type() preflect.EnumType { 430 return &edgelq_monitoring_proto_v4_common_proto_enumTypes[3] 431 } 432 433 func (x Aggregation_Reducer) Number() preflect.EnumNumber { 434 return preflect.EnumNumber(x) 435 } 436 437 // Deprecated, Use Aggregation_Reducer.ProtoReflect.Descriptor instead. 438 func (Aggregation_Reducer) EnumDescriptor() ([]byte, []int) { 439 return edgelq_monitoring_proto_v4_common_proto_rawDescGZIP(), []int{6, 1} 440 } 441 442 // A description of a label. 443 type LabelDescriptor struct { 444 state protoimpl.MessageState 445 sizeCache protoimpl.SizeCache 446 unknownFields protoimpl.UnknownFields 447 // The label key. 448 Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` 449 // The type of data that can be assigned to the label. 450 ValueType LabelDescriptor_ValueType `protobuf:"varint,2,opt,name=value_type,json=valueType,proto3,enum=ntt.monitoring.v4.LabelDescriptor_ValueType" json:"value_type,omitempty"` 451 // A human-readable description for the label. 452 Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"` 453 // Default value for string label - this value is used in two cases: 454 // 1. to populate missing labels while creating TimeSeries 455 // 2. to populate missing remaining kvs while querying TimeSeries - usually 456 // applies to old data 457 DefaultValue string `protobuf:"bytes,12,opt,name=default_value,json=defaultValue,proto3" json:"default_value,omitempty"` 458 // disabled flag communicates that this label is ignored by the backend. It's 459 // used for backward compatibility. 460 Disabled bool `protobuf:"varint,13,opt,name=disabled,proto3" json:"disabled,omitempty"` 461 } 462 463 func (m *LabelDescriptor) Reset() { 464 *m = LabelDescriptor{} 465 if protoimpl.UnsafeEnabled { 466 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[0] 467 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 468 ms.StoreMessageInfo(mi) 469 } 470 } 471 472 func (m *LabelDescriptor) String() string { 473 return protoimpl.X.MessageStringOf(m) 474 } 475 476 func (*LabelDescriptor) ProtoMessage() {} 477 478 func (m *LabelDescriptor) ProtoReflect() preflect.Message { 479 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[0] 480 if protoimpl.UnsafeEnabled && m != nil { 481 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 482 if ms.LoadMessageInfo() == nil { 483 ms.StoreMessageInfo(mi) 484 } 485 return ms 486 } 487 return mi.MessageOf(m) 488 } 489 490 func (*LabelDescriptor) GotenMessage() {} 491 492 // Deprecated, Use LabelDescriptor.ProtoReflect.Descriptor instead. 493 func (*LabelDescriptor) Descriptor() ([]byte, []int) { 494 return edgelq_monitoring_proto_v4_common_proto_rawDescGZIP(), []int{0} 495 } 496 497 func (m *LabelDescriptor) Unmarshal(b []byte) error { 498 return proto.Unmarshal(b, m) 499 } 500 501 func (m *LabelDescriptor) Marshal() ([]byte, error) { 502 return proto.Marshal(m) 503 } 504 505 func (m *LabelDescriptor) MarshalJSON() ([]byte, error) { 506 return protojson.MarshalOptions{}.Marshal(m) 507 } 508 509 func (m *LabelDescriptor) UnmarshalJSON(data []byte) error { 510 return protojson.Unmarshal(data, m) 511 } 512 513 func (m *LabelDescriptor) GetKey() string { 514 if m != nil { 515 return m.Key 516 } 517 return "" 518 } 519 520 func (m *LabelDescriptor) GetValueType() LabelDescriptor_ValueType { 521 if m != nil { 522 return m.ValueType 523 } 524 return LabelDescriptor_STRING 525 } 526 527 func (m *LabelDescriptor) GetDescription() string { 528 if m != nil { 529 return m.Description 530 } 531 return "" 532 } 533 534 func (m *LabelDescriptor) GetDefaultValue() string { 535 if m != nil { 536 return m.DefaultValue 537 } 538 return "" 539 } 540 541 func (m *LabelDescriptor) GetDisabled() bool { 542 if m != nil { 543 return m.Disabled 544 } 545 return false 546 } 547 548 func (m *LabelDescriptor) SetKey(fv string) { 549 if m == nil { 550 panic(fmt.Errorf("can't set %s on nil %s", "Key", "LabelDescriptor")) 551 } 552 m.Key = fv 553 } 554 555 func (m *LabelDescriptor) SetValueType(fv LabelDescriptor_ValueType) { 556 if m == nil { 557 panic(fmt.Errorf("can't set %s on nil %s", "ValueType", "LabelDescriptor")) 558 } 559 m.ValueType = fv 560 } 561 562 func (m *LabelDescriptor) SetDescription(fv string) { 563 if m == nil { 564 panic(fmt.Errorf("can't set %s on nil %s", "Description", "LabelDescriptor")) 565 } 566 m.Description = fv 567 } 568 569 func (m *LabelDescriptor) SetDefaultValue(fv string) { 570 if m == nil { 571 panic(fmt.Errorf("can't set %s on nil %s", "DefaultValue", "LabelDescriptor")) 572 } 573 m.DefaultValue = fv 574 } 575 576 func (m *LabelDescriptor) SetDisabled(fv bool) { 577 if m == nil { 578 panic(fmt.Errorf("can't set %s on nil %s", "Disabled", "LabelDescriptor")) 579 } 580 m.Disabled = fv 581 } 582 583 // LabelKeySet is used for defining PromotedLabelKeySets on Metric and Resource 584 // descriptors 585 type LabelKeySet struct { 586 state protoimpl.MessageState 587 sizeCache protoimpl.SizeCache 588 unknownFields protoimpl.UnknownFields 589 // List of label keys. Cannot be modified once set. 590 LabelKeys []string `protobuf:"bytes,1,rep,name=label_keys,json=labelKeys,proto3" json:"label_keys,omitempty"` 591 } 592 593 func (m *LabelKeySet) Reset() { 594 *m = LabelKeySet{} 595 if protoimpl.UnsafeEnabled { 596 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[1] 597 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 598 ms.StoreMessageInfo(mi) 599 } 600 } 601 602 func (m *LabelKeySet) String() string { 603 return protoimpl.X.MessageStringOf(m) 604 } 605 606 func (*LabelKeySet) ProtoMessage() {} 607 608 func (m *LabelKeySet) ProtoReflect() preflect.Message { 609 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[1] 610 if protoimpl.UnsafeEnabled && m != nil { 611 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 612 if ms.LoadMessageInfo() == nil { 613 ms.StoreMessageInfo(mi) 614 } 615 return ms 616 } 617 return mi.MessageOf(m) 618 } 619 620 func (*LabelKeySet) GotenMessage() {} 621 622 // Deprecated, Use LabelKeySet.ProtoReflect.Descriptor instead. 623 func (*LabelKeySet) Descriptor() ([]byte, []int) { 624 return edgelq_monitoring_proto_v4_common_proto_rawDescGZIP(), []int{1} 625 } 626 627 func (m *LabelKeySet) Unmarshal(b []byte) error { 628 return proto.Unmarshal(b, m) 629 } 630 631 func (m *LabelKeySet) Marshal() ([]byte, error) { 632 return proto.Marshal(m) 633 } 634 635 func (m *LabelKeySet) MarshalJSON() ([]byte, error) { 636 return protojson.MarshalOptions{}.Marshal(m) 637 } 638 639 func (m *LabelKeySet) UnmarshalJSON(data []byte) error { 640 return protojson.Unmarshal(data, m) 641 } 642 643 func (m *LabelKeySet) GetLabelKeys() []string { 644 if m != nil { 645 return m.LabelKeys 646 } 647 return nil 648 } 649 650 func (m *LabelKeySet) SetLabelKeys(fv []string) { 651 if m == nil { 652 panic(fmt.Errorf("can't set %s on nil %s", "LabelKeys", "LabelKeySet")) 653 } 654 m.LabelKeys = fv 655 } 656 657 // Distribution contains summary statistics for a population of values and, 658 // optionally, a histogram representing the distribution of those values across 659 // a specified set of histogram buckets. 660 // 661 // The summary statistics are the count, mean, sum of the squared deviation from 662 // the mean, the minimum, and the maximum of the set of population of values. 663 // 664 // The histogram is based on a sequence of buckets and gives a count of values 665 // that fall into each bucket. The boundaries of the buckets are given either 666 // explicitly or by specifying parameters for a method of computing them 667 // (buckets of fixed width or buckets of exponentially increasing width). 668 // 669 // Although it is not forbidden, it is generally a bad idea to include 670 // non-finite values (infinities or NaNs) in the population of values, as this 671 // will render the `mean` and `sum_of_squared_deviation` fields meaningless. 672 type Distribution struct { 673 state protoimpl.MessageState 674 sizeCache protoimpl.SizeCache 675 unknownFields protoimpl.UnknownFields 676 // The number of values in the population. Must be non-negative. 677 Count int64 `protobuf:"varint,1,opt,name=count,proto3" json:"count,omitempty"` 678 // The arithmetic mean of the values in the population. If `count` is zero 679 // then this field must be zero. 680 Mean float64 `protobuf:"fixed64,2,opt,name=mean,proto3" json:"mean,omitempty"` 681 // The sum of squared deviations from the mean of the values in the 682 // population. For values x_i this is: 683 // 684 // Sum[i=1..n]((x_i - mean)^2) 685 // 686 // Knuth, "The Art of Computer Programming", Vol. 2, page 323, 3rd edition 687 // describes Welford's method for accumulating this sum in one pass. 688 // 689 // If `count` is zero then this field must be zero. 690 SumOfSquaredDeviation float64 `protobuf:"fixed64,3,opt,name=sum_of_squared_deviation,json=sumOfSquaredDeviation,proto3" json:"sum_of_squared_deviation,omitempty"` 691 // If specified, contains the range of the population values. The field 692 // must not be present if the `count` is zero. 693 Range *Distribution_Range `protobuf:"bytes,4,opt,name=range,proto3" json:"range,omitempty"` 694 // Defines the histogram bucket boundaries. 695 BucketOptions *Distribution_BucketOptions `protobuf:"bytes,6,opt,name=bucket_options,json=bucketOptions,proto3" json:"bucket_options,omitempty"` 696 // If `bucket_options` is given, then the sum of the values in `bucket_counts` 697 // must equal the value in `count`. If `bucket_options` is not given, no 698 // `bucket_counts` fields may be given. 699 // 700 // Bucket counts are given in order under the numbering scheme described 701 // above (the underflow bucket has number 0; the finite buckets, if any, 702 // have numbers 1 through N-2; the overflow bucket has number N-1). 703 // 704 // The size of `bucket_counts` must be no greater than N as defined in 705 // `bucket_options`. 706 // 707 // Any suffix of trailing zero bucket_count fields may be omitted. 708 BucketCounts []int64 `protobuf:"varint,7,rep,packed,name=bucket_counts,json=bucketCounts,proto3" json:"bucket_counts,omitempty"` 709 } 710 711 func (m *Distribution) Reset() { 712 *m = Distribution{} 713 if protoimpl.UnsafeEnabled { 714 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[2] 715 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 716 ms.StoreMessageInfo(mi) 717 } 718 } 719 720 func (m *Distribution) String() string { 721 return protoimpl.X.MessageStringOf(m) 722 } 723 724 func (*Distribution) ProtoMessage() {} 725 726 func (m *Distribution) ProtoReflect() preflect.Message { 727 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[2] 728 if protoimpl.UnsafeEnabled && m != nil { 729 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 730 if ms.LoadMessageInfo() == nil { 731 ms.StoreMessageInfo(mi) 732 } 733 return ms 734 } 735 return mi.MessageOf(m) 736 } 737 738 func (*Distribution) GotenMessage() {} 739 740 // Deprecated, Use Distribution.ProtoReflect.Descriptor instead. 741 func (*Distribution) Descriptor() ([]byte, []int) { 742 return edgelq_monitoring_proto_v4_common_proto_rawDescGZIP(), []int{2} 743 } 744 745 func (m *Distribution) Unmarshal(b []byte) error { 746 return proto.Unmarshal(b, m) 747 } 748 749 func (m *Distribution) Marshal() ([]byte, error) { 750 return proto.Marshal(m) 751 } 752 753 func (m *Distribution) MarshalJSON() ([]byte, error) { 754 return protojson.MarshalOptions{}.Marshal(m) 755 } 756 757 func (m *Distribution) UnmarshalJSON(data []byte) error { 758 return protojson.Unmarshal(data, m) 759 } 760 761 func (m *Distribution) GetCount() int64 { 762 if m != nil { 763 return m.Count 764 } 765 return int64(0) 766 } 767 768 func (m *Distribution) GetMean() float64 { 769 if m != nil { 770 return m.Mean 771 } 772 return float64(0) 773 } 774 775 func (m *Distribution) GetSumOfSquaredDeviation() float64 { 776 if m != nil { 777 return m.SumOfSquaredDeviation 778 } 779 return float64(0) 780 } 781 782 func (m *Distribution) GetRange() *Distribution_Range { 783 if m != nil { 784 return m.Range 785 } 786 return nil 787 } 788 789 func (m *Distribution) GetBucketOptions() *Distribution_BucketOptions { 790 if m != nil { 791 return m.BucketOptions 792 } 793 return nil 794 } 795 796 func (m *Distribution) GetBucketCounts() []int64 { 797 if m != nil { 798 return m.BucketCounts 799 } 800 return nil 801 } 802 803 func (m *Distribution) SetCount(fv int64) { 804 if m == nil { 805 panic(fmt.Errorf("can't set %s on nil %s", "Count", "Distribution")) 806 } 807 m.Count = fv 808 } 809 810 func (m *Distribution) SetMean(fv float64) { 811 if m == nil { 812 panic(fmt.Errorf("can't set %s on nil %s", "Mean", "Distribution")) 813 } 814 m.Mean = fv 815 } 816 817 func (m *Distribution) SetSumOfSquaredDeviation(fv float64) { 818 if m == nil { 819 panic(fmt.Errorf("can't set %s on nil %s", "SumOfSquaredDeviation", "Distribution")) 820 } 821 m.SumOfSquaredDeviation = fv 822 } 823 824 func (m *Distribution) SetRange(fv *Distribution_Range) { 825 if m == nil { 826 panic(fmt.Errorf("can't set %s on nil %s", "Range", "Distribution")) 827 } 828 m.Range = fv 829 } 830 831 func (m *Distribution) SetBucketOptions(fv *Distribution_BucketOptions) { 832 if m == nil { 833 panic(fmt.Errorf("can't set %s on nil %s", "BucketOptions", "Distribution")) 834 } 835 m.BucketOptions = fv 836 } 837 838 func (m *Distribution) SetBucketCounts(fv []int64) { 839 if m == nil { 840 panic(fmt.Errorf("can't set %s on nil %s", "BucketCounts", "Distribution")) 841 } 842 m.BucketCounts = fv 843 } 844 845 // A single strongly-typed value. 846 type TypedValue struct { 847 state protoimpl.MessageState 848 sizeCache protoimpl.SizeCache 849 unknownFields protoimpl.UnknownFields 850 // The typed value field. 851 // 852 // Types that are valid to be assigned to Value: 853 // *TypedValue_BoolValue 854 // *TypedValue_Int64Value 855 // *TypedValue_DoubleValue 856 // *TypedValue_StringValue 857 // *TypedValue_DistributionValue 858 Value isTypedValue_Value `protobuf_oneof:"value"` 859 } 860 861 func (m *TypedValue) Reset() { 862 *m = TypedValue{} 863 if protoimpl.UnsafeEnabled { 864 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[3] 865 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 866 ms.StoreMessageInfo(mi) 867 } 868 } 869 870 func (m *TypedValue) String() string { 871 return protoimpl.X.MessageStringOf(m) 872 } 873 874 func (*TypedValue) ProtoMessage() {} 875 876 func (m *TypedValue) ProtoReflect() preflect.Message { 877 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[3] 878 if protoimpl.UnsafeEnabled && m != nil { 879 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 880 if ms.LoadMessageInfo() == nil { 881 ms.StoreMessageInfo(mi) 882 } 883 return ms 884 } 885 return mi.MessageOf(m) 886 } 887 888 func (*TypedValue) GotenMessage() {} 889 890 // Deprecated, Use TypedValue.ProtoReflect.Descriptor instead. 891 func (*TypedValue) Descriptor() ([]byte, []int) { 892 return edgelq_monitoring_proto_v4_common_proto_rawDescGZIP(), []int{3} 893 } 894 895 func (m *TypedValue) Unmarshal(b []byte) error { 896 return proto.Unmarshal(b, m) 897 } 898 899 func (m *TypedValue) Marshal() ([]byte, error) { 900 return proto.Marshal(m) 901 } 902 903 func (m *TypedValue) MarshalJSON() ([]byte, error) { 904 return protojson.MarshalOptions{}.Marshal(m) 905 } 906 907 func (m *TypedValue) UnmarshalJSON(data []byte) error { 908 return protojson.Unmarshal(data, m) 909 } 910 911 type isTypedValue_Value interface { 912 isTypedValue_Value() 913 } 914 915 type TypedValue_BoolValue struct { 916 // A Boolean value: `true` or `false`. 917 BoolValue bool `protobuf:"varint,1,opt,name=bool_value,json=boolValue,proto3,oneof"` 918 } 919 type TypedValue_Int64Value struct { 920 // A 64-bit integer. Its range is approximately ±9.2x10<sup>18</sup>. 921 Int64Value int64 `protobuf:"varint,2,opt,name=int64_value,json=int64Value,proto3,oneof"` 922 } 923 type TypedValue_DoubleValue struct { 924 // A 64-bit double-precision floating-point number. Its magnitude 925 // is approximately ±10<sup>±300</sup> and it has 16 926 // significant digits of precision. 927 DoubleValue float64 `protobuf:"fixed64,3,opt,name=double_value,json=doubleValue,proto3,oneof"` 928 } 929 type TypedValue_StringValue struct { 930 // A variable-length string value. 931 StringValue string `protobuf:"bytes,4,opt,name=string_value,json=stringValue,proto3,oneof"` 932 } 933 type TypedValue_DistributionValue struct { 934 // A distribution value. 935 DistributionValue *Distribution `protobuf:"bytes,5,opt,name=distribution_value,json=distributionValue,proto3,oneof"` 936 } 937 938 func (*TypedValue_BoolValue) isTypedValue_Value() {} 939 func (*TypedValue_Int64Value) isTypedValue_Value() {} 940 func (*TypedValue_DoubleValue) isTypedValue_Value() {} 941 func (*TypedValue_StringValue) isTypedValue_Value() {} 942 func (*TypedValue_DistributionValue) isTypedValue_Value() {} 943 func (m *TypedValue) GetValue() isTypedValue_Value { 944 if m != nil { 945 return m.Value 946 } 947 return nil 948 } 949 func (m *TypedValue) GetBoolValue() bool { 950 if x, ok := m.GetValue().(*TypedValue_BoolValue); ok { 951 return x.BoolValue 952 } 953 return false 954 } 955 func (m *TypedValue) GetInt64Value() int64 { 956 if x, ok := m.GetValue().(*TypedValue_Int64Value); ok { 957 return x.Int64Value 958 } 959 return int64(0) 960 } 961 func (m *TypedValue) GetDoubleValue() float64 { 962 if x, ok := m.GetValue().(*TypedValue_DoubleValue); ok { 963 return x.DoubleValue 964 } 965 return float64(0) 966 } 967 func (m *TypedValue) GetStringValue() string { 968 if x, ok := m.GetValue().(*TypedValue_StringValue); ok { 969 return x.StringValue 970 } 971 return "" 972 } 973 func (m *TypedValue) GetDistributionValue() *Distribution { 974 if x, ok := m.GetValue().(*TypedValue_DistributionValue); ok { 975 return x.DistributionValue 976 } 977 return nil 978 } 979 func (m *TypedValue) SetValue(ofv isTypedValue_Value) { 980 if m == nil { 981 panic(fmt.Errorf("can't set %s on nil %s", "isTypedValue_Value", "TypedValue")) 982 } 983 m.Value = ofv 984 } 985 func (m *TypedValue) SetBoolValue(fv bool) { 986 m.SetValue(&TypedValue_BoolValue{BoolValue: fv}) 987 } 988 func (m *TypedValue) SetInt64Value(fv int64) { 989 m.SetValue(&TypedValue_Int64Value{Int64Value: fv}) 990 } 991 func (m *TypedValue) SetDoubleValue(fv float64) { 992 m.SetValue(&TypedValue_DoubleValue{DoubleValue: fv}) 993 } 994 func (m *TypedValue) SetStringValue(fv string) { 995 m.SetValue(&TypedValue_StringValue{StringValue: fv}) 996 } 997 func (m *TypedValue) SetDistributionValue(fv *Distribution) { 998 m.SetValue(&TypedValue_DistributionValue{DistributionValue: fv}) 999 } 1000 1001 // A time interval extending just after a start time through an end time. 1002 // If the start time is the same as the end time, then the interval 1003 // represents a single point in time. 1004 type TimeInterval struct { 1005 state protoimpl.MessageState 1006 sizeCache protoimpl.SizeCache 1007 unknownFields protoimpl.UnknownFields 1008 // Required. The end of the time interval. 1009 EndTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"` 1010 // Optional. The beginning of the time interval. The default value 1011 // for the start time is the end time. The start time must not be 1012 // later than the end time. 1013 StartTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"` 1014 } 1015 1016 func (m *TimeInterval) Reset() { 1017 *m = TimeInterval{} 1018 if protoimpl.UnsafeEnabled { 1019 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[4] 1020 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 1021 ms.StoreMessageInfo(mi) 1022 } 1023 } 1024 1025 func (m *TimeInterval) String() string { 1026 return protoimpl.X.MessageStringOf(m) 1027 } 1028 1029 func (*TimeInterval) ProtoMessage() {} 1030 1031 func (m *TimeInterval) ProtoReflect() preflect.Message { 1032 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[4] 1033 if protoimpl.UnsafeEnabled && m != nil { 1034 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 1035 if ms.LoadMessageInfo() == nil { 1036 ms.StoreMessageInfo(mi) 1037 } 1038 return ms 1039 } 1040 return mi.MessageOf(m) 1041 } 1042 1043 func (*TimeInterval) GotenMessage() {} 1044 1045 // Deprecated, Use TimeInterval.ProtoReflect.Descriptor instead. 1046 func (*TimeInterval) Descriptor() ([]byte, []int) { 1047 return edgelq_monitoring_proto_v4_common_proto_rawDescGZIP(), []int{4} 1048 } 1049 1050 func (m *TimeInterval) Unmarshal(b []byte) error { 1051 return proto.Unmarshal(b, m) 1052 } 1053 1054 func (m *TimeInterval) Marshal() ([]byte, error) { 1055 return proto.Marshal(m) 1056 } 1057 1058 func (m *TimeInterval) MarshalJSON() ([]byte, error) { 1059 return protojson.MarshalOptions{}.Marshal(m) 1060 } 1061 1062 func (m *TimeInterval) UnmarshalJSON(data []byte) error { 1063 return protojson.Unmarshal(data, m) 1064 } 1065 1066 func (m *TimeInterval) GetEndTime() *timestamppb.Timestamp { 1067 if m != nil { 1068 return m.EndTime 1069 } 1070 return nil 1071 } 1072 1073 func (m *TimeInterval) GetStartTime() *timestamppb.Timestamp { 1074 if m != nil { 1075 return m.StartTime 1076 } 1077 return nil 1078 } 1079 1080 func (m *TimeInterval) SetEndTime(fv *timestamppb.Timestamp) { 1081 if m == nil { 1082 panic(fmt.Errorf("can't set %s on nil %s", "EndTime", "TimeInterval")) 1083 } 1084 m.EndTime = fv 1085 } 1086 1087 func (m *TimeInterval) SetStartTime(fv *timestamppb.Timestamp) { 1088 if m == nil { 1089 panic(fmt.Errorf("can't set %s on nil %s", "StartTime", "TimeInterval")) 1090 } 1091 m.StartTime = fv 1092 } 1093 1094 // Time Range represents time between two points in time. Any of those can 1095 // be missing, which means it's open-ended. 1096 type TimeRange struct { 1097 state protoimpl.MessageState 1098 sizeCache protoimpl.SizeCache 1099 unknownFields protoimpl.UnknownFields 1100 // Optional. Start of time range 1101 StartTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"` 1102 // Optional. End of time range 1103 EndTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"` 1104 } 1105 1106 func (m *TimeRange) Reset() { 1107 *m = TimeRange{} 1108 if protoimpl.UnsafeEnabled { 1109 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[5] 1110 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 1111 ms.StoreMessageInfo(mi) 1112 } 1113 } 1114 1115 func (m *TimeRange) String() string { 1116 return protoimpl.X.MessageStringOf(m) 1117 } 1118 1119 func (*TimeRange) ProtoMessage() {} 1120 1121 func (m *TimeRange) ProtoReflect() preflect.Message { 1122 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[5] 1123 if protoimpl.UnsafeEnabled && m != nil { 1124 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 1125 if ms.LoadMessageInfo() == nil { 1126 ms.StoreMessageInfo(mi) 1127 } 1128 return ms 1129 } 1130 return mi.MessageOf(m) 1131 } 1132 1133 func (*TimeRange) GotenMessage() {} 1134 1135 // Deprecated, Use TimeRange.ProtoReflect.Descriptor instead. 1136 func (*TimeRange) Descriptor() ([]byte, []int) { 1137 return edgelq_monitoring_proto_v4_common_proto_rawDescGZIP(), []int{5} 1138 } 1139 1140 func (m *TimeRange) Unmarshal(b []byte) error { 1141 return proto.Unmarshal(b, m) 1142 } 1143 1144 func (m *TimeRange) Marshal() ([]byte, error) { 1145 return proto.Marshal(m) 1146 } 1147 1148 func (m *TimeRange) MarshalJSON() ([]byte, error) { 1149 return protojson.MarshalOptions{}.Marshal(m) 1150 } 1151 1152 func (m *TimeRange) UnmarshalJSON(data []byte) error { 1153 return protojson.Unmarshal(data, m) 1154 } 1155 1156 func (m *TimeRange) GetStartTime() *timestamppb.Timestamp { 1157 if m != nil { 1158 return m.StartTime 1159 } 1160 return nil 1161 } 1162 1163 func (m *TimeRange) GetEndTime() *timestamppb.Timestamp { 1164 if m != nil { 1165 return m.EndTime 1166 } 1167 return nil 1168 } 1169 1170 func (m *TimeRange) SetStartTime(fv *timestamppb.Timestamp) { 1171 if m == nil { 1172 panic(fmt.Errorf("can't set %s on nil %s", "StartTime", "TimeRange")) 1173 } 1174 m.StartTime = fv 1175 } 1176 1177 func (m *TimeRange) SetEndTime(fv *timestamppb.Timestamp) { 1178 if m == nil { 1179 panic(fmt.Errorf("can't set %s on nil %s", "EndTime", "TimeRange")) 1180 } 1181 m.EndTime = fv 1182 } 1183 1184 // Describes how to combine multiple time series to provide different views of 1185 // the data. Aggregation consists of an alignment step on individual time 1186 // series (`alignment_period` and `per_series_aligner`) followed by an optional 1187 // reduction step of the data across the aligned time series 1188 // (`cross_series_reducer` and `group_by_fields`). For more details, see 1189 // [Aggregation](/monitoring/api/learn_more#aggregation). 1190 type Aggregation struct { 1191 state protoimpl.MessageState 1192 sizeCache protoimpl.SizeCache 1193 unknownFields protoimpl.UnknownFields 1194 // The alignment period for per-[time series][ntt.monitoring.v3.TimeSeries] 1195 // alignment. If present, `alignmentPeriod` must be at least 60 1196 // seconds. After per-time series alignment, each time series will 1197 // contain data points only on the period boundaries. If 1198 // `perSeriesAligner` is not specified or equals `ALIGN_NONE`, then 1199 // this field is ignored. If `perSeriesAligner` is specified and 1200 // does not equal `ALIGN_NONE`, then this field must be defined; 1201 // otherwise an error is returned. 1202 AlignmentPeriod *durationpb.Duration `protobuf:"bytes,1,opt,name=alignment_period,json=alignmentPeriod,proto3" json:"alignment_period,omitempty"` 1203 // The approach to be used to align individual time series. Not all 1204 // alignment functions may be applied to all time series, depending 1205 // on the metric type and value type of the original time 1206 // series. Alignment may change the metric type or the value type of 1207 // the time series. 1208 // 1209 // Time series data must be aligned in order to perform cross-time 1210 // series reduction. If `crossSeriesReducer` is specified, then 1211 // `perSeriesAligner` must be specified and not equal `ALIGN_NONE` 1212 // and `alignmentPeriod` must be specified; otherwise, an error is 1213 // returned. 1214 PerSeriesAligner Aggregation_Aligner `protobuf:"varint,2,opt,name=per_series_aligner,json=perSeriesAligner,proto3,enum=ntt.monitoring.v4.Aggregation_Aligner" json:"per_series_aligner,omitempty"` 1215 // The approach to be used to combine time series. Not all reducer 1216 // functions may be applied to all time series, depending on the 1217 // metric type and the value type of the original time 1218 // series. Reduction may change the metric type of value type of the 1219 // time series. 1220 // 1221 // Time series data must be aligned in order to perform cross-time 1222 // series reduction. If `crossSeriesReducer` is specified, then 1223 // `perSeriesAligner` must be specified and not equal `ALIGN_NONE` 1224 // and `alignmentPeriod` must be specified; otherwise, an error is 1225 // returned. 1226 CrossSeriesReducer Aggregation_Reducer `protobuf:"varint,4,opt,name=cross_series_reducer,json=crossSeriesReducer,proto3,enum=ntt.monitoring.v4.Aggregation_Reducer" json:"cross_series_reducer,omitempty"` 1227 // The set of fields to preserve when `crossSeriesReducer` is 1228 // specified. The `groupByFields` determine how the time series are 1229 // partitioned into subsets prior to applying the aggregation 1230 // function. Each subset contains time series that have the same 1231 // value for each of the grouping fields. Each individual time 1232 // series is a member of exactly one subset. The 1233 // `crossSeriesReducer` is applied to each subset of time series. 1234 // It is not possible to reduce across different resource types, so 1235 // this field implicitly contains `resource.type`. Fields not 1236 // specified in `groupByFields` are aggregated away. If 1237 // `groupByFields` is not specified and all the time series have 1238 // the same resource type, then the time series are aggregated into 1239 // a single output time series. If `crossSeriesReducer` is not 1240 // defined, this field is ignored. 1241 GroupByFields []string `protobuf:"bytes,5,rep,name=group_by_fields,json=groupByFields,proto3" json:"group_by_fields,omitempty"` 1242 } 1243 1244 func (m *Aggregation) Reset() { 1245 *m = Aggregation{} 1246 if protoimpl.UnsafeEnabled { 1247 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[6] 1248 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 1249 ms.StoreMessageInfo(mi) 1250 } 1251 } 1252 1253 func (m *Aggregation) String() string { 1254 return protoimpl.X.MessageStringOf(m) 1255 } 1256 1257 func (*Aggregation) ProtoMessage() {} 1258 1259 func (m *Aggregation) ProtoReflect() preflect.Message { 1260 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[6] 1261 if protoimpl.UnsafeEnabled && m != nil { 1262 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 1263 if ms.LoadMessageInfo() == nil { 1264 ms.StoreMessageInfo(mi) 1265 } 1266 return ms 1267 } 1268 return mi.MessageOf(m) 1269 } 1270 1271 func (*Aggregation) GotenMessage() {} 1272 1273 // Deprecated, Use Aggregation.ProtoReflect.Descriptor instead. 1274 func (*Aggregation) Descriptor() ([]byte, []int) { 1275 return edgelq_monitoring_proto_v4_common_proto_rawDescGZIP(), []int{6} 1276 } 1277 1278 func (m *Aggregation) Unmarshal(b []byte) error { 1279 return proto.Unmarshal(b, m) 1280 } 1281 1282 func (m *Aggregation) Marshal() ([]byte, error) { 1283 return proto.Marshal(m) 1284 } 1285 1286 func (m *Aggregation) MarshalJSON() ([]byte, error) { 1287 return protojson.MarshalOptions{}.Marshal(m) 1288 } 1289 1290 func (m *Aggregation) UnmarshalJSON(data []byte) error { 1291 return protojson.Unmarshal(data, m) 1292 } 1293 1294 func (m *Aggregation) GetAlignmentPeriod() *durationpb.Duration { 1295 if m != nil { 1296 return m.AlignmentPeriod 1297 } 1298 return nil 1299 } 1300 1301 func (m *Aggregation) GetPerSeriesAligner() Aggregation_Aligner { 1302 if m != nil { 1303 return m.PerSeriesAligner 1304 } 1305 return Aggregation_ALIGN_NONE 1306 } 1307 1308 func (m *Aggregation) GetCrossSeriesReducer() Aggregation_Reducer { 1309 if m != nil { 1310 return m.CrossSeriesReducer 1311 } 1312 return Aggregation_REDUCE_NONE 1313 } 1314 1315 func (m *Aggregation) GetGroupByFields() []string { 1316 if m != nil { 1317 return m.GroupByFields 1318 } 1319 return nil 1320 } 1321 1322 func (m *Aggregation) SetAlignmentPeriod(fv *durationpb.Duration) { 1323 if m == nil { 1324 panic(fmt.Errorf("can't set %s on nil %s", "AlignmentPeriod", "Aggregation")) 1325 } 1326 m.AlignmentPeriod = fv 1327 } 1328 1329 func (m *Aggregation) SetPerSeriesAligner(fv Aggregation_Aligner) { 1330 if m == nil { 1331 panic(fmt.Errorf("can't set %s on nil %s", "PerSeriesAligner", "Aggregation")) 1332 } 1333 m.PerSeriesAligner = fv 1334 } 1335 1336 func (m *Aggregation) SetCrossSeriesReducer(fv Aggregation_Reducer) { 1337 if m == nil { 1338 panic(fmt.Errorf("can't set %s on nil %s", "CrossSeriesReducer", "Aggregation")) 1339 } 1340 m.CrossSeriesReducer = fv 1341 } 1342 1343 func (m *Aggregation) SetGroupByFields(fv []string) { 1344 if m == nil { 1345 panic(fmt.Errorf("can't set %s on nil %s", "GroupByFields", "Aggregation")) 1346 } 1347 m.GroupByFields = fv 1348 } 1349 1350 type Pagination struct { 1351 state protoimpl.MessageState 1352 sizeCache protoimpl.SizeCache 1353 unknownFields protoimpl.UnknownFields 1354 View string `protobuf:"bytes,1,opt,name=view,proto3" json:"view,omitempty"` 1355 Function string `protobuf:"bytes,2,opt,name=function,proto3" json:"function,omitempty"` 1356 AlignmentPeriod *durationpb.Duration `protobuf:"bytes,3,opt,name=alignment_period,json=alignmentPeriod,proto3" json:"alignment_period,omitempty"` 1357 Limit int32 `protobuf:"varint,4,opt,name=limit,proto3" json:"limit,omitempty"` 1358 Offset int32 `protobuf:"varint,5,opt,name=offset,proto3" json:"offset,omitempty"` 1359 } 1360 1361 func (m *Pagination) Reset() { 1362 *m = Pagination{} 1363 if protoimpl.UnsafeEnabled { 1364 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[7] 1365 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 1366 ms.StoreMessageInfo(mi) 1367 } 1368 } 1369 1370 func (m *Pagination) String() string { 1371 return protoimpl.X.MessageStringOf(m) 1372 } 1373 1374 func (*Pagination) ProtoMessage() {} 1375 1376 func (m *Pagination) ProtoReflect() preflect.Message { 1377 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[7] 1378 if protoimpl.UnsafeEnabled && m != nil { 1379 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 1380 if ms.LoadMessageInfo() == nil { 1381 ms.StoreMessageInfo(mi) 1382 } 1383 return ms 1384 } 1385 return mi.MessageOf(m) 1386 } 1387 1388 func (*Pagination) GotenMessage() {} 1389 1390 // Deprecated, Use Pagination.ProtoReflect.Descriptor instead. 1391 func (*Pagination) Descriptor() ([]byte, []int) { 1392 return edgelq_monitoring_proto_v4_common_proto_rawDescGZIP(), []int{7} 1393 } 1394 1395 func (m *Pagination) Unmarshal(b []byte) error { 1396 return proto.Unmarshal(b, m) 1397 } 1398 1399 func (m *Pagination) Marshal() ([]byte, error) { 1400 return proto.Marshal(m) 1401 } 1402 1403 func (m *Pagination) MarshalJSON() ([]byte, error) { 1404 return protojson.MarshalOptions{}.Marshal(m) 1405 } 1406 1407 func (m *Pagination) UnmarshalJSON(data []byte) error { 1408 return protojson.Unmarshal(data, m) 1409 } 1410 1411 func (m *Pagination) GetView() string { 1412 if m != nil { 1413 return m.View 1414 } 1415 return "" 1416 } 1417 1418 func (m *Pagination) GetFunction() string { 1419 if m != nil { 1420 return m.Function 1421 } 1422 return "" 1423 } 1424 1425 func (m *Pagination) GetAlignmentPeriod() *durationpb.Duration { 1426 if m != nil { 1427 return m.AlignmentPeriod 1428 } 1429 return nil 1430 } 1431 1432 func (m *Pagination) GetLimit() int32 { 1433 if m != nil { 1434 return m.Limit 1435 } 1436 return int32(0) 1437 } 1438 1439 func (m *Pagination) GetOffset() int32 { 1440 if m != nil { 1441 return m.Offset 1442 } 1443 return int32(0) 1444 } 1445 1446 func (m *Pagination) SetView(fv string) { 1447 if m == nil { 1448 panic(fmt.Errorf("can't set %s on nil %s", "View", "Pagination")) 1449 } 1450 m.View = fv 1451 } 1452 1453 func (m *Pagination) SetFunction(fv string) { 1454 if m == nil { 1455 panic(fmt.Errorf("can't set %s on nil %s", "Function", "Pagination")) 1456 } 1457 m.Function = fv 1458 } 1459 1460 func (m *Pagination) SetAlignmentPeriod(fv *durationpb.Duration) { 1461 if m == nil { 1462 panic(fmt.Errorf("can't set %s on nil %s", "AlignmentPeriod", "Pagination")) 1463 } 1464 m.AlignmentPeriod = fv 1465 } 1466 1467 func (m *Pagination) SetLimit(fv int32) { 1468 if m == nil { 1469 panic(fmt.Errorf("can't set %s on nil %s", "Limit", "Pagination")) 1470 } 1471 m.Limit = fv 1472 } 1473 1474 func (m *Pagination) SetOffset(fv int32) { 1475 if m == nil { 1476 panic(fmt.Errorf("can't set %s on nil %s", "Offset", "Pagination")) 1477 } 1478 m.Offset = fv 1479 } 1480 1481 // A specific metric, identified by specifying values for all of the 1482 // labels of a [`MetricDescriptor`][google.api.MetricDescriptor]. 1483 type Metric struct { 1484 state protoimpl.MessageState 1485 sizeCache protoimpl.SizeCache 1486 unknownFields protoimpl.UnknownFields 1487 // An existing metric type, see 1488 // [google.api.MetricDescriptor][google.api.MetricDescriptor]. For example, 1489 // `custom.googleapis.com/invoice/paid/amount`. 1490 Type string `protobuf:"bytes,3,opt,name=type,proto3" json:"type,omitempty"` 1491 // The set of label values that uniquely identify this metric. All 1492 // labels listed in the `MetricDescriptor` must be assigned values. 1493 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"` 1494 // reduced labels in aggregations 1495 ReducedLabels []string `protobuf:"bytes,11,rep,name=reduced_labels,json=reducedLabels,proto3" json:"reduced_labels,omitempty"` 1496 } 1497 1498 func (m *Metric) Reset() { 1499 *m = Metric{} 1500 if protoimpl.UnsafeEnabled { 1501 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[8] 1502 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 1503 ms.StoreMessageInfo(mi) 1504 } 1505 } 1506 1507 func (m *Metric) String() string { 1508 return protoimpl.X.MessageStringOf(m) 1509 } 1510 1511 func (*Metric) ProtoMessage() {} 1512 1513 func (m *Metric) ProtoReflect() preflect.Message { 1514 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[8] 1515 if protoimpl.UnsafeEnabled && m != nil { 1516 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 1517 if ms.LoadMessageInfo() == nil { 1518 ms.StoreMessageInfo(mi) 1519 } 1520 return ms 1521 } 1522 return mi.MessageOf(m) 1523 } 1524 1525 func (*Metric) GotenMessage() {} 1526 1527 // Deprecated, Use Metric.ProtoReflect.Descriptor instead. 1528 func (*Metric) Descriptor() ([]byte, []int) { 1529 return edgelq_monitoring_proto_v4_common_proto_rawDescGZIP(), []int{8} 1530 } 1531 1532 func (m *Metric) Unmarshal(b []byte) error { 1533 return proto.Unmarshal(b, m) 1534 } 1535 1536 func (m *Metric) Marshal() ([]byte, error) { 1537 return proto.Marshal(m) 1538 } 1539 1540 func (m *Metric) MarshalJSON() ([]byte, error) { 1541 return protojson.MarshalOptions{}.Marshal(m) 1542 } 1543 1544 func (m *Metric) UnmarshalJSON(data []byte) error { 1545 return protojson.Unmarshal(data, m) 1546 } 1547 1548 func (m *Metric) GetType() string { 1549 if m != nil { 1550 return m.Type 1551 } 1552 return "" 1553 } 1554 1555 func (m *Metric) GetLabels() map[string]string { 1556 if m != nil { 1557 return m.Labels 1558 } 1559 return nil 1560 } 1561 1562 func (m *Metric) GetReducedLabels() []string { 1563 if m != nil { 1564 return m.ReducedLabels 1565 } 1566 return nil 1567 } 1568 1569 func (m *Metric) SetType(fv string) { 1570 if m == nil { 1571 panic(fmt.Errorf("can't set %s on nil %s", "Type", "Metric")) 1572 } 1573 m.Type = fv 1574 } 1575 1576 func (m *Metric) SetLabels(fv map[string]string) { 1577 if m == nil { 1578 panic(fmt.Errorf("can't set %s on nil %s", "Labels", "Metric")) 1579 } 1580 m.Labels = fv 1581 } 1582 1583 func (m *Metric) SetReducedLabels(fv []string) { 1584 if m == nil { 1585 panic(fmt.Errorf("can't set %s on nil %s", "ReducedLabels", "Metric")) 1586 } 1587 m.ReducedLabels = fv 1588 } 1589 1590 // An object representing a resource that can be used for monitoring, logging, 1591 // billing, or other purposes. Examples include virtual machine instances, 1592 // databases, and storage devices such as disks. The `type` field identifies a 1593 // [MonitoredResourceDescriptor][google.api.MonitoredResourceDescriptor] object 1594 // that describes the resource's schema. Information in the `labels` field 1595 // identifies the actual resource and its attributes according to the schema. 1596 // For example, a particular Compute Engine VM instance could be represented by 1597 // the following object, because the 1598 // [MonitoredResourceDescriptor][google.api.MonitoredResourceDescriptor] for 1599 // `"gce_instance"` has labels 1600 // `"instance_id"` and `"zone"`: 1601 // 1602 // { "type": "gce_instance", 1603 // "labels": { "instance_id": "12345678901234", 1604 // "zone": "us-central1-a" }} 1605 type MonitoredResource struct { 1606 state protoimpl.MessageState 1607 sizeCache protoimpl.SizeCache 1608 unknownFields protoimpl.UnknownFields 1609 // Required. The monitored resource type. This field must match 1610 // the `type` field of a 1611 // [MonitoredResourceDescriptor][google.api.MonitoredResourceDescriptor] 1612 // object. For example, the type of a Compute Engine VM instance is 1613 // `gce_instance`. 1614 Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"` 1615 // Required. Values for all of the labels listed in the associated monitored 1616 // resource descriptor. For example, Compute Engine VM instances use the 1617 // labels `"project_id"`, `"instance_id"`, and `"zone"`. 1618 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"` 1619 // reduced labels in aggregations 1620 ReducedLabels []string `protobuf:"bytes,11,rep,name=reduced_labels,json=reducedLabels,proto3" json:"reduced_labels,omitempty"` 1621 } 1622 1623 func (m *MonitoredResource) Reset() { 1624 *m = MonitoredResource{} 1625 if protoimpl.UnsafeEnabled { 1626 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[9] 1627 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 1628 ms.StoreMessageInfo(mi) 1629 } 1630 } 1631 1632 func (m *MonitoredResource) String() string { 1633 return protoimpl.X.MessageStringOf(m) 1634 } 1635 1636 func (*MonitoredResource) ProtoMessage() {} 1637 1638 func (m *MonitoredResource) ProtoReflect() preflect.Message { 1639 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[9] 1640 if protoimpl.UnsafeEnabled && m != nil { 1641 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 1642 if ms.LoadMessageInfo() == nil { 1643 ms.StoreMessageInfo(mi) 1644 } 1645 return ms 1646 } 1647 return mi.MessageOf(m) 1648 } 1649 1650 func (*MonitoredResource) GotenMessage() {} 1651 1652 // Deprecated, Use MonitoredResource.ProtoReflect.Descriptor instead. 1653 func (*MonitoredResource) Descriptor() ([]byte, []int) { 1654 return edgelq_monitoring_proto_v4_common_proto_rawDescGZIP(), []int{9} 1655 } 1656 1657 func (m *MonitoredResource) Unmarshal(b []byte) error { 1658 return proto.Unmarshal(b, m) 1659 } 1660 1661 func (m *MonitoredResource) Marshal() ([]byte, error) { 1662 return proto.Marshal(m) 1663 } 1664 1665 func (m *MonitoredResource) MarshalJSON() ([]byte, error) { 1666 return protojson.MarshalOptions{}.Marshal(m) 1667 } 1668 1669 func (m *MonitoredResource) UnmarshalJSON(data []byte) error { 1670 return protojson.Unmarshal(data, m) 1671 } 1672 1673 func (m *MonitoredResource) GetType() string { 1674 if m != nil { 1675 return m.Type 1676 } 1677 return "" 1678 } 1679 1680 func (m *MonitoredResource) GetLabels() map[string]string { 1681 if m != nil { 1682 return m.Labels 1683 } 1684 return nil 1685 } 1686 1687 func (m *MonitoredResource) GetReducedLabels() []string { 1688 if m != nil { 1689 return m.ReducedLabels 1690 } 1691 return nil 1692 } 1693 1694 func (m *MonitoredResource) SetType(fv string) { 1695 if m == nil { 1696 panic(fmt.Errorf("can't set %s on nil %s", "Type", "MonitoredResource")) 1697 } 1698 m.Type = fv 1699 } 1700 1701 func (m *MonitoredResource) SetLabels(fv map[string]string) { 1702 if m == nil { 1703 panic(fmt.Errorf("can't set %s on nil %s", "Labels", "MonitoredResource")) 1704 } 1705 m.Labels = fv 1706 } 1707 1708 func (m *MonitoredResource) SetReducedLabels(fv []string) { 1709 if m == nil { 1710 panic(fmt.Errorf("can't set %s on nil %s", "ReducedLabels", "MonitoredResource")) 1711 } 1712 m.ReducedLabels = fv 1713 } 1714 1715 // Represents wrapped list of strings. 1716 type Strings struct { 1717 state protoimpl.MessageState 1718 sizeCache protoimpl.SizeCache 1719 unknownFields protoimpl.UnknownFields 1720 Values []string `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"` 1721 } 1722 1723 func (m *Strings) Reset() { 1724 *m = Strings{} 1725 if protoimpl.UnsafeEnabled { 1726 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[10] 1727 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 1728 ms.StoreMessageInfo(mi) 1729 } 1730 } 1731 1732 func (m *Strings) String() string { 1733 return protoimpl.X.MessageStringOf(m) 1734 } 1735 1736 func (*Strings) ProtoMessage() {} 1737 1738 func (m *Strings) ProtoReflect() preflect.Message { 1739 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[10] 1740 if protoimpl.UnsafeEnabled && m != nil { 1741 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 1742 if ms.LoadMessageInfo() == nil { 1743 ms.StoreMessageInfo(mi) 1744 } 1745 return ms 1746 } 1747 return mi.MessageOf(m) 1748 } 1749 1750 func (*Strings) GotenMessage() {} 1751 1752 // Deprecated, Use Strings.ProtoReflect.Descriptor instead. 1753 func (*Strings) Descriptor() ([]byte, []int) { 1754 return edgelq_monitoring_proto_v4_common_proto_rawDescGZIP(), []int{10} 1755 } 1756 1757 func (m *Strings) Unmarshal(b []byte) error { 1758 return proto.Unmarshal(b, m) 1759 } 1760 1761 func (m *Strings) Marshal() ([]byte, error) { 1762 return proto.Marshal(m) 1763 } 1764 1765 func (m *Strings) MarshalJSON() ([]byte, error) { 1766 return protojson.MarshalOptions{}.Marshal(m) 1767 } 1768 1769 func (m *Strings) UnmarshalJSON(data []byte) error { 1770 return protojson.Unmarshal(data, m) 1771 } 1772 1773 func (m *Strings) GetValues() []string { 1774 if m != nil { 1775 return m.Values 1776 } 1777 return nil 1778 } 1779 1780 func (m *Strings) SetValues(fv []string) { 1781 if m == nil { 1782 panic(fmt.Errorf("can't set %s on nil %s", "Values", "Strings")) 1783 } 1784 m.Values = fv 1785 } 1786 1787 // MonitoredResourceSelector selects `resource.type` and list of labels used to 1788 // build query, like: 1789 // 1790 // ``` 1791 // resource.type IN ("type0", "type1", ...) AND 1792 // resource.labels.<key0> IN (label0_0, label0_1, ...) AND 1793 // resource.labels.<key1> IN (label1_0, label1_1, ...) AND ... 1794 // ``` 1795 // 1796 // Note: Only one resource.type per query is currently allowed 1797 type MonitoredResourceSelector struct { 1798 state protoimpl.MessageState 1799 sizeCache protoimpl.SizeCache 1800 unknownFields protoimpl.UnknownFields 1801 Types []string `protobuf:"bytes,1,rep,name=types,proto3" json:"types,omitempty"` 1802 // label key, e.g. "project_id", "target_id", etc 1803 // Note the missing "resource.labels." prefix. 1804 Labels map[string]*Strings `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"` 1805 } 1806 1807 func (m *MonitoredResourceSelector) Reset() { 1808 *m = MonitoredResourceSelector{} 1809 if protoimpl.UnsafeEnabled { 1810 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[11] 1811 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 1812 ms.StoreMessageInfo(mi) 1813 } 1814 } 1815 1816 func (m *MonitoredResourceSelector) String() string { 1817 return protoimpl.X.MessageStringOf(m) 1818 } 1819 1820 func (*MonitoredResourceSelector) ProtoMessage() {} 1821 1822 func (m *MonitoredResourceSelector) ProtoReflect() preflect.Message { 1823 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[11] 1824 if protoimpl.UnsafeEnabled && m != nil { 1825 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 1826 if ms.LoadMessageInfo() == nil { 1827 ms.StoreMessageInfo(mi) 1828 } 1829 return ms 1830 } 1831 return mi.MessageOf(m) 1832 } 1833 1834 func (*MonitoredResourceSelector) GotenMessage() {} 1835 1836 // Deprecated, Use MonitoredResourceSelector.ProtoReflect.Descriptor instead. 1837 func (*MonitoredResourceSelector) Descriptor() ([]byte, []int) { 1838 return edgelq_monitoring_proto_v4_common_proto_rawDescGZIP(), []int{11} 1839 } 1840 1841 func (m *MonitoredResourceSelector) Unmarshal(b []byte) error { 1842 return proto.Unmarshal(b, m) 1843 } 1844 1845 func (m *MonitoredResourceSelector) Marshal() ([]byte, error) { 1846 return proto.Marshal(m) 1847 } 1848 1849 func (m *MonitoredResourceSelector) MarshalJSON() ([]byte, error) { 1850 return protojson.MarshalOptions{}.Marshal(m) 1851 } 1852 1853 func (m *MonitoredResourceSelector) UnmarshalJSON(data []byte) error { 1854 return protojson.Unmarshal(data, m) 1855 } 1856 1857 func (m *MonitoredResourceSelector) GetTypes() []string { 1858 if m != nil { 1859 return m.Types 1860 } 1861 return nil 1862 } 1863 1864 func (m *MonitoredResourceSelector) GetLabels() map[string]*Strings { 1865 if m != nil { 1866 return m.Labels 1867 } 1868 return nil 1869 } 1870 1871 func (m *MonitoredResourceSelector) SetTypes(fv []string) { 1872 if m == nil { 1873 panic(fmt.Errorf("can't set %s on nil %s", "Types", "MonitoredResourceSelector")) 1874 } 1875 m.Types = fv 1876 } 1877 1878 func (m *MonitoredResourceSelector) SetLabels(fv map[string]*Strings) { 1879 if m == nil { 1880 panic(fmt.Errorf("can't set %s on nil %s", "Labels", "MonitoredResourceSelector")) 1881 } 1882 m.Labels = fv 1883 } 1884 1885 // Metric selects `metric.type` and list of labels used to 1886 // build query, like: 1887 // 1888 // ``` 1889 // metric.type IN ("type0", "type1", ...) AND 1890 // metric.labels.<key0> IN (label0_0, label0_1, ...) AND 1891 // metric.labels.<key1> IN (label1_0, label1_1, ...) AND ... 1892 // ``` 1893 type MetricSelector struct { 1894 state protoimpl.MessageState 1895 sizeCache protoimpl.SizeCache 1896 unknownFields protoimpl.UnknownFields 1897 Types []string `protobuf:"bytes,1,rep,name=types,proto3" json:"types,omitempty"` 1898 // label key, e.g. "project_id", "target_id", etc 1899 // Note the missing "metric.labels." prefix. 1900 Labels map[string]*Strings `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"` 1901 } 1902 1903 func (m *MetricSelector) Reset() { 1904 *m = MetricSelector{} 1905 if protoimpl.UnsafeEnabled { 1906 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[12] 1907 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 1908 ms.StoreMessageInfo(mi) 1909 } 1910 } 1911 1912 func (m *MetricSelector) String() string { 1913 return protoimpl.X.MessageStringOf(m) 1914 } 1915 1916 func (*MetricSelector) ProtoMessage() {} 1917 1918 func (m *MetricSelector) ProtoReflect() preflect.Message { 1919 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[12] 1920 if protoimpl.UnsafeEnabled && m != nil { 1921 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 1922 if ms.LoadMessageInfo() == nil { 1923 ms.StoreMessageInfo(mi) 1924 } 1925 return ms 1926 } 1927 return mi.MessageOf(m) 1928 } 1929 1930 func (*MetricSelector) GotenMessage() {} 1931 1932 // Deprecated, Use MetricSelector.ProtoReflect.Descriptor instead. 1933 func (*MetricSelector) Descriptor() ([]byte, []int) { 1934 return edgelq_monitoring_proto_v4_common_proto_rawDescGZIP(), []int{12} 1935 } 1936 1937 func (m *MetricSelector) Unmarshal(b []byte) error { 1938 return proto.Unmarshal(b, m) 1939 } 1940 1941 func (m *MetricSelector) Marshal() ([]byte, error) { 1942 return proto.Marshal(m) 1943 } 1944 1945 func (m *MetricSelector) MarshalJSON() ([]byte, error) { 1946 return protojson.MarshalOptions{}.Marshal(m) 1947 } 1948 1949 func (m *MetricSelector) UnmarshalJSON(data []byte) error { 1950 return protojson.Unmarshal(data, m) 1951 } 1952 1953 func (m *MetricSelector) GetTypes() []string { 1954 if m != nil { 1955 return m.Types 1956 } 1957 return nil 1958 } 1959 1960 func (m *MetricSelector) GetLabels() map[string]*Strings { 1961 if m != nil { 1962 return m.Labels 1963 } 1964 return nil 1965 } 1966 1967 func (m *MetricSelector) SetTypes(fv []string) { 1968 if m == nil { 1969 panic(fmt.Errorf("can't set %s on nil %s", "Types", "MetricSelector")) 1970 } 1971 m.Types = fv 1972 } 1973 1974 func (m *MetricSelector) SetLabels(fv map[string]*Strings) { 1975 if m == nil { 1976 panic(fmt.Errorf("can't set %s on nil %s", "Labels", "MetricSelector")) 1977 } 1978 m.Labels = fv 1979 } 1980 1981 type TimeSeriesSelector struct { 1982 state protoimpl.MessageState 1983 sizeCache protoimpl.SizeCache 1984 unknownFields protoimpl.UnknownFields 1985 // Metric Selector used to specify filtered Metric types and labels 1986 Metric *MetricSelector `protobuf:"bytes,1,opt,name=metric,proto3" json:"metric,omitempty"` 1987 // Resource Selector used to specify filtered Monitored Resource 1988 // types and labels 1989 Resource *MonitoredResourceSelector `protobuf:"bytes,2,opt,name=resource,proto3" json:"resource,omitempty"` 1990 } 1991 1992 func (m *TimeSeriesSelector) Reset() { 1993 *m = TimeSeriesSelector{} 1994 if protoimpl.UnsafeEnabled { 1995 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[13] 1996 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 1997 ms.StoreMessageInfo(mi) 1998 } 1999 } 2000 2001 func (m *TimeSeriesSelector) String() string { 2002 return protoimpl.X.MessageStringOf(m) 2003 } 2004 2005 func (*TimeSeriesSelector) ProtoMessage() {} 2006 2007 func (m *TimeSeriesSelector) ProtoReflect() preflect.Message { 2008 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[13] 2009 if protoimpl.UnsafeEnabled && m != nil { 2010 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 2011 if ms.LoadMessageInfo() == nil { 2012 ms.StoreMessageInfo(mi) 2013 } 2014 return ms 2015 } 2016 return mi.MessageOf(m) 2017 } 2018 2019 func (*TimeSeriesSelector) GotenMessage() {} 2020 2021 // Deprecated, Use TimeSeriesSelector.ProtoReflect.Descriptor instead. 2022 func (*TimeSeriesSelector) Descriptor() ([]byte, []int) { 2023 return edgelq_monitoring_proto_v4_common_proto_rawDescGZIP(), []int{13} 2024 } 2025 2026 func (m *TimeSeriesSelector) Unmarshal(b []byte) error { 2027 return proto.Unmarshal(b, m) 2028 } 2029 2030 func (m *TimeSeriesSelector) Marshal() ([]byte, error) { 2031 return proto.Marshal(m) 2032 } 2033 2034 func (m *TimeSeriesSelector) MarshalJSON() ([]byte, error) { 2035 return protojson.MarshalOptions{}.Marshal(m) 2036 } 2037 2038 func (m *TimeSeriesSelector) UnmarshalJSON(data []byte) error { 2039 return protojson.Unmarshal(data, m) 2040 } 2041 2042 func (m *TimeSeriesSelector) GetMetric() *MetricSelector { 2043 if m != nil { 2044 return m.Metric 2045 } 2046 return nil 2047 } 2048 2049 func (m *TimeSeriesSelector) GetResource() *MonitoredResourceSelector { 2050 if m != nil { 2051 return m.Resource 2052 } 2053 return nil 2054 } 2055 2056 func (m *TimeSeriesSelector) SetMetric(fv *MetricSelector) { 2057 if m == nil { 2058 panic(fmt.Errorf("can't set %s on nil %s", "Metric", "TimeSeriesSelector")) 2059 } 2060 m.Metric = fv 2061 } 2062 2063 func (m *TimeSeriesSelector) SetResource(fv *MonitoredResourceSelector) { 2064 if m == nil { 2065 panic(fmt.Errorf("can't set %s on nil %s", "Resource", "TimeSeriesSelector")) 2066 } 2067 m.Resource = fv 2068 } 2069 2070 // The range of the population values. 2071 type Distribution_Range struct { 2072 state protoimpl.MessageState 2073 sizeCache protoimpl.SizeCache 2074 unknownFields protoimpl.UnknownFields 2075 // The minimum of the population values. 2076 Min float64 `protobuf:"fixed64,1,opt,name=min,proto3" json:"min,omitempty"` 2077 // The maximum of the population values. 2078 Max float64 `protobuf:"fixed64,2,opt,name=max,proto3" json:"max,omitempty"` 2079 } 2080 2081 func (m *Distribution_Range) Reset() { 2082 *m = Distribution_Range{} 2083 if protoimpl.UnsafeEnabled { 2084 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[14] 2085 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 2086 ms.StoreMessageInfo(mi) 2087 } 2088 } 2089 2090 func (m *Distribution_Range) String() string { 2091 return protoimpl.X.MessageStringOf(m) 2092 } 2093 2094 func (*Distribution_Range) ProtoMessage() {} 2095 2096 func (m *Distribution_Range) ProtoReflect() preflect.Message { 2097 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[14] 2098 if protoimpl.UnsafeEnabled && m != nil { 2099 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 2100 if ms.LoadMessageInfo() == nil { 2101 ms.StoreMessageInfo(mi) 2102 } 2103 return ms 2104 } 2105 return mi.MessageOf(m) 2106 } 2107 2108 func (*Distribution_Range) GotenMessage() {} 2109 2110 // Deprecated, Use Distribution_Range.ProtoReflect.Descriptor instead. 2111 func (*Distribution_Range) Descriptor() ([]byte, []int) { 2112 return edgelq_monitoring_proto_v4_common_proto_rawDescGZIP(), []int{2, 0} 2113 } 2114 2115 func (m *Distribution_Range) Unmarshal(b []byte) error { 2116 return proto.Unmarshal(b, m) 2117 } 2118 2119 func (m *Distribution_Range) Marshal() ([]byte, error) { 2120 return proto.Marshal(m) 2121 } 2122 2123 func (m *Distribution_Range) MarshalJSON() ([]byte, error) { 2124 return protojson.MarshalOptions{}.Marshal(m) 2125 } 2126 2127 func (m *Distribution_Range) UnmarshalJSON(data []byte) error { 2128 return protojson.Unmarshal(data, m) 2129 } 2130 2131 func (m *Distribution_Range) GetMin() float64 { 2132 if m != nil { 2133 return m.Min 2134 } 2135 return float64(0) 2136 } 2137 2138 func (m *Distribution_Range) GetMax() float64 { 2139 if m != nil { 2140 return m.Max 2141 } 2142 return float64(0) 2143 } 2144 2145 func (m *Distribution_Range) SetMin(fv float64) { 2146 if m == nil { 2147 panic(fmt.Errorf("can't set %s on nil %s", "Min", "Distribution_Range")) 2148 } 2149 m.Min = fv 2150 } 2151 2152 func (m *Distribution_Range) SetMax(fv float64) { 2153 if m == nil { 2154 panic(fmt.Errorf("can't set %s on nil %s", "Max", "Distribution_Range")) 2155 } 2156 m.Max = fv 2157 } 2158 2159 // A Distribution may optionally contain a histogram of the values in the 2160 // population. The histogram is given in `bucket_counts` as counts of values 2161 // that fall into one of a sequence of non-overlapping buckets. The sequence 2162 // of buckets is described by `bucket_options`. 2163 // 2164 // A bucket specifies an inclusive lower bound and exclusive upper bound for 2165 // the values that are counted for that bucket. The upper bound of a bucket 2166 // is strictly greater than the lower bound. 2167 // 2168 // The sequence of N buckets for a Distribution consists of an underflow 2169 // bucket (number 0), zero or more finite buckets (number 1 through N - 2) and 2170 // an overflow bucket (number N - 1). The buckets are contiguous: the lower 2171 // bound of bucket i (i > 0) is the same as the upper bound of bucket i - 1. 2172 // The buckets span the whole range of finite values: lower bound of the 2173 // underflow bucket is -infinity and the upper bound of the overflow bucket is 2174 // +infinity. The finite buckets are so-called because both bounds are 2175 // finite. 2176 // 2177 // `BucketOptions` describes bucket boundaries in one of three ways. Two 2178 // describe the boundaries by giving parameters for a formula to generate 2179 // boundaries and one gives the bucket boundaries explicitly. 2180 // 2181 // If `bucket_boundaries` is not given, then no `bucket_counts` may be given. 2182 type Distribution_BucketOptions struct { 2183 state protoimpl.MessageState 2184 sizeCache protoimpl.SizeCache 2185 unknownFields protoimpl.UnknownFields 2186 // Exactly one of these three fields must be set. 2187 // 2188 // Types that are valid to be assigned to Options: 2189 // *Distribution_BucketOptions_LinearBuckets 2190 // *Distribution_BucketOptions_ExponentialBuckets 2191 // *Distribution_BucketOptions_ExplicitBuckets 2192 // *Distribution_BucketOptions_DynamicBuckets 2193 Options isDistribution_BucketOptions_Options `protobuf_oneof:"options"` 2194 } 2195 2196 func (m *Distribution_BucketOptions) Reset() { 2197 *m = Distribution_BucketOptions{} 2198 if protoimpl.UnsafeEnabled { 2199 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[15] 2200 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 2201 ms.StoreMessageInfo(mi) 2202 } 2203 } 2204 2205 func (m *Distribution_BucketOptions) String() string { 2206 return protoimpl.X.MessageStringOf(m) 2207 } 2208 2209 func (*Distribution_BucketOptions) ProtoMessage() {} 2210 2211 func (m *Distribution_BucketOptions) ProtoReflect() preflect.Message { 2212 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[15] 2213 if protoimpl.UnsafeEnabled && m != nil { 2214 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 2215 if ms.LoadMessageInfo() == nil { 2216 ms.StoreMessageInfo(mi) 2217 } 2218 return ms 2219 } 2220 return mi.MessageOf(m) 2221 } 2222 2223 func (*Distribution_BucketOptions) GotenMessage() {} 2224 2225 // Deprecated, Use Distribution_BucketOptions.ProtoReflect.Descriptor instead. 2226 func (*Distribution_BucketOptions) Descriptor() ([]byte, []int) { 2227 return edgelq_monitoring_proto_v4_common_proto_rawDescGZIP(), []int{2, 1} 2228 } 2229 2230 func (m *Distribution_BucketOptions) Unmarshal(b []byte) error { 2231 return proto.Unmarshal(b, m) 2232 } 2233 2234 func (m *Distribution_BucketOptions) Marshal() ([]byte, error) { 2235 return proto.Marshal(m) 2236 } 2237 2238 func (m *Distribution_BucketOptions) MarshalJSON() ([]byte, error) { 2239 return protojson.MarshalOptions{}.Marshal(m) 2240 } 2241 2242 func (m *Distribution_BucketOptions) UnmarshalJSON(data []byte) error { 2243 return protojson.Unmarshal(data, m) 2244 } 2245 2246 type isDistribution_BucketOptions_Options interface { 2247 isDistribution_BucketOptions_Options() 2248 } 2249 2250 type Distribution_BucketOptions_LinearBuckets struct { 2251 // The linear bucket. 2252 LinearBuckets *Distribution_BucketOptions_Linear `protobuf:"bytes,1,opt,name=linear_buckets,json=linearBuckets,proto3,oneof"` 2253 } 2254 type Distribution_BucketOptions_ExponentialBuckets struct { 2255 // The exponential buckets. 2256 ExponentialBuckets *Distribution_BucketOptions_Exponential `protobuf:"bytes,2,opt,name=exponential_buckets,json=exponentialBuckets,proto3,oneof"` 2257 } 2258 type Distribution_BucketOptions_ExplicitBuckets struct { 2259 // The explicit buckets. 2260 ExplicitBuckets *Distribution_BucketOptions_Explicit `protobuf:"bytes,3,opt,name=explicit_buckets,json=explicitBuckets,proto3,oneof"` 2261 } 2262 type Distribution_BucketOptions_DynamicBuckets struct { 2263 // TDigest dynamic bucketing 2264 DynamicBuckets *Distribution_BucketOptions_Dynamic `protobuf:"bytes,9,opt,name=dynamic_buckets,json=dynamicBuckets,proto3,oneof"` 2265 } 2266 2267 func (*Distribution_BucketOptions_LinearBuckets) isDistribution_BucketOptions_Options() {} 2268 func (*Distribution_BucketOptions_ExponentialBuckets) isDistribution_BucketOptions_Options() {} 2269 func (*Distribution_BucketOptions_ExplicitBuckets) isDistribution_BucketOptions_Options() {} 2270 func (*Distribution_BucketOptions_DynamicBuckets) isDistribution_BucketOptions_Options() {} 2271 func (m *Distribution_BucketOptions) GetOptions() isDistribution_BucketOptions_Options { 2272 if m != nil { 2273 return m.Options 2274 } 2275 return nil 2276 } 2277 func (m *Distribution_BucketOptions) GetLinearBuckets() *Distribution_BucketOptions_Linear { 2278 if x, ok := m.GetOptions().(*Distribution_BucketOptions_LinearBuckets); ok { 2279 return x.LinearBuckets 2280 } 2281 return nil 2282 } 2283 func (m *Distribution_BucketOptions) GetExponentialBuckets() *Distribution_BucketOptions_Exponential { 2284 if x, ok := m.GetOptions().(*Distribution_BucketOptions_ExponentialBuckets); ok { 2285 return x.ExponentialBuckets 2286 } 2287 return nil 2288 } 2289 func (m *Distribution_BucketOptions) GetExplicitBuckets() *Distribution_BucketOptions_Explicit { 2290 if x, ok := m.GetOptions().(*Distribution_BucketOptions_ExplicitBuckets); ok { 2291 return x.ExplicitBuckets 2292 } 2293 return nil 2294 } 2295 func (m *Distribution_BucketOptions) GetDynamicBuckets() *Distribution_BucketOptions_Dynamic { 2296 if x, ok := m.GetOptions().(*Distribution_BucketOptions_DynamicBuckets); ok { 2297 return x.DynamicBuckets 2298 } 2299 return nil 2300 } 2301 func (m *Distribution_BucketOptions) SetOptions(ofv isDistribution_BucketOptions_Options) { 2302 if m == nil { 2303 panic(fmt.Errorf("can't set %s on nil %s", "isDistribution_BucketOptions_Options", "Distribution_BucketOptions")) 2304 } 2305 m.Options = ofv 2306 } 2307 func (m *Distribution_BucketOptions) SetLinearBuckets(fv *Distribution_BucketOptions_Linear) { 2308 m.SetOptions(&Distribution_BucketOptions_LinearBuckets{LinearBuckets: fv}) 2309 } 2310 func (m *Distribution_BucketOptions) SetExponentialBuckets(fv *Distribution_BucketOptions_Exponential) { 2311 m.SetOptions(&Distribution_BucketOptions_ExponentialBuckets{ExponentialBuckets: fv}) 2312 } 2313 func (m *Distribution_BucketOptions) SetExplicitBuckets(fv *Distribution_BucketOptions_Explicit) { 2314 m.SetOptions(&Distribution_BucketOptions_ExplicitBuckets{ExplicitBuckets: fv}) 2315 } 2316 func (m *Distribution_BucketOptions) SetDynamicBuckets(fv *Distribution_BucketOptions_Dynamic) { 2317 m.SetOptions(&Distribution_BucketOptions_DynamicBuckets{DynamicBuckets: fv}) 2318 } 2319 2320 // Specify a sequence of buckets that all have the same width (except 2321 // overflow and underflow). Each bucket represents a constant absolute 2322 // uncertainty on the specific value in the bucket. 2323 // 2324 // Defines `num_finite_buckets + 2` (= N) buckets with these boundaries for 2325 // bucket `i`: 2326 // 2327 // Upper bound (0 <= i < N-1): offset + (width * i). 2328 // Lower bound (1 <= i < N): offset + (width * (i - 1)). 2329 type Distribution_BucketOptions_Linear struct { 2330 state protoimpl.MessageState 2331 sizeCache protoimpl.SizeCache 2332 unknownFields protoimpl.UnknownFields 2333 // Must be greater than 0. 2334 NumFiniteBuckets int32 `protobuf:"varint,1,opt,name=num_finite_buckets,json=numFiniteBuckets,proto3" json:"num_finite_buckets,omitempty"` 2335 // Must be greater than 0. 2336 Width float64 `protobuf:"fixed64,2,opt,name=width,proto3" json:"width,omitempty"` 2337 // Lower bound of the first bucket. 2338 Offset float64 `protobuf:"fixed64,3,opt,name=offset,proto3" json:"offset,omitempty"` 2339 } 2340 2341 func (m *Distribution_BucketOptions_Linear) Reset() { 2342 *m = Distribution_BucketOptions_Linear{} 2343 if protoimpl.UnsafeEnabled { 2344 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[16] 2345 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 2346 ms.StoreMessageInfo(mi) 2347 } 2348 } 2349 2350 func (m *Distribution_BucketOptions_Linear) String() string { 2351 return protoimpl.X.MessageStringOf(m) 2352 } 2353 2354 func (*Distribution_BucketOptions_Linear) ProtoMessage() {} 2355 2356 func (m *Distribution_BucketOptions_Linear) ProtoReflect() preflect.Message { 2357 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[16] 2358 if protoimpl.UnsafeEnabled && m != nil { 2359 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 2360 if ms.LoadMessageInfo() == nil { 2361 ms.StoreMessageInfo(mi) 2362 } 2363 return ms 2364 } 2365 return mi.MessageOf(m) 2366 } 2367 2368 func (*Distribution_BucketOptions_Linear) GotenMessage() {} 2369 2370 // Deprecated, Use Distribution_BucketOptions_Linear.ProtoReflect.Descriptor instead. 2371 func (*Distribution_BucketOptions_Linear) Descriptor() ([]byte, []int) { 2372 return edgelq_monitoring_proto_v4_common_proto_rawDescGZIP(), []int{2, 1, 0} 2373 } 2374 2375 func (m *Distribution_BucketOptions_Linear) Unmarshal(b []byte) error { 2376 return proto.Unmarshal(b, m) 2377 } 2378 2379 func (m *Distribution_BucketOptions_Linear) Marshal() ([]byte, error) { 2380 return proto.Marshal(m) 2381 } 2382 2383 func (m *Distribution_BucketOptions_Linear) MarshalJSON() ([]byte, error) { 2384 return protojson.MarshalOptions{}.Marshal(m) 2385 } 2386 2387 func (m *Distribution_BucketOptions_Linear) UnmarshalJSON(data []byte) error { 2388 return protojson.Unmarshal(data, m) 2389 } 2390 2391 func (m *Distribution_BucketOptions_Linear) GetNumFiniteBuckets() int32 { 2392 if m != nil { 2393 return m.NumFiniteBuckets 2394 } 2395 return int32(0) 2396 } 2397 2398 func (m *Distribution_BucketOptions_Linear) GetWidth() float64 { 2399 if m != nil { 2400 return m.Width 2401 } 2402 return float64(0) 2403 } 2404 2405 func (m *Distribution_BucketOptions_Linear) GetOffset() float64 { 2406 if m != nil { 2407 return m.Offset 2408 } 2409 return float64(0) 2410 } 2411 2412 func (m *Distribution_BucketOptions_Linear) SetNumFiniteBuckets(fv int32) { 2413 if m == nil { 2414 panic(fmt.Errorf("can't set %s on nil %s", "NumFiniteBuckets", "Distribution_BucketOptions_Linear")) 2415 } 2416 m.NumFiniteBuckets = fv 2417 } 2418 2419 func (m *Distribution_BucketOptions_Linear) SetWidth(fv float64) { 2420 if m == nil { 2421 panic(fmt.Errorf("can't set %s on nil %s", "Width", "Distribution_BucketOptions_Linear")) 2422 } 2423 m.Width = fv 2424 } 2425 2426 func (m *Distribution_BucketOptions_Linear) SetOffset(fv float64) { 2427 if m == nil { 2428 panic(fmt.Errorf("can't set %s on nil %s", "Offset", "Distribution_BucketOptions_Linear")) 2429 } 2430 m.Offset = fv 2431 } 2432 2433 // Specify a sequence of buckets that have a width that is proportional to 2434 // the value of the lower bound. Each bucket represents a constant relative 2435 // uncertainty on a specific value in the bucket. 2436 // 2437 // Defines `num_finite_buckets + 2` (= N) buckets with these boundaries for 2438 // bucket i: 2439 // 2440 // Upper bound (0 <= i < N-1): scale * (growth_factor ^ i). 2441 // Lower bound (1 <= i < N): scale * (growth_factor ^ (i - 1)). 2442 type Distribution_BucketOptions_Exponential struct { 2443 state protoimpl.MessageState 2444 sizeCache protoimpl.SizeCache 2445 unknownFields protoimpl.UnknownFields 2446 // Must be greater than 0. 2447 NumFiniteBuckets int32 `protobuf:"varint,1,opt,name=num_finite_buckets,json=numFiniteBuckets,proto3" json:"num_finite_buckets,omitempty"` 2448 // Must be greater than 1. 2449 GrowthFactor float64 `protobuf:"fixed64,2,opt,name=growth_factor,json=growthFactor,proto3" json:"growth_factor,omitempty"` 2450 // Must be greater than 0. 2451 Scale float64 `protobuf:"fixed64,3,opt,name=scale,proto3" json:"scale,omitempty"` 2452 } 2453 2454 func (m *Distribution_BucketOptions_Exponential) Reset() { 2455 *m = Distribution_BucketOptions_Exponential{} 2456 if protoimpl.UnsafeEnabled { 2457 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[17] 2458 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 2459 ms.StoreMessageInfo(mi) 2460 } 2461 } 2462 2463 func (m *Distribution_BucketOptions_Exponential) String() string { 2464 return protoimpl.X.MessageStringOf(m) 2465 } 2466 2467 func (*Distribution_BucketOptions_Exponential) ProtoMessage() {} 2468 2469 func (m *Distribution_BucketOptions_Exponential) ProtoReflect() preflect.Message { 2470 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[17] 2471 if protoimpl.UnsafeEnabled && m != nil { 2472 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 2473 if ms.LoadMessageInfo() == nil { 2474 ms.StoreMessageInfo(mi) 2475 } 2476 return ms 2477 } 2478 return mi.MessageOf(m) 2479 } 2480 2481 func (*Distribution_BucketOptions_Exponential) GotenMessage() {} 2482 2483 // Deprecated, Use Distribution_BucketOptions_Exponential.ProtoReflect.Descriptor instead. 2484 func (*Distribution_BucketOptions_Exponential) Descriptor() ([]byte, []int) { 2485 return edgelq_monitoring_proto_v4_common_proto_rawDescGZIP(), []int{2, 1, 1} 2486 } 2487 2488 func (m *Distribution_BucketOptions_Exponential) Unmarshal(b []byte) error { 2489 return proto.Unmarshal(b, m) 2490 } 2491 2492 func (m *Distribution_BucketOptions_Exponential) Marshal() ([]byte, error) { 2493 return proto.Marshal(m) 2494 } 2495 2496 func (m *Distribution_BucketOptions_Exponential) MarshalJSON() ([]byte, error) { 2497 return protojson.MarshalOptions{}.Marshal(m) 2498 } 2499 2500 func (m *Distribution_BucketOptions_Exponential) UnmarshalJSON(data []byte) error { 2501 return protojson.Unmarshal(data, m) 2502 } 2503 2504 func (m *Distribution_BucketOptions_Exponential) GetNumFiniteBuckets() int32 { 2505 if m != nil { 2506 return m.NumFiniteBuckets 2507 } 2508 return int32(0) 2509 } 2510 2511 func (m *Distribution_BucketOptions_Exponential) GetGrowthFactor() float64 { 2512 if m != nil { 2513 return m.GrowthFactor 2514 } 2515 return float64(0) 2516 } 2517 2518 func (m *Distribution_BucketOptions_Exponential) GetScale() float64 { 2519 if m != nil { 2520 return m.Scale 2521 } 2522 return float64(0) 2523 } 2524 2525 func (m *Distribution_BucketOptions_Exponential) SetNumFiniteBuckets(fv int32) { 2526 if m == nil { 2527 panic(fmt.Errorf("can't set %s on nil %s", "NumFiniteBuckets", "Distribution_BucketOptions_Exponential")) 2528 } 2529 m.NumFiniteBuckets = fv 2530 } 2531 2532 func (m *Distribution_BucketOptions_Exponential) SetGrowthFactor(fv float64) { 2533 if m == nil { 2534 panic(fmt.Errorf("can't set %s on nil %s", "GrowthFactor", "Distribution_BucketOptions_Exponential")) 2535 } 2536 m.GrowthFactor = fv 2537 } 2538 2539 func (m *Distribution_BucketOptions_Exponential) SetScale(fv float64) { 2540 if m == nil { 2541 panic(fmt.Errorf("can't set %s on nil %s", "Scale", "Distribution_BucketOptions_Exponential")) 2542 } 2543 m.Scale = fv 2544 } 2545 2546 // A set of buckets with arbitrary widths. 2547 // 2548 // Defines `size(bounds) + 1` (= N) buckets with these boundaries for 2549 // bucket i: 2550 // 2551 // Upper bound (0 <= i < N-1): bounds[i] 2552 // Lower bound (1 <= i < N); bounds[i - 1] 2553 // 2554 // There must be at least one element in `bounds`. If `bounds` has only one 2555 // element, there are no finite buckets, and that single element is the 2556 // common boundary of the overflow and underflow buckets. 2557 type Distribution_BucketOptions_Explicit struct { 2558 state protoimpl.MessageState 2559 sizeCache protoimpl.SizeCache 2560 unknownFields protoimpl.UnknownFields 2561 // The values must be monotonically increasing. 2562 Bounds []float64 `protobuf:"fixed64,1,rep,packed,name=bounds,proto3" json:"bounds,omitempty"` 2563 } 2564 2565 func (m *Distribution_BucketOptions_Explicit) Reset() { 2566 *m = Distribution_BucketOptions_Explicit{} 2567 if protoimpl.UnsafeEnabled { 2568 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[18] 2569 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 2570 ms.StoreMessageInfo(mi) 2571 } 2572 } 2573 2574 func (m *Distribution_BucketOptions_Explicit) String() string { 2575 return protoimpl.X.MessageStringOf(m) 2576 } 2577 2578 func (*Distribution_BucketOptions_Explicit) ProtoMessage() {} 2579 2580 func (m *Distribution_BucketOptions_Explicit) ProtoReflect() preflect.Message { 2581 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[18] 2582 if protoimpl.UnsafeEnabled && m != nil { 2583 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 2584 if ms.LoadMessageInfo() == nil { 2585 ms.StoreMessageInfo(mi) 2586 } 2587 return ms 2588 } 2589 return mi.MessageOf(m) 2590 } 2591 2592 func (*Distribution_BucketOptions_Explicit) GotenMessage() {} 2593 2594 // Deprecated, Use Distribution_BucketOptions_Explicit.ProtoReflect.Descriptor instead. 2595 func (*Distribution_BucketOptions_Explicit) Descriptor() ([]byte, []int) { 2596 return edgelq_monitoring_proto_v4_common_proto_rawDescGZIP(), []int{2, 1, 2} 2597 } 2598 2599 func (m *Distribution_BucketOptions_Explicit) Unmarshal(b []byte) error { 2600 return proto.Unmarshal(b, m) 2601 } 2602 2603 func (m *Distribution_BucketOptions_Explicit) Marshal() ([]byte, error) { 2604 return proto.Marshal(m) 2605 } 2606 2607 func (m *Distribution_BucketOptions_Explicit) MarshalJSON() ([]byte, error) { 2608 return protojson.MarshalOptions{}.Marshal(m) 2609 } 2610 2611 func (m *Distribution_BucketOptions_Explicit) UnmarshalJSON(data []byte) error { 2612 return protojson.Unmarshal(data, m) 2613 } 2614 2615 func (m *Distribution_BucketOptions_Explicit) GetBounds() []float64 { 2616 if m != nil { 2617 return m.Bounds 2618 } 2619 return nil 2620 } 2621 2622 func (m *Distribution_BucketOptions_Explicit) SetBounds(fv []float64) { 2623 if m == nil { 2624 panic(fmt.Errorf("can't set %s on nil %s", "Bounds", "Distribution_BucketOptions_Explicit")) 2625 } 2626 m.Bounds = fv 2627 } 2628 2629 // Dynamic buckets centroid based. TDigest implementation. 2630 type Distribution_BucketOptions_Dynamic struct { 2631 state protoimpl.MessageState 2632 sizeCache protoimpl.SizeCache 2633 unknownFields protoimpl.UnknownFields 2634 // TDigest compression rate 2635 Compression float64 `protobuf:"fixed64,1,opt,name=compression,proto3" json:"compression,omitempty"` 2636 // Centroid means. Must be the same length as bucket counts. 2637 // Each mean, count represents a weighed centroid. 2638 Means []float64 `protobuf:"fixed64,2,rep,packed,name=means,proto3" json:"means,omitempty"` 2639 } 2640 2641 func (m *Distribution_BucketOptions_Dynamic) Reset() { 2642 *m = Distribution_BucketOptions_Dynamic{} 2643 if protoimpl.UnsafeEnabled { 2644 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[19] 2645 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 2646 ms.StoreMessageInfo(mi) 2647 } 2648 } 2649 2650 func (m *Distribution_BucketOptions_Dynamic) String() string { 2651 return protoimpl.X.MessageStringOf(m) 2652 } 2653 2654 func (*Distribution_BucketOptions_Dynamic) ProtoMessage() {} 2655 2656 func (m *Distribution_BucketOptions_Dynamic) ProtoReflect() preflect.Message { 2657 mi := &edgelq_monitoring_proto_v4_common_proto_msgTypes[19] 2658 if protoimpl.UnsafeEnabled && m != nil { 2659 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 2660 if ms.LoadMessageInfo() == nil { 2661 ms.StoreMessageInfo(mi) 2662 } 2663 return ms 2664 } 2665 return mi.MessageOf(m) 2666 } 2667 2668 func (*Distribution_BucketOptions_Dynamic) GotenMessage() {} 2669 2670 // Deprecated, Use Distribution_BucketOptions_Dynamic.ProtoReflect.Descriptor instead. 2671 func (*Distribution_BucketOptions_Dynamic) Descriptor() ([]byte, []int) { 2672 return edgelq_monitoring_proto_v4_common_proto_rawDescGZIP(), []int{2, 1, 3} 2673 } 2674 2675 func (m *Distribution_BucketOptions_Dynamic) Unmarshal(b []byte) error { 2676 return proto.Unmarshal(b, m) 2677 } 2678 2679 func (m *Distribution_BucketOptions_Dynamic) Marshal() ([]byte, error) { 2680 return proto.Marshal(m) 2681 } 2682 2683 func (m *Distribution_BucketOptions_Dynamic) MarshalJSON() ([]byte, error) { 2684 return protojson.MarshalOptions{}.Marshal(m) 2685 } 2686 2687 func (m *Distribution_BucketOptions_Dynamic) UnmarshalJSON(data []byte) error { 2688 return protojson.Unmarshal(data, m) 2689 } 2690 2691 func (m *Distribution_BucketOptions_Dynamic) GetCompression() float64 { 2692 if m != nil { 2693 return m.Compression 2694 } 2695 return float64(0) 2696 } 2697 2698 func (m *Distribution_BucketOptions_Dynamic) GetMeans() []float64 { 2699 if m != nil { 2700 return m.Means 2701 } 2702 return nil 2703 } 2704 2705 func (m *Distribution_BucketOptions_Dynamic) SetCompression(fv float64) { 2706 if m == nil { 2707 panic(fmt.Errorf("can't set %s on nil %s", "Compression", "Distribution_BucketOptions_Dynamic")) 2708 } 2709 m.Compression = fv 2710 } 2711 2712 func (m *Distribution_BucketOptions_Dynamic) SetMeans(fv []float64) { 2713 if m == nil { 2714 panic(fmt.Errorf("can't set %s on nil %s", "Means", "Distribution_BucketOptions_Dynamic")) 2715 } 2716 m.Means = fv 2717 } 2718 2719 var edgelq_monitoring_proto_v4_common_proto preflect.FileDescriptor 2720 2721 var edgelq_monitoring_proto_v4_common_proto_rawDesc = []byte{ 2722 0x0a, 0x27, 0x65, 0x64, 0x67, 0x65, 0x6c, 0x71, 0x2f, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 2723 0x69, 0x6e, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x76, 0x34, 0x2f, 0x63, 0x6f, 0x6d, 2724 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x11, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 2725 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x34, 0x1a, 0x1d, 0x67, 0x6f, 2726 0x74, 0x65, 0x6e, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 2727 0x67, 0x6f, 0x74, 0x65, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x74, 2728 0x65, 0x6e, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x76, 2729 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 2730 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 2731 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 2732 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 2733 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xc1, 2734 0x02, 0x0a, 0x0f, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 2735 0x6f, 0x72, 0x12, 0x39, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 2736 0x27, 0xca, 0xc6, 0x27, 0x23, 0x2a, 0x21, 0x52, 0x1f, 0x42, 0x1d, 0x5e, 0x5b, 0x5f, 0x41, 0x2d, 2737 0x5a, 0x61, 0x2d, 0x7a, 0x5d, 0x5b, 0x5f, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 2738 0x5d, 0x7b, 0x30, 0x2c, 0x33, 0x31, 0x7d, 0x24, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x55, 0x0a, 2739 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 2740 0x0e, 0x32, 0x2c, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 2741 0x6e, 0x67, 0x2e, 0x76, 0x34, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x44, 0x65, 0x73, 0x63, 0x72, 2742 0x69, 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, 0x65, 0x42, 2743 0x08, 0xca, 0xc6, 0x27, 0x04, 0x3a, 0x02, 0x0a, 0x00, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 2744 0x54, 0x79, 0x70, 0x65, 0x12, 0x2d, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 2745 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0b, 0xca, 0xc6, 0x27, 0x07, 0x2a, 2746 0x05, 0x22, 0x03, 0x08, 0x80, 0x08, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 2747 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x76, 2748 0x61, 0x6c, 0x75, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x64, 0x65, 0x66, 0x61, 2749 0x75, 0x6c, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x61, 2750 0x62, 0x6c, 0x65, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x64, 0x69, 0x73, 0x61, 2751 0x62, 0x6c, 0x65, 0x64, 0x22, 0x2c, 0x0a, 0x09, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, 2752 0x65, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x08, 0x0a, 2753 0x04, 0x42, 0x4f, 0x4f, 0x4c, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x49, 0x4e, 0x54, 0x36, 0x34, 2754 0x10, 0x02, 0x22, 0x3c, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x4b, 0x65, 0x79, 0x53, 0x65, 2755 0x74, 0x12, 0x27, 0x0a, 0x0a, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x18, 2756 0x01, 0x20, 0x03, 0x28, 0x09, 0x42, 0x08, 0xca, 0xc6, 0x27, 0x04, 0x42, 0x02, 0x18, 0x01, 0x52, 2757 0x09, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x4b, 0x65, 0x79, 0x73, 0x4a, 0x04, 0x08, 0x02, 0x10, 0x03, 2758 0x22, 0xcc, 0x08, 0x0a, 0x0c, 0x44, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 2759 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 2760 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x65, 0x61, 0x6e, 0x18, 2761 0x02, 0x20, 0x01, 0x28, 0x01, 0x52, 0x04, 0x6d, 0x65, 0x61, 0x6e, 0x12, 0x37, 0x0a, 0x18, 0x73, 2762 0x75, 0x6d, 0x5f, 0x6f, 0x66, 0x5f, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x64, 0x5f, 0x64, 0x65, 2763 0x76, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x52, 0x15, 0x73, 2764 0x75, 0x6d, 0x4f, 0x66, 0x53, 0x71, 0x75, 0x61, 0x72, 0x65, 0x64, 0x44, 0x65, 0x76, 0x69, 0x61, 2765 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3b, 0x0a, 0x05, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x04, 0x20, 2766 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 2767 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x34, 0x2e, 0x44, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 2768 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x05, 0x72, 0x61, 0x6e, 0x67, 2769 0x65, 0x12, 0x54, 0x0a, 0x0e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x6f, 0x70, 0x74, 0x69, 2770 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 2771 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x34, 0x2e, 0x44, 0x69, 2772 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 2773 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0d, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 2774 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x62, 0x75, 0x63, 0x6b, 0x65, 2775 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x03, 0x52, 0x0c, 2776 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x1a, 0x2b, 0x0a, 0x05, 2777 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 2778 0x28, 0x01, 0x52, 0x03, 0x6d, 0x69, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x61, 0x78, 0x18, 0x02, 2779 0x20, 0x01, 0x28, 0x01, 0x52, 0x03, 0x6d, 0x61, 0x78, 0x1a, 0xf3, 0x05, 0x0a, 0x0d, 0x42, 0x75, 2780 0x63, 0x6b, 0x65, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x5d, 0x0a, 0x0e, 0x6c, 2781 0x69, 0x6e, 0x65, 0x61, 0x72, 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18, 0x01, 0x20, 2782 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 2783 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x34, 0x2e, 0x44, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 2784 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 2785 0x6e, 0x73, 0x2e, 0x4c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x48, 0x00, 0x52, 0x0d, 0x6c, 0x69, 0x6e, 2786 0x65, 0x61, 0x72, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x6c, 0x0a, 0x13, 0x65, 0x78, 2787 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 2788 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 2789 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x34, 0x2e, 0x44, 0x69, 0x73, 0x74, 2790 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x4f, 2791 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x69, 2792 0x61, 0x6c, 0x48, 0x00, 0x52, 0x12, 0x65, 0x78, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x69, 0x61, 2793 0x6c, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x63, 0x0a, 0x10, 0x65, 0x78, 0x70, 0x6c, 2794 0x69, 0x63, 0x69, 0x74, 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 2795 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 2796 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x34, 0x2e, 0x44, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 2797 0x69, 0x6f, 0x6e, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 2798 0x73, 0x2e, 0x45, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x48, 0x00, 0x52, 0x0f, 0x65, 0x78, 2799 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x60, 0x0a, 2800 0x0f, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 2801 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 2802 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x34, 0x2e, 0x44, 0x69, 0x73, 0x74, 0x72, 2803 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x4f, 0x70, 2804 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x48, 0x00, 0x52, 2805 0x0e, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x1a, 2806 0x64, 0x0a, 0x06, 0x4c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x12, 0x2c, 0x0a, 0x12, 0x6e, 0x75, 0x6d, 2807 0x5f, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x65, 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18, 2808 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x6e, 0x75, 0x6d, 0x46, 0x69, 0x6e, 0x69, 0x74, 0x65, 2809 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 2810 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x52, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x12, 0x16, 0x0a, 2811 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x52, 0x06, 0x6f, 2812 0x66, 0x66, 0x73, 0x65, 0x74, 0x1a, 0x76, 0x0a, 0x0b, 0x45, 0x78, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 2813 0x74, 0x69, 0x61, 0x6c, 0x12, 0x2c, 0x0a, 0x12, 0x6e, 0x75, 0x6d, 0x5f, 0x66, 0x69, 0x6e, 0x69, 2814 0x74, 0x65, 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 2815 0x52, 0x10, 0x6e, 0x75, 0x6d, 0x46, 0x69, 0x6e, 0x69, 0x74, 0x65, 0x42, 0x75, 0x63, 0x6b, 0x65, 2816 0x74, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x67, 0x72, 0x6f, 0x77, 0x74, 0x68, 0x5f, 0x66, 0x61, 0x63, 2817 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0c, 0x67, 0x72, 0x6f, 0x77, 0x74, 2818 0x68, 0x46, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x61, 0x6c, 0x65, 2819 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x52, 0x05, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x1a, 0x22, 0x0a, 2820 0x08, 0x45, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x6f, 0x75, 2821 0x6e, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x01, 0x52, 0x06, 0x62, 0x6f, 0x75, 0x6e, 0x64, 2822 0x73, 0x1a, 0x41, 0x0a, 0x07, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x12, 0x20, 0x0a, 0x0b, 2823 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 2824 0x01, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x14, 2825 0x0a, 0x05, 0x6d, 0x65, 0x61, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x01, 0x52, 0x05, 0x6d, 2826 0x65, 0x61, 0x6e, 0x73, 0x42, 0x09, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 2827 0xf5, 0x01, 0x0a, 0x0a, 0x54, 0x79, 0x70, 0x65, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1f, 2828 0x0a, 0x0a, 0x62, 0x6f, 0x6f, 0x6c, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 2829 0x28, 0x08, 0x48, 0x00, 0x52, 0x09, 0x62, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 2830 0x21, 0x0a, 0x0b, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 2831 0x20, 0x01, 0x28, 0x03, 0x48, 0x00, 0x52, 0x0a, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 2832 0x75, 0x65, 0x12, 0x23, 0x0a, 0x0c, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x5f, 0x76, 0x61, 0x6c, 2833 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x48, 0x00, 0x52, 0x0b, 0x64, 0x6f, 0x75, 0x62, 2834 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x23, 0x0a, 0x0c, 0x73, 0x74, 0x72, 0x69, 0x6e, 2835 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 2836 0x0b, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x50, 0x0a, 0x12, 2837 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x76, 0x61, 0x6c, 2838 0x75, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 2839 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x34, 0x2e, 0x44, 0x69, 0x73, 2840 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x11, 0x64, 0x69, 0x73, 2841 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x07, 2842 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x8a, 0x01, 0x0a, 0x0c, 0x54, 0x69, 0x6d, 0x65, 2843 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x3f, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 2844 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 2845 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 2846 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x08, 0xca, 0xc6, 0x27, 0x04, 0x62, 0x02, 0x08, 0x01, 2847 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x0a, 0x73, 0x74, 0x61, 2848 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 2849 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 2850 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 2851 0x54, 0x69, 0x6d, 0x65, 0x22, 0x7d, 0x0a, 0x09, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x61, 0x6e, 0x67, 2852 0x65, 0x12, 0x39, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 2853 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 2854 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 2855 0x70, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x35, 0x0a, 0x08, 2856 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 2857 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 2858 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 2859 0x69, 0x6d, 0x65, 0x22, 0xfd, 0x06, 0x0a, 0x0b, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 2860 0x69, 0x6f, 0x6e, 0x12, 0x82, 0x01, 0x0a, 0x10, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 2861 0x74, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 2862 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 2863 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x3c, 0xca, 0xc6, 0x27, 0x38, 0x5a, 2864 0x36, 0x3a, 0x00, 0x3a, 0x02, 0x08, 0x3c, 0x3a, 0x03, 0x08, 0xb4, 0x01, 0x3a, 0x03, 0x08, 0xac, 2865 0x02, 0x3a, 0x03, 0x08, 0x84, 0x07, 0x3a, 0x03, 0x08, 0x88, 0x0e, 0x3a, 0x03, 0x08, 0x90, 0x1c, 2866 0x3a, 0x03, 0x08, 0xb0, 0x54, 0x3a, 0x04, 0x08, 0xe0, 0xa8, 0x01, 0x3a, 0x04, 0x08, 0xc0, 0xd1, 2867 0x02, 0x3a, 0x04, 0x08, 0x80, 0xa3, 0x05, 0x52, 0x0f, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x6d, 0x65, 2868 0x6e, 0x74, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x54, 0x0a, 0x12, 0x70, 0x65, 0x72, 0x5f, 2869 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x65, 0x72, 0x18, 0x02, 2870 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 2871 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x34, 0x2e, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 2872 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x41, 0x6c, 0x69, 0x67, 0x6e, 0x65, 0x72, 0x52, 0x10, 0x70, 0x65, 2873 0x72, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x41, 0x6c, 0x69, 0x67, 0x6e, 0x65, 0x72, 0x12, 0x58, 2874 0x0a, 0x14, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x72, 2875 0x65, 0x64, 0x75, 0x63, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x6e, 2876 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x34, 2877 0x2e, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x65, 0x64, 2878 0x75, 0x63, 0x65, 0x72, 0x52, 0x12, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 2879 0x73, 0x52, 0x65, 0x64, 0x75, 0x63, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x0f, 0x67, 0x72, 0x6f, 0x75, 2880 0x70, 0x5f, 0x62, 0x79, 0x5f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 2881 0x09, 0x52, 0x0d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x42, 0x79, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 2882 0x22, 0x91, 0x02, 0x0a, 0x07, 0x41, 0x6c, 0x69, 0x67, 0x6e, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x0a, 2883 0x41, 0x4c, 0x49, 0x47, 0x4e, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 2884 0x41, 0x4c, 0x49, 0x47, 0x4e, 0x5f, 0x44, 0x45, 0x4c, 0x54, 0x41, 0x10, 0x01, 0x12, 0x0e, 0x0a, 2885 0x0a, 0x41, 0x4c, 0x49, 0x47, 0x4e, 0x5f, 0x52, 0x41, 0x54, 0x45, 0x10, 0x02, 0x12, 0x0d, 0x0a, 2886 0x09, 0x41, 0x4c, 0x49, 0x47, 0x4e, 0x5f, 0x4d, 0x49, 0x4e, 0x10, 0x0a, 0x12, 0x0d, 0x0a, 0x09, 2887 0x41, 0x4c, 0x49, 0x47, 0x4e, 0x5f, 0x4d, 0x41, 0x58, 0x10, 0x0b, 0x12, 0x0e, 0x0a, 0x0a, 0x41, 2888 0x4c, 0x49, 0x47, 0x4e, 0x5f, 0x4d, 0x45, 0x41, 0x4e, 0x10, 0x0c, 0x12, 0x0f, 0x0a, 0x0b, 0x41, 2889 0x4c, 0x49, 0x47, 0x4e, 0x5f, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x10, 0x0d, 0x12, 0x0d, 0x0a, 0x09, 2890 0x41, 0x4c, 0x49, 0x47, 0x4e, 0x5f, 0x53, 0x55, 0x4d, 0x10, 0x0e, 0x12, 0x10, 0x0a, 0x0c, 0x41, 2891 0x4c, 0x49, 0x47, 0x4e, 0x5f, 0x53, 0x54, 0x44, 0x44, 0x45, 0x56, 0x10, 0x0f, 0x12, 0x17, 0x0a, 2892 0x13, 0x41, 0x4c, 0x49, 0x47, 0x4e, 0x5f, 0x50, 0x45, 0x52, 0x43, 0x45, 0x4e, 0x54, 0x49, 0x4c, 2893 0x45, 0x5f, 0x39, 0x39, 0x10, 0x12, 0x12, 0x17, 0x0a, 0x13, 0x41, 0x4c, 0x49, 0x47, 0x4e, 0x5f, 2894 0x50, 0x45, 0x52, 0x43, 0x45, 0x4e, 0x54, 0x49, 0x4c, 0x45, 0x5f, 0x39, 0x35, 0x10, 0x13, 0x12, 2895 0x17, 0x0a, 0x13, 0x41, 0x4c, 0x49, 0x47, 0x4e, 0x5f, 0x50, 0x45, 0x52, 0x43, 0x45, 0x4e, 0x54, 2896 0x49, 0x4c, 0x45, 0x5f, 0x35, 0x30, 0x10, 0x14, 0x12, 0x17, 0x0a, 0x13, 0x41, 0x4c, 0x49, 0x47, 2897 0x4e, 0x5f, 0x50, 0x45, 0x52, 0x43, 0x45, 0x4e, 0x54, 0x49, 0x4c, 0x45, 0x5f, 0x30, 0x35, 0x10, 2898 0x15, 0x12, 0x11, 0x0a, 0x0d, 0x41, 0x4c, 0x49, 0x47, 0x4e, 0x5f, 0x53, 0x55, 0x4d, 0x4d, 0x41, 2899 0x52, 0x59, 0x10, 0x2d, 0x22, 0xfc, 0x01, 0x0a, 0x07, 0x52, 0x65, 0x64, 0x75, 0x63, 0x65, 0x72, 2900 0x12, 0x0f, 0x0a, 0x0b, 0x52, 0x45, 0x44, 0x55, 0x43, 0x45, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 2901 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x52, 0x45, 0x44, 0x55, 0x43, 0x45, 0x5f, 0x4d, 0x45, 0x41, 0x4e, 2902 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x52, 0x45, 0x44, 0x55, 0x43, 0x45, 0x5f, 0x4d, 0x49, 0x4e, 2903 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x52, 0x45, 0x44, 0x55, 0x43, 0x45, 0x5f, 0x4d, 0x41, 0x58, 2904 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x52, 0x45, 0x44, 0x55, 0x43, 0x45, 0x5f, 0x53, 0x55, 0x4d, 2905 0x10, 0x04, 0x12, 0x11, 0x0a, 0x0d, 0x52, 0x45, 0x44, 0x55, 0x43, 0x45, 0x5f, 0x53, 0x54, 0x44, 2906 0x44, 0x45, 0x56, 0x10, 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x52, 0x45, 0x44, 0x55, 0x43, 0x45, 0x5f, 2907 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x10, 0x06, 0x12, 0x18, 0x0a, 0x14, 0x52, 0x45, 0x44, 0x55, 0x43, 2908 0x45, 0x5f, 0x50, 0x45, 0x52, 0x43, 0x45, 0x4e, 0x54, 0x49, 0x4c, 0x45, 0x5f, 0x39, 0x39, 0x10, 2909 0x09, 0x12, 0x18, 0x0a, 0x14, 0x52, 0x45, 0x44, 0x55, 0x43, 0x45, 0x5f, 0x50, 0x45, 0x52, 0x43, 2910 0x45, 0x4e, 0x54, 0x49, 0x4c, 0x45, 0x5f, 0x39, 0x35, 0x10, 0x0a, 0x12, 0x18, 0x0a, 0x14, 0x52, 2911 0x45, 0x44, 0x55, 0x43, 0x45, 0x5f, 0x50, 0x45, 0x52, 0x43, 0x45, 0x4e, 0x54, 0x49, 0x4c, 0x45, 2912 0x5f, 0x35, 0x30, 0x10, 0x0b, 0x12, 0x18, 0x0a, 0x14, 0x52, 0x45, 0x44, 0x55, 0x43, 0x45, 0x5f, 2913 0x50, 0x45, 0x52, 0x43, 0x45, 0x4e, 0x54, 0x49, 0x4c, 0x45, 0x5f, 0x30, 0x35, 0x10, 0x0c, 0x12, 2914 0x12, 0x0a, 0x0e, 0x52, 0x45, 0x44, 0x55, 0x43, 0x45, 0x5f, 0x53, 0x55, 0x4d, 0x4d, 0x41, 0x52, 2915 0x59, 0x10, 0x0d, 0x22, 0xa8, 0x02, 0x0a, 0x0a, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 2916 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x04, 0x76, 0x69, 0x65, 0x77, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 2917 0x42, 0x08, 0xca, 0xc6, 0x27, 0x04, 0x2a, 0x02, 0x68, 0x01, 0x52, 0x04, 0x76, 0x69, 0x65, 0x77, 2918 0x12, 0x24, 0x0a, 0x08, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 2919 0x28, 0x09, 0x42, 0x08, 0xca, 0xc6, 0x27, 0x04, 0x2a, 0x02, 0x68, 0x01, 0x52, 0x08, 0x66, 0x75, 2920 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x8f, 0x01, 0x0a, 0x10, 0x61, 0x6c, 0x69, 0x67, 0x6e, 2921 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 2922 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 2923 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x49, 0xca, 0xc6, 2924 0x27, 0x45, 0x5a, 0x43, 0x3a, 0x00, 0x3a, 0x02, 0x08, 0x3c, 0x3a, 0x03, 0x08, 0xb4, 0x01, 0x3a, 2925 0x03, 0x08, 0xac, 0x02, 0x3a, 0x03, 0x08, 0x84, 0x07, 0x3a, 0x03, 0x08, 0x88, 0x0e, 0x3a, 0x03, 2926 0x08, 0x90, 0x1c, 0x3a, 0x03, 0x08, 0xb0, 0x54, 0x3a, 0x04, 0x08, 0xe0, 0xa8, 0x01, 0x3a, 0x04, 2927 0x08, 0xc0, 0xd1, 0x02, 0x3a, 0x04, 0x08, 0x80, 0xa3, 0x05, 0x3a, 0x04, 0x08, 0x80, 0xf5, 0x24, 2928 0x3a, 0x05, 0x08, 0x80, 0xd4, 0x93, 0x01, 0x52, 0x0f, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x6d, 0x65, 2929 0x6e, 0x74, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x22, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 2930 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x42, 0x0c, 0xca, 0xc6, 0x27, 0x08, 0x12, 0x06, 0x1a, 2931 0x02, 0x08, 0x64, 0x2a, 0x00, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x20, 0x0a, 0x06, 2932 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x42, 0x08, 0xca, 0xc6, 2933 0x27, 0x04, 0x12, 0x02, 0x2a, 0x00, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 0xfc, 2934 0x01, 0x0a, 0x06, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x12, 0x40, 0x0a, 0x04, 0x74, 0x79, 0x70, 2935 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2c, 0xca, 0xc6, 0x27, 0x28, 0x2a, 0x26, 0x52, 2936 0x24, 0x42, 0x22, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5c, 2937 0x2d, 0x2e, 0x2c, 0x2b, 0x21, 0x2a, 0x28, 0x29, 0x25, 0x5c, 0x5c, 0x2f, 0x5d, 0x7b, 0x31, 0x2c, 2938 0x32, 0x35, 0x36, 0x7d, 0x24, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x4e, 0x0a, 0x06, 0x6c, 2939 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6e, 0x74, 2940 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x34, 0x2e, 2941 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 2942 0x72, 0x79, 0x42, 0x0f, 0xca, 0xc6, 0x27, 0x0b, 0x4a, 0x09, 0x22, 0x07, 0x2a, 0x05, 0x22, 0x03, 2943 0x08, 0x80, 0x08, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x72, 2944 0x65, 0x64, 0x75, 0x63, 0x65, 0x64, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x0b, 0x20, 2945 0x03, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x64, 0x75, 0x63, 0x65, 0x64, 0x4c, 0x61, 0x62, 0x65, 2946 0x6c, 0x73, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 2947 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 2948 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 2949 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xd3, 0x01, 2950 0x0a, 0x11, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75, 2951 0x72, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 2952 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x48, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 2953 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 2954 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x34, 0x2e, 0x4d, 0x6f, 0x6e, 0x69, 2955 0x74, 0x6f, 0x72, 0x65, 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x4c, 0x61, 2956 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 2957 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x64, 0x75, 0x63, 0x65, 0x64, 0x5f, 0x6c, 0x61, 0x62, 2958 0x65, 0x6c, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x64, 0x75, 0x63, 2959 0x65, 0x64, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 2960 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 2961 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 2962 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 2963 0x02, 0x38, 0x01, 0x22, 0x21, 0x0a, 0x07, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x16, 2964 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 2965 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x22, 0xda, 0x01, 0x0a, 0x19, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 2966 0x6f, 0x72, 0x65, 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x53, 0x65, 0x6c, 0x65, 2967 0x63, 0x74, 0x6f, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x01, 0x20, 2968 0x03, 0x28, 0x09, 0x52, 0x05, 0x74, 0x79, 0x70, 0x65, 0x73, 0x12, 0x50, 0x0a, 0x06, 0x6c, 0x61, 2969 0x62, 0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x6e, 0x74, 0x74, 2970 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x34, 0x2e, 0x4d, 2971 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 2972 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 2973 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x1a, 0x55, 0x0a, 0x0b, 2974 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 2975 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x30, 0x0a, 2976 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6e, 2977 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x34, 2978 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 2979 0x02, 0x38, 0x01, 0x22, 0xc4, 0x01, 0x0a, 0x0e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x65, 2980 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 2981 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x74, 0x79, 0x70, 0x65, 0x73, 0x12, 0x45, 0x0a, 0x06, 2982 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x6e, 2983 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x34, 2984 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x2e, 2985 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 2986 0x65, 0x6c, 0x73, 0x1a, 0x55, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 2987 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 2988 0x03, 0x6b, 0x65, 0x79, 0x12, 0x30, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 2989 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 2990 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x34, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x73, 0x52, 2991 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x99, 0x01, 0x0a, 0x12, 0x54, 2992 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 2993 0x72, 0x12, 0x39, 0x0a, 0x06, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 2994 0x0b, 0x32, 0x21, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 2995 0x6e, 0x67, 0x2e, 0x76, 0x34, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x65, 0x6c, 0x65, 2996 0x63, 0x74, 0x6f, 0x72, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x12, 0x48, 0x0a, 0x08, 2997 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 2998 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 2999 0x76, 0x34, 0x2e, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x52, 0x65, 0x73, 0x6f, 3000 0x75, 0x72, 0x63, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x08, 0x72, 0x65, 3001 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2a, 0x27, 0x0a, 0x0e, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 3002 0x72, 0x69, 0x65, 0x73, 0x56, 0x69, 0x65, 0x77, 0x12, 0x08, 0x0a, 0x04, 0x46, 0x55, 0x4c, 0x4c, 3003 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x48, 0x45, 0x41, 0x44, 0x45, 0x52, 0x53, 0x10, 0x01, 0x42, 3004 0x6f, 0xe8, 0xde, 0x21, 0x01, 0x0a, 0x18, 0x63, 0x6f, 0x6d, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 3005 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x70, 0x62, 0x2e, 0x76, 0x34, 0x42, 3006 0x0b, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x00, 0x5a, 0x40, 3007 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 3008 0x77, 0x61, 0x6e, 0x2f, 0x65, 0x64, 0x67, 0x65, 0x6c, 0x71, 0x2f, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 3009 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x2f, 3010 0x76, 0x34, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x3b, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 3011 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 3012 } 3013 3014 var ( 3015 edgelq_monitoring_proto_v4_common_proto_rawDescOnce sync.Once 3016 edgelq_monitoring_proto_v4_common_proto_rawDescData = edgelq_monitoring_proto_v4_common_proto_rawDesc 3017 ) 3018 3019 func edgelq_monitoring_proto_v4_common_proto_rawDescGZIP() []byte { 3020 edgelq_monitoring_proto_v4_common_proto_rawDescOnce.Do(func() { 3021 edgelq_monitoring_proto_v4_common_proto_rawDescData = protoimpl.X.CompressGZIP(edgelq_monitoring_proto_v4_common_proto_rawDescData) 3022 }) 3023 return edgelq_monitoring_proto_v4_common_proto_rawDescData 3024 } 3025 3026 var edgelq_monitoring_proto_v4_common_proto_enumTypes = make([]protoimpl.EnumInfo, 4) 3027 var edgelq_monitoring_proto_v4_common_proto_msgTypes = make([]protoimpl.MessageInfo, 24) 3028 var edgelq_monitoring_proto_v4_common_proto_goTypes = []interface{}{ 3029 (TimeSeriesView)(0), // 0: ntt.monitoring.v4.TimeSeriesView 3030 (LabelDescriptor_ValueType)(0), // 1: ntt.monitoring.v4.LabelDescriptor_ValueType 3031 (Aggregation_Aligner)(0), // 2: ntt.monitoring.v4.Aggregation_Aligner 3032 (Aggregation_Reducer)(0), // 3: ntt.monitoring.v4.Aggregation_Reducer 3033 (*LabelDescriptor)(nil), // 4: ntt.monitoring.v4.LabelDescriptor 3034 (*LabelKeySet)(nil), // 5: ntt.monitoring.v4.LabelKeySet 3035 (*Distribution)(nil), // 6: ntt.monitoring.v4.Distribution 3036 (*TypedValue)(nil), // 7: ntt.monitoring.v4.TypedValue 3037 (*TimeInterval)(nil), // 8: ntt.monitoring.v4.TimeInterval 3038 (*TimeRange)(nil), // 9: ntt.monitoring.v4.TimeRange 3039 (*Aggregation)(nil), // 10: ntt.monitoring.v4.Aggregation 3040 (*Pagination)(nil), // 11: ntt.monitoring.v4.Pagination 3041 (*Metric)(nil), // 12: ntt.monitoring.v4.Metric 3042 (*MonitoredResource)(nil), // 13: ntt.monitoring.v4.MonitoredResource 3043 (*Strings)(nil), // 14: ntt.monitoring.v4.Strings 3044 (*MonitoredResourceSelector)(nil), // 15: ntt.monitoring.v4.MonitoredResourceSelector 3045 (*MetricSelector)(nil), // 16: ntt.monitoring.v4.MetricSelector 3046 (*TimeSeriesSelector)(nil), // 17: ntt.monitoring.v4.TimeSeriesSelector 3047 (*Distribution_Range)(nil), // 18: ntt.monitoring.v4.Distribution.Range 3048 (*Distribution_BucketOptions)(nil), // 19: ntt.monitoring.v4.Distribution.BucketOptions 3049 (*Distribution_BucketOptions_Linear)(nil), // 20: ntt.monitoring.v4.Distribution.BucketOptions.Linear 3050 (*Distribution_BucketOptions_Exponential)(nil), // 21: ntt.monitoring.v4.Distribution.BucketOptions.Exponential 3051 (*Distribution_BucketOptions_Explicit)(nil), // 22: ntt.monitoring.v4.Distribution.BucketOptions.Explicit 3052 (*Distribution_BucketOptions_Dynamic)(nil), // 23: ntt.monitoring.v4.Distribution.BucketOptions.Dynamic 3053 nil, // 24: ntt.monitoring.v4.Metric.LabelsEntry 3054 nil, // 25: ntt.monitoring.v4.MonitoredResource.LabelsEntry 3055 nil, // 26: ntt.monitoring.v4.MonitoredResourceSelector.LabelsEntry 3056 nil, // 27: ntt.monitoring.v4.MetricSelector.LabelsEntry 3057 (*timestamppb.Timestamp)(nil), // 28: google.protobuf.Timestamp 3058 (*durationpb.Duration)(nil), // 29: google.protobuf.Duration 3059 } 3060 var edgelq_monitoring_proto_v4_common_proto_depIdxs = []int32{ 3061 1, // 0: ntt.monitoring.v4.LabelDescriptor.value_type:type_name -> ntt.monitoring.v4.LabelDescriptor_ValueType 3062 18, // 1: ntt.monitoring.v4.Distribution.range:type_name -> ntt.monitoring.v4.Distribution.Range 3063 19, // 2: ntt.monitoring.v4.Distribution.bucket_options:type_name -> ntt.monitoring.v4.Distribution.BucketOptions 3064 6, // 3: ntt.monitoring.v4.TypedValue.distribution_value:type_name -> ntt.monitoring.v4.Distribution 3065 28, // 4: ntt.monitoring.v4.TimeInterval.end_time:type_name -> google.protobuf.Timestamp 3066 28, // 5: ntt.monitoring.v4.TimeInterval.start_time:type_name -> google.protobuf.Timestamp 3067 28, // 6: ntt.monitoring.v4.TimeRange.start_time:type_name -> google.protobuf.Timestamp 3068 28, // 7: ntt.monitoring.v4.TimeRange.end_time:type_name -> google.protobuf.Timestamp 3069 29, // 8: ntt.monitoring.v4.Aggregation.alignment_period:type_name -> google.protobuf.Duration 3070 2, // 9: ntt.monitoring.v4.Aggregation.per_series_aligner:type_name -> ntt.monitoring.v4.Aggregation_Aligner 3071 3, // 10: ntt.monitoring.v4.Aggregation.cross_series_reducer:type_name -> ntt.monitoring.v4.Aggregation_Reducer 3072 29, // 11: ntt.monitoring.v4.Pagination.alignment_period:type_name -> google.protobuf.Duration 3073 24, // 12: ntt.monitoring.v4.Metric.labels:type_name -> ntt.monitoring.v4.Metric.LabelsEntry 3074 25, // 13: ntt.monitoring.v4.MonitoredResource.labels:type_name -> ntt.monitoring.v4.MonitoredResource.LabelsEntry 3075 26, // 14: ntt.monitoring.v4.MonitoredResourceSelector.labels:type_name -> ntt.monitoring.v4.MonitoredResourceSelector.LabelsEntry 3076 27, // 15: ntt.monitoring.v4.MetricSelector.labels:type_name -> ntt.monitoring.v4.MetricSelector.LabelsEntry 3077 16, // 16: ntt.monitoring.v4.TimeSeriesSelector.metric:type_name -> ntt.monitoring.v4.MetricSelector 3078 15, // 17: ntt.monitoring.v4.TimeSeriesSelector.resource:type_name -> ntt.monitoring.v4.MonitoredResourceSelector 3079 20, // 18: ntt.monitoring.v4.Distribution.BucketOptions.linear_buckets:type_name -> ntt.monitoring.v4.Distribution.BucketOptions.Linear 3080 21, // 19: ntt.monitoring.v4.Distribution.BucketOptions.exponential_buckets:type_name -> ntt.monitoring.v4.Distribution.BucketOptions.Exponential 3081 22, // 20: ntt.monitoring.v4.Distribution.BucketOptions.explicit_buckets:type_name -> ntt.monitoring.v4.Distribution.BucketOptions.Explicit 3082 23, // 21: ntt.monitoring.v4.Distribution.BucketOptions.dynamic_buckets:type_name -> ntt.monitoring.v4.Distribution.BucketOptions.Dynamic 3083 14, // 22: ntt.monitoring.v4.MonitoredResourceSelector.LabelsEntry.value:type_name -> ntt.monitoring.v4.Strings 3084 14, // 23: ntt.monitoring.v4.MetricSelector.LabelsEntry.value:type_name -> ntt.monitoring.v4.Strings 3085 24, // [24:24] is the sub-list for method output_type 3086 24, // [24:24] is the sub-list for method input_type 3087 24, // [24:24] is the sub-list for extension type_name 3088 24, // [24:24] is the sub-list for extension extendee 3089 0, // [0:24] is the sub-list for field type_name 3090 } 3091 3092 func init() { edgelq_monitoring_proto_v4_common_proto_init() } 3093 func edgelq_monitoring_proto_v4_common_proto_init() { 3094 if edgelq_monitoring_proto_v4_common_proto != nil { 3095 return 3096 } 3097 if !protoimpl.UnsafeEnabled { 3098 3099 edgelq_monitoring_proto_v4_common_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 3100 switch v := v.(*LabelDescriptor); i { 3101 case 0: 3102 return &v.state 3103 case 1: 3104 return &v.sizeCache 3105 case 2: 3106 return &v.unknownFields 3107 default: 3108 return nil 3109 } 3110 } 3111 edgelq_monitoring_proto_v4_common_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 3112 switch v := v.(*LabelKeySet); i { 3113 case 0: 3114 return &v.state 3115 case 1: 3116 return &v.sizeCache 3117 case 2: 3118 return &v.unknownFields 3119 default: 3120 return nil 3121 } 3122 } 3123 edgelq_monitoring_proto_v4_common_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 3124 switch v := v.(*Distribution); i { 3125 case 0: 3126 return &v.state 3127 case 1: 3128 return &v.sizeCache 3129 case 2: 3130 return &v.unknownFields 3131 default: 3132 return nil 3133 } 3134 } 3135 edgelq_monitoring_proto_v4_common_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 3136 switch v := v.(*TypedValue); i { 3137 case 0: 3138 return &v.state 3139 case 1: 3140 return &v.sizeCache 3141 case 2: 3142 return &v.unknownFields 3143 default: 3144 return nil 3145 } 3146 } 3147 edgelq_monitoring_proto_v4_common_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { 3148 switch v := v.(*TimeInterval); i { 3149 case 0: 3150 return &v.state 3151 case 1: 3152 return &v.sizeCache 3153 case 2: 3154 return &v.unknownFields 3155 default: 3156 return nil 3157 } 3158 } 3159 edgelq_monitoring_proto_v4_common_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { 3160 switch v := v.(*TimeRange); i { 3161 case 0: 3162 return &v.state 3163 case 1: 3164 return &v.sizeCache 3165 case 2: 3166 return &v.unknownFields 3167 default: 3168 return nil 3169 } 3170 } 3171 edgelq_monitoring_proto_v4_common_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { 3172 switch v := v.(*Aggregation); i { 3173 case 0: 3174 return &v.state 3175 case 1: 3176 return &v.sizeCache 3177 case 2: 3178 return &v.unknownFields 3179 default: 3180 return nil 3181 } 3182 } 3183 edgelq_monitoring_proto_v4_common_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { 3184 switch v := v.(*Pagination); i { 3185 case 0: 3186 return &v.state 3187 case 1: 3188 return &v.sizeCache 3189 case 2: 3190 return &v.unknownFields 3191 default: 3192 return nil 3193 } 3194 } 3195 edgelq_monitoring_proto_v4_common_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { 3196 switch v := v.(*Metric); i { 3197 case 0: 3198 return &v.state 3199 case 1: 3200 return &v.sizeCache 3201 case 2: 3202 return &v.unknownFields 3203 default: 3204 return nil 3205 } 3206 } 3207 edgelq_monitoring_proto_v4_common_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { 3208 switch v := v.(*MonitoredResource); i { 3209 case 0: 3210 return &v.state 3211 case 1: 3212 return &v.sizeCache 3213 case 2: 3214 return &v.unknownFields 3215 default: 3216 return nil 3217 } 3218 } 3219 edgelq_monitoring_proto_v4_common_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { 3220 switch v := v.(*Strings); i { 3221 case 0: 3222 return &v.state 3223 case 1: 3224 return &v.sizeCache 3225 case 2: 3226 return &v.unknownFields 3227 default: 3228 return nil 3229 } 3230 } 3231 edgelq_monitoring_proto_v4_common_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { 3232 switch v := v.(*MonitoredResourceSelector); i { 3233 case 0: 3234 return &v.state 3235 case 1: 3236 return &v.sizeCache 3237 case 2: 3238 return &v.unknownFields 3239 default: 3240 return nil 3241 } 3242 } 3243 edgelq_monitoring_proto_v4_common_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { 3244 switch v := v.(*MetricSelector); i { 3245 case 0: 3246 return &v.state 3247 case 1: 3248 return &v.sizeCache 3249 case 2: 3250 return &v.unknownFields 3251 default: 3252 return nil 3253 } 3254 } 3255 edgelq_monitoring_proto_v4_common_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { 3256 switch v := v.(*TimeSeriesSelector); i { 3257 case 0: 3258 return &v.state 3259 case 1: 3260 return &v.sizeCache 3261 case 2: 3262 return &v.unknownFields 3263 default: 3264 return nil 3265 } 3266 } 3267 edgelq_monitoring_proto_v4_common_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { 3268 switch v := v.(*Distribution_Range); i { 3269 case 0: 3270 return &v.state 3271 case 1: 3272 return &v.sizeCache 3273 case 2: 3274 return &v.unknownFields 3275 default: 3276 return nil 3277 } 3278 } 3279 edgelq_monitoring_proto_v4_common_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { 3280 switch v := v.(*Distribution_BucketOptions); i { 3281 case 0: 3282 return &v.state 3283 case 1: 3284 return &v.sizeCache 3285 case 2: 3286 return &v.unknownFields 3287 default: 3288 return nil 3289 } 3290 } 3291 edgelq_monitoring_proto_v4_common_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { 3292 switch v := v.(*Distribution_BucketOptions_Linear); i { 3293 case 0: 3294 return &v.state 3295 case 1: 3296 return &v.sizeCache 3297 case 2: 3298 return &v.unknownFields 3299 default: 3300 return nil 3301 } 3302 } 3303 edgelq_monitoring_proto_v4_common_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { 3304 switch v := v.(*Distribution_BucketOptions_Exponential); i { 3305 case 0: 3306 return &v.state 3307 case 1: 3308 return &v.sizeCache 3309 case 2: 3310 return &v.unknownFields 3311 default: 3312 return nil 3313 } 3314 } 3315 edgelq_monitoring_proto_v4_common_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { 3316 switch v := v.(*Distribution_BucketOptions_Explicit); i { 3317 case 0: 3318 return &v.state 3319 case 1: 3320 return &v.sizeCache 3321 case 2: 3322 return &v.unknownFields 3323 default: 3324 return nil 3325 } 3326 } 3327 edgelq_monitoring_proto_v4_common_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { 3328 switch v := v.(*Distribution_BucketOptions_Dynamic); i { 3329 case 0: 3330 return &v.state 3331 case 1: 3332 return &v.sizeCache 3333 case 2: 3334 return &v.unknownFields 3335 default: 3336 return nil 3337 } 3338 } 3339 } 3340 3341 edgelq_monitoring_proto_v4_common_proto_msgTypes[3].OneofWrappers = []interface{}{ 3342 (*TypedValue_BoolValue)(nil), 3343 (*TypedValue_Int64Value)(nil), 3344 (*TypedValue_DoubleValue)(nil), 3345 (*TypedValue_StringValue)(nil), 3346 (*TypedValue_DistributionValue)(nil), 3347 } 3348 edgelq_monitoring_proto_v4_common_proto_msgTypes[15].OneofWrappers = []interface{}{ 3349 (*Distribution_BucketOptions_LinearBuckets)(nil), 3350 (*Distribution_BucketOptions_ExponentialBuckets)(nil), 3351 (*Distribution_BucketOptions_ExplicitBuckets)(nil), 3352 (*Distribution_BucketOptions_DynamicBuckets)(nil), 3353 } 3354 type x struct{} 3355 out := protoimpl.TypeBuilder{ 3356 File: protoimpl.DescBuilder{ 3357 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 3358 RawDescriptor: edgelq_monitoring_proto_v4_common_proto_rawDesc, 3359 NumEnums: 4, 3360 NumMessages: 24, 3361 NumExtensions: 0, 3362 NumServices: 0, 3363 }, 3364 GoTypes: edgelq_monitoring_proto_v4_common_proto_goTypes, 3365 DependencyIndexes: edgelq_monitoring_proto_v4_common_proto_depIdxs, 3366 EnumInfos: edgelq_monitoring_proto_v4_common_proto_enumTypes, 3367 MessageInfos: edgelq_monitoring_proto_v4_common_proto_msgTypes, 3368 }.Build() 3369 edgelq_monitoring_proto_v4_common_proto = out.File 3370 edgelq_monitoring_proto_v4_common_proto_rawDesc = nil 3371 edgelq_monitoring_proto_v4_common_proto_goTypes = nil 3372 edgelq_monitoring_proto_v4_common_proto_depIdxs = nil 3373 }