#[non_exhaustive]pub struct ServiceLevelObjectiveBudgetReport {
pub arn: String,
pub name: String,
pub evaluation_type: Option<EvaluationType>,
pub budget_status: ServiceLevelObjectiveBudgetStatus,
pub attainment: Option<f64>,
pub total_budget_seconds: Option<i32>,
pub budget_seconds_remaining: Option<i32>,
pub total_budget_requests: Option<i32>,
pub budget_requests_remaining: Option<i32>,
pub sli: Option<ServiceLevelIndicator>,
pub request_based_sli: Option<RequestBasedServiceLevelIndicator>,
pub goal: Option<Goal>,
}
Expand description
A structure containing an SLO budget report that you have requested.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.arn: String
The ARN of the SLO that this report is for.
name: String
The name of the SLO that this report is for.
evaluation_type: Option<EvaluationType>
Displays whether this budget report is for a period-based SLO or a request-based SLO.
budget_status: ServiceLevelObjectiveBudgetStatus
The status of this SLO, as it relates to the error budget for the entire time interval.
-
OK
means that the SLO had remaining budget above the warning threshold, as of the time that you specified inTimeStamp
. -
WARNING
means that the SLO's remaining budget was below the warning threshold, as of the time that you specified inTimeStamp
. -
BREACHED
means that the SLO's budget was exhausted, as of the time that you specified inTimeStamp
. -
INSUFFICIENT_DATA
means that the specified start and end times were before the SLO was created, or that attainment data is missing.
attainment: Option<f64>
A number between 0 and 100 that represents the success percentage of your application compared to the goal set by the SLO.
If this is a period-based SLO, the number is the percentage of time periods that the service has attained the SLO's attainment goal, as of the time of the request.
If this is a request-based SLO, the number is the number of successful requests divided by the number of total requests, multiplied by 100, during the time range that you specified in your request.
total_budget_seconds: Option<i32>
The total number of seconds in the error budget for the interval. This field is included only if the SLO is a period-based SLO.
budget_seconds_remaining: Option<i32>
The budget amount remaining before the SLO status becomes BREACHING
, at the time specified in the Timestemp
parameter of the request. If this value is negative, then the SLO is already in BREACHING
status.
This field is included only if the SLO is a period-based SLO.
total_budget_requests: Option<i32>
This field is displayed only for request-based SLOs. It displays the total number of failed requests that can be tolerated during the time range between the start of the interval and the time stamp supplied in the budget report request. It is based on the total number of requests that occurred, and the percentage specified in the attainment goal. If the number of failed requests matches this number or is higher, then this SLO is currently breaching.
This number can go up and down between reports with different time stamps, based on both how many total requests occur.
budget_requests_remaining: Option<i32>
This field is displayed only for request-based SLOs. It displays the number of failed requests that can be tolerated before any more successful requests occur, and still have the application meet its SLO goal.
This number can go up and down between different reports, based on both how many successful requests and how many failed requests occur in that time.
sli: Option<ServiceLevelIndicator>
A structure that contains information about the performance metric that this SLO monitors.
request_based_sli: Option<RequestBasedServiceLevelIndicator>
This structure contains information about the performance metric that a request-based SLO monitors.
goal: Option<Goal>
This structure contains the attributes that determine the goal of an SLO. This includes the time period for evaluation and the attainment threshold.
Implementations§
Source§impl ServiceLevelObjectiveBudgetReport
impl ServiceLevelObjectiveBudgetReport
Sourcepub fn evaluation_type(&self) -> Option<&EvaluationType>
pub fn evaluation_type(&self) -> Option<&EvaluationType>
Displays whether this budget report is for a period-based SLO or a request-based SLO.
Sourcepub fn budget_status(&self) -> &ServiceLevelObjectiveBudgetStatus
pub fn budget_status(&self) -> &ServiceLevelObjectiveBudgetStatus
The status of this SLO, as it relates to the error budget for the entire time interval.
-
OK
means that the SLO had remaining budget above the warning threshold, as of the time that you specified inTimeStamp
. -
WARNING
means that the SLO's remaining budget was below the warning threshold, as of the time that you specified inTimeStamp
. -
BREACHED
means that the SLO's budget was exhausted, as of the time that you specified inTimeStamp
. -
INSUFFICIENT_DATA
means that the specified start and end times were before the SLO was created, or that attainment data is missing.
Sourcepub fn attainment(&self) -> Option<f64>
pub fn attainment(&self) -> Option<f64>
A number between 0 and 100 that represents the success percentage of your application compared to the goal set by the SLO.
If this is a period-based SLO, the number is the percentage of time periods that the service has attained the SLO's attainment goal, as of the time of the request.
If this is a request-based SLO, the number is the number of successful requests divided by the number of total requests, multiplied by 100, during the time range that you specified in your request.
Sourcepub fn total_budget_seconds(&self) -> Option<i32>
pub fn total_budget_seconds(&self) -> Option<i32>
The total number of seconds in the error budget for the interval. This field is included only if the SLO is a period-based SLO.
Sourcepub fn budget_seconds_remaining(&self) -> Option<i32>
pub fn budget_seconds_remaining(&self) -> Option<i32>
The budget amount remaining before the SLO status becomes BREACHING
, at the time specified in the Timestemp
parameter of the request. If this value is negative, then the SLO is already in BREACHING
status.
This field is included only if the SLO is a period-based SLO.
Sourcepub fn total_budget_requests(&self) -> Option<i32>
pub fn total_budget_requests(&self) -> Option<i32>
This field is displayed only for request-based SLOs. It displays the total number of failed requests that can be tolerated during the time range between the start of the interval and the time stamp supplied in the budget report request. It is based on the total number of requests that occurred, and the percentage specified in the attainment goal. If the number of failed requests matches this number or is higher, then this SLO is currently breaching.
This number can go up and down between reports with different time stamps, based on both how many total requests occur.
Sourcepub fn budget_requests_remaining(&self) -> Option<i32>
pub fn budget_requests_remaining(&self) -> Option<i32>
This field is displayed only for request-based SLOs. It displays the number of failed requests that can be tolerated before any more successful requests occur, and still have the application meet its SLO goal.
This number can go up and down between different reports, based on both how many successful requests and how many failed requests occur in that time.
Sourcepub fn sli(&self) -> Option<&ServiceLevelIndicator>
pub fn sli(&self) -> Option<&ServiceLevelIndicator>
A structure that contains information about the performance metric that this SLO monitors.
Sourcepub fn request_based_sli(&self) -> Option<&RequestBasedServiceLevelIndicator>
pub fn request_based_sli(&self) -> Option<&RequestBasedServiceLevelIndicator>
This structure contains information about the performance metric that a request-based SLO monitors.
Source§impl ServiceLevelObjectiveBudgetReport
impl ServiceLevelObjectiveBudgetReport
Sourcepub fn builder() -> ServiceLevelObjectiveBudgetReportBuilder
pub fn builder() -> ServiceLevelObjectiveBudgetReportBuilder
Creates a new builder-style object to manufacture ServiceLevelObjectiveBudgetReport
.
Trait Implementations§
Source§impl Clone for ServiceLevelObjectiveBudgetReport
impl Clone for ServiceLevelObjectiveBudgetReport
Source§fn clone(&self) -> ServiceLevelObjectiveBudgetReport
fn clone(&self) -> ServiceLevelObjectiveBudgetReport
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl PartialEq for ServiceLevelObjectiveBudgetReport
impl PartialEq for ServiceLevelObjectiveBudgetReport
Source§fn eq(&self, other: &ServiceLevelObjectiveBudgetReport) -> bool
fn eq(&self, other: &ServiceLevelObjectiveBudgetReport) -> bool
self
and other
values to be equal, and is used by ==
.impl StructuralPartialEq for ServiceLevelObjectiveBudgetReport
Auto Trait Implementations§
impl Freeze for ServiceLevelObjectiveBudgetReport
impl RefUnwindSafe for ServiceLevelObjectiveBudgetReport
impl Send for ServiceLevelObjectiveBudgetReport
impl Sync for ServiceLevelObjectiveBudgetReport
impl Unpin for ServiceLevelObjectiveBudgetReport
impl UnwindSafe for ServiceLevelObjectiveBudgetReport
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 moreSource§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
Source§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the foreground set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red()
and
green()
, which have the same functionality but are
pithier.
§Example
Set foreground color to white using fg()
:
use yansi::{Paint, Color};
painted.fg(Color::White);
Set foreground color to white using white()
.
use yansi::Paint;
painted.white();
Source§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
Source§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
Source§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
Source§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
Source§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
Source§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
Source§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
Source§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
Source§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the background set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red()
and
on_green()
, which have the same functionality but
are pithier.
§Example
Set background color to red using fg()
:
use yansi::{Paint, Color};
painted.bg(Color::Red);
Set background color to red using on_red()
.
use yansi::Paint;
painted.on_red();
Source§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
Source§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
Source§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
Source§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
Source§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
Source§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
Source§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
Source§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
Source§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
Source§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
Source§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling Attribute
value
.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold()
and
underline()
, which have the same functionality
but are pithier.
§Example
Make text bold using attr()
:
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);
Make text bold using using bold()
.
use yansi::Paint;
painted.bold();
Source§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
Source§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi
Quirk
value
.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask()
and
wrap()
, which have the same functionality but are
pithier.
§Example
Enable wrapping using .quirk()
:
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);
Enable wrapping using wrap()
.
use yansi::Paint;
painted.wrap();
Source§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.
fn clear(&self) -> Painted<&T>
resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.Source§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the Condition
value
applies. Replaces any previous condition.
See the crate level docs for more details.
§Example
Enable styling painted
only when both stdout
and stderr
are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);