Class: Google::Apis::MonitoringV3::MonitoredResource

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 representing a resource that can be used for monitoring, logging, billing, or other purposes. Examples include virtual machine instances, databases, and storage devices such as disks. The type field identifies a MonitoredResourceDescriptor object that describes the resource's schema. Information in the labels field identifies the actual resource and its attributes according to the schema. For example, a particular Compute Engine VM instance could be represented by the following object, because the MonitoredResourceDescriptor for "gce_instance" has labels "project_id", " instance_id" and "zone": "type": "gce_instance", "labels": "project_id": " my-project", "instance_id": "12345678901234", "zone": "us-central1-a" ``

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ MonitoredResource

Returns a new instance of MonitoredResource.



3173
3174
3175
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3173

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

Instance Attribute Details

#labelsHash<String,String>

Required. Values for all of the labels listed in the associated monitored resource descriptor. For example, Compute Engine VM instances use the labels " project_id", "instance_id", and "zone". Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


3162
3163
3164
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3162

def labels
  @labels
end

#typeString

Required. The monitored resource type. This field must match the type field of a MonitoredResourceDescriptor object. For example, the type of a Compute Engine VM instance is gce_instance. 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)


3171
3172
3173
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3171

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3178
3179
3180
3181
# File 'lib/google/apis/monitoring_v3/classes.rb', line 3178

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