...

Source file src/cloud.google.com/go/monitoring/dashboard/apiv1/dashboardpb/metrics.pb.go

Documentation: cloud.google.com/go/monitoring/dashboard/apiv1/dashboardpb

     1  // Copyright 2023 Google LLC
     2  //
     3  // Licensed under the Apache License, Version 2.0 (the "License");
     4  // you may not use this file except in compliance with the License.
     5  // You may obtain a copy of the License at
     6  //
     7  //     http://www.apache.org/licenses/LICENSE-2.0
     8  //
     9  // Unless required by applicable law or agreed to in writing, software
    10  // distributed under the License is distributed on an "AS IS" BASIS,
    11  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12  // See the License for the specific language governing permissions and
    13  // limitations under the License.
    14  
    15  // Code generated by protoc-gen-go. DO NOT EDIT.
    16  // versions:
    17  // 	protoc-gen-go v1.33.0
    18  // 	protoc        v4.25.3
    19  // source: google/monitoring/dashboard/v1/metrics.proto
    20  
    21  package dashboardpb
    22  
    23  import (
    24  	reflect "reflect"
    25  	sync "sync"
    26  
    27  	_ "google.golang.org/genproto/googleapis/api/annotations"
    28  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    29  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    30  )
    31  
    32  const (
    33  	// Verify that this generated code is sufficiently up-to-date.
    34  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    35  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    36  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    37  )
    38  
    39  // Defines the possible types of spark chart supported by the `Scorecard`.
    40  type SparkChartType int32
    41  
    42  const (
    43  	// Not allowed in well-formed requests.
    44  	SparkChartType_SPARK_CHART_TYPE_UNSPECIFIED SparkChartType = 0
    45  	// The sparkline will be rendered as a small line chart.
    46  	SparkChartType_SPARK_LINE SparkChartType = 1
    47  	// The sparkbar will be rendered as a small bar chart.
    48  	SparkChartType_SPARK_BAR SparkChartType = 2
    49  )
    50  
    51  // Enum value maps for SparkChartType.
    52  var (
    53  	SparkChartType_name = map[int32]string{
    54  		0: "SPARK_CHART_TYPE_UNSPECIFIED",
    55  		1: "SPARK_LINE",
    56  		2: "SPARK_BAR",
    57  	}
    58  	SparkChartType_value = map[string]int32{
    59  		"SPARK_CHART_TYPE_UNSPECIFIED": 0,
    60  		"SPARK_LINE":                   1,
    61  		"SPARK_BAR":                    2,
    62  	}
    63  )
    64  
    65  func (x SparkChartType) Enum() *SparkChartType {
    66  	p := new(SparkChartType)
    67  	*p = x
    68  	return p
    69  }
    70  
    71  func (x SparkChartType) String() string {
    72  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
    73  }
    74  
    75  func (SparkChartType) Descriptor() protoreflect.EnumDescriptor {
    76  	return file_google_monitoring_dashboard_v1_metrics_proto_enumTypes[0].Descriptor()
    77  }
    78  
    79  func (SparkChartType) Type() protoreflect.EnumType {
    80  	return &file_google_monitoring_dashboard_v1_metrics_proto_enumTypes[0]
    81  }
    82  
    83  func (x SparkChartType) Number() protoreflect.EnumNumber {
    84  	return protoreflect.EnumNumber(x)
    85  }
    86  
    87  // Deprecated: Use SparkChartType.Descriptor instead.
    88  func (SparkChartType) EnumDescriptor() ([]byte, []int) {
    89  	return file_google_monitoring_dashboard_v1_metrics_proto_rawDescGZIP(), []int{0}
    90  }
    91  
    92  // The color suggests an interpretation to the viewer when actual values cross
    93  // the threshold. Comments on each color provide UX guidance on how users can
    94  // be expected to interpret a given state color.
    95  type Threshold_Color int32
    96  
    97  const (
    98  	// Color is unspecified. Not allowed in well-formed requests.
    99  	Threshold_COLOR_UNSPECIFIED Threshold_Color = 0
   100  	// Crossing the threshold is "concerning" behavior.
   101  	Threshold_YELLOW Threshold_Color = 4
   102  	// Crossing the threshold is "emergency" behavior.
   103  	Threshold_RED Threshold_Color = 6
   104  )
   105  
   106  // Enum value maps for Threshold_Color.
   107  var (
   108  	Threshold_Color_name = map[int32]string{
   109  		0: "COLOR_UNSPECIFIED",
   110  		4: "YELLOW",
   111  		6: "RED",
   112  	}
   113  	Threshold_Color_value = map[string]int32{
   114  		"COLOR_UNSPECIFIED": 0,
   115  		"YELLOW":            4,
   116  		"RED":               6,
   117  	}
   118  )
   119  
   120  func (x Threshold_Color) Enum() *Threshold_Color {
   121  	p := new(Threshold_Color)
   122  	*p = x
   123  	return p
   124  }
   125  
   126  func (x Threshold_Color) String() string {
   127  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   128  }
   129  
   130  func (Threshold_Color) Descriptor() protoreflect.EnumDescriptor {
   131  	return file_google_monitoring_dashboard_v1_metrics_proto_enumTypes[1].Descriptor()
   132  }
   133  
   134  func (Threshold_Color) Type() protoreflect.EnumType {
   135  	return &file_google_monitoring_dashboard_v1_metrics_proto_enumTypes[1]
   136  }
   137  
   138  func (x Threshold_Color) Number() protoreflect.EnumNumber {
   139  	return protoreflect.EnumNumber(x)
   140  }
   141  
   142  // Deprecated: Use Threshold_Color.Descriptor instead.
   143  func (Threshold_Color) EnumDescriptor() ([]byte, []int) {
   144  	return file_google_monitoring_dashboard_v1_metrics_proto_rawDescGZIP(), []int{3, 0}
   145  }
   146  
   147  // Whether the threshold is considered crossed by an actual value above or
   148  // below its threshold value.
   149  type Threshold_Direction int32
   150  
   151  const (
   152  	// Not allowed in well-formed requests.
   153  	Threshold_DIRECTION_UNSPECIFIED Threshold_Direction = 0
   154  	// The threshold will be considered crossed if the actual value is above
   155  	// the threshold value.
   156  	Threshold_ABOVE Threshold_Direction = 1
   157  	// The threshold will be considered crossed if the actual value is below
   158  	// the threshold value.
   159  	Threshold_BELOW Threshold_Direction = 2
   160  )
   161  
   162  // Enum value maps for Threshold_Direction.
   163  var (
   164  	Threshold_Direction_name = map[int32]string{
   165  		0: "DIRECTION_UNSPECIFIED",
   166  		1: "ABOVE",
   167  		2: "BELOW",
   168  	}
   169  	Threshold_Direction_value = map[string]int32{
   170  		"DIRECTION_UNSPECIFIED": 0,
   171  		"ABOVE":                 1,
   172  		"BELOW":                 2,
   173  	}
   174  )
   175  
   176  func (x Threshold_Direction) Enum() *Threshold_Direction {
   177  	p := new(Threshold_Direction)
   178  	*p = x
   179  	return p
   180  }
   181  
   182  func (x Threshold_Direction) String() string {
   183  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   184  }
   185  
   186  func (Threshold_Direction) Descriptor() protoreflect.EnumDescriptor {
   187  	return file_google_monitoring_dashboard_v1_metrics_proto_enumTypes[2].Descriptor()
   188  }
   189  
   190  func (Threshold_Direction) Type() protoreflect.EnumType {
   191  	return &file_google_monitoring_dashboard_v1_metrics_proto_enumTypes[2]
   192  }
   193  
   194  func (x Threshold_Direction) Number() protoreflect.EnumNumber {
   195  	return protoreflect.EnumNumber(x)
   196  }
   197  
   198  // Deprecated: Use Threshold_Direction.Descriptor instead.
   199  func (Threshold_Direction) EnumDescriptor() ([]byte, []int) {
   200  	return file_google_monitoring_dashboard_v1_metrics_proto_rawDescGZIP(), []int{3, 1}
   201  }
   202  
   203  // An axis identifier.
   204  type Threshold_TargetAxis int32
   205  
   206  const (
   207  	// The target axis was not specified. Defaults to Y1.
   208  	Threshold_TARGET_AXIS_UNSPECIFIED Threshold_TargetAxis = 0
   209  	// The y_axis (the right axis of chart).
   210  	Threshold_Y1 Threshold_TargetAxis = 1
   211  	// The y2_axis (the left axis of chart).
   212  	Threshold_Y2 Threshold_TargetAxis = 2
   213  )
   214  
   215  // Enum value maps for Threshold_TargetAxis.
   216  var (
   217  	Threshold_TargetAxis_name = map[int32]string{
   218  		0: "TARGET_AXIS_UNSPECIFIED",
   219  		1: "Y1",
   220  		2: "Y2",
   221  	}
   222  	Threshold_TargetAxis_value = map[string]int32{
   223  		"TARGET_AXIS_UNSPECIFIED": 0,
   224  		"Y1":                      1,
   225  		"Y2":                      2,
   226  	}
   227  )
   228  
   229  func (x Threshold_TargetAxis) Enum() *Threshold_TargetAxis {
   230  	p := new(Threshold_TargetAxis)
   231  	*p = x
   232  	return p
   233  }
   234  
   235  func (x Threshold_TargetAxis) String() string {
   236  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   237  }
   238  
   239  func (Threshold_TargetAxis) Descriptor() protoreflect.EnumDescriptor {
   240  	return file_google_monitoring_dashboard_v1_metrics_proto_enumTypes[3].Descriptor()
   241  }
   242  
   243  func (Threshold_TargetAxis) Type() protoreflect.EnumType {
   244  	return &file_google_monitoring_dashboard_v1_metrics_proto_enumTypes[3]
   245  }
   246  
   247  func (x Threshold_TargetAxis) Number() protoreflect.EnumNumber {
   248  	return protoreflect.EnumNumber(x)
   249  }
   250  
   251  // Deprecated: Use Threshold_TargetAxis.Descriptor instead.
   252  func (Threshold_TargetAxis) EnumDescriptor() ([]byte, []int) {
   253  	return file_google_monitoring_dashboard_v1_metrics_proto_rawDescGZIP(), []int{3, 2}
   254  }
   255  
   256  // TimeSeriesQuery collects the set of supported methods for querying time
   257  // series data from the Stackdriver metrics API.
   258  type TimeSeriesQuery struct {
   259  	state         protoimpl.MessageState
   260  	sizeCache     protoimpl.SizeCache
   261  	unknownFields protoimpl.UnknownFields
   262  
   263  	// Parameters needed to obtain data for the chart.
   264  	//
   265  	// Types that are assignable to Source:
   266  	//
   267  	//	*TimeSeriesQuery_TimeSeriesFilter
   268  	//	*TimeSeriesQuery_TimeSeriesFilterRatio
   269  	//	*TimeSeriesQuery_TimeSeriesQueryLanguage
   270  	//	*TimeSeriesQuery_PrometheusQuery
   271  	Source isTimeSeriesQuery_Source `protobuf_oneof:"source"`
   272  	// The unit of data contained in fetched time series. If non-empty, this
   273  	// unit will override any unit that accompanies fetched data. The format is
   274  	// the same as the
   275  	// [`unit`](https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.metricDescriptors)
   276  	// field in `MetricDescriptor`.
   277  	UnitOverride string `protobuf:"bytes,5,opt,name=unit_override,json=unitOverride,proto3" json:"unit_override,omitempty"`
   278  	// Optional. If set, Cloud Monitoring will treat the full query duration as
   279  	// the alignment period so that there will be only 1 output value.
   280  	//
   281  	// *Note: This could override the configured alignment period except for
   282  	// the cases where a series of data points are expected, like
   283  	//   - XyChart
   284  	//   - Scorecard's spark chart
   285  	OutputFullDuration bool `protobuf:"varint,7,opt,name=output_full_duration,json=outputFullDuration,proto3" json:"output_full_duration,omitempty"`
   286  }
   287  
   288  func (x *TimeSeriesQuery) Reset() {
   289  	*x = TimeSeriesQuery{}
   290  	if protoimpl.UnsafeEnabled {
   291  		mi := &file_google_monitoring_dashboard_v1_metrics_proto_msgTypes[0]
   292  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   293  		ms.StoreMessageInfo(mi)
   294  	}
   295  }
   296  
   297  func (x *TimeSeriesQuery) String() string {
   298  	return protoimpl.X.MessageStringOf(x)
   299  }
   300  
   301  func (*TimeSeriesQuery) ProtoMessage() {}
   302  
   303  func (x *TimeSeriesQuery) ProtoReflect() protoreflect.Message {
   304  	mi := &file_google_monitoring_dashboard_v1_metrics_proto_msgTypes[0]
   305  	if protoimpl.UnsafeEnabled && x != nil {
   306  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   307  		if ms.LoadMessageInfo() == nil {
   308  			ms.StoreMessageInfo(mi)
   309  		}
   310  		return ms
   311  	}
   312  	return mi.MessageOf(x)
   313  }
   314  
   315  // Deprecated: Use TimeSeriesQuery.ProtoReflect.Descriptor instead.
   316  func (*TimeSeriesQuery) Descriptor() ([]byte, []int) {
   317  	return file_google_monitoring_dashboard_v1_metrics_proto_rawDescGZIP(), []int{0}
   318  }
   319  
   320  func (m *TimeSeriesQuery) GetSource() isTimeSeriesQuery_Source {
   321  	if m != nil {
   322  		return m.Source
   323  	}
   324  	return nil
   325  }
   326  
   327  func (x *TimeSeriesQuery) GetTimeSeriesFilter() *TimeSeriesFilter {
   328  	if x, ok := x.GetSource().(*TimeSeriesQuery_TimeSeriesFilter); ok {
   329  		return x.TimeSeriesFilter
   330  	}
   331  	return nil
   332  }
   333  
   334  func (x *TimeSeriesQuery) GetTimeSeriesFilterRatio() *TimeSeriesFilterRatio {
   335  	if x, ok := x.GetSource().(*TimeSeriesQuery_TimeSeriesFilterRatio); ok {
   336  		return x.TimeSeriesFilterRatio
   337  	}
   338  	return nil
   339  }
   340  
   341  func (x *TimeSeriesQuery) GetTimeSeriesQueryLanguage() string {
   342  	if x, ok := x.GetSource().(*TimeSeriesQuery_TimeSeriesQueryLanguage); ok {
   343  		return x.TimeSeriesQueryLanguage
   344  	}
   345  	return ""
   346  }
   347  
   348  func (x *TimeSeriesQuery) GetPrometheusQuery() string {
   349  	if x, ok := x.GetSource().(*TimeSeriesQuery_PrometheusQuery); ok {
   350  		return x.PrometheusQuery
   351  	}
   352  	return ""
   353  }
   354  
   355  func (x *TimeSeriesQuery) GetUnitOverride() string {
   356  	if x != nil {
   357  		return x.UnitOverride
   358  	}
   359  	return ""
   360  }
   361  
   362  func (x *TimeSeriesQuery) GetOutputFullDuration() bool {
   363  	if x != nil {
   364  		return x.OutputFullDuration
   365  	}
   366  	return false
   367  }
   368  
   369  type isTimeSeriesQuery_Source interface {
   370  	isTimeSeriesQuery_Source()
   371  }
   372  
   373  type TimeSeriesQuery_TimeSeriesFilter struct {
   374  	// Filter parameters to fetch time series.
   375  	TimeSeriesFilter *TimeSeriesFilter `protobuf:"bytes,1,opt,name=time_series_filter,json=timeSeriesFilter,proto3,oneof"`
   376  }
   377  
   378  type TimeSeriesQuery_TimeSeriesFilterRatio struct {
   379  	// Parameters to fetch a ratio between two time series filters.
   380  	TimeSeriesFilterRatio *TimeSeriesFilterRatio `protobuf:"bytes,2,opt,name=time_series_filter_ratio,json=timeSeriesFilterRatio,proto3,oneof"`
   381  }
   382  
   383  type TimeSeriesQuery_TimeSeriesQueryLanguage struct {
   384  	// A query used to fetch time series with MQL.
   385  	TimeSeriesQueryLanguage string `protobuf:"bytes,3,opt,name=time_series_query_language,json=timeSeriesQueryLanguage,proto3,oneof"`
   386  }
   387  
   388  type TimeSeriesQuery_PrometheusQuery struct {
   389  	// A query used to fetch time series with PromQL.
   390  	PrometheusQuery string `protobuf:"bytes,6,opt,name=prometheus_query,json=prometheusQuery,proto3,oneof"`
   391  }
   392  
   393  func (*TimeSeriesQuery_TimeSeriesFilter) isTimeSeriesQuery_Source() {}
   394  
   395  func (*TimeSeriesQuery_TimeSeriesFilterRatio) isTimeSeriesQuery_Source() {}
   396  
   397  func (*TimeSeriesQuery_TimeSeriesQueryLanguage) isTimeSeriesQuery_Source() {}
   398  
   399  func (*TimeSeriesQuery_PrometheusQuery) isTimeSeriesQuery_Source() {}
   400  
   401  // A filter that defines a subset of time series data that is displayed in a
   402  // widget. Time series data is fetched using the
   403  // [`ListTimeSeries`](https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list)
   404  // method.
   405  type TimeSeriesFilter struct {
   406  	state         protoimpl.MessageState
   407  	sizeCache     protoimpl.SizeCache
   408  	unknownFields protoimpl.UnknownFields
   409  
   410  	// Required. The [monitoring
   411  	// filter](https://cloud.google.com/monitoring/api/v3/filters) that identifies
   412  	// the metric types, resources, and projects to query.
   413  	Filter string `protobuf:"bytes,1,opt,name=filter,proto3" json:"filter,omitempty"`
   414  	// By default, the raw time series data is returned.
   415  	// Use this field to combine multiple time series for different views of the
   416  	// data.
   417  	Aggregation *Aggregation `protobuf:"bytes,2,opt,name=aggregation,proto3" json:"aggregation,omitempty"`
   418  	// Apply a second aggregation after `aggregation` is applied.
   419  	SecondaryAggregation *Aggregation `protobuf:"bytes,3,opt,name=secondary_aggregation,json=secondaryAggregation,proto3" json:"secondary_aggregation,omitempty"`
   420  	// Selects an optional time series filter.
   421  	//
   422  	// Types that are assignable to OutputFilter:
   423  	//
   424  	//	*TimeSeriesFilter_PickTimeSeriesFilter
   425  	//	*TimeSeriesFilter_StatisticalTimeSeriesFilter
   426  	OutputFilter isTimeSeriesFilter_OutputFilter `protobuf_oneof:"output_filter"`
   427  }
   428  
   429  func (x *TimeSeriesFilter) Reset() {
   430  	*x = TimeSeriesFilter{}
   431  	if protoimpl.UnsafeEnabled {
   432  		mi := &file_google_monitoring_dashboard_v1_metrics_proto_msgTypes[1]
   433  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   434  		ms.StoreMessageInfo(mi)
   435  	}
   436  }
   437  
   438  func (x *TimeSeriesFilter) String() string {
   439  	return protoimpl.X.MessageStringOf(x)
   440  }
   441  
   442  func (*TimeSeriesFilter) ProtoMessage() {}
   443  
   444  func (x *TimeSeriesFilter) ProtoReflect() protoreflect.Message {
   445  	mi := &file_google_monitoring_dashboard_v1_metrics_proto_msgTypes[1]
   446  	if protoimpl.UnsafeEnabled && x != nil {
   447  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   448  		if ms.LoadMessageInfo() == nil {
   449  			ms.StoreMessageInfo(mi)
   450  		}
   451  		return ms
   452  	}
   453  	return mi.MessageOf(x)
   454  }
   455  
   456  // Deprecated: Use TimeSeriesFilter.ProtoReflect.Descriptor instead.
   457  func (*TimeSeriesFilter) Descriptor() ([]byte, []int) {
   458  	return file_google_monitoring_dashboard_v1_metrics_proto_rawDescGZIP(), []int{1}
   459  }
   460  
   461  func (x *TimeSeriesFilter) GetFilter() string {
   462  	if x != nil {
   463  		return x.Filter
   464  	}
   465  	return ""
   466  }
   467  
   468  func (x *TimeSeriesFilter) GetAggregation() *Aggregation {
   469  	if x != nil {
   470  		return x.Aggregation
   471  	}
   472  	return nil
   473  }
   474  
   475  func (x *TimeSeriesFilter) GetSecondaryAggregation() *Aggregation {
   476  	if x != nil {
   477  		return x.SecondaryAggregation
   478  	}
   479  	return nil
   480  }
   481  
   482  func (m *TimeSeriesFilter) GetOutputFilter() isTimeSeriesFilter_OutputFilter {
   483  	if m != nil {
   484  		return m.OutputFilter
   485  	}
   486  	return nil
   487  }
   488  
   489  func (x *TimeSeriesFilter) GetPickTimeSeriesFilter() *PickTimeSeriesFilter {
   490  	if x, ok := x.GetOutputFilter().(*TimeSeriesFilter_PickTimeSeriesFilter); ok {
   491  		return x.PickTimeSeriesFilter
   492  	}
   493  	return nil
   494  }
   495  
   496  // Deprecated: Marked as deprecated in google/monitoring/dashboard/v1/metrics.proto.
   497  func (x *TimeSeriesFilter) GetStatisticalTimeSeriesFilter() *StatisticalTimeSeriesFilter {
   498  	if x, ok := x.GetOutputFilter().(*TimeSeriesFilter_StatisticalTimeSeriesFilter); ok {
   499  		return x.StatisticalTimeSeriesFilter
   500  	}
   501  	return nil
   502  }
   503  
   504  type isTimeSeriesFilter_OutputFilter interface {
   505  	isTimeSeriesFilter_OutputFilter()
   506  }
   507  
   508  type TimeSeriesFilter_PickTimeSeriesFilter struct {
   509  	// Ranking based time series filter.
   510  	PickTimeSeriesFilter *PickTimeSeriesFilter `protobuf:"bytes,4,opt,name=pick_time_series_filter,json=pickTimeSeriesFilter,proto3,oneof"`
   511  }
   512  
   513  type TimeSeriesFilter_StatisticalTimeSeriesFilter struct {
   514  	// Statistics based time series filter.
   515  	// Note: This field is deprecated and completely ignored by the API.
   516  	//
   517  	// Deprecated: Marked as deprecated in google/monitoring/dashboard/v1/metrics.proto.
   518  	StatisticalTimeSeriesFilter *StatisticalTimeSeriesFilter `protobuf:"bytes,5,opt,name=statistical_time_series_filter,json=statisticalTimeSeriesFilter,proto3,oneof"`
   519  }
   520  
   521  func (*TimeSeriesFilter_PickTimeSeriesFilter) isTimeSeriesFilter_OutputFilter() {}
   522  
   523  func (*TimeSeriesFilter_StatisticalTimeSeriesFilter) isTimeSeriesFilter_OutputFilter() {}
   524  
   525  // A pair of time series filters that define a ratio computation. The output
   526  // time series is the pair-wise division of each aligned element from the
   527  // numerator and denominator time series.
   528  type TimeSeriesFilterRatio struct {
   529  	state         protoimpl.MessageState
   530  	sizeCache     protoimpl.SizeCache
   531  	unknownFields protoimpl.UnknownFields
   532  
   533  	// The numerator of the ratio.
   534  	Numerator *TimeSeriesFilterRatio_RatioPart `protobuf:"bytes,1,opt,name=numerator,proto3" json:"numerator,omitempty"`
   535  	// The denominator of the ratio.
   536  	Denominator *TimeSeriesFilterRatio_RatioPart `protobuf:"bytes,2,opt,name=denominator,proto3" json:"denominator,omitempty"`
   537  	// Apply a second aggregation after the ratio is computed.
   538  	SecondaryAggregation *Aggregation `protobuf:"bytes,3,opt,name=secondary_aggregation,json=secondaryAggregation,proto3" json:"secondary_aggregation,omitempty"`
   539  	// Selects an optional filter that is applied to the time series after
   540  	// computing the ratio.
   541  	//
   542  	// Types that are assignable to OutputFilter:
   543  	//
   544  	//	*TimeSeriesFilterRatio_PickTimeSeriesFilter
   545  	//	*TimeSeriesFilterRatio_StatisticalTimeSeriesFilter
   546  	OutputFilter isTimeSeriesFilterRatio_OutputFilter `protobuf_oneof:"output_filter"`
   547  }
   548  
   549  func (x *TimeSeriesFilterRatio) Reset() {
   550  	*x = TimeSeriesFilterRatio{}
   551  	if protoimpl.UnsafeEnabled {
   552  		mi := &file_google_monitoring_dashboard_v1_metrics_proto_msgTypes[2]
   553  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   554  		ms.StoreMessageInfo(mi)
   555  	}
   556  }
   557  
   558  func (x *TimeSeriesFilterRatio) String() string {
   559  	return protoimpl.X.MessageStringOf(x)
   560  }
   561  
   562  func (*TimeSeriesFilterRatio) ProtoMessage() {}
   563  
   564  func (x *TimeSeriesFilterRatio) ProtoReflect() protoreflect.Message {
   565  	mi := &file_google_monitoring_dashboard_v1_metrics_proto_msgTypes[2]
   566  	if protoimpl.UnsafeEnabled && x != nil {
   567  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   568  		if ms.LoadMessageInfo() == nil {
   569  			ms.StoreMessageInfo(mi)
   570  		}
   571  		return ms
   572  	}
   573  	return mi.MessageOf(x)
   574  }
   575  
   576  // Deprecated: Use TimeSeriesFilterRatio.ProtoReflect.Descriptor instead.
   577  func (*TimeSeriesFilterRatio) Descriptor() ([]byte, []int) {
   578  	return file_google_monitoring_dashboard_v1_metrics_proto_rawDescGZIP(), []int{2}
   579  }
   580  
   581  func (x *TimeSeriesFilterRatio) GetNumerator() *TimeSeriesFilterRatio_RatioPart {
   582  	if x != nil {
   583  		return x.Numerator
   584  	}
   585  	return nil
   586  }
   587  
   588  func (x *TimeSeriesFilterRatio) GetDenominator() *TimeSeriesFilterRatio_RatioPart {
   589  	if x != nil {
   590  		return x.Denominator
   591  	}
   592  	return nil
   593  }
   594  
   595  func (x *TimeSeriesFilterRatio) GetSecondaryAggregation() *Aggregation {
   596  	if x != nil {
   597  		return x.SecondaryAggregation
   598  	}
   599  	return nil
   600  }
   601  
   602  func (m *TimeSeriesFilterRatio) GetOutputFilter() isTimeSeriesFilterRatio_OutputFilter {
   603  	if m != nil {
   604  		return m.OutputFilter
   605  	}
   606  	return nil
   607  }
   608  
   609  func (x *TimeSeriesFilterRatio) GetPickTimeSeriesFilter() *PickTimeSeriesFilter {
   610  	if x, ok := x.GetOutputFilter().(*TimeSeriesFilterRatio_PickTimeSeriesFilter); ok {
   611  		return x.PickTimeSeriesFilter
   612  	}
   613  	return nil
   614  }
   615  
   616  // Deprecated: Marked as deprecated in google/monitoring/dashboard/v1/metrics.proto.
   617  func (x *TimeSeriesFilterRatio) GetStatisticalTimeSeriesFilter() *StatisticalTimeSeriesFilter {
   618  	if x, ok := x.GetOutputFilter().(*TimeSeriesFilterRatio_StatisticalTimeSeriesFilter); ok {
   619  		return x.StatisticalTimeSeriesFilter
   620  	}
   621  	return nil
   622  }
   623  
   624  type isTimeSeriesFilterRatio_OutputFilter interface {
   625  	isTimeSeriesFilterRatio_OutputFilter()
   626  }
   627  
   628  type TimeSeriesFilterRatio_PickTimeSeriesFilter struct {
   629  	// Ranking based time series filter.
   630  	PickTimeSeriesFilter *PickTimeSeriesFilter `protobuf:"bytes,4,opt,name=pick_time_series_filter,json=pickTimeSeriesFilter,proto3,oneof"`
   631  }
   632  
   633  type TimeSeriesFilterRatio_StatisticalTimeSeriesFilter struct {
   634  	// Statistics based time series filter.
   635  	// Note: This field is deprecated and completely ignored by the API.
   636  	//
   637  	// Deprecated: Marked as deprecated in google/monitoring/dashboard/v1/metrics.proto.
   638  	StatisticalTimeSeriesFilter *StatisticalTimeSeriesFilter `protobuf:"bytes,5,opt,name=statistical_time_series_filter,json=statisticalTimeSeriesFilter,proto3,oneof"`
   639  }
   640  
   641  func (*TimeSeriesFilterRatio_PickTimeSeriesFilter) isTimeSeriesFilterRatio_OutputFilter() {}
   642  
   643  func (*TimeSeriesFilterRatio_StatisticalTimeSeriesFilter) isTimeSeriesFilterRatio_OutputFilter() {}
   644  
   645  // Defines a threshold for categorizing time series values.
   646  type Threshold struct {
   647  	state         protoimpl.MessageState
   648  	sizeCache     protoimpl.SizeCache
   649  	unknownFields protoimpl.UnknownFields
   650  
   651  	// A label for the threshold.
   652  	Label string `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
   653  	// The value of the threshold. The value should be defined in the native scale
   654  	// of the metric.
   655  	Value float64 `protobuf:"fixed64,2,opt,name=value,proto3" json:"value,omitempty"`
   656  	// The state color for this threshold. Color is not allowed in a XyChart.
   657  	Color Threshold_Color `protobuf:"varint,3,opt,name=color,proto3,enum=google.monitoring.dashboard.v1.Threshold_Color" json:"color,omitempty"`
   658  	// The direction for the current threshold. Direction is not allowed in a
   659  	// XyChart.
   660  	Direction Threshold_Direction `protobuf:"varint,4,opt,name=direction,proto3,enum=google.monitoring.dashboard.v1.Threshold_Direction" json:"direction,omitempty"`
   661  	// The target axis to use for plotting the threshold. Target axis is not
   662  	// allowed in a Scorecard.
   663  	TargetAxis Threshold_TargetAxis `protobuf:"varint,5,opt,name=target_axis,json=targetAxis,proto3,enum=google.monitoring.dashboard.v1.Threshold_TargetAxis" json:"target_axis,omitempty"`
   664  }
   665  
   666  func (x *Threshold) Reset() {
   667  	*x = Threshold{}
   668  	if protoimpl.UnsafeEnabled {
   669  		mi := &file_google_monitoring_dashboard_v1_metrics_proto_msgTypes[3]
   670  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   671  		ms.StoreMessageInfo(mi)
   672  	}
   673  }
   674  
   675  func (x *Threshold) String() string {
   676  	return protoimpl.X.MessageStringOf(x)
   677  }
   678  
   679  func (*Threshold) ProtoMessage() {}
   680  
   681  func (x *Threshold) ProtoReflect() protoreflect.Message {
   682  	mi := &file_google_monitoring_dashboard_v1_metrics_proto_msgTypes[3]
   683  	if protoimpl.UnsafeEnabled && x != nil {
   684  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   685  		if ms.LoadMessageInfo() == nil {
   686  			ms.StoreMessageInfo(mi)
   687  		}
   688  		return ms
   689  	}
   690  	return mi.MessageOf(x)
   691  }
   692  
   693  // Deprecated: Use Threshold.ProtoReflect.Descriptor instead.
   694  func (*Threshold) Descriptor() ([]byte, []int) {
   695  	return file_google_monitoring_dashboard_v1_metrics_proto_rawDescGZIP(), []int{3}
   696  }
   697  
   698  func (x *Threshold) GetLabel() string {
   699  	if x != nil {
   700  		return x.Label
   701  	}
   702  	return ""
   703  }
   704  
   705  func (x *Threshold) GetValue() float64 {
   706  	if x != nil {
   707  		return x.Value
   708  	}
   709  	return 0
   710  }
   711  
   712  func (x *Threshold) GetColor() Threshold_Color {
   713  	if x != nil {
   714  		return x.Color
   715  	}
   716  	return Threshold_COLOR_UNSPECIFIED
   717  }
   718  
   719  func (x *Threshold) GetDirection() Threshold_Direction {
   720  	if x != nil {
   721  		return x.Direction
   722  	}
   723  	return Threshold_DIRECTION_UNSPECIFIED
   724  }
   725  
   726  func (x *Threshold) GetTargetAxis() Threshold_TargetAxis {
   727  	if x != nil {
   728  		return x.TargetAxis
   729  	}
   730  	return Threshold_TARGET_AXIS_UNSPECIFIED
   731  }
   732  
   733  // Describes a query to build the numerator or denominator of a
   734  // TimeSeriesFilterRatio.
   735  type TimeSeriesFilterRatio_RatioPart struct {
   736  	state         protoimpl.MessageState
   737  	sizeCache     protoimpl.SizeCache
   738  	unknownFields protoimpl.UnknownFields
   739  
   740  	// Required. The [monitoring
   741  	// filter](https://cloud.google.com/monitoring/api/v3/filters) that
   742  	// identifies the metric types, resources, and projects to query.
   743  	Filter string `protobuf:"bytes,1,opt,name=filter,proto3" json:"filter,omitempty"`
   744  	// By default, the raw time series data is returned.
   745  	// Use this field to combine multiple time series for different views of the
   746  	// data.
   747  	Aggregation *Aggregation `protobuf:"bytes,2,opt,name=aggregation,proto3" json:"aggregation,omitempty"`
   748  }
   749  
   750  func (x *TimeSeriesFilterRatio_RatioPart) Reset() {
   751  	*x = TimeSeriesFilterRatio_RatioPart{}
   752  	if protoimpl.UnsafeEnabled {
   753  		mi := &file_google_monitoring_dashboard_v1_metrics_proto_msgTypes[4]
   754  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   755  		ms.StoreMessageInfo(mi)
   756  	}
   757  }
   758  
   759  func (x *TimeSeriesFilterRatio_RatioPart) String() string {
   760  	return protoimpl.X.MessageStringOf(x)
   761  }
   762  
   763  func (*TimeSeriesFilterRatio_RatioPart) ProtoMessage() {}
   764  
   765  func (x *TimeSeriesFilterRatio_RatioPart) ProtoReflect() protoreflect.Message {
   766  	mi := &file_google_monitoring_dashboard_v1_metrics_proto_msgTypes[4]
   767  	if protoimpl.UnsafeEnabled && x != nil {
   768  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   769  		if ms.LoadMessageInfo() == nil {
   770  			ms.StoreMessageInfo(mi)
   771  		}
   772  		return ms
   773  	}
   774  	return mi.MessageOf(x)
   775  }
   776  
   777  // Deprecated: Use TimeSeriesFilterRatio_RatioPart.ProtoReflect.Descriptor instead.
   778  func (*TimeSeriesFilterRatio_RatioPart) Descriptor() ([]byte, []int) {
   779  	return file_google_monitoring_dashboard_v1_metrics_proto_rawDescGZIP(), []int{2, 0}
   780  }
   781  
   782  func (x *TimeSeriesFilterRatio_RatioPart) GetFilter() string {
   783  	if x != nil {
   784  		return x.Filter
   785  	}
   786  	return ""
   787  }
   788  
   789  func (x *TimeSeriesFilterRatio_RatioPart) GetAggregation() *Aggregation {
   790  	if x != nil {
   791  		return x.Aggregation
   792  	}
   793  	return nil
   794  }
   795  
   796  var File_google_monitoring_dashboard_v1_metrics_proto protoreflect.FileDescriptor
   797  
   798  var file_google_monitoring_dashboard_v1_metrics_proto_rawDesc = []byte{
   799  	0x0a, 0x2c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72,
   800  	0x69, 0x6e, 0x67, 0x2f, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2f, 0x76, 0x31,
   801  	0x2f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1e,
   802  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e,
   803  	0x67, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x1a, 0x1f,
   804  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64,
   805  	0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
   806  	0x2b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69,
   807  	0x6e, 0x67, 0x2f, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2f, 0x76, 0x31, 0x2f,
   808  	0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xb7, 0x03, 0x0a,
   809  	0x0f, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x51, 0x75, 0x65, 0x72, 0x79,
   810  	0x12, 0x60, 0x0a, 0x12, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f,
   811  	0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67,
   812  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67,
   813  	0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x69,
   814  	0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x48, 0x00,
   815  	0x52, 0x10, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x46, 0x69, 0x6c, 0x74,
   816  	0x65, 0x72, 0x12, 0x70, 0x0a, 0x18, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65,
   817  	0x73, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x18, 0x02,
   818  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x6f,
   819  	0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61,
   820  	0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73,
   821  	0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x61, 0x74, 0x69, 0x6f, 0x48, 0x00, 0x52, 0x15, 0x74,
   822  	0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52,
   823  	0x61, 0x74, 0x69, 0x6f, 0x12, 0x3d, 0x0a, 0x1a, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72,
   824  	0x69, 0x65, 0x73, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61,
   825  	0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x17, 0x74, 0x69, 0x6d, 0x65,
   826  	0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x61, 0x6e, 0x67, 0x75,
   827  	0x61, 0x67, 0x65, 0x12, 0x2b, 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x6d, 0x65, 0x74, 0x68, 0x65, 0x75,
   828  	0x73, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52,
   829  	0x0f, 0x70, 0x72, 0x6f, 0x6d, 0x65, 0x74, 0x68, 0x65, 0x75, 0x73, 0x51, 0x75, 0x65, 0x72, 0x79,
   830  	0x12, 0x23, 0x0a, 0x0d, 0x75, 0x6e, 0x69, 0x74, 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64,
   831  	0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x75, 0x6e, 0x69, 0x74, 0x4f, 0x76, 0x65,
   832  	0x72, 0x72, 0x69, 0x64, 0x65, 0x12, 0x35, 0x0a, 0x14, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f,
   833  	0x66, 0x75, 0x6c, 0x6c, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20,
   834  	0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x12, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74,
   835  	0x46, 0x75, 0x6c, 0x6c, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x08, 0x0a, 0x06,
   836  	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0xe9, 0x03, 0x0a, 0x10, 0x54, 0x69, 0x6d, 0x65, 0x53,
   837  	0x65, 0x72, 0x69, 0x65, 0x73, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x06, 0x66,
   838  	0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02,
   839  	0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x4d, 0x0a, 0x0b, 0x61, 0x67, 0x67, 0x72,
   840  	0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e,
   841  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e,
   842  	0x67, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x41,
   843  	0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x61, 0x67, 0x67, 0x72,
   844  	0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x60, 0x0a, 0x15, 0x73, 0x65, 0x63, 0x6f, 0x6e,
   845  	0x64, 0x61, 0x72, 0x79, 0x5f, 0x61, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e,
   846  	0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
   847  	0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62,
   848  	0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74,
   849  	0x69, 0x6f, 0x6e, 0x52, 0x14, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x41, 0x67,
   850  	0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x6d, 0x0a, 0x17, 0x70, 0x69, 0x63,
   851  	0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x66, 0x69,
   852  	0x6c, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f,
   853  	0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x64,
   854  	0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x63, 0x6b,
   855  	0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72,
   856  	0x48, 0x00, 0x52, 0x14, 0x70, 0x69, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69,
   857  	0x65, 0x73, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x86, 0x01, 0x0a, 0x1e, 0x73, 0x74, 0x61,
   858  	0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65,
   859  	0x72, 0x69, 0x65, 0x73, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28,
   860  	0x0b, 0x32, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74,
   861  	0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e,
   862  	0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x54, 0x69,
   863  	0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x42, 0x02,
   864  	0x18, 0x01, 0x48, 0x00, 0x52, 0x1b, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x61,
   865  	0x6c, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x46, 0x69, 0x6c, 0x74, 0x65,
   866  	0x72, 0x42, 0x0f, 0x0a, 0x0d, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x66, 0x69, 0x6c, 0x74,
   867  	0x65, 0x72, 0x22, 0xbd, 0x05, 0x0a, 0x15, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65,
   868  	0x73, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x61, 0x74, 0x69, 0x6f, 0x12, 0x5d, 0x0a, 0x09,
   869  	0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
   870  	0x3f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72,
   871  	0x69, 0x6e, 0x67, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31,
   872  	0x2e, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x46, 0x69, 0x6c, 0x74, 0x65,
   873  	0x72, 0x52, 0x61, 0x74, 0x69, 0x6f, 0x2e, 0x52, 0x61, 0x74, 0x69, 0x6f, 0x50, 0x61, 0x72, 0x74,
   874  	0x52, 0x09, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x61, 0x0a, 0x0b, 0x64,
   875  	0x65, 0x6e, 0x6f, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
   876  	0x32, 0x3f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f,
   877  	0x72, 0x69, 0x6e, 0x67, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76,
   878  	0x31, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x46, 0x69, 0x6c, 0x74,
   879  	0x65, 0x72, 0x52, 0x61, 0x74, 0x69, 0x6f, 0x2e, 0x52, 0x61, 0x74, 0x69, 0x6f, 0x50, 0x61, 0x72,
   880  	0x74, 0x52, 0x0b, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x60,
   881  	0x0a, 0x15, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x5f, 0x61, 0x67, 0x67, 0x72,
   882  	0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e,
   883  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e,
   884  	0x67, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x41,
   885  	0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x14, 0x73, 0x65, 0x63, 0x6f,
   886  	0x6e, 0x64, 0x61, 0x72, 0x79, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e,
   887  	0x12, 0x6d, 0x0a, 0x17, 0x70, 0x69, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65,
   888  	0x72, 0x69, 0x65, 0x73, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28,
   889  	0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74,
   890  	0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e,
   891  	0x76, 0x31, 0x2e, 0x50, 0x69, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65,
   892  	0x73, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, 0x14, 0x70, 0x69, 0x63, 0x6b, 0x54,
   893  	0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12,
   894  	0x86, 0x01, 0x0a, 0x1e, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x5f,
   895  	0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x66, 0x69, 0x6c, 0x74,
   896  	0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
   897  	0x65, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x64, 0x61, 0x73,
   898  	0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x69, 0x73,
   899  	0x74, 0x69, 0x63, 0x61, 0x6c, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x46,
   900  	0x69, 0x6c, 0x74, 0x65, 0x72, 0x42, 0x02, 0x18, 0x01, 0x48, 0x00, 0x52, 0x1b, 0x73, 0x74, 0x61,
   901  	0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69,
   902  	0x65, 0x73, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x1a, 0x77, 0x0a, 0x09, 0x52, 0x61, 0x74, 0x69,
   903  	0x6f, 0x50, 0x61, 0x72, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18,
   904  	0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74,
   905  	0x65, 0x72, 0x12, 0x4d, 0x0a, 0x0b, 0x61, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x69, 0x6f,
   906  	0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
   907  	0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x64, 0x61, 0x73, 0x68,
   908  	0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61,
   909  	0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x61, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x69, 0x6f,
   910  	0x6e, 0x42, 0x0f, 0x0a, 0x0d, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x66, 0x69, 0x6c, 0x74,
   911  	0x65, 0x72, 0x22, 0xd6, 0x03, 0x0a, 0x09, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64,
   912  	0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
   913  	0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18,
   914  	0x02, 0x20, 0x01, 0x28, 0x01, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x45, 0x0a, 0x05,
   915  	0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x67, 0x6f,
   916  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e,
   917  	0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x68, 0x72,
   918  	0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x2e, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x52, 0x05, 0x63, 0x6f,
   919  	0x6c, 0x6f, 0x72, 0x12, 0x51, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
   920  	0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
   921  	0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62,
   922  	0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c,
   923  	0x64, 0x2e, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x64, 0x69, 0x72,
   924  	0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x55, 0x0a, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74,
   925  	0x5f, 0x61, 0x78, 0x69, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x67, 0x6f,
   926  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e,
   927  	0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x68, 0x72,
   928  	0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x2e, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x78, 0x69,
   929  	0x73, 0x52, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x78, 0x69, 0x73, 0x22, 0x33, 0x0a,
   930  	0x05, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x15, 0x0a, 0x11, 0x43, 0x4f, 0x4c, 0x4f, 0x52, 0x5f,
   931  	0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0a, 0x0a,
   932  	0x06, 0x59, 0x45, 0x4c, 0x4c, 0x4f, 0x57, 0x10, 0x04, 0x12, 0x07, 0x0a, 0x03, 0x52, 0x45, 0x44,
   933  	0x10, 0x06, 0x22, 0x3c, 0x0a, 0x09, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12,
   934  	0x19, 0x0a, 0x15, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x53,
   935  	0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x41, 0x42,
   936  	0x4f, 0x56, 0x45, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x42, 0x45, 0x4c, 0x4f, 0x57, 0x10, 0x02,
   937  	0x22, 0x39, 0x0a, 0x0a, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x78, 0x69, 0x73, 0x12, 0x1b,
   938  	0x0a, 0x17, 0x54, 0x41, 0x52, 0x47, 0x45, 0x54, 0x5f, 0x41, 0x58, 0x49, 0x53, 0x5f, 0x55, 0x4e,
   939  	0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x06, 0x0a, 0x02, 0x59,
   940  	0x31, 0x10, 0x01, 0x12, 0x06, 0x0a, 0x02, 0x59, 0x32, 0x10, 0x02, 0x2a, 0x51, 0x0a, 0x0e, 0x53,
   941  	0x70, 0x61, 0x72, 0x6b, 0x43, 0x68, 0x61, 0x72, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a,
   942  	0x1c, 0x53, 0x50, 0x41, 0x52, 0x4b, 0x5f, 0x43, 0x48, 0x41, 0x52, 0x54, 0x5f, 0x54, 0x59, 0x50,
   943  	0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12,
   944  	0x0e, 0x0a, 0x0a, 0x53, 0x50, 0x41, 0x52, 0x4b, 0x5f, 0x4c, 0x49, 0x4e, 0x45, 0x10, 0x01, 0x12,
   945  	0x0d, 0x0a, 0x09, 0x53, 0x50, 0x41, 0x52, 0x4b, 0x5f, 0x42, 0x41, 0x52, 0x10, 0x02, 0x42, 0xf5,
   946  	0x01, 0x0a, 0x22, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x6f,
   947  	0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61,
   948  	0x72, 0x64, 0x2e, 0x76, 0x31, 0x42, 0x0c, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x50, 0x72,
   949  	0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x46, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f,
   950  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f, 0x6d, 0x6f, 0x6e, 0x69, 0x74,
   951  	0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2f, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2f,
   952  	0x61, 0x70, 0x69, 0x76, 0x31, 0x2f, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x70,
   953  	0x62, 0x3b, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x70, 0x62, 0xaa, 0x02, 0x24,
   954  	0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x4d, 0x6f, 0x6e,
   955  	0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72,
   956  	0x64, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x24, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c, 0x43, 0x6c,
   957  	0x6f, 0x75, 0x64, 0x5c, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x5c, 0x44,
   958  	0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5c, 0x56, 0x31, 0xea, 0x02, 0x28, 0x47, 0x6f,
   959  	0x6f, 0x67, 0x6c, 0x65, 0x3a, 0x3a, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x3a, 0x3a, 0x4d, 0x6f, 0x6e,
   960  	0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x3a, 0x3a, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61,
   961  	0x72, 0x64, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
   962  }
   963  
   964  var (
   965  	file_google_monitoring_dashboard_v1_metrics_proto_rawDescOnce sync.Once
   966  	file_google_monitoring_dashboard_v1_metrics_proto_rawDescData = file_google_monitoring_dashboard_v1_metrics_proto_rawDesc
   967  )
   968  
   969  func file_google_monitoring_dashboard_v1_metrics_proto_rawDescGZIP() []byte {
   970  	file_google_monitoring_dashboard_v1_metrics_proto_rawDescOnce.Do(func() {
   971  		file_google_monitoring_dashboard_v1_metrics_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_monitoring_dashboard_v1_metrics_proto_rawDescData)
   972  	})
   973  	return file_google_monitoring_dashboard_v1_metrics_proto_rawDescData
   974  }
   975  
   976  var file_google_monitoring_dashboard_v1_metrics_proto_enumTypes = make([]protoimpl.EnumInfo, 4)
   977  var file_google_monitoring_dashboard_v1_metrics_proto_msgTypes = make([]protoimpl.MessageInfo, 5)
   978  var file_google_monitoring_dashboard_v1_metrics_proto_goTypes = []interface{}{
   979  	(SparkChartType)(0),                     // 0: google.monitoring.dashboard.v1.SparkChartType
   980  	(Threshold_Color)(0),                    // 1: google.monitoring.dashboard.v1.Threshold.Color
   981  	(Threshold_Direction)(0),                // 2: google.monitoring.dashboard.v1.Threshold.Direction
   982  	(Threshold_TargetAxis)(0),               // 3: google.monitoring.dashboard.v1.Threshold.TargetAxis
   983  	(*TimeSeriesQuery)(nil),                 // 4: google.monitoring.dashboard.v1.TimeSeriesQuery
   984  	(*TimeSeriesFilter)(nil),                // 5: google.monitoring.dashboard.v1.TimeSeriesFilter
   985  	(*TimeSeriesFilterRatio)(nil),           // 6: google.monitoring.dashboard.v1.TimeSeriesFilterRatio
   986  	(*Threshold)(nil),                       // 7: google.monitoring.dashboard.v1.Threshold
   987  	(*TimeSeriesFilterRatio_RatioPart)(nil), // 8: google.monitoring.dashboard.v1.TimeSeriesFilterRatio.RatioPart
   988  	(*Aggregation)(nil),                     // 9: google.monitoring.dashboard.v1.Aggregation
   989  	(*PickTimeSeriesFilter)(nil),            // 10: google.monitoring.dashboard.v1.PickTimeSeriesFilter
   990  	(*StatisticalTimeSeriesFilter)(nil),     // 11: google.monitoring.dashboard.v1.StatisticalTimeSeriesFilter
   991  }
   992  var file_google_monitoring_dashboard_v1_metrics_proto_depIdxs = []int32{
   993  	5,  // 0: google.monitoring.dashboard.v1.TimeSeriesQuery.time_series_filter:type_name -> google.monitoring.dashboard.v1.TimeSeriesFilter
   994  	6,  // 1: google.monitoring.dashboard.v1.TimeSeriesQuery.time_series_filter_ratio:type_name -> google.monitoring.dashboard.v1.TimeSeriesFilterRatio
   995  	9,  // 2: google.monitoring.dashboard.v1.TimeSeriesFilter.aggregation:type_name -> google.monitoring.dashboard.v1.Aggregation
   996  	9,  // 3: google.monitoring.dashboard.v1.TimeSeriesFilter.secondary_aggregation:type_name -> google.monitoring.dashboard.v1.Aggregation
   997  	10, // 4: google.monitoring.dashboard.v1.TimeSeriesFilter.pick_time_series_filter:type_name -> google.monitoring.dashboard.v1.PickTimeSeriesFilter
   998  	11, // 5: google.monitoring.dashboard.v1.TimeSeriesFilter.statistical_time_series_filter:type_name -> google.monitoring.dashboard.v1.StatisticalTimeSeriesFilter
   999  	8,  // 6: google.monitoring.dashboard.v1.TimeSeriesFilterRatio.numerator:type_name -> google.monitoring.dashboard.v1.TimeSeriesFilterRatio.RatioPart
  1000  	8,  // 7: google.monitoring.dashboard.v1.TimeSeriesFilterRatio.denominator:type_name -> google.monitoring.dashboard.v1.TimeSeriesFilterRatio.RatioPart
  1001  	9,  // 8: google.monitoring.dashboard.v1.TimeSeriesFilterRatio.secondary_aggregation:type_name -> google.monitoring.dashboard.v1.Aggregation
  1002  	10, // 9: google.monitoring.dashboard.v1.TimeSeriesFilterRatio.pick_time_series_filter:type_name -> google.monitoring.dashboard.v1.PickTimeSeriesFilter
  1003  	11, // 10: google.monitoring.dashboard.v1.TimeSeriesFilterRatio.statistical_time_series_filter:type_name -> google.monitoring.dashboard.v1.StatisticalTimeSeriesFilter
  1004  	1,  // 11: google.monitoring.dashboard.v1.Threshold.color:type_name -> google.monitoring.dashboard.v1.Threshold.Color
  1005  	2,  // 12: google.monitoring.dashboard.v1.Threshold.direction:type_name -> google.monitoring.dashboard.v1.Threshold.Direction
  1006  	3,  // 13: google.monitoring.dashboard.v1.Threshold.target_axis:type_name -> google.monitoring.dashboard.v1.Threshold.TargetAxis
  1007  	9,  // 14: google.monitoring.dashboard.v1.TimeSeriesFilterRatio.RatioPart.aggregation:type_name -> google.monitoring.dashboard.v1.Aggregation
  1008  	15, // [15:15] is the sub-list for method output_type
  1009  	15, // [15:15] is the sub-list for method input_type
  1010  	15, // [15:15] is the sub-list for extension type_name
  1011  	15, // [15:15] is the sub-list for extension extendee
  1012  	0,  // [0:15] is the sub-list for field type_name
  1013  }
  1014  
  1015  func init() { file_google_monitoring_dashboard_v1_metrics_proto_init() }
  1016  func file_google_monitoring_dashboard_v1_metrics_proto_init() {
  1017  	if File_google_monitoring_dashboard_v1_metrics_proto != nil {
  1018  		return
  1019  	}
  1020  	file_google_monitoring_dashboard_v1_common_proto_init()
  1021  	if !protoimpl.UnsafeEnabled {
  1022  		file_google_monitoring_dashboard_v1_metrics_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
  1023  			switch v := v.(*TimeSeriesQuery); i {
  1024  			case 0:
  1025  				return &v.state
  1026  			case 1:
  1027  				return &v.sizeCache
  1028  			case 2:
  1029  				return &v.unknownFields
  1030  			default:
  1031  				return nil
  1032  			}
  1033  		}
  1034  		file_google_monitoring_dashboard_v1_metrics_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
  1035  			switch v := v.(*TimeSeriesFilter); i {
  1036  			case 0:
  1037  				return &v.state
  1038  			case 1:
  1039  				return &v.sizeCache
  1040  			case 2:
  1041  				return &v.unknownFields
  1042  			default:
  1043  				return nil
  1044  			}
  1045  		}
  1046  		file_google_monitoring_dashboard_v1_metrics_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
  1047  			switch v := v.(*TimeSeriesFilterRatio); i {
  1048  			case 0:
  1049  				return &v.state
  1050  			case 1:
  1051  				return &v.sizeCache
  1052  			case 2:
  1053  				return &v.unknownFields
  1054  			default:
  1055  				return nil
  1056  			}
  1057  		}
  1058  		file_google_monitoring_dashboard_v1_metrics_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
  1059  			switch v := v.(*Threshold); i {
  1060  			case 0:
  1061  				return &v.state
  1062  			case 1:
  1063  				return &v.sizeCache
  1064  			case 2:
  1065  				return &v.unknownFields
  1066  			default:
  1067  				return nil
  1068  			}
  1069  		}
  1070  		file_google_monitoring_dashboard_v1_metrics_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
  1071  			switch v := v.(*TimeSeriesFilterRatio_RatioPart); i {
  1072  			case 0:
  1073  				return &v.state
  1074  			case 1:
  1075  				return &v.sizeCache
  1076  			case 2:
  1077  				return &v.unknownFields
  1078  			default:
  1079  				return nil
  1080  			}
  1081  		}
  1082  	}
  1083  	file_google_monitoring_dashboard_v1_metrics_proto_msgTypes[0].OneofWrappers = []interface{}{
  1084  		(*TimeSeriesQuery_TimeSeriesFilter)(nil),
  1085  		(*TimeSeriesQuery_TimeSeriesFilterRatio)(nil),
  1086  		(*TimeSeriesQuery_TimeSeriesQueryLanguage)(nil),
  1087  		(*TimeSeriesQuery_PrometheusQuery)(nil),
  1088  	}
  1089  	file_google_monitoring_dashboard_v1_metrics_proto_msgTypes[1].OneofWrappers = []interface{}{
  1090  		(*TimeSeriesFilter_PickTimeSeriesFilter)(nil),
  1091  		(*TimeSeriesFilter_StatisticalTimeSeriesFilter)(nil),
  1092  	}
  1093  	file_google_monitoring_dashboard_v1_metrics_proto_msgTypes[2].OneofWrappers = []interface{}{
  1094  		(*TimeSeriesFilterRatio_PickTimeSeriesFilter)(nil),
  1095  		(*TimeSeriesFilterRatio_StatisticalTimeSeriesFilter)(nil),
  1096  	}
  1097  	type x struct{}
  1098  	out := protoimpl.TypeBuilder{
  1099  		File: protoimpl.DescBuilder{
  1100  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  1101  			RawDescriptor: file_google_monitoring_dashboard_v1_metrics_proto_rawDesc,
  1102  			NumEnums:      4,
  1103  			NumMessages:   5,
  1104  			NumExtensions: 0,
  1105  			NumServices:   0,
  1106  		},
  1107  		GoTypes:           file_google_monitoring_dashboard_v1_metrics_proto_goTypes,
  1108  		DependencyIndexes: file_google_monitoring_dashboard_v1_metrics_proto_depIdxs,
  1109  		EnumInfos:         file_google_monitoring_dashboard_v1_metrics_proto_enumTypes,
  1110  		MessageInfos:      file_google_monitoring_dashboard_v1_metrics_proto_msgTypes,
  1111  	}.Build()
  1112  	File_google_monitoring_dashboard_v1_metrics_proto = out.File
  1113  	file_google_monitoring_dashboard_v1_metrics_proto_rawDesc = nil
  1114  	file_google_monitoring_dashboard_v1_metrics_proto_goTypes = nil
  1115  	file_google_monitoring_dashboard_v1_metrics_proto_depIdxs = nil
  1116  }
  1117  

View as plain text