Class: Google::Apis::MonitoringV3::ServiceLevelObjective
- Inherits:
-
Object
- Object
- Google::Apis::MonitoringV3::ServiceLevelObjective
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- generated/google/apis/monitoring_v3/classes.rb,
generated/google/apis/monitoring_v3/representations.rb,
generated/google/apis/monitoring_v3/representations.rb
Overview
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."
Instance Attribute Summary collapse
-
#calendar_period ⇒ String
A calendar period, semantically "since the start of the current ".
-
#display_name ⇒ String
Name used for UI elements listing this SLO.
-
#goal ⇒ Float
The fraction of service that must be good in order for this objective to be met.
-
#name ⇒ String
Resource name for this ServiceLevelObjective.
-
#rolling_period ⇒ String
A rolling time period, semantically "in the past ".
-
#service_level_indicator ⇒ Google::Apis::MonitoringV3::ServiceLevelIndicator
A Service-Level Indicator (SLI) describes the "performance" of a service.
Instance Method Summary collapse
-
#initialize(**args) ⇒ ServiceLevelObjective
constructor
A new instance of ServiceLevelObjective.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ ServiceLevelObjective
Returns a new instance of ServiceLevelObjective.
3394 3395 3396 |
# File 'generated/google/apis/monitoring_v3/classes.rb', line 3394 def initialize(**args) update!(**args) end |
Instance Attribute Details
#calendar_period ⇒ String
A calendar period, semantically "since the start of the current ". At this
time, only DAY, WEEK, FORTNIGHT, and MONTH are supported.
Corresponds to the JSON property calendarPeriod
3353 3354 3355 |
# File 'generated/google/apis/monitoring_v3/classes.rb', line 3353 def calendar_period @calendar_period end |
#display_name ⇒ String
Name used for UI elements listing this SLO.
Corresponds to the JSON property displayName
3358 3359 3360 |
# File 'generated/google/apis/monitoring_v3/classes.rb', line 3358 def display_name @display_name end |
#goal ⇒ Float
The fraction of service that must be good in order for this objective to be
met. 0 < goal <= 0.999.
Corresponds to the JSON property goal
3364 3365 3366 |
# File 'generated/google/apis/monitoring_v3/classes.rb', line 3364 def goal @goal end |
#name ⇒ String
Resource name for this ServiceLevelObjective. The format is: projects/[
PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]/serviceLevelObjectives/[SLO_NAME]
Corresponds to the JSON property name
3370 3371 3372 |
# File 'generated/google/apis/monitoring_v3/classes.rb', line 3370 def name @name end |
#rolling_period ⇒ String
A rolling time period, semantically "in the past ". Must be an integer
multiple of 1 day no larger than 30 days.
Corresponds to the JSON property rollingPeriod
3376 3377 3378 |
# File 'generated/google/apis/monitoring_v3/classes.rb', line 3376 def rolling_period @rolling_period end |
#service_level_indicator ⇒ Google::Apis::MonitoringV3::ServiceLevelIndicator
A Service-Level Indicator (SLI) describes the "performance" of a service. For
some services, the SLI is well-defined. In such cases, the SLI can be
described easily by referencing the well-known SLI and providing the needed
parameters. Alternatively, a "custom" SLI can be defined with a query to the
underlying metric store. An SLI is defined to be good_service / total_service
over any queried time interval. The value of performance always falls into the
range 0 <= performance <= 1. A custom SLI describes how to compute this ratio,
whether this is by dividing values from a pair of time series, cutting a
Distribution into good and bad counts, or counting time windows in which the
service complies with a criterion. For separation of concerns, a single
Service-Level Indicator measures performance for only one aspect of service
quality, such as fraction of successful queries or fast-enough queries.
Corresponds to the JSON property serviceLevelIndicator
3392 3393 3394 |
# File 'generated/google/apis/monitoring_v3/classes.rb', line 3392 def service_level_indicator @service_level_indicator end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
3399 3400 3401 3402 3403 3404 3405 3406 |
# File 'generated/google/apis/monitoring_v3/classes.rb', line 3399 def update!(**args) @calendar_period = args[:calendar_period] if args.key?(:calendar_period) @display_name = args[:display_name] if args.key?(:display_name) @goal = args[:goal] if args.key?(:goal) @name = args[:name] if args.key?(:name) @rolling_period = args[:rolling_period] if args.key?(:rolling_period) @service_level_indicator = args[:service_level_indicator] if args.key?(:service_level_indicator) end |