Class: Google::Apis::IntegrationsV1alpha::GoogleCloudIntegrationsV1alphaIntegrationAlertConfig

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

Overview

Message to be used to configure custom alerting in the @code EventConfig protos for an event.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudIntegrationsV1alphaIntegrationAlertConfig

Returns a new instance of GoogleCloudIntegrationsV1alphaIntegrationAlertConfig.



6710
6711
6712
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 6710

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

Instance Attribute Details

#aggregation_periodString

The period over which the metric value should be aggregated and evaluated. Format is , where integer should be a positive integer and unit should be one of (s,m,h,d,w) meaning (second, minute, hour, day, week). For an EXPECTED_MIN threshold, this aggregation_period must be lesser than 24 hours. Corresponds to the JSON property aggregationPeriod

Returns:

  • (String)


6650
6651
6652
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 6650

def aggregation_period
  @aggregation_period
end

#alert_thresholdFixnum

For how many contiguous aggregation periods should the expected min or max be violated for the alert to be fired. Corresponds to the JSON property alertThreshold

Returns:

  • (Fixnum)


6656
6657
6658
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 6656

def alert_threshold
  @alert_threshold
end

#disable_alertBoolean Also known as: disable_alert?

Set to false by default. When set to true, the metrics are not aggregated or pushed to Monarch for this integration alert. Corresponds to the JSON property disableAlert

Returns:

  • (Boolean)


6662
6663
6664
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 6662

def disable_alert
  @disable_alert
end

#display_nameString

Name of the alert. This will be displayed in the alert subject. If set, this name should be unique within the scope of the integration. Corresponds to the JSON property displayName

Returns:

  • (String)


6669
6670
6671
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 6669

def display_name
  @display_name
end

#duration_thresholdString

Should be specified only for *AVERAGE_DURATION and *PERCENTILE_DURATION metrics. This member should be used to specify what duration value the metrics should exceed for the alert to trigger. Corresponds to the JSON property durationThreshold

Returns:

  • (String)


6676
6677
6678
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 6676

def duration_threshold
  @duration_threshold
end

#metric_typeString

The type of metric. Corresponds to the JSON property metricType

Returns:

  • (String)


6681
6682
6683
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 6681

def metric_type
  @metric_type
end

#only_final_attemptBoolean Also known as: only_final_attempt?

For either events or tasks, depending on the type of alert, count only final attempts, not retries. Corresponds to the JSON property onlyFinalAttempt

Returns:

  • (Boolean)


6687
6688
6689
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 6687

def only_final_attempt
  @only_final_attempt
end

#threshold_typeString

The threshold type, whether lower(expected_min) or upper(expected_max), for which this alert is being configured. If value falls below expected_min or exceeds expected_max, an alert will be fired. Corresponds to the JSON property thresholdType

Returns:

  • (String)


6695
6696
6697
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 6695

def threshold_type
  @threshold_type
end

#threshold_valueGoogle::Apis::IntegrationsV1alpha::GoogleCloudIntegrationsV1alphaIntegrationAlertConfigThresholdValue

The threshold value of the metric, above or below which the alert should be triggered. See EventAlertConfig or TaskAlertConfig for the different alert metric types in each case. For the *RATE metrics, one or both of these fields may be set. Zero is the default value and can be left at that. For * PERCENTILE_DURATION metrics, one or both of these fields may be set, and also, the duration threshold value should be specified in the threshold_duration_ms member below. For *AVERAGE_DURATION metrics, these fields should not be set at all. A different member, threshold_duration_ms, must be set in the EventAlertConfig or the TaskAlertConfig. Corresponds to the JSON property thresholdValue



6708
6709
6710
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 6708

def threshold_value
  @threshold_value
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



6715
6716
6717
6718
6719
6720
6721
6722
6723
6724
6725
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 6715

def update!(**args)
  @aggregation_period = args[:aggregation_period] if args.key?(:aggregation_period)
  @alert_threshold = args[:alert_threshold] if args.key?(:alert_threshold)
  @disable_alert = args[:disable_alert] if args.key?(:disable_alert)
  @display_name = args[:display_name] if args.key?(:display_name)
  @duration_threshold = args[:duration_threshold] if args.key?(:duration_threshold)
  @metric_type = args[:metric_type] if args.key?(:metric_type)
  @only_final_attempt = args[:only_final_attempt] if args.key?(:only_final_attempt)
  @threshold_type = args[:threshold_type] if args.key?(:threshold_type)
  @threshold_value = args[:threshold_value] if args.key?(:threshold_value)
end