Class: Google::Apis::ManagedidentitiesV1beta1::GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/managedidentities_v1beta1/classes.rb,
lib/google/apis/managedidentities_v1beta1/representations.rb,
lib/google/apis/managedidentities_v1beta1/representations.rb

Overview

SloMetadata contains resources required for proper SLO classification of the instance.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata

Returns a new instance of GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata.



1037
1038
1039
# File 'lib/google/apis/managedidentities_v1beta1/classes.rb', line 1037

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

Instance Attribute Details

#eligibilityGoogle::Apis::ManagedidentitiesV1beta1::GoogleCloudSaasacceleratorManagementProvidersV1SloEligibility

SloEligibility is a tuple containing eligibility value: true if an instance is eligible for SLO calculation or false if it should be excluded from all SLO- related calculations along with a user-defined reason. Corresponds to the JSON property eligibility



1001
1002
1003
# File 'lib/google/apis/managedidentities_v1beta1/classes.rb', line 1001

def eligibility
  @eligibility
end

#exclusionsArray<Google::Apis::ManagedidentitiesV1beta1::GoogleCloudSaasacceleratorManagementProvidersV1SloExclusion>

List of SLO exclusion windows. When multiple entries in the list match ( matching the exclusion time-window against current time point) the exclusion reason used in the first matching entry will be published. It is not needed to include expired exclusion in this list, as only the currently applicable exclusions are taken into account by the eligibility exporting subsystem (the historical state of exclusions will be reflected in the historically produced timeseries regardless of the current state). This field can be used to mark the instance as temporary ineligible for the purpose of SLO calculation. For permanent instance SLO exclusion, use of custom instance eligibility is recommended. See 'eligibility' field below. Corresponds to the JSON property exclusions



1015
1016
1017
# File 'lib/google/apis/managedidentities_v1beta1/classes.rb', line 1015

def exclusions
  @exclusions
end

#nodesArray<Google::Apis::ManagedidentitiesV1beta1::GoogleCloudSaasacceleratorManagementProvidersV1NodeSloMetadata>

Optional. List of nodes. Some producers need to use per-node metadata to calculate SLO. This field allows such producers to publish per-node SLO meta data, which will be consumed by SSA Eligibility Exporter and published in the form of per node metric to Monarch. Corresponds to the JSON property nodes



1023
1024
1025
# File 'lib/google/apis/managedidentities_v1beta1/classes.rb', line 1023

def nodes
  @nodes
end

#per_sli_eligibilityGoogle::Apis::ManagedidentitiesV1beta1::GoogleCloudSaasacceleratorManagementProvidersV1PerSliSloEligibility

PerSliSloEligibility is a mapping from an SLI name to eligibility. Corresponds to the JSON property perSliEligibility



1028
1029
1030
# File 'lib/google/apis/managedidentities_v1beta1/classes.rb', line 1028

def per_sli_eligibility
  @per_sli_eligibility
end

#tierString

Name of the SLO tier the Instance belongs to. This name will be expected to match the tiers specified in the service SLO configuration. Field is mandatory and must not be empty. Corresponds to the JSON property tier

Returns:

  • (String)


1035
1036
1037
# File 'lib/google/apis/managedidentities_v1beta1/classes.rb', line 1035

def tier
  @tier
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1042
1043
1044
1045
1046
1047
1048
# File 'lib/google/apis/managedidentities_v1beta1/classes.rb', line 1042

def update!(**args)
  @eligibility = args[:eligibility] if args.key?(:eligibility)
  @exclusions = args[:exclusions] if args.key?(:exclusions)
  @nodes = args[:nodes] if args.key?(:nodes)
  @per_sli_eligibility = args[:per_sli_eligibility] if args.key?(:per_sli_eligibility)
  @tier = args[:tier] if args.key?(:tier)
end