Class: Google::Apis::MonitoringV3::Snooze

Inherits:
Object
  • Object
show all
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 Snooze will prevent any alerts from being opened, and close any that are already open. The Snooze will work on alerts that match the criteria defined in the Snooze. The Snooze will be active from interval.start_time through interval.end_time.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Snooze

Returns a new instance of Snooze.



4447
4448
4449
# File 'lib/google/apis/monitoring_v3/classes.rb', line 4447

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

Instance Attribute Details

#criteriaGoogle::Apis::MonitoringV3::Criteria

Criteria specific to the AlertPolicys that this Snooze applies to. The Snooze will suppress alerts that come from one of the AlertPolicys whose names are supplied. Corresponds to the JSON property criteria



4399
4400
4401
# File 'lib/google/apis/monitoring_v3/classes.rb', line 4399

def criteria
  @criteria
end

#display_nameString

Required. A display name for the Snooze. This can be, at most, 512 unicode characters. Corresponds to the JSON property displayName

Returns:

  • (String)


4405
4406
4407
# File 'lib/google/apis/monitoring_v3/classes.rb', line 4405

def display_name
  @display_name
end

#intervalGoogle::Apis::MonitoringV3::TimeInterval

Describes a time interval: Reads: A half-open time interval. It includes the end time but excludes the start time: (startTime, endTime]. The start time must be specified, must be earlier than the end time, and should be no older than the data retention period for the metric. Writes: A closed time interval. It extends from the start time to the end time, and includes both: [startTime, endTime]. Valid time intervals depend on the MetricKind (https://cloud.google. com/monitoring/api/ref_v3/rest/v3/projects.metricDescriptors#MetricKind) of the metric value. The end time must not be earlier than the start time, and the end time must not be more than 25 hours in the past or more than five minutes in the future. For GAUGE metrics, the startTime value is technically optional; if no value is specified, the start time defaults to the value of the end time, and the interval represents a single point in time. If both start and end times are specified, they must be identical. Such an interval is valid only for GAUGE metrics, which are point-in-time measurements. The end time of a new interval must be at least a millisecond after the end time of the previous interval. For DELTA metrics, the start time and end time must specify a non-zero interval, with subsequent points specifying contiguous and non-overlapping intervals. For DELTA metrics, the start time of the next interval must be at least a millisecond after the end time of the previous interval. For CUMULATIVE metrics, the start time and end time must specify a non-zero interval, with subsequent points specifying the same start time and increasing end times, until an event resets the cumulative value to zero and sets a new start time for the following points. The new start time must be at least a millisecond after the end time of the previous interval. The start time of a new interval must be at least a millisecond after the end time of the previous interval because intervals are closed. If the start time of a new interval is the same as the end time of the previous interval, then data written at the new start time could overwrite data written at the previous end time. Corresponds to the JSON property interval



4438
4439
4440
# File 'lib/google/apis/monitoring_v3/classes.rb', line 4438

def interval
  @interval
end

#nameString

Required. Identifier. The name of the Snooze. The format is: projects/[ PROJECT_ID_OR_NUMBER]/snoozes/[SNOOZE_ID] The ID of the Snooze will be generated by the system. Corresponds to the JSON property name

Returns:

  • (String)


4445
4446
4447
# File 'lib/google/apis/monitoring_v3/classes.rb', line 4445

def name
  @name
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



4452
4453
4454
4455
4456
4457
# File 'lib/google/apis/monitoring_v3/classes.rb', line 4452

def update!(**args)
  @criteria = args[:criteria] if args.key?(:criteria)
  @display_name = args[:display_name] if args.key?(:display_name)
  @interval = args[:interval] if args.key?(:interval)
  @name = args[:name] if args.key?(:name)
end