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.



725
726
727
# File 'lib/google/apis/appengine_v1beta/classes.rb', line 725

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)


699
700
701
# File 'lib/google/apis/appengine_v1beta/classes.rb', line 699

def filter
  @filter
end

#metric_nameString

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

Returns:

  • (String)


704
705
706
# File 'lib/google/apis/appengine_v1beta/classes.rb', line 704

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)


712
713
714
# File 'lib/google/apis/appengine_v1beta/classes.rb', line 712

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)


718
719
720
# File 'lib/google/apis/appengine_v1beta/classes.rb', line 718

def target_type
  @target_type
end

#target_utilizationFloat

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

Returns:

  • (Float)


723
724
725
# File 'lib/google/apis/appengine_v1beta/classes.rb', line 723

def target_utilization
  @target_utilization
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



730
731
732
733
734
735
736
# File 'lib/google/apis/appengine_v1beta/classes.rb', line 730

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