Class: Google::Cloud::Monitoring::V3::ServiceLevelObjective

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/monitoring/v3/service.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."

Defined Under Namespace

Modules: View Classes: UserLabelsEntry

Instance Attribute Summary collapse

Instance Attribute Details

#calendar_period::Google::Type::CalendarPeriod

Returns A calendar period, semantically "since the start of the current <calendar_period>". At this time, only DAY, WEEK, FORTNIGHT, and MONTH are supported.

Note: The following fields are mutually exclusive: calendar_period, rolling_period. If a field in that set is populated, all other fields in the set will automatically be cleared.

Returns:

  • (::Google::Type::CalendarPeriod)

    A calendar period, semantically "since the start of the current <calendar_period>". At this time, only DAY, WEEK, FORTNIGHT, and MONTH are supported.

    Note: The following fields are mutually exclusive: calendar_period, rolling_period. If a field in that set is populated, all other fields in the set will automatically be cleared.



396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
# File 'proto_docs/google/monitoring/v3/service.rb', line 396

class ServiceLevelObjective
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class UserLabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # `ServiceLevelObjective.View` determines what form of
  # `ServiceLevelObjective` is returned from `GetServiceLevelObjective`,
  # `ListServiceLevelObjectives`, and `ListServiceLevelObjectiveVersions` RPCs.
  module View
    # Same as FULL.
    VIEW_UNSPECIFIED = 0

    # Return the embedded `ServiceLevelIndicator` in the form in which it was
    # defined. If it was defined using a `BasicSli`, return that `BasicSli`.
    FULL = 2

    # For `ServiceLevelIndicator`s using `BasicSli` articulation, instead
    # return the `ServiceLevelIndicator` with its mode of computation fully
    # spelled out as a `RequestBasedSli`. For `ServiceLevelIndicator`s using
    # `RequestBasedSli` or `WindowsBasedSli`, return the
    # `ServiceLevelIndicator` as it was provided.
    EXPLICIT = 1
  end
end

#display_name::String

Returns Name used for UI elements listing this SLO.

Returns:

  • (::String)

    Name used for UI elements listing this SLO.



396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
# File 'proto_docs/google/monitoring/v3/service.rb', line 396

class ServiceLevelObjective
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class UserLabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # `ServiceLevelObjective.View` determines what form of
  # `ServiceLevelObjective` is returned from `GetServiceLevelObjective`,
  # `ListServiceLevelObjectives`, and `ListServiceLevelObjectiveVersions` RPCs.
  module View
    # Same as FULL.
    VIEW_UNSPECIFIED = 0

    # Return the embedded `ServiceLevelIndicator` in the form in which it was
    # defined. If it was defined using a `BasicSli`, return that `BasicSli`.
    FULL = 2

    # For `ServiceLevelIndicator`s using `BasicSli` articulation, instead
    # return the `ServiceLevelIndicator` with its mode of computation fully
    # spelled out as a `RequestBasedSli`. For `ServiceLevelIndicator`s using
    # `RequestBasedSli` or `WindowsBasedSli`, return the
    # `ServiceLevelIndicator` as it was provided.
    EXPLICIT = 1
  end
end

#goal::Float

Returns The fraction of service that must be good in order for this objective to be met. 0 < goal <= 0.9999.

Returns:

  • (::Float)

    The fraction of service that must be good in order for this objective to be met. 0 < goal <= 0.9999.



396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
# File 'proto_docs/google/monitoring/v3/service.rb', line 396

class ServiceLevelObjective
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class UserLabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # `ServiceLevelObjective.View` determines what form of
  # `ServiceLevelObjective` is returned from `GetServiceLevelObjective`,
  # `ListServiceLevelObjectives`, and `ListServiceLevelObjectiveVersions` RPCs.
  module View
    # Same as FULL.
    VIEW_UNSPECIFIED = 0

    # Return the embedded `ServiceLevelIndicator` in the form in which it was
    # defined. If it was defined using a `BasicSli`, return that `BasicSli`.
    FULL = 2

    # For `ServiceLevelIndicator`s using `BasicSli` articulation, instead
    # return the `ServiceLevelIndicator` with its mode of computation fully
    # spelled out as a `RequestBasedSli`. For `ServiceLevelIndicator`s using
    # `RequestBasedSli` or `WindowsBasedSli`, return the
    # `ServiceLevelIndicator` as it was provided.
    EXPLICIT = 1
  end
end

#name::String

Returns Identifier. Resource name for this ServiceLevelObjective. The format is:

projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]/serviceLevelObjectives/[SLO_NAME].

Returns:

  • (::String)

    Identifier. Resource name for this ServiceLevelObjective. The format is:

    projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]/serviceLevelObjectives/[SLO_NAME]
    


396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
# File 'proto_docs/google/monitoring/v3/service.rb', line 396

