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

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

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ GoogleCloudSaasacceleratorManagementProvidersV1NodeSloMetadata

Returns a new instance of GoogleCloudSaasacceleratorManagementProvidersV1NodeSloMetadata.



358
359
360
# File 'generated/google/apis/file_v1/classes.rb', line 358

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



345
346
347
# File 'generated/google/apis/file_v1/classes.rb', line 345

def exclusions
  @exclusions
end

#locationString

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

Returns:

  • (String)


350
351
352
# File 'generated/google/apis/file_v1/classes.rb', line 350

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)


356
357
358
# File 'generated/google/apis/file_v1/classes.rb', line 356

def node_id
  @node_id
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



363
364
365
366
367
# File 'generated/google/apis/file_v1/classes.rb', line 363

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)
end