Class: Google::Apis::MonitoringV1::TimeSeriesFilter

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
generated/google/apis/monitoring_v1/classes.rb,
generated/google/apis/monitoring_v1/representations.rb,
generated/google/apis/monitoring_v1/representations.rb

Overview

A filter that defines a subset of time series data that is displayed in a widget. Time series data is fetched using the ListTimeSeries (https://cloud. google.com/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list) method.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ TimeSeriesFilter

Returns a new instance of TimeSeriesFilter.



1075
1076
1077
# File 'generated/google/apis/monitoring_v1/classes.rb', line 1075

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#aggregationGoogle::Apis::MonitoringV1::Aggregation

Describes how to combine multiple time series to provide a different view of the data. Aggregation of time series is done in two steps. First, each time series in the set is aligned to the same time interval boundaries, then the set of time series is optionally reduced in number.Alignment consists of applying the per_series_aligner operation to each time series after its data has been divided into regular alignment_period time intervals. This process takes all of the data points in an alignment period, applies a mathematical transformation such as averaging, minimum, maximum, delta, etc., and converts them into a single data point per period.Reduction is when the aligned and transformed time series can optionally be combined, reducing the number of time series through similar mathematical transformations. Reduction involves applying a cross_series_reducer to all the time series, optionally sorting the time series into subsets with group_by_fields, and applying the reducer to each subset.The raw time series data can contain a huge amount of information from multiple sources. Alignment and reduction transforms this mass of data into a more manageable and representative collection of data, for example "the 95% latency across the average of all tasks in a cluster". This representative data can be more easily graphed and comprehended, and the individual time series data is still available for later drilldown. For more details, see Filtering and aggregation (https://cloud.google.com/monitoring/api/v3/ aggregation). Corresponds to the JSON property aggregation



1025
1026
1027
# File 'generated/google/apis/monitoring_v1/classes.rb', line 1025

def aggregation
  @aggregation
end

#filterString

Required. The monitoring filter (https://cloud.google.com/monitoring/api/v3/ filters) that identifies the metric types, resources, and projects to query. Corresponds to the JSON property filter

Returns:

  • (String)


1031
1032
1033
# File 'generated/google/apis/monitoring_v1/classes.rb', line 1031

def filter
  @filter
end

#pick_time_series_filterGoogle::Apis::MonitoringV1::PickTimeSeriesFilter

Describes a ranking-based time series filter. Each input time series is ranked with an aligner. The filter will allow up to num_time_series time series to pass through it, selecting them based on the relative ranking.For example, if ranking_method is METHOD_MEAN,direction is BOTTOM, and num_time_series is 3, then the 3 times series with the lowest mean values will pass through the filter. Corresponds to the JSON property pickTimeSeriesFilter



1041
1042
1043
# File 'generated/google/apis/monitoring_v1/classes.rb', line 1041

def pick_time_series_filter
  @pick_time_series_filter
end

#secondary_aggregationGoogle::Apis::MonitoringV1::Aggregation

Describes how to combine multiple time series to provide a different view of the data. Aggregation of time series is done in two steps. First, each time series in the set is aligned to the same time interval boundaries, then the set of time series is optionally reduced in number.Alignment consists of applying the per_series_aligner operation to each time series after its data has been divided into regular alignment_period time intervals. This process takes all of the data points in an alignment period, applies a mathematical transformation such as averaging, minimum, maximum, delta, etc., and converts them into a single data point per period.Reduction is when the aligned and transformed time series can optionally be combined, reducing the number of time series through similar mathematical transformations. Reduction involves applying a cross_series_reducer to all the time series, optionally sorting the time series into subsets with group_by_fields, and applying the reducer to each subset.The raw time series data can contain a huge amount of information from multiple sources. Alignment and reduction transforms this mass of data into a more manageable and representative collection of data, for example "the 95% latency across the average of all tasks in a cluster". This representative data can be more easily graphed and comprehended, and the individual time series data is still available for later drilldown. For more details, see Filtering and aggregation (https://cloud.google.com/monitoring/api/v3/ aggregation). Corresponds to the JSON property secondaryAggregation



1066
1067
1068
# File 'generated/google/apis/monitoring_v1/classes.rb', line 1066

def secondary_aggregation
  @secondary_aggregation
end

#statistical_time_series_filterGoogle::Apis::MonitoringV1::StatisticalTimeSeriesFilter

A filter that ranks streams based on their statistical relation to other streams in a request. Note: This field is deprecated and completely ignored by the API. Corresponds to the JSON property statisticalTimeSeriesFilter



1073
1074
1075
# File 'generated/google/apis/monitoring_v1/classes.rb', line 1073

def statistical_time_series_filter
  @statistical_time_series_filter
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1080
1081
1082
1083
1084
1085
1086
# File 'generated/google/apis/monitoring_v1/classes.rb', line 1080

def update!(**args)
  @aggregation = args[:aggregation] if args.key?(:aggregation)
  @filter = args[:filter] if args.key?(:filter)
  @pick_time_series_filter = args[:pick_time_series_filter] if args.key?(:pick_time_series_filter)
  @secondary_aggregation = args[:secondary_aggregation] if args.key?(:secondary_aggregation)
  @statistical_time_series_filter = args[:statistical_time_series_filter] if args.key?(:statistical_time_series_filter)
end