class ServiceLevelObjective
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class UserLabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # `ServiceLevelObjective.View` determines what form of
  # `ServiceLevelObjective` is returned from `GetServiceLevelObjective`,
  # `ListServiceLevelObjectives`, and `ListServiceLevelObjectiveVersions` RPCs.
  module View
    # Same as FULL.
    VIEW_UNSPECIFIED = 0

    # Return the embedded `ServiceLevelIndicator` in the form in which it was
    # defined. If it was defined using a `BasicSli`, return that `BasicSli`.
    FULL = 2

    # For `ServiceLevelIndicator`s using `BasicSli` articulation, instead
    # return the `ServiceLevelIndicator` with its mode of computation fully
    # spelled out as a `RequestBasedSli`. For `ServiceLevelIndicator`s using
    # `RequestBasedSli` or `WindowsBasedSli`, return the
    # `ServiceLevelIndicator` as it was provided.
    EXPLICIT = 1
  end
end

#rolling_period::Google::Protobuf::Duration

Returns A rolling time period, semantically "in the past <rolling_period>". Must be an integer multiple of 1 day no larger than 30 days.

Note: The following fields are mutually exclusive: rolling_period, calendar_period. If a field in that set is populated, all other fields in the set will automatically be cleared.

Returns:

  • (::Google::Protobuf::Duration)

    A rolling time period, semantically "in the past <rolling_period>". Must be an integer multiple of 1 day no larger than 30 days.

    Note: The following fields are mutually exclusive: rolling_period, calendar_period. If a field in that set is populated, all other fields in the set will automatically be cleared.



396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
# File 'proto_docs/google/monitoring/v3/service.rb', line 396

class ServiceLevelObjective
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class UserLabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # `ServiceLevelObjective.View` determines what form of
  # `ServiceLevelObjective` is returned from `GetServiceLevelObjective`,
  # `ListServiceLevelObjectives`, and `ListServiceLevelObjectiveVersions` RPCs.
  module View
    # Same as FULL.
    VIEW_UNSPECIFIED = 0

    # Return the embedded `ServiceLevelIndicator` in the form in which it was
    # defined. If it was defined using a `BasicSli`, return that `BasicSli`.
    FULL = 2

    # For `ServiceLevelIndicator`s using `BasicSli` articulation, instead
    # return the `ServiceLevelIndicator` with its mode of computation fully
    # spelled out as a `RequestBasedSli`. For `ServiceLevelIndicator`s using
    # `RequestBasedSli` or `WindowsBasedSli`, return the
    # `ServiceLevelIndicator` as it was provided.
    EXPLICIT = 1
  end
end

#service_level_indicator::Google::Cloud::Monitoring::V3::ServiceLevelIndicator

Returns 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.

Returns:



396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
# File 'proto_docs/google/monitoring/v3/service.rb', line 396

class ServiceLevelObjective
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class UserLabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # `ServiceLevelObjective.View` determines what form of
  # `ServiceLevelObjective` is returned from `GetServiceLevelObjective`,
  # `ListServiceLevelObjectives`, and `ListServiceLevelObjectiveVersions` RPCs.
  module View
    # Same as FULL.
    VIEW_UNSPECIFIED = 0

    # Return the embedded `ServiceLevelIndicator` in the form in which it was
    # defined. If it was defined using a `BasicSli`, return that `BasicSli`.
    FULL = 2

    # For `ServiceLevelIndicator`s using `BasicSli` articulation, instead
    # return the `ServiceLevelIndicator` with its mode of computation fully
    # spelled out as a `RequestBasedSli`. For `ServiceLevelIndicator`s using
    # `RequestBasedSli` or `WindowsBasedSli`, return the
    # `ServiceLevelIndicator` as it was provided.
    EXPLICIT = 1
  end
end

#user_labels::Google::Protobuf::Map{::String => ::String}

Returns 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.

Returns:

  • (::Google::Protobuf::Map{::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.



396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
# File 'proto_docs/google/monitoring/v3/service.rb', line 396

class ServiceLevelObjective
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::String]
  class UserLabelsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # `ServiceLevelObjective.View` determines what form of
  # `ServiceLevelObjective` is returned from `GetServiceLevelObjective`,
  # `ListServiceLevelObjectives`, and `ListServiceLevelObjectiveVersions` RPCs.
  module View
    # Same as FULL.
    VIEW_UNSPECIFIED = 0

    # Return the embedded `ServiceLevelIndicator` in the form in which it was
    # defined. If it was defined using a `BasicSli`, return that `BasicSli`.
    FULL = 2

    # For `ServiceLevelIndicator`s using `BasicSli` articulation, instead
    # return the `ServiceLevelIndicator` with its mode of computation fully
    # spelled out as a `RequestBasedSli`. For `ServiceLevelIndicator`s using
    # `RequestBasedSli` or `WindowsBasedSli`, return the
    # `ServiceLevelIndicator` as it was provided.
    EXPLICIT = 1
  end
end