Class: OCI::Monitoring::Models::MetricDataDetails
- Inherits:
-
Object
- Object
- OCI::Monitoring::Models::MetricDataDetails
- Defined in:
- lib/oci/monitoring/models/metric_data_details.rb
Overview
A metric object containing raw metric data points to be posted to the Monitoring service.
Instance Attribute Summary collapse
-
#compartment_id ⇒ String
[Required] The OCID of the compartment to use for metrics.
-
#datapoints ⇒ Array<OCI::Monitoring::Models::Datapoint>
[Required] A list of metric values with timestamps.
-
#dimensions ⇒ Hash<String, String>
[Required] Qualifiers provided in a metric definition.
-
#metadata ⇒ Hash<String, String>
Properties describing metrics.
-
#name ⇒ String
[Required] The name of the metric.
-
#namespace ⇒ String
[Required] The source service or application emitting the metric.
-
#resource_group ⇒ String
Resource group to assign to the metric.
Class Method Summary collapse
-
.attribute_map ⇒ Object
Attribute mapping from ruby-style variable name to JSON key.
-
.swagger_types ⇒ Object
Attribute type mapping.
Instance Method Summary collapse
-
#==(other) ⇒ Object
Checks equality by comparing each attribute.
-
#build_from_hash(attributes) ⇒ Object
Builds the object from hash.
- #eql?(other) ⇒ Boolean
-
#hash ⇒ Fixnum
Calculates hash code according to all attributes.
-
#initialize(attributes = {}) ⇒ MetricDataDetails
constructor
Initializes the object.
-
#to_hash ⇒ Hash
Returns the object in the form of hash.
-
#to_s ⇒ String
Returns the string representation of the object.
Constructor Details
#initialize(attributes = {}) ⇒ MetricDataDetails
Initializes the object
112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 112 def initialize(attributes = {}) return unless attributes.is_a?(Hash) # convert string to symbol for hash key attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v } self.namespace = attributes[:'namespace'] if attributes[:'namespace'] self.resource_group = attributes[:'resourceGroup'] if attributes[:'resourceGroup'] raise 'You cannot provide both :resourceGroup and :resource_group' if attributes.key?(:'resourceGroup') && attributes.key?(:'resource_group') self.resource_group = attributes[:'resource_group'] if attributes[:'resource_group'] self.compartment_id = attributes[:'compartmentId'] if attributes[:'compartmentId'] raise 'You cannot provide both :compartmentId and :compartment_id' if attributes.key?(:'compartmentId') && attributes.key?(:'compartment_id') self.compartment_id = attributes[:'compartment_id'] if attributes[:'compartment_id'] self.name = attributes[:'name'] if attributes[:'name'] self.dimensions = attributes[:'dimensions'] if attributes[:'dimensions'] self. = attributes[:'metadata'] if attributes[:'metadata'] self.datapoints = attributes[:'datapoints'] if attributes[:'datapoints'] end |
Instance Attribute Details
#compartment_id ⇒ String
[Required] The OCID of the compartment to use for metrics.
33 34 35 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 33 def compartment_id @compartment_id end |
#datapoints ⇒ Array<OCI::Monitoring::Models::Datapoint>
[Required] A list of metric values with timestamps. At least one data point is required per call.
67 68 69 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 67 def datapoints @datapoints end |
#dimensions ⇒ Hash<String, String>
[Required] Qualifiers provided in a metric definition. Available dimensions vary by metric namespace. Each dimension takes the form of a key-value pair. A valid dimension key includes only printable ASCII, excluding periods (.) and spaces. The character limit for a dimension key is 256. A valid dimension value includes only Unicode characters. The character limit for a dimension value is 256. Empty strings are not allowed for keys or values. Avoid entering confidential information.
Example: \"resourceId\": \"ocid1.instance.region1.phx.exampleuniqueID\"
54 55 56 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 54 def dimensions @dimensions end |
#metadata ⇒ Hash<String, String>
Properties describing metrics. These are not part of the unique fields identifying the metric. Each metadata item takes the form of a key-value pair. The character limit for a metadata key is 256. The character limit for a metadata value is 256.
Example: \"unit\": \"bytes\"
62 63 64 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 62 def @metadata end |
#name ⇒ String
[Required] The name of the metric.
A valid name value starts with an alphabetical character and includes only alphanumeric characters, dots, underscores, hyphens, and dollar signs. The oci_
prefix is reserved. Avoid entering confidential information.
Example: my_app.success_rate
43 44 45 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 43 def name @name end |
#namespace ⇒ String
[Required] The source service or application emitting the metric.
A valid namespace value starts with an alphabetical character and includes only alphanumeric characters and underscores. The "oci_" prefix is reserved. Avoid entering confidential information.
Example: my_namespace
19 20 21 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 19 def namespace @namespace end |
#resource_group ⇒ String
Resource group to assign to the metric. A resource group is a custom string that can be used as a filter. Only one resource group can be applied per metric. A valid resourceGroup value starts with an alphabetical character and includes only alphanumeric characters, periods (.), underscores (_), hyphens (-), and dollar signs ($). Avoid entering confidential information.
Example: frontend-fleet
28 29 30 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 28 def resource_group @resource_group end |
Class Method Details
.attribute_map ⇒ Object
Attribute mapping from ruby-style variable name to JSON key.
70 71 72 73 74 75 76 77 78 79 80 81 82 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 70 def self.attribute_map { # rubocop:disable Style/SymbolLiteral 'namespace': :'namespace', 'resource_group': :'resourceGroup', 'compartment_id': :'compartmentId', 'name': :'name', 'dimensions': :'dimensions', 'metadata': :'metadata', 'datapoints': :'datapoints' # rubocop:enable Style/SymbolLiteral } end |
.swagger_types ⇒ Object
Attribute type mapping.
85 86 87 88 89 90 91 92 93 94 95 96 97 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 85 def self.swagger_types { # rubocop:disable Style/SymbolLiteral 'namespace': :'String', 'resource_group': :'String', 'compartment_id': :'String', 'name': :'String', 'dimensions': :'Hash<String, String>', 'metadata': :'Hash<String, String>', 'datapoints': :'Array<OCI::Monitoring::Models::Datapoint>' # rubocop:enable Style/SymbolLiteral } end |
Instance Method Details
#==(other) ⇒ Object
Checks equality by comparing each attribute.
148 149 150 151 152 153 154 155 156 157 158 159 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 148 def ==(other) return true if equal?(other) self.class == other.class && namespace == other.namespace && resource_group == other.resource_group && compartment_id == other.compartment_id && name == other.name && dimensions == other.dimensions && == other. && datapoints == other.datapoints end |
#build_from_hash(attributes) ⇒ Object
Builds the object from hash
184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 184 def build_from_hash(attributes) return nil unless attributes.is_a?(Hash) self.class.swagger_types.each_pair do |key, type| if type =~ /^Array<(.*)>/i # check to ensure the input is an array given that the the attribute # is documented as an array but the input is not if attributes[self.class.attribute_map[key]].is_a?(Array) public_method("#{key}=").call( attributes[self.class.attribute_map[key]] .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) } ) end elsif !attributes[self.class.attribute_map[key]].nil? public_method("#{key}=").call( OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]]) ) end # or else data not found in attributes(hash), not an issue as the data can be optional end self end |
#eql?(other) ⇒ Boolean
164 165 166 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 164 def eql?(other) self == other end |
#hash ⇒ Fixnum
Calculates hash code according to all attributes.
173 174 175 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 173 def hash [namespace, resource_group, compartment_id, name, dimensions, , datapoints].hash end |
#to_hash ⇒ Hash
Returns the object in the form of hash
217 218 219 220 221 222 223 224 225 226 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 217 def to_hash hash = {} self.class.attribute_map.each_pair do |attr, param| value = public_method(attr).call next if value.nil? && !instance_variable_defined?("@#{attr}") hash[param] = _to_hash(value) end hash end |
#to_s ⇒ String
Returns the string representation of the object
211 212 213 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 211 def to_s to_hash.to_s end |