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 < calendar_period>".
-
#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.
Methods included from Core::JsonObjectSupport
Methods included from Core::Hashable
Constructor Details
#initialize(**args) ⇒ ServiceLevelObjective
Returns a new instance of ServiceLevelObjective.
3164 3165 3166 |
# File 'generated/google/apis/monitoring_v3/classes.rb', line 3164 def initialize(**args) update!(**args) end |
Instance Attribute Details
#calendar_period ⇒ String
A calendar period, semantically "since the start of the current <
calendar_period>". At this time, only DAY, WEEK, FORTNIGHT, and MONTH are
supported.
Corresponds to the JSON property calendarPeriod
3121 3122 3123 |
# File 'generated/google/apis/monitoring_v3/classes.rb', line 3121 def calendar_period @calendar_period end |
#display_name ⇒ String
Name used for UI elements listing this SLO.
Corresponds to the JSON property displayName
3126 3127 3128 |
# File 'generated/google/apis/monitoring_v3/classes.rb', line 3126 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
3132 3133 3134 |
# File 'generated/google/apis/monitoring_v3/classes.rb', line 3132 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
3139 3140 3141 |
# File 'generated/google/apis/monitoring_v3/classes.rb', line 3139 def name @name end |
#rolling_period ⇒ String
A rolling time period, semantically "in the past rollingPeriod
3145 3146 3147 |
# File 'generated/google/apis/monitoring_v3/classes.rb', line 3145 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
3162 3163 3164 |
# File 'generated/google/apis/monitoring_v3/classes.rb', line 3162 def service_level_indicator @service_level_indicator end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
3169 3170 3171 3172 3173 3174 3175 3176 |
# File 'generated/google/apis/monitoring_v3/classes.rb', line 3169 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 |