Struct google_api_proto::google::monitoring::v3::ServiceLevelObjective
source · pub struct ServiceLevelObjective {
pub name: String,
pub display_name: String,
pub service_level_indicator: Option<ServiceLevelIndicator>,
pub goal: f64,
pub user_labels: BTreeMap<String, String>,
pub period: Option<Period>,
}
Expand description
A Service-Level Objective (SLO) describes a level of desired good service. It consists of a service-level indicator (SLI), a performance goal, and a period over which the objective is to be evaluated against that goal. The SLO can use SLIs defined in a number of different manners. Typical SLOs might include “99% of requests in each rolling week have latency below 200 milliseconds” or “99.5% of requests in each calendar month return successfully.”
Fields§
§name: String
Identifier. Resource name for this ServiceLevelObjective
. The format is:
projects/\[PROJECT_ID_OR_NUMBER\]/services/\[SERVICE_ID\]/serviceLevelObjectives/\[SLO_NAME\]
display_name: String
Name used for UI elements listing this SLO.
service_level_indicator: Option<ServiceLevelIndicator>
The definition of good service, used to measure and calculate the quality
of the Service
’s performance with respect to a single aspect of service
quality.
goal: f64
The fraction of service that must be good in order for this objective to be
met. 0 < goal <= 0.999
.
user_labels: BTreeMap<String, String>
Labels which have been used to annotate the service-level objective. Label keys must start with a letter. Label keys and values may contain lowercase letters, numbers, underscores, and dashes. Label keys and values have a maximum length of 63 characters, and must be less than 128 bytes in size. Up to 64 label entries may be stored. For labels which do not have a semantic value, the empty string may be supplied for the label value.
period: Option<Period>
The time period over which the objective will be evaluated.
Trait Implementations§
source§impl Clone for ServiceLevelObjective
impl Clone for ServiceLevelObjective
source§fn clone(&self) -> ServiceLevelObjective
fn clone(&self) -> ServiceLevelObjective
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for ServiceLevelObjective
impl Debug for ServiceLevelObjective
source§impl Default for ServiceLevelObjective
impl Default for ServiceLevelObjective
source§impl Message for ServiceLevelObjective
impl Message for ServiceLevelObjective
source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
. Read moresource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
.source§impl PartialEq for ServiceLevelObjective
impl PartialEq for ServiceLevelObjective
source§fn eq(&self, other: &ServiceLevelObjective) -> bool
fn eq(&self, other: &ServiceLevelObjective) -> bool
self
and other
values to be equal, and is used
by ==
.impl StructuralPartialEq for ServiceLevelObjective
Auto Trait Implementations§
impl Freeze for ServiceLevelObjective
impl RefUnwindSafe for ServiceLevelObjective
impl Send for ServiceLevelObjective
impl Sync for ServiceLevelObjective
impl Unpin for ServiceLevelObjective
impl UnwindSafe for ServiceLevelObjective
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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request