Class: Google::Apis::IntegrationsV1::GoogleCloudIntegrationsV1alphaIntegrationAlertConfig

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/integrations_v1/classes.rb,
lib/google/apis/integrations_v1/representations.rb,
lib/google/apis/integrations_v1/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.



8447
8448
8449
# File 'lib/google/apis/integrations_v1/classes.rb', line 8447

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)


8387
8388
8389
# File 'lib/google/apis/integrations_v1/classes.rb', line 8387

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)


8393
8394
8395
# File 'lib/google/apis/integrations_v1/classes.rb', line 8393

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)


8399
8400
8401
# File 'lib/google/apis/integrations_v1/classes.rb', line 8399

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)


8406
8407
8408
# File 'lib/google/apis/integrations_v1/classes.rb', line 8406

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)


8413
8414
8415
# File 'lib/google/apis/integrations_v1/classes.rb', line 8413

def duration_threshold
  @duration_threshold
end

#metric_typeString

The type of metric. Corresponds to the JSON property metricType

Returns:

  • (String)


8418
8419
8420
# File 'lib/google/apis/integrations_v1/classes.rb', line 8418

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)


8424
8425
8426
# File 'lib/google/apis/integrations_v1/classes.rb', line 8424

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)


8432
8433
8434
# File 'lib/google/apis/integrations_v1/classes.rb', line 8432

def threshold_type
  @threshold_type
end

#threshold_valueGoogle::Apis::IntegrationsV1::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



8445
8446
8447
# File 'lib/google/apis/integrations_v1/classes.rb', line 8445

def threshold_value
  @threshold_value
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



8452
8453
8454
8455
8456
8457
8458
8459
8460
8461
8462
# File 'lib/google/apis/integrations_v1/classes.rb', line 8452

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