Class: Google::Apis::MonitoringV3::MetricThreshold
- Inherits:
-
Object
- Object
- Google::Apis::MonitoringV3::MetricThreshold
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/monitoring_v3/classes.rb,
lib/google/apis/monitoring_v3/representations.rb,
lib/google/apis/monitoring_v3/representations.rb
Overview
A condition type that compares a collection of time series against a threshold.
Instance Attribute Summary collapse
-
#aggregations ⇒ Array<Google::Apis::MonitoringV3::Aggregation>
Specifies the alignment of data points in individual time series as well as how to combine the retrieved time series together (such as when aggregating multiple streams on each resource to a single stream for each resource or when aggregating streams across all members of a group of resources).
-
#comparison ⇒ String
The comparison to apply between the time series (indicated by filter and aggregation) and the threshold (indicated by threshold_value).
-
#denominator_aggregations ⇒ Array<Google::Apis::MonitoringV3::Aggregation>
Specifies the alignment of data points in individual time series selected by denominatorFilter as well as how to combine the retrieved time series together (such as when aggregating multiple streams on each resource to a single stream for each resource or when aggregating streams across all members of a group of resources).When computing ratios, the aggregations and denominator_aggregations fields must use the same alignment period and produce time series that have the same periodicity and labels.
-
#denominator_filter ⇒ String
A filter (https://cloud.google.com/monitoring/api/v3/filters) that identifies a time series that should be used as the denominator of a ratio that will be compared with the threshold.
-
#duration ⇒ String
The amount of time that a time series must violate the threshold to be considered failing.
-
#evaluation_missing_data ⇒ String
A condition control that determines how metric-threshold conditions are evaluated when data stops arriving.
-
#filter ⇒ String
Required.
-
#forecast_options ⇒ Google::Apis::MonitoringV3::ForecastOptions
Options used when forecasting the time series and testing the predicted value against the threshold.
-
#threshold_value ⇒ Float
A value against which to compare the time series.
-
#trigger ⇒ Google::Apis::MonitoringV3::Trigger
Specifies how many time series must fail a predicate to trigger a condition.
Instance Method Summary collapse
-
#initialize(**args) ⇒ MetricThreshold
constructor
A new instance of MetricThreshold.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ MetricThreshold
Returns a new instance of MetricThreshold.
3070 3071 3072 |
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3070 def initialize(**args) update!(**args) end |
Instance Attribute Details
#aggregations ⇒ Array<Google::Apis::MonitoringV3::Aggregation>
Specifies the alignment of data points in individual time series as well as
how to combine the retrieved time series together (such as when aggregating
multiple streams on each resource to a single stream for each resource or when
aggregating streams across all members of a group of resources). Multiple
aggregations are applied in the order specified.This field is similar to the
one in the ListTimeSeries request (https://cloud.google.com/monitoring/api/
ref_v3/rest/v3/projects.timeSeries/list). It is advisable to use the
ListTimeSeries method when debugging this field.
Corresponds to the JSON property aggregations
2989 2990 2991 |
# File 'lib/google/apis/monitoring_v3/classes.rb', line 2989 def aggregations @aggregations end |
#comparison ⇒ String
The comparison to apply between the time series (indicated by filter and
aggregation) and the threshold (indicated by threshold_value). The comparison
is applied on each time series, with the time series on the left-hand side and
the threshold on the right-hand side.Only COMPARISON_LT and COMPARISON_GT are
supported currently.
Corresponds to the JSON property comparison
2998 2999 3000 |
# File 'lib/google/apis/monitoring_v3/classes.rb', line 2998 def comparison @comparison end |
#denominator_aggregations ⇒ Array<Google::Apis::MonitoringV3::Aggregation>
Specifies the alignment of data points in individual time series selected by
denominatorFilter as well as how to combine the retrieved time series together
(such as when aggregating multiple streams on each resource to a single stream
for each resource or when aggregating streams across all members of a group of
resources).When computing ratios, the aggregations and
denominator_aggregations fields must use the same alignment period and produce
time series that have the same periodicity and labels.
Corresponds to the JSON property denominatorAggregations
3009 3010 3011 |
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3009 def denominator_aggregations @denominator_aggregations end |
#denominator_filter ⇒ String
A filter (https://cloud.google.com/monitoring/api/v3/filters) that identifies
a time series that should be used as the denominator of a ratio that will be
compared with the threshold. If a denominator_filter is specified, the time
series specified by the filter field will be used as the numerator.The filter
must specify the metric type and optionally may contain restrictions on
resource type, resource labels, and metric labels. This field may not exceed
2048 Unicode characters in length.
Corresponds to the JSON property denominatorFilter
3020 3021 3022 |
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3020 def denominator_filter @denominator_filter end |
#duration ⇒ String
The amount of time that a time series must violate the threshold to be
considered failing. Currently, only values that are a multiple of a minute--e.
g., 0, 60, 120, or 300 seconds--are supported. If an invalid value is given,
an error will be returned. When choosing a duration, it is useful to keep in
mind the frequency of the underlying time series data (which may also be
affected by any alignments specified in the aggregations field); a good
duration is long enough so that a single outlier does not generate spurious
alerts, but short enough that unhealthy states are detected and alerted on
quickly.
Corresponds to the JSON property duration
3033 3034 3035 |
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3033 def duration @duration end |
#evaluation_missing_data ⇒ String
A condition control that determines how metric-threshold conditions are
evaluated when data stops arriving.
Corresponds to the JSON property evaluationMissingData
3039 3040 3041 |
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3039 def evaluation_missing_data @evaluation_missing_data end |
#filter ⇒ String
Required. A filter (https://cloud.google.com/monitoring/api/v3/filters) that
identifies which time series should be compared with the threshold.The filter
is similar to the one that is specified in the ListTimeSeries request (https://
cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list) (that
call is useful to verify the time series that will be retrieved / processed).
The filter must specify the metric type and the resource type. Optionally, it
can specify resource labels and metric labels. This field must not exceed 2048
Unicode characters in length.
Corresponds to the JSON property filter
3051 3052 3053 |
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3051 def filter @filter end |
#forecast_options ⇒ Google::Apis::MonitoringV3::ForecastOptions
Options used when forecasting the time series and testing the predicted value
against the threshold.
Corresponds to the JSON property forecastOptions
3057 3058 3059 |
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3057 def @forecast_options end |
#threshold_value ⇒ Float
A value against which to compare the time series.
Corresponds to the JSON property thresholdValue
3062 3063 3064 |
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3062 def threshold_value @threshold_value end |
#trigger ⇒ Google::Apis::MonitoringV3::Trigger
Specifies how many time series must fail a predicate to trigger a condition.
If not specified, then a count: 1
trigger is used.
Corresponds to the JSON property trigger
3068 3069 3070 |
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3068 def trigger @trigger end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
3075 3076 3077 3078 3079 3080 3081 3082 3083 3084 3085 3086 |
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3075 def update!(**args) @aggregations = args[:aggregations] if args.key?(:aggregations) @comparison = args[:comparison] if args.key?(:comparison) @denominator_aggregations = args[:denominator_aggregations] if args.key?(:denominator_aggregations) @denominator_filter = args[:denominator_filter] if args.key?(:denominator_filter) @duration = args[:duration] if args.key?(:duration) @evaluation_missing_data = args[:evaluation_missing_data] if args.key?(:evaluation_missing_data) @filter = args[:filter] if args.key?(:filter) @forecast_options = args[:forecast_options] if args.key?(:forecast_options) @threshold_value = args[:threshold_value] if args.key?(:threshold_value) @trigger = args[:trigger] if args.key?(:trigger) end |