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.



6628
6629
6630
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 6628

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)


6568
6569
6570
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 6568

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)


6574
6575
6576
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 6574

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)


6580
6581
6582
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 6580

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)


6587
6588
6589
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 6587

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)


6594
6595
6596
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 6594

def duration_threshold
  @duration_threshold
end

#metric_typeString

The type of metric. Corresponds to the JSON property metricType

Returns:

  • (String)


6599
6600
6601
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 6599

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)


6605
6606
6607
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 6605

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)


6613
6614
6615
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 6613

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



6626
6627
6628
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 6626

def threshold_value
  @threshold_value
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



6633
6634
6635
6636
6637
6638
6639
6640
6641
6642
6643
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 6633

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