Class: Google::Apis::ManagedidentitiesV1::GoogleCloudSaasacceleratorManagementProvidersV1NodeSloMetadata

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

Overview

Node information for custom per-node SLO implementations. SSA does not support per-node SLO, but producers can populate per-node information in SloMetadata for custom precomputations. SSA Eligibility Exporter will emit per-node metric based on this information.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudSaasacceleratorManagementProvidersV1NodeSloMetadata

Returns a new instance of GoogleCloudSaasacceleratorManagementProvidersV1NodeSloMetadata.



899
900
901
# File 'lib/google/apis/managedidentities_v1/classes.rb', line 899

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

Instance Attribute Details

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

By default node is eligible if instance is eligible. But individual node might be excluded from SLO by adding entry here. For semantic see SloMetadata. exclusions. If both instance and node level exclusions are present for time period, the node level's reason will be reported by Eligibility Exporter. Corresponds to the JSON property exclusions



882
883
884
# File 'lib/google/apis/managedidentities_v1/classes.rb', line 882

def exclusions
  @exclusions
end

#locationString

The location of the node, if different from instance location. Corresponds to the JSON property location

Returns:

  • (String)


887
888
889
# File 'lib/google/apis/managedidentities_v1/classes.rb', line 887

def location
  @location
end

#node_idString

The id of the node. This should be equal to SaasInstanceNode.node_id. Corresponds to the JSON property nodeId

Returns:

  • (String)


892
893
894
# File 'lib/google/apis/managedidentities_v1/classes.rb', line 892

def node_id
  @node_id
end

#per_sli_eligibilityGoogle::Apis::ManagedidentitiesV1::GoogleCloudSaasacceleratorManagementProvidersV1PerSliSloEligibility

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



897
898
899
# File 'lib/google/apis/managedidentities_v1/classes.rb', line 897

def per_sli_eligibility
  @per_sli_eligibility
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



904
905
906
907
908
909
# File 'lib/google/apis/managedidentities_v1/classes.rb', line 904

def update!(**args)
  @exclusions = args[:exclusions] if args.key?(:exclusions)
  @location = args[:location] if args.key?(:location)
  @node_id = args[:node_id] if args.key?(:node_id)
  @per_sli_eligibility = args[:per_sli_eligibility] if args.key?(:per_sli_eligibility)
end