Class: Google::Apis::MonitoringV3::ServiceLevelIndicator

Inherits:
Object
  • Object
show all
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 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.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ ServiceLevelIndicator

Returns a new instance of ServiceLevelIndicator.



3095
3096
3097
# File 'generated/google/apis/monitoring_v3/classes.rb', line 3095

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#basic_sliGoogle::Apis::MonitoringV3::BasicSli

An SLI measuring performance on a well-known service type. Performance will be computed on the basis of pre-defined metrics. The type of the service_resource determines the metrics to use and the service_resource.labels and metric_labels are used to construct a monitoring filter to filter that metric down to just the data relevant to this service. Corresponds to the JSON property basicSli



3080
3081
3082
# File 'generated/google/apis/monitoring_v3/classes.rb', line 3080

def basic_sli
  @basic_sli
end

#request_basedGoogle::Apis::MonitoringV3::RequestBasedSli

Service Level Indicators for which atomic units of service are counted directly. Corresponds to the JSON property requestBased



3086
3087
3088
# File 'generated/google/apis/monitoring_v3/classes.rb', line 3086

def request_based
  @request_based
end

#windows_basedGoogle::Apis::MonitoringV3::WindowsBasedSli

A WindowsBasedSli defines good_service as the count of time windows for which the provided service was of good quality. Criteria for determining if service was good are embedded in the window_criterion. Corresponds to the JSON property windowsBased



3093
3094
3095
# File 'generated/google/apis/monitoring_v3/classes.rb', line 3093

def windows_based
  @windows_based
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3100
3101
3102
3103
3104
# File 'generated/google/apis/monitoring_v3/classes.rb', line 3100

def update!(**args)
  @basic_sli = args[:basic_sli] if args.key?(:basic_sli)
  @request_based = args[:request_based] if args.key?(:request_based)
  @windows_based = args[:windows_based] if args.key?(:windows_based)
end