Class: Google::Apis::AppengineV1beta::CustomMetric

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

Overview

Allows autoscaling based on Stackdriver metrics.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ CustomMetric

Returns a new instance of CustomMetric.



784
785
786
# File 'lib/google/apis/appengine_v1beta/classes.rb', line 784

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

Instance Attribute Details

#filterString

Allows filtering on the metric's fields. Corresponds to the JSON property filter

Returns:

  • (String)


758
759
760
# File 'lib/google/apis/appengine_v1beta/classes.rb', line 758

def filter
  @filter
end

#metric_nameString

The name of the metric. Corresponds to the JSON property metricName

Returns:

  • (String)


763
764
765
# File 'lib/google/apis/appengine_v1beta/classes.rb', line 763

def metric_name
  @metric_name
end

#single_instance_assignmentFloat

May be used instead of target_utilization when an instance can handle a specific amount of work/resources and the metric value is equal to the current amount of work remaining. The autoscaler will try to keep the number of instances equal to the metric value divided by single_instance_assignment. Corresponds to the JSON property singleInstanceAssignment

Returns:

  • (Float)


771
772
773
# File 'lib/google/apis/appengine_v1beta/classes.rb', line 771

def single_instance_assignment
  @single_instance_assignment
end

#target_typeString

The type of the metric. Must be a string representing a Stackdriver metric type e.g. GAGUE, DELTA_PER_SECOND, etc. Corresponds to the JSON property targetType

Returns:

  • (String)


777
778
779
# File 'lib/google/apis/appengine_v1beta/classes.rb', line 777

def target_type
  @target_type
end

#target_utilizationFloat

The target value for the metric. Corresponds to the JSON property targetUtilization

Returns:

  • (Float)


782
783
784
# File 'lib/google/apis/appengine_v1beta/classes.rb', line 782

def target_utilization
  @target_utilization
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



789
790
791
792
793
794
795
# File 'lib/google/apis/appengine_v1beta/classes.rb', line 789

def update!(**args)
  @filter = args[:filter] if args.key?(:filter)
  @metric_name = args[:metric_name] if args.key?(:metric_name)
  @single_instance_assignment = args[:single_instance_assignment] if args.key?(:single_instance_assignment)
  @target_type = args[:target_type] if args.key?(:target_type)
  @target_utilization = args[:target_utilization] if args.key?(:target_utilization)
end