pub struct MetricDescriptor {
pub description: Option<String>,
pub display_name: Option<String>,
pub labels: Option<Vec<LabelDescriptor>>,
pub metadata: Option<MetricDescriptorMetadata>,
pub metric_kind: Option<String>,
pub name: Option<String>,
pub type_: Option<String>,
pub unit: Option<String>,
pub value_type: Option<String>,
}
Expand description
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.
This type is not used in any activity, and only used as part of another schema.
Fields§
§description: Option<String>
A detailed description of the metric, which can be used in documentation.
display_name: Option<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”. This field is optional but it is recommended to be set for any metrics associated with user-visible concepts, such as Quota.
labels: Option<Vec<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.
metadata: Option<MetricDescriptorMetadata>
Optional. Metadata which can be used to guide usage of the metric.
metric_kind: Option<String>
Whether the metric records instantaneous values, changes to a value, etc. Some combinations of metric_kind and value_type might not be supported.
name: Option<String>
The resource name of the metric descriptor.
type_: Option<String>
The metric type, including its DNS name prefix. The type is not URL-encoded. All user-defined metric types have the DNS name custom.googleapis.com or external.googleapis.com. Metric types should use a natural hierarchical grouping. For example: “custom.googleapis.com/invoice/paid/amount” “external.googleapis.com/prometheus/up” “appengine.googleapis.com/http/server/response_latencies”
unit: Option<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 (http://unitsofmeasure.org/ucum.html) standard:Basic units (UNIT) bit bit By byte s second min minute h hour d dayPrefixes (PREFIX) k kilo (103) M mega (106) G giga (109) T tera (1012) P peta (1015) E exa (1018) Z zetta (1021) Y yotta (1024) 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 (210) Mi mebi (220) Gi gibi (230) Ti tebi (240)GrammarThe 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, By{transmitted}/s == By/s. NAME is a sequence of non-blank printable ASCII characters not containing ‘{’ or ‘}’. 1 represents dimensionless value 1, such as in 1/s. % represents dimensionless value 1/100, and annotates values giving a percentage.
value_type: Option<String>
Whether the measurement is an integer, a floating-point number, etc. Some combinations of metric_kind and value_type might not be supported.
Trait Implementations§
Source§impl Clone for MetricDescriptor
impl Clone for MetricDescriptor
Source§fn clone(&self) -> MetricDescriptor
fn clone(&self) -> MetricDescriptor
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for MetricDescriptor
impl Debug for MetricDescriptor
Source§impl Default for MetricDescriptor
impl Default for MetricDescriptor
Source§fn default() -> MetricDescriptor
fn default() -> MetricDescriptor
Source§impl<'de> Deserialize<'de> for MetricDescriptor
impl<'de> Deserialize<'de> for MetricDescriptor
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Serialize for MetricDescriptor
impl Serialize for MetricDescriptor
impl Part for MetricDescriptor
Auto Trait Implementations§
impl Freeze for MetricDescriptor
impl RefUnwindSafe for MetricDescriptor
impl Send for MetricDescriptor
impl Sync for MetricDescriptor
impl Unpin for MetricDescriptor
impl UnwindSafe for MetricDescriptor
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more