Class: Google::Apis::ServicemanagementV1::TrafficPercentStrategy

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

Overview

Strategy that specifies how clients of Google Service Controller want to send traffic to use different config versions. This is generally used by API proxy to split traffic based on your configured percentage for each config version. One example of how to gradually rollout a new service configuration using this strategy: Day 1 Rollout id: "example.googleapis.com/rollout_20160206" traffic_percent_strategy percentages: "example.googleapis.com/20160201": 70.00 "example.googleapis.com/20160206": 30.00 Day 2 Rollout id: "example.googleapis.com/rollout_20160207" traffic_percent_strategy: percentages: "example.googleapis.com/20160206": 100.00

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

Returns a new instance of TrafficPercentStrategy.



4538
4539
4540
# File 'generated/google/apis/servicemanagement_v1/classes.rb', line 4538

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

Instance Attribute Details

#percentagesHash<String,Float>

Maps service configuration IDs to their corresponding traffic percentage. Key is the service configuration ID, Value is the traffic percentage which must be greater than 0.0 and the sum must equal to 100.0. Corresponds to the JSON property percentages

Returns:

  • (Hash<String,Float>)


4536
4537
4538
# File 'generated/google/apis/servicemanagement_v1/classes.rb', line 4536

def percentages
  @percentages
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



4543
4544
4545
# File 'generated/google/apis/servicemanagement_v1/classes.rb', line 4543

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