Class: Google::Apis::IntegrationsV1alpha::EnterpriseCrmEventbusProtoWorkflowAlertConfig

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) ⇒ EnterpriseCrmEventbusProtoWorkflowAlertConfig

Returns a new instance of EnterpriseCrmEventbusProtoWorkflowAlertConfig.



3333
3334
3335
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 3333

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

Instance Attribute Details

#aggregation_periodString

For an EXPECTED_MIN threshold, this aggregation_period must be lesser than 24 hours. Corresponds to the JSON property aggregationPeriod

Returns:

  • (String)


3253
3254
3255
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 3253

def aggregation_period
  @aggregation_period
end

#alert_disabledBoolean Also known as: alert_disabled?

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

Returns:

  • (Boolean)


3259
3260
3261
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 3259

def alert_disabled
  @alert_disabled
end

#alert_nameString

A name to identify this alert. This will be displayed in the alert subject. If set, this name should be unique within the scope of the workflow. Corresponds to the JSON property alertName

Returns:

  • (String)


3266
3267
3268
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 3266

def alert_name
  @alert_name
end

#client_idString

Client associated with this alert configuration. Corresponds to the JSON property clientId

Returns:

  • (String)


3271
3272
3273
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 3271

def client_id
  @client_id
end

#duration_threshold_msFixnum

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 durationThresholdMs

Returns:

  • (Fixnum)


3278
3279
3280
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 3278

def duration_threshold_ms
  @duration_threshold_ms
end

#error_enum_listGoogle::Apis::IntegrationsV1alpha::EnterpriseCrmEventbusProtoBaseAlertConfigErrorEnumList

List of error enums for alerts. Corresponds to the JSON property errorEnumList



3283
3284
3285
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 3283

def error_enum_list
  @error_enum_list
end

#metric_typeString

Corresponds to the JSON property metricType

Returns:

  • (String)


3288
3289
3290
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 3288

def metric_type
  @metric_type
end

#num_aggregation_periodsFixnum

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 numAggregationPeriods

Returns:

  • (Fixnum)


3294
3295
3296
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 3294

def num_aggregation_periods
  @num_aggregation_periods
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)


3300
3301
3302
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 3300

def only_final_attempt
  @only_final_attempt
end

#playbook_urlString

Link to a playbook for resolving the issue that triggered this alert. Corresponds to the JSON property playbookUrl

Returns:

  • (String)


3306
3307
3308
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 3306

def playbook_url
  @playbook_url
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)


3313
3314
3315
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 3313

def threshold_type
  @threshold_type
end

#threshold_valueGoogle::Apis::IntegrationsV1alpha::EnterpriseCrmEventbusProtoBaseAlertConfigThresholdValue

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



3326
3327
3328
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 3326

def threshold_value
  @threshold_value
end

#warning_enum_listGoogle::Apis::IntegrationsV1alpha::EnterpriseCrmEventbusProtoBaseAlertConfigErrorEnumList

List of error enums for alerts. Corresponds to the JSON property warningEnumList



3331
3332
3333
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 3331

def warning_enum_list
  @warning_enum_list
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3338
3339
3340
3341
3342
3343
3344
3345
3346
3347
3348
3349
3350
3351
3352
# File 'lib/google/apis/integrations_v1alpha/classes.rb', line 3338

def update!(**args)
  @aggregation_period = args[:aggregation_period] if args.key?(:aggregation_period)
  @alert_disabled = args[:alert_disabled] if args.key?(:alert_disabled)
  @alert_name = args[:alert_name] if args.key?(:alert_name)
  @client_id = args[:client_id] if args.key?(:client_id)
  @duration_threshold_ms = args[:duration_threshold_ms] if args.key?(:duration_threshold_ms)
  @error_enum_list = args[:error_enum_list] if args.key?(:error_enum_list)
  @metric_type = args[:metric_type] if args.key?(:metric_type)
  @num_aggregation_periods = args[:num_aggregation_periods] if args.key?(:num_aggregation_periods)
  @only_final_attempt = args[:only_final_attempt] if args.key?(:only_final_attempt)
  @playbook_url = args[:playbook_url] if args.key?(:playbook_url)
  @threshold_type = args[:threshold_type] if args.key?(:threshold_type)
  @threshold_value = args[:threshold_value] if args.key?(:threshold_value)
  @warning_enum_list = args[:warning_enum_list] if args.key?(:warning_enum_list)
end