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.



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

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)


707
708
709
# File 'lib/google/apis/appengine_v1beta/classes.rb', line 707

def filter
  @filter
end

#metric_nameString

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

Returns:

  • (String)


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

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)


720
721
722
# File 'lib/google/apis/appengine_v1beta/classes.rb', line 720

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)


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

def target_type
  @target_type
end

#target_utilizationFloat

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

Returns:

  • (Float)


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

def target_utilization
  @target_utilization
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



738
739
740
741
742
743
744
# File 'lib/google/apis/appengine_v1beta/classes.rb', line 738

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