Class: Google::Apis::MonitoringV3::MonitoredResourceDescriptor

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
more...

Overview

An object that describes the schema of a MonitoredResource object using a type name and a set of labels. For example, the monitored resource descriptor for Google Compute Engine VM instances has a type of "gce_instance" and specifies the use of the labels "instance_id" and "zone" to identify particular VM instances.Different APIs can support different monitored resource types. APIs generally provide a list method that returns the monitored resource descriptors used by the API.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ MonitoredResourceDescriptor

Returns a new instance of MonitoredResourceDescriptor.

[View source]

3238
3239
3240
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3238

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

Instance Attribute Details

#descriptionString

Optional. A detailed description of the monitored resource type that might be used in documentation. Corresponds to the JSON property description

Returns:

  • (String)

3198
3199
3200
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3198

def description
  @description
end

#display_nameString

Optional. A concise name for the monitored resource type that might be displayed in user interfaces. It should be a Title Cased Noun Phrase, without any article or other determiners. For example, "Google Cloud SQL Database". Corresponds to the JSON property displayName

Returns:

  • (String)

3205
3206
3207
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3205

def display_name
  @display_name
end

#labelsArray<Google::Apis::MonitoringV3::LabelDescriptor>

Required. A set of labels used to describe instances of this monitored resource type. For example, an individual Google Cloud SQL database is identified by values for the labels "database_id" and "zone". Corresponds to the JSON property labels


3212
3213
3214
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3212

def labels
  @labels
end

#launch_stageString

Optional. The launch stage of the monitored resource definition. Corresponds to the JSON property launchStage

Returns:

  • (String)

3217
3218
3219
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3217

def launch_stage
  @launch_stage
end

#nameString

Optional. The resource name of the monitored resource descriptor: "projects/ project_id/monitoredResourceDescriptors/type" where type is the value of the type field in this object and project_id is a project ID that provides API-specific context for accessing the type. APIs that do not use project information can use the resource name format "monitoredResourceDescriptors/ type". Corresponds to the JSON property name

Returns:

  • (String)

3227
3228
3229
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3227

def name
  @name
end

#typeString

Required. The monitored resource type. For example, the type " cloudsql_database" represents databases in Google Cloud SQL. For a list of types, see Monitored resource types (https://cloud.google.com/monitoring/api/ resources) and Logging resource types (https://cloud.google.com/logging/docs/ api/v2/resource-list). Corresponds to the JSON property type

Returns:

  • (String)

3236
3237
3238
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3236

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object

[View source]

3243
3244
3245
3246
3247
3248
3249
3250
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3243

def update!(**args)
  @description = args[:description] if args.key?(:description)
  @display_name = args[:display_name] if args.key?(:display_name)
  @labels = args[:labels] if args.key?(:labels)
  @launch_stage = args[:launch_stage] if args.key?(:launch_stage)
  @name = args[:name] if args.key?(:name)
  @type = args[:type] if args.key?(:type)
end