Class: Google::Apis::MonitoringV3::NotificationChannel

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 NotificationChannel is a medium through which an alert is delivered when a policy violation is detected. Examples of channels include email, SMS, and third-party messaging applications. Fields containing sensitive information like authentication tokens or contact info are only partially populated on retrieval.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ NotificationChannel

Returns a new instance of NotificationChannel.



3563
3564
3565
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3563

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

Instance Attribute Details

#creation_recordGoogle::Apis::MonitoringV3::MutationRecord

Describes a change made to a configuration. Corresponds to the JSON property creationRecord



3484
3485
3486
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3484

def creation_record
  @creation_record
end

#descriptionString

An optional human-readable description of this notification channel. This description may provide additional details, beyond the display name, for the channel. This may not exceed 1024 Unicode characters. Corresponds to the JSON property description

Returns:

  • (String)


3491
3492
3493
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3491

def description
  @description
end

#display_nameString

An optional human-readable name for this notification channel. It is recommended that you specify a non-empty and unique name in order to make it easier to identify the channels in your project, though this is not enforced. The display name is limited to 512 Unicode characters. Corresponds to the JSON property displayName

Returns:

  • (String)


3499
3500
3501
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3499

def display_name
  @display_name
end

#enabledBoolean Also known as: enabled?

Whether notifications are forwarded to the described channel. This makes it possible to disable delivery of notifications to a particular channel without removing the channel from all alerting policies that reference the channel. This is a more convenient approach when the change is temporary and you want to receive notifications from the same set of alerting policies on the channel at some point in the future. Corresponds to the JSON property enabled

Returns:

  • (Boolean)


3509
3510
3511
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3509

def enabled
  @enabled
end

#labelsHash<String,String>

Configuration fields that define the channel and its behavior. The permissible and required labels are specified in the NotificationChannelDescriptor.labels of the NotificationChannelDescriptor corresponding to the type field. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


3517
3518
3519
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3517

def labels
  @labels
end

#mutation_recordsArray<Google::Apis::MonitoringV3::MutationRecord>

Records of the modification of this channel. Corresponds to the JSON property mutationRecords



3522
3523
3524
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3522

def mutation_records
  @mutation_records
end

#nameString

Identifier. The full REST resource name for this channel. The format is: projects/[PROJECT_ID_OR_NUMBER]/notificationChannels/[CHANNEL_ID] The [ CHANNEL_ID] is automatically assigned by the server on creation. Corresponds to the JSON property name

Returns:

  • (String)


3529
3530
3531
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3529

def name
  @name
end

#typeString

The type of the notification channel. This field matches the value of the NotificationChannelDescriptor.type field. Corresponds to the JSON property type

Returns:

  • (String)


3535
3536
3537
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3535

def type
  @type
end

#user_labelsHash<String,String>

User-supplied key/value data that does not need to conform to the corresponding NotificationChannelDescriptor's schema, unlike the labels field. This field is intended to be used for organizing and identifying the NotificationChannel objects.The field can contain up to 64 entries. Each key and value is limited to 63 Unicode characters or 128 bytes, whichever is smaller. Labels and values can contain only lowercase letters, numerals, underscores, and dashes. Keys must begin with a letter. Corresponds to the JSON property userLabels

Returns:

  • (Hash<String,String>)


3546
3547
3548
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3546

def user_labels
  @user_labels
end

#verification_statusString

Indicates whether this channel has been verified or not. On a ListNotificationChannels or GetNotificationChannel operation, this field is expected to be populated.If the value is UNVERIFIED, then it indicates that the channel is non-functioning (it both requires verification and lacks verification); otherwise, it is assumed that the channel works.If the channel is neither VERIFIED nor UNVERIFIED, it implies that the channel is of a type that does not require verification or that this specific channel has been exempted from verification because it was created prior to verification being required for channels of this type.This field cannot be modified using a standard UpdateNotificationChannel operation. To change the value of this field, you must call VerifyNotificationChannel. Corresponds to the JSON property verificationStatus

Returns:

  • (String)


3561
3562
3563
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3561

def verification_status
  @verification_status
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3568
3569
3570
3571
3572
3573
3574
3575
3576
3577
3578
3579
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3568

def update!(**args)
  @creation_record = args[:creation_record] if args.key?(:creation_record)
  @description = args[:description] if args.key?(:description)
  @display_name = args[:display_name] if args.key?(:display_name)
  @enabled = args[:enabled] if args.key?(:enabled)
  @labels = args[:labels] if args.key?(:labels)
  @mutation_records = args[:mutation_records] if args.key?(:mutation_records)
  @name = args[:name] if args.key?(:name)
  @type = args[:type] if args.key?(:type)
  @user_labels = args[:user_labels] if args.key?(:user_labels)
  @verification_status = args[:verification_status] if args.key?(:verification_status)
end