Class: Google::Apis::FileV1::GoogleCloudSaasacceleratorManagementProvidersV1NodeSloMetadata

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/file_v1/classes.rb,
lib/google/apis/file_v1/representations.rb,
lib/google/apis/file_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.



554
555
556
# File 'lib/google/apis/file_v1/classes.rb', line 554

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

Instance Attribute Details

#exclusionsArray<Google::Apis::FileV1::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



537
538
539
# File 'lib/google/apis/file_v1/classes.rb', line 537

def exclusions
  @exclusions
end

#locationString

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

Returns:

  • (String)


542
543
544
# File 'lib/google/apis/file_v1/classes.rb', line 542

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)


547
548
549
# File 'lib/google/apis/file_v1/classes.rb', line 547

def node_id
  @node_id
end

#per_sli_eligibilityGoogle::Apis::FileV1::GoogleCloudSaasacceleratorManagementProvidersV1PerSliSloEligibility

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



552
553
554
# File 'lib/google/apis/file_v1/classes.rb', line 552

def per_sli_eligibility
  @per_sli_eligibility
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



559
560
561
562
563
564
# File 'lib/google/apis/file_v1/classes.rb', line 559

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