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.



4457
4458
4459
# File 'lib/google/apis/monitoring_v3/classes.rb', line 4457

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



4409
4410
4411
# File 'lib/google/apis/monitoring_v3/classes.rb', line 4409

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)


4415
4416
4417
# File 'lib/google/apis/monitoring_v3/classes.rb', line 4415

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



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

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)


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

def name
  @name
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



4462
4463
4464
4465
4466
4467
# File 'lib/google/apis/monitoring_v3/classes.rb', line 4462

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