Class: Google::Apis::ServicemanagementV1::MetricDescriptor
- Inherits:
-
Object
- Object
- Google::Apis::ServicemanagementV1::MetricDescriptor
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- generated/google/apis/servicemanagement_v1/classes.rb,
generated/google/apis/servicemanagement_v1/representations.rb,
generated/google/apis/servicemanagement_v1/representations.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.
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::Apis::ServicemanagementV1::LabelDescriptor>
The set of labels that can be used to describe a specific instance of this metric type.
-
#metric_kind ⇒ String
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 ⇒ String
Whether the measurement is an integer, a floating-point number, etc.
Instance Method Summary collapse
-
#initialize(**args) ⇒ MetricDescriptor
constructor
A new instance of MetricDescriptor.
-
#update!(**args) ⇒ Object
Update properties of this object.
Methods included from Core::JsonObjectSupport
Methods included from Core::Hashable
Constructor Details
#initialize(**args) ⇒ MetricDescriptor
Returns a new instance of MetricDescriptor
875 876 877 |
# File 'generated/google/apis/servicemanagement_v1/classes.rb', line 875 def initialize(**args) update!(**args) end |
Instance Attribute Details
#description ⇒ String
A detailed description of the metric, which can be used in documentation.
Corresponds to the JSON property description
797 798 799 |
# File 'generated/google/apis/servicemanagement_v1/classes.rb', line 797 def description @description end |
#display_name ⇒ String
A concise name for the metric, which can be displayed in user interfaces.
Use sentence case without an ending period, for example "Request count".
Corresponds to the JSON property displayName
792 793 794 |
# File 'generated/google/apis/servicemanagement_v1/classes.rb', line 792 def display_name @display_name end |
#labels ⇒ Array<Google::Apis::ServicemanagementV1::LabelDescriptor>
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.
Corresponds to the JSON property labels
861 862 863 |
# File 'generated/google/apis/servicemanagement_v1/classes.rb', line 861 def labels @labels end |
#metric_kind ⇒ String
Whether the metric records instantaneous values, changes to a value, etc.
Some combinations of metric_kind
and value_type
might not be supported.
Corresponds to the JSON property metricKind
786 787 788 |
# File 'generated/google/apis/servicemanagement_v1/classes.rb', line 786 def metric_kind @metric_kind end |
#name ⇒ String
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-id
:
"projects/my-project-id/metricDescriptors/custom.googleapis.com%2Finvoice%
2Fpaid%2Famount"
Corresponds to the JSON property name
873 874 875 |
# File 'generated/google/apis/servicemanagement_v1/classes.rb', line 873 def name @name end |
#type ⇒ String
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"
Corresponds to the JSON property type
774 775 776 |
# File 'generated/google/apis/servicemanagement_v1/classes.rb', line 774 def type @type end |
#unit ⇒ String
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
bitBy
bytes
secondmin
minuteh
hourd
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 unit1
, such as1/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 aUNIT
and is equivalent to1
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 '
'. Corresponds to the JSON propertyunit
851 852 853 |
# File 'generated/google/apis/servicemanagement_v1/classes.rb', line 851 def unit @unit end |
#value_type ⇒ String
Whether the measurement is an integer, a floating-point number, etc.
Some combinations of metric_kind
and value_type
might not be supported.
Corresponds to the JSON property valueType
780 781 782 |
# File 'generated/google/apis/servicemanagement_v1/classes.rb', line 780 def value_type @value_type end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
880 881 882 883 884 885 886 887 888 889 |
# File 'generated/google/apis/servicemanagement_v1/classes.rb', line 880 def update!(**args) @type = args[:type] if args.key?(:type) @value_type = args[:value_type] if args.key?(:value_type) @metric_kind = args[:metric_kind] if args.key?(:metric_kind) @display_name = args[:display_name] if args.key?(:display_name) @description = args[:description] if args.key?(:description) @unit = args[:unit] if args.key?(:unit) @labels = args[:labels] if args.key?(:labels) @name = args[:name] if args.key?(:name) end |