Class: Google::Api::MetricDescriptor
- Inherits:
-
Object
- Object
- Google::Api::MetricDescriptor
- Defined in:
- lib/google/cloud/logging/v2/doc/google/api/metric.rb
Overview
Defines a metric type and its schema. Once a metric descriptor is created, deleting or altering it stops data collection and makes the metric type's existing data unusable.
Defined Under Namespace
Modules: MetricKind, ValueType
Instance Attribute Summary collapse
-
#description ⇒ String
A detailed description of the metric, which can be used in documentation.
-
#display_name ⇒ String
A concise name for the metric, which can be displayed in user interfaces.
-
#labels ⇒ Array<Google::Api::LabelDescriptor>
The set of labels that can be used to describe a specific instance of this metric type.
-
#metric_kind ⇒ Google::Api::MetricDescriptor::MetricKind
Whether the metric records instantaneous values, changes to a value, etc.
-
#name ⇒ String
The resource name of the metric descriptor.
-
#type ⇒ String
The metric type, including its DNS name prefix.
-
#unit ⇒ String
The unit in which the metric value is reported.
-
#value_type ⇒ Google::Api::MetricDescriptor::ValueType
Whether the measurement is an integer, a floating-point number, etc.
Instance Attribute Details
#description ⇒ String
Returns A detailed description of the metric, which can be used in documentation.
128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 |
# File 'lib/google/cloud/logging/v2/doc/google/api/metric.rb', line 128 class MetricDescriptor # The kind of measurement. It describes how the data is reported. module MetricKind # Do not use this default value. METRIC_KIND_UNSPECIFIED = 0 # An instantaneous measurement of a value. GAUGE = 1 # The change in a value during a time interval. DELTA = 2 # A value accumulated over a time interval. Cumulative # measurements in a time series should have the same start time # and increasing end times, until an event resets the cumulative # value to zero and sets a new start time for the following # points. CUMULATIVE = 3 end # The value type of a metric. module ValueType # Do not use this default value. VALUE_TYPE_UNSPECIFIED = 0 # The value is a boolean. # This value type can be used only if the metric kind is +GAUGE+. BOOL = 1 # The value is a signed 64-bit integer. INT64 = 2 # The value is a double precision floating point number. DOUBLE = 3 # The value is a text string. # This value type can be used only if the metric kind is +GAUGE+. STRING = 4 # The value is a {Google::Api::Distribution +Distribution+}. DISTRIBUTION = 5 # The value is money. MONEY = 6 end end |
#display_name ⇒ String
Returns A concise name for the metric, which can be displayed in user interfaces. Use sentence case without an ending period, for example "Request count".
128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 |
# File 'lib/google/cloud/logging/v2/doc/google/api/metric.rb', line 128 class MetricDescriptor # The kind of measurement. It describes how the data is reported. module MetricKind # Do not use this default value. METRIC_KIND_UNSPECIFIED = 0 # An instantaneous measurement of a value. GAUGE = 1 # The change in a value during a time interval. DELTA = 2 # A value accumulated over a time interval. Cumulative # measurements in a time series should have the same start time # and increasing end times, until an event resets the cumulative # value to zero and sets a new start time for the following # points. CUMULATIVE = 3 end # The value type of a metric. module ValueType # Do not use this default value. VALUE_TYPE_UNSPECIFIED = 0 # The value is a boolean. # This value type can be used only if the metric kind is +GAUGE+. BOOL = 1 # The value is a signed 64-bit integer. INT64 = 2 # The value is a double precision floating point number. DOUBLE = 3 # The value is a text string. # This value type can be used only if the metric kind is +GAUGE+. STRING = 4 # The value is a {Google::Api::Distribution +Distribution+}. DISTRIBUTION = 5 # The value is money. MONEY = 6 end end |
#labels ⇒ Array<Google::Api::LabelDescriptor>
Returns The set of labels that can be used to describe a specific instance of this metric type. For example, the +appengine.googleapis.com/http/server/response_latencies+ metric type has a label for the HTTP response code, +response_code+, so you can look at latencies for successful responses or just for responses that failed.
128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 |
# File 'lib/google/cloud/logging/v2/doc/google/api/metric.rb', line 128 class MetricDescriptor # The kind of measurement. It describes how the data is reported. module MetricKind # Do not use this default value. METRIC_KIND_UNSPECIFIED = 0 # An instantaneous measurement of a value. GAUGE = 1 # The change in a value during a time interval. DELTA = 2 # A value accumulated over a time interval. Cumulative # measurements in a time series should have the same start time # and increasing end times, until an event resets the cumulative # value to zero and sets a new start time for the following # points. CUMULATIVE = 3 end # The value type of a metric. module ValueType # Do not use this default value. VALUE_TYPE_UNSPECIFIED = 0 # The value is a boolean. # This value type can be used only if the metric kind is +GAUGE+. BOOL = 1 # The value is a signed 64-bit integer. INT64 = 2 # The value is a double precision floating point number. DOUBLE = 3 # The value is a text string. # This value type can be used only if the metric kind is +GAUGE+. STRING = 4 # The value is a {Google::Api::Distribution +Distribution+}. DISTRIBUTION = 5 # The value is money. MONEY = 6 end end |
#metric_kind ⇒ Google::Api::MetricDescriptor::MetricKind
Returns Whether the metric records instantaneous values, changes to a value, etc. Some combinations of +metric_kind+ and +value_type+ might not be supported.
128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 |
# File 'lib/google/cloud/logging/v2/doc/google/api/metric.rb', line 128 class MetricDescriptor # The kind of measurement. It describes how the data is reported. module MetricKind # Do not use this default value. METRIC_KIND_UNSPECIFIED = 0 # An instantaneous measurement of a value. GAUGE = 1 # The change in a value during a time interval. DELTA = 2 # A value accumulated over a time interval. Cumulative # measurements in a time series should have the same start time # and increasing end times, until an event resets the cumulative # value to zero and sets a new start time for the following # points. CUMULATIVE = 3 end # The value type of a metric. module ValueType # Do not use this default value. VALUE_TYPE_UNSPECIFIED = 0 # The value is a boolean. # This value type can be used only if the metric kind is +GAUGE+. BOOL = 1 # The value is a signed 64-bit integer. INT64 = 2 # The value is a double precision floating point number. DOUBLE = 3 # The value is a text string. # This value type can be used only if the metric kind is +GAUGE+. STRING = 4 # The value is a {Google::Api::Distribution +Distribution+}. DISTRIBUTION = 5 # The value is money. MONEY = 6 end end |
#name ⇒ String
Returns The resource name of the metric descriptor. Depending on the implementation, the name typically includes: (1) the parent resource name that defines the scope of the metric type or of its data; and (2) the metric's URL-encoded type, which also appears in the +type+ field of this descriptor. For example, following is the resource name of a custom metric within the GCP project +my-project+:
"projects/my-project/metricDescriptors/custom.googleapis.com%2Finvoice%2Fpaid%2Famount"
128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 |
# File 'lib/google/cloud/logging/v2/doc/google/api/metric.rb', line 128 class MetricDescriptor # The kind of measurement. It describes how the data is reported. module MetricKind # Do not use this default value. METRIC_KIND_UNSPECIFIED = 0 # An instantaneous measurement of a value. GAUGE = 1 # The change in a value during a time interval. DELTA = 2 # A value accumulated over a time interval. Cumulative # measurements in a time series should have the same start time # and increasing end times, until an event resets the cumulative # value to zero and sets a new start time for the following # points. CUMULATIVE = 3 end # The value type of a metric. module ValueType # Do not use this default value. VALUE_TYPE_UNSPECIFIED = 0 # The value is a boolean. # This value type can be used only if the metric kind is +GAUGE+. BOOL = 1 # The value is a signed 64-bit integer. INT64 = 2 # The value is a double precision floating point number. DOUBLE = 3 # The value is a text string. # This value type can be used only if the metric kind is +GAUGE+. STRING = 4 # The value is a {Google::Api::Distribution +Distribution+}. DISTRIBUTION = 5 # The value is money. MONEY = 6 end end |
#type ⇒ String
Returns The metric type, including its DNS name prefix. The type is not URL-encoded. All user-defined custom metric types have the DNS name +custom.googleapis.com+. Metric types should use a natural hierarchical grouping. For example:
"custom.googleapis.com/invoice/paid/amount"
"appengine.googleapis.com/http/server/response_latencies"
128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 |
# File 'lib/google/cloud/logging/v2/doc/google/api/metric.rb', line 128 class MetricDescriptor # The kind of measurement. It describes how the data is reported. module MetricKind # Do not use this default value. METRIC_KIND_UNSPECIFIED = 0 # An instantaneous measurement of a value. GAUGE = 1 # The change in a value during a time interval. DELTA = 2 # A value accumulated over a time interval. Cumulative # measurements in a time series should have the same start time # and increasing end times, until an event resets the cumulative # value to zero and sets a new start time for the following # points. CUMULATIVE = 3 end # The value type of a metric. module ValueType # Do not use this default value. VALUE_TYPE_UNSPECIFIED = 0 # The value is a boolean. # This value type can be used only if the metric kind is +GAUGE+. BOOL = 1 # The value is a signed 64-bit integer. INT64 = 2 # The value is a double precision floating point number. DOUBLE = 3 # The value is a text string. # This value type can be used only if the metric kind is +GAUGE+. STRING = 4 # The value is a {Google::Api::Distribution +Distribution+}. DISTRIBUTION = 5 # The value is money. MONEY = 6 end end |
#unit ⇒ String
Returns The unit in which the metric value is reported. It is only applicable if the +value_type+ is +INT64+, +DOUBLE+, or +DISTRIBUTION+. The supported units are a subset of The Unified Code for Units of Measure standard:
Basic units (UNIT)
- +bit+ bit
- +By+ byte
- +s+ second
- +min+ minute
- +h+ hour
- +d+ day
Prefixes (PREFIX)
- +k+ kilo (10**3)
- +M+ mega (10**6)
- +G+ giga (10**9)
- +T+ tera (10**12)
- +P+ peta (10**15)
- +E+ exa (10**18)
- +Z+ zetta (10**21)
- +Y+ yotta (10**24)
- +m+ milli (10**-3)
- +u+ micro (10**-6)
- +n+ nano (10**-9)
- +p+ pico (10**-12)
- +f+ femto (10**-15)
- +a+ atto (10**-18)
- +z+ zepto (10**-21)
- +y+ yocto (10**-24)
- +Ki+ kibi (2**10)
- +Mi+ mebi (2**20)
- +Gi+ gibi (2**30)
- +Ti+ tebi (2**40)
Grammar
The grammar includes the dimensionless unit +1+, such as +1/s+.
The grammar also includes these connectors:
- +/+ division (as an infix operator, e.g. +1/s+).
- +.+ multiplication (as an infix operator, e.g. +GBy.d+)
The grammar for a unit is as follows:
Expression = Component { "." Component } { "/" Component } ;
Component = [ PREFIX ] UNIT [ Annotation ]
| Annotation
| "1"
;
Annotation = "{" NAME "}" ;
Notes:
- +Annotation+ is just a comment if it follows a +UNIT+ and is equivalent to +1+ if it is used alone. For examples, +requests/s == 1/s+, +Bytransmitted/s == By/s+.
- +NAME+ is a sequence of non-blank printable ASCII characters not containing 'or ''.
128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 |
# File 'lib/google/cloud/logging/v2/doc/google/api/metric.rb', line 128 class MetricDescriptor # The kind of measurement. It describes how the data is reported. module MetricKind # Do not use this default value. METRIC_KIND_UNSPECIFIED = 0 # An instantaneous measurement of a value. GAUGE = 1 # The change in a value during a time interval. DELTA = 2 # A value accumulated over a time interval. Cumulative # measurements in a time series should have the same start time # and increasing end times, until an event resets the cumulative # value to zero and sets a new start time for the following # points. CUMULATIVE = 3 end # The value type of a metric. module ValueType # Do not use this default value. VALUE_TYPE_UNSPECIFIED = 0 # The value is a boolean. # This value type can be used only if the metric kind is +GAUGE+. BOOL = 1 # The value is a signed 64-bit integer. INT64 = 2 # The value is a double precision floating point number. DOUBLE = 3 # The value is a text string. # This value type can be used only if the metric kind is +GAUGE+. STRING = 4 # The value is a {Google::Api::Distribution +Distribution+}. DISTRIBUTION = 5 # The value is money. MONEY = 6 end end |
#value_type ⇒ Google::Api::MetricDescriptor::ValueType
Returns Whether the measurement is an integer, a floating-point number, etc. Some combinations of +metric_kind+ and +value_type+ might not be supported.
128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 |
# File 'lib/google/cloud/logging/v2/doc/google/api/metric.rb', line 128 class MetricDescriptor # The kind of measurement. It describes how the data is reported. module MetricKind # Do not use this default value. METRIC_KIND_UNSPECIFIED = 0 # An instantaneous measurement of a value. GAUGE = 1 # The change in a value during a time interval. DELTA = 2 # A value accumulated over a time interval. Cumulative # measurements in a time series should have the same start time # and increasing end times, until an event resets the cumulative # value to zero and sets a new start time for the following # points. CUMULATIVE = 3 end # The value type of a metric. module ValueType # Do not use this default value. VALUE_TYPE_UNSPECIFIED = 0 # The value is a boolean. # This value type can be used only if the metric kind is +GAUGE+. BOOL = 1 # The value is a signed 64-bit integer. INT64 = 2 # The value is a double precision floating point number. DOUBLE = 3 # The value is a text string. # This value type can be used only if the metric kind is +GAUGE+. STRING = 4 # The value is a {Google::Api::Distribution +Distribution+}. DISTRIBUTION = 5 # The value is money. MONEY = 6 end end |