pub struct ServiceLevelObjective {
pub calendar_period: Option<String>,
pub display_name: Option<String>,
pub goal: Option<f64>,
pub name: Option<String>,
pub rolling_period: Option<Duration>,
pub service_level_indicator: Option<ServiceLevelIndicator>,
pub user_labels: Option<HashMap<String, String>>,
}
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.”
§Activities
This type is used in activities, which are methods you may call on this type or where this type is involved in. The list links the activity name, along with information about where it is used (one of request and response).
- service level objectives create services (request|response)
- service level objectives get services (response)
- service level objectives patch services (request|response)
Fields§
§calendar_period: Option<String>
A calendar period, semantically “since the start of the current “. At this time, only DAY, WEEK, FORTNIGHT, and MONTH are supported.
display_name: Option<String>
Name used for UI elements listing this SLO.
goal: Option<f64>
The fraction of service that must be good in order for this objective to be met. 0 < goal <= 0.9999.
name: Option<String>
Identifier. Resource name for this ServiceLevelObjective. The format is: projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]/serviceLevelObjectives/[SLO_NAME]
rolling_period: Option<Duration>
A rolling time period, semantically “in the past “. Must be an integer multiple of 1 day no larger than 30 days.
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.
user_labels: Option<HashMap<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.
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§fn default() -> ServiceLevelObjective
fn default() -> ServiceLevelObjective
Source§impl<'de> Deserialize<'de> for ServiceLevelObjective
impl<'de> Deserialize<'de> for ServiceLevelObjective
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 ServiceLevelObjective
impl Serialize for ServiceLevelObjective
impl RequestValue for ServiceLevelObjective
impl ResponseResult 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
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