Class: Google::Apis::AppengineV1beta4::TrafficSplit

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

Overview

Traffic routing configuration for versions within a single module. Traffic splits define how traffic directed to the module is assigned to versions.

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) ⇒ TrafficSplit

Returns a new instance of TrafficSplit.



1903
1904
1905
# File 'generated/google/apis/appengine_v1beta4/classes.rb', line 1903

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

Instance Attribute Details

#allocationsHash<String,Float>

Mapping from version IDs within the module to fractional (0.000, 1] allocations of traffic for that version. Each version can be specified only once, but some versions in the module may not have any traffic allocation. Modules that have traffic allocated cannot be deleted until either the module is deleted or their traffic allocation is removed. Allocations must sum to 1. Up to two decimal place precision is supported for IP-based splits and up to three decimal places is supported for cookie-based splits. Corresponds to the JSON property allocations

Returns:

  • (Hash<String,Float>)


1894
1895
1896
# File 'generated/google/apis/appengine_v1beta4/classes.rb', line 1894

def allocations
  @allocations
end

#shard_byString

Mechanism used to determine which version a request is sent to. The traffic selection algorithm will be stable for either type until allocations are changed. Corresponds to the JSON property shardBy

Returns:

  • (String)


1901
1902
1903
# File 'generated/google/apis/appengine_v1beta4/classes.rb', line 1901

def shard_by
  @shard_by
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1908
1909
1910
1911
# File 'generated/google/apis/appengine_v1beta4/classes.rb', line 1908

def update!(**args)
  @allocations = args[:allocations] if args.key?(:allocations)
  @shard_by = args[:shard_by] if args.key?(:shard_by)
end