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.



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

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



874
875
876
# File 'lib/google/apis/managedidentities_v1/classes.rb', line 874

def exclusions
  @exclusions
end

#locationString

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

Returns:

  • (String)


879
880
881
# File 'lib/google/apis/managedidentities_v1/classes.rb', line 879

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)


884
885
886
# File 'lib/google/apis/managedidentities_v1/classes.rb', line 884

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



889
890
891
# File 'lib/google/apis/managedidentities_v1/classes.rb', line 889

def per_sli_eligibility
  @per_sli_eligibility
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



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

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