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
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 140 141 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 114 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.
34 35 36 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 34 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. For a data point to be posted, its timestamp must be near current time (less than two hours in the past and less than 10 minutes in the future).
69 70 71 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 69 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 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 512. Empty strings are not allowed for keys or values. Avoid entering confidential information.
Example: {\"resourceId\": \"ocid1.instance.region1.phx.exampleuniqueID\"}
55 56 57 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 55 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\"
63 64 65 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 63 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. Avoid entering confidential information.
Example: my_app.success_rate
44 45 46 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 44 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. Custom metrics can't use the following reserved prefixes: oci_
and oracle_
Avoid entering confidential information.
Example: my_namespace
20 21 22 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 20 def namespace @namespace end |
#resource_group ⇒ String
Resource group to assign to the metric. A resource group is a custom string that you can match when retrieving custom metrics. 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
29 30 31 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 29 def resource_group @resource_group end |
Class Method Details
.attribute_map ⇒ Object
Attribute mapping from ruby-style variable name to JSON key.
72 73 74 75 76 77 78 79 80 81 82 83 84 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 72 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.
87 88 89 90 91 92 93 94 95 96 97 98 99 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 87 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.
150 151 152 153 154 155 156 157 158 159 160 161 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 150 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
186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 186 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
166 167 168 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 166 def eql?(other) self == other end |
#hash ⇒ Fixnum
Calculates hash code according to all attributes.
175 176 177 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 175 def hash [namespace, resource_group, compartment_id, name, dimensions, , datapoints].hash end |
#to_hash ⇒ Hash
Returns the object in the form of hash
219 220 221 222 223 224 225 226 227 228 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 219 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
213 214 215 |
# File 'lib/oci/monitoring/models/metric_data_details.rb', line 213 def to_s to_hash.to_s end |