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

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.



2735
2736
2737
# File 'lib/google/apis/monitoring_v3/classes.rb', line 2735

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)


2695
2696
2697
# File 'lib/google/apis/monitoring_v3/classes.rb', line 2695

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)


2702
2703
2704
# File 'lib/google/apis/monitoring_v3/classes.rb', line 2702

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



2709
2710
2711
# File 'lib/google/apis/monitoring_v3/classes.rb', line 2709

def labels
  @labels
end

#launch_stageString

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

Returns:

  • (String)


2714
2715
2716
# File 'lib/google/apis/monitoring_v3/classes.rb', line 2714

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)


2724
2725
2726
# File 'lib/google/apis/monitoring_v3/classes.rb', line 2724

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 Monitoring 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)


2733
2734
2735
# File 'lib/google/apis/monitoring_v3/classes.rb', line 2733

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2740
2741
2742
2743
2744
2745
2746
2747
# File 'lib/google/apis/monitoring_v3/classes.rb', line 2740

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