| <html><body> | |
| <style> | |
| body, h1, h2, h3, div, span, p, pre, a { | |
| margin: 0; | |
| padding: 0; | |
| border: 0; | |
| font-weight: inherit; | |
| font-style: inherit; | |
| font-size: 100%; | |
| font-family: inherit; | |
| vertical-align: baseline; | |
| } | |
| body { | |
| font-size: 13px; | |
| padding: 1em; | |
| } | |
| h1 { | |
| font-size: 26px; | |
| margin-bottom: 1em; | |
| } | |
| h2 { | |
| font-size: 24px; | |
| margin-bottom: 1em; | |
| } | |
| h3 { | |
| font-size: 20px; | |
| margin-bottom: 1em; | |
| margin-top: 1em; | |
| } | |
| pre, code { | |
| line-height: 1.5; | |
| font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace; | |
| } | |
| pre { | |
| margin-top: 0.5em; | |
| } | |
| h1, h2, h3, p { | |
| font-family: Arial, sans serif; | |
| } | |
| h1, h2, h3 { | |
| border-bottom: solid #CCC 1px; | |
| } | |
| .toc_element { | |
| margin-top: 0.5em; | |
| } | |
| .firstline { | |
| margin-left: 2 em; | |
| } | |
| .method { | |
| margin-top: 1em; | |
| border: solid 1px #CCC; | |
| padding: 1em; | |
| background: #EEE; | |
| } | |
| .details { | |
| font-weight: bold; | |
| font-size: 14px; | |
| } | |
| </style> | |
| <h1><a href="compute_preview.html">Compute Engine API</a> . <a href="compute_preview.autoscalers.html">autoscalers</a></h1> | |
| <h2>Instance Methods</h2> | |
| <p class="toc_element"> | |
| <code><a href="#aggregatedList">aggregatedList(project, filter=None, includeAllScopes=None, maxResults=None, orderBy=None, pageToken=None, serviceProjectNumber=None, x__xgafv=None)</a></code></p> | |
| <p class="firstline">Retrieves an aggregated list of autoscalers.</p> | |
| <p class="toc_element"> | |
| <code><a href="#aggregatedList_next">aggregatedList_next(previous_request, previous_response)</a></code></p> | |
| <p class="firstline">Retrieves the next page of results.</p> | |
| <p class="toc_element"> | |
| <code><a href="#close">close()</a></code></p> | |
| <p class="firstline">Close httplib2 connections.</p> | |
| <p class="toc_element"> | |
| <code><a href="#delete">delete(project, zone, autoscaler, requestId=None, x__xgafv=None)</a></code></p> | |
| <p class="firstline">Deletes the specified autoscaler.</p> | |
| <p class="toc_element"> | |
| <code><a href="#get">get(project, zone, autoscaler, x__xgafv=None)</a></code></p> | |
| <p class="firstline">Returns the specified autoscaler resource.</p> | |
| <p class="toc_element"> | |
| <code><a href="#insert">insert(project, zone, body=None, requestId=None, x__xgafv=None)</a></code></p> | |
| <p class="firstline">Creates an autoscaler in the specified project using the data</p> | |
| <p class="toc_element"> | |
| <code><a href="#list">list(project, zone, filter=None, maxResults=None, orderBy=None, pageToken=None, x__xgafv=None)</a></code></p> | |
| <p class="firstline">Retrieves a list of autoscalers contained within</p> | |
| <p class="toc_element"> | |
| <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p> | |
| <p class="firstline">Retrieves the next page of results.</p> | |
| <p class="toc_element"> | |
| <code><a href="#patch">patch(project, zone, autoscaler=None, body=None, requestId=None, x__xgafv=None)</a></code></p> | |
| <p class="firstline">Updates an autoscaler in the specified project using the data</p> | |
| <p class="toc_element"> | |
| <code><a href="#testIamPermissions">testIamPermissions(project, zone, resource, body=None, x__xgafv=None)</a></code></p> | |
| <p class="firstline">Returns permissions that a caller has on the specified resource.</p> | |
| <p class="toc_element"> | |
| <code><a href="#update">update(project, zone, autoscaler=None, body=None, requestId=None, x__xgafv=None)</a></code></p> | |
| <p class="firstline">Updates an autoscaler in the specified project using the data</p> | |
| <h3>Method Details</h3> | |
| <div class="method"> | |
| <code class="details" id="aggregatedList">aggregatedList(project, filter=None, includeAllScopes=None, maxResults=None, orderBy=None, pageToken=None, serviceProjectNumber=None, x__xgafv=None)</code> | |
| <pre>Retrieves an aggregated list of autoscalers. | |
| To prevent failure, it is recommended that you set the | |
| `returnPartialSuccess` parameter to `true`. | |
| Args: | |
| project: string, Project ID for this request. (required) | |
| filter: string, A filter expression that filters resources listed in the response. Most | |
| Compute resources support two types of filter expressions: | |
| expressions that support regular expressions and expressions that follow | |
| API improvement proposal AIP-160. | |
| These two types of filter expressions cannot be mixed in one request. | |
| If you want to use AIP-160, your expression must specify the field name, an | |
| operator, and the value that you want to use for filtering. The value | |
| must be a string, a number, or a boolean. The operator | |
| must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. | |
| For example, if you are filtering Compute Engine instances, you can | |
| exclude instances named `example-instance` by specifying | |
| `name != example-instance`. | |
| The `:*` comparison can be used to test whether a key has been defined. | |
| For example, to find all objects with `owner` label use: | |
| ``` | |
| labels.owner:* | |
| ``` | |
| You can also filter nested fields. For example, you could specify | |
| `scheduling.automaticRestart = false` to include instances only | |
| if they are not scheduled for automatic restarts. You can use filtering | |
| on nested fields to filter based onresource labels. | |
| To filter on multiple expressions, provide each separate expression within | |
| parentheses. For example: | |
| ``` | |
| (scheduling.automaticRestart = true) | |
| (cpuPlatform = "Intel Skylake") | |
| ``` | |
| By default, each expression is an `AND` expression. However, you | |
| can include `AND` and `OR` expressions explicitly. | |
| For example: | |
| ``` | |
| (cpuPlatform = "Intel Skylake") OR | |
| (cpuPlatform = "Intel Broadwell") AND | |
| (scheduling.automaticRestart = true) | |
| ``` | |
| If you want to use a regular expression, use the `eq` (equal) or `ne` | |
| (not equal) operator against a single un-parenthesized expression with or | |
| without quotes or against multiple parenthesized expressions. Examples: | |
| `fieldname eq unquoted literal` | |
| `fieldname eq 'single quoted literal'` | |
| `fieldname eq "double quoted literal"` | |
| `(fieldname1 eq literal) (fieldname2 ne "literal")` | |
| The literal value is interpreted as a regular expression using GoogleRE2 library syntax. | |
| The literal value must match the entire field. | |
| For example, to filter for instances that do not end with name "instance", | |
| you would use `name ne .*instance`. | |
| You cannot combine constraints on multiple fields using regular | |
| expressions. | |
| includeAllScopes: boolean, Indicates whether every visible scope for each scope type (zone, region, | |
| global) should be included in the response. For new resource types added | |
| after this field, the flag has no effect as new resource types will always | |
| include every visible scope for each scope type in response. For resource | |
| types which predate this field, if this flag is omitted or false, only | |
| scopes of the scope types where the resource type is expected to be found | |
| will be included. | |
| maxResults: integer, The maximum number of results per page that should be returned. | |
| If the number of available results is larger than `maxResults`, | |
| Compute Engine returns a `nextPageToken` that can be used to get | |
| the next page of results in subsequent list requests. Acceptable values are | |
| `0` to `500`, inclusive. (Default: `500`) | |
| orderBy: string, Sorts list results by a certain order. By default, results | |
| are returned in alphanumerical order based on the resource name. | |
| You can also sort results in descending order based on the creation | |
| timestamp using `orderBy="creationTimestamp desc"`. This sorts | |
| results based on the `creationTimestamp` field in | |
| reverse chronological order (newest result first). Use this to sort | |
| resources like operations so that the newest operation is returned first. | |
| Currently, only sorting by `name` or | |
| `creationTimestamp desc` is supported. | |
| pageToken: string, Specifies a page token to use. Set `pageToken` to the | |
| `nextPageToken` returned by a previous list request to get | |
| the next page of results. | |
| serviceProjectNumber: string, The Shared VPC service project id or service project number for which | |
| aggregated list request is invoked for subnetworks list-usable api. | |
| x__xgafv: string, V1 error format. | |
| Allowed values | |
| 1 - v1 error format | |
| 2 - v2 error format | |
| Returns: | |
| An object of the form: | |
| { | |
| "id": "A String", # [Output Only] Unique identifier for the resource; defined by the server. | |
| "items": { # A list of AutoscalersScopedList resources. | |
| "a_key": { # [Output Only] Name of the scope containing this set of autoscalers. | |
| "autoscalers": [ # [Output Only] A list of autoscalers contained in this scope. | |
| { # Represents an Autoscaler resource. | |
| # | |
| # Google Compute Engine has two Autoscaler resources: | |
| # | |
| # * [Zonal](/compute/docs/reference/rest/v1/autoscalers) | |
| # * [Regional](/compute/docs/reference/rest/v1/regionAutoscalers) | |
| # | |
| # Use autoscalers to automatically add or delete instances from a | |
| # managed instance group according to your defined autoscaling policy. | |
| # For more information, read Autoscaling Groups of Instances. | |
| # | |
| # For zonal managed instance groups resource, use the autoscaler | |
| # resource. | |
| # | |
| # For regional managed instance groups, use theregionAutoscalers resource. | |
| "autoscalingPolicy": { # Cloud Autoscaler policy. # The configuration parameters for the autoscaling algorithm. You can define | |
| # one or more signals for an autoscaler: cpuUtilization,customMetricUtilizations, andloadBalancingUtilization. | |
| # | |
| # If none of these are specified, the default will be to autoscale based oncpuUtilization to 0.6 or 60%. | |
| "coolDownPeriodSec": 42, # The number of seconds that your application takes to initialize on a VM | |
| # instance. This is referred to as the | |
| # [initialization period](/compute/docs/autoscaler#cool_down_period). | |
| # Specifying an accurate initialization period improves | |
| # autoscaler decisions. For example, when scaling out, the autoscaler ignores | |
| # data from VMs that are still initializing because those VMs might not yet | |
| # represent normal usage of your application. The default initialization | |
| # period is 60 seconds. | |
| # | |
| # Initialization periods might vary because of numerous | |
| # factors. We recommend that you test how long your application takes to | |
| # initialize. To do this, create a VM and time your application's startup | |
| # process. | |
| "cpuUtilization": { # CPU utilization policy. # Defines the CPU utilization policy that allows the autoscaler to scale | |
| # based on the average CPU utilization of a managed instance group. | |
| "predictiveMethod": "A String", # Indicates whether predictive autoscaling based on CPU metric is enabled. | |
| # Valid values are: | |
| # | |
| # * NONE (default). No predictive method is used. The autoscaler scales the | |
| # group to meet current demand based on real-time metrics. | |
| # * OPTIMIZE_AVAILABILITY. Predictive autoscaling improves availability by | |
| # monitoring daily and weekly load patterns and scaling out ahead of | |
| # anticipated demand. | |
| "utilizationMax": 3.14, # The upper bound of the utilization range. Must be a float value in the | |
| # range ('utilization_min', 1]. A value of 0.0 is equivalent to leaving the | |
| # field unset. | |
| "utilizationMin": 3.14, # The lower bound of the utilization range. Must be a float value in the | |
| # range (0, 'utilization_max']. A value of 0.0 is equivalent to leaving the | |
| # field unset. | |
| "utilizationTarget": 3.14, # The target CPU utilization that the autoscaler maintains. Must be | |
| # a float value in the range (0, 1]. If not specified, the default is0.6. | |
| # | |
| # If the CPU level is below the target utilization, the autoscaler scales | |
| # in the number of instances until it reaches the minimum number of | |
| # instances you specified or until the average CPU of your instances | |
| # reaches the target utilization. | |
| # | |
| # If the average CPU is above the target utilization, the autoscaler | |
| # scales out until it reaches the maximum number of instances you | |
| # specified or until the average utilization reaches the target | |
| # utilization. | |
| }, | |
| "customMetricUtilizations": [ # Configuration parameters of autoscaling based on a custom metric. | |
| { # Custom utilization metric policy. | |
| "filter": "A String", # A filter string, compatible with a Stackdriver Monitoringfilter string forTimeSeries.list API call. This filter is | |
| # used to select a specific TimeSeries for the purpose of autoscaling and | |
| # to determine whether the metric is exporting per-instance or | |
| # per-group data. | |
| # | |
| # For the filter to be valid for autoscaling purposes, the following rules | |
| # apply: | |
| # | |
| # | |
| # - You can only use the AND operator for joining | |
| # selectors. | |
| # - You can only use direct equality comparison operator | |
| # (=) without any functions for each selector. | |
| # - You can specify the metric in both the filter string and in the | |
| # metric field. However, if specified in both places, the metric must | |
| # be identical. | |
| # - The monitored resource type | |
| # determines what kind of values are expected for the metric. If it is | |
| # a gce_instance, the autoscaler expects the metric to | |
| # include a separate TimeSeries for each instance in a group. In such a | |
| # case, you cannot filter on resource labels. | |
| # | |
| # | |
| # If the resource type is any other value, the autoscaler expects | |
| # this metric to contain values that apply to the entire autoscaled | |
| # instance group and resource label filtering can be performed to | |
| # point autoscaler at the correct TimeSeries to scale upon. This is | |
| # called a *per-group metric* for the purpose of autoscaling. | |
| # | |
| # If not specified, the type defaults to | |
| # gce_instance. | |
| # | |
| # | |
| # | |
| # Try to provide a filter that is selective enough to pick just one | |
| # TimeSeries for the autoscaled group or for each of the instances (if you | |
| # are using gce_instance resource type). If multiple | |
| # TimeSeries are returned upon the query execution, the autoscaler will sum | |
| # their respective values to obtain its scaling value. | |
| "metric": "A String", # The identifier (type) of the Stackdriver Monitoring metric. The metric | |
| # cannot have negative values. | |
| # | |
| # The metric must have a value type of INT64 orDOUBLE. | |
| "singleInstanceAssignment": 3.14, # If scaling is based on a per-group metric value that represents the | |
| # total amount of work to be done or resource usage, set this value to an | |
| # amount assigned for a single instance of the scaled group. Autoscaler | |
| # keeps the number of instances proportional to the value of this | |
| # metric. The metric itself does not change value due to group | |
| # resizing. | |
| # | |
| # A good metric to use with the target is for examplepubsub.googleapis.com/subscription/num_undelivered_messages | |
| # or a custom metric exporting the total number of requests coming to | |
| # your instances. | |
| # | |
| # A bad example would be a metric exporting an average or median latency, | |
| # since this value can't include a chunk assignable to a single instance, | |
| # it could be better used with utilization_target instead. | |
| "utilizationTarget": 3.14, # The target value of the metric that autoscaler maintains. This | |
| # must be a positive value. A utilization metric scales number of | |
| # virtual machines handling requests to increase or decrease | |
| # proportionally to the metric. | |
| # | |
| # For example, a good metric to use as a utilization_target ishttps://www.googleapis.com/compute/v1/instance/network/received_bytes_count. | |
| # The autoscaler works to keep this value constant for each of the | |
| # instances. | |
| "utilizationTargetType": "A String", # Defines how target utilization value is expressed for a Stackdriver | |
| # Monitoring metric. Either GAUGE,DELTA_PER_SECOND, or DELTA_PER_MINUTE. | |
| }, | |
| ], | |
| "loadBalancingUtilization": { # Configuration parameters of autoscaling based on load balancing. # Configuration parameters of autoscaling based on load balancer. | |
| "utilizationTarget": 3.14, # Fraction of backend capacity utilization (set in HTTP(S) load balancing | |
| # configuration) that the autoscaler maintains. Must be a positive float | |
| # value. If not defined, the default is 0.8. | |
| }, | |
| "maxNumReplicas": 42, # The maximum number of instances that the autoscaler can scale out to. This | |
| # is required when creating or updating an autoscaler. The maximum number | |
| # of replicas must not be lower than minimal number of replicas. | |
| "minNumReplicas": 42, # The minimum number of replicas that the autoscaler can scale in to. | |
| # This cannot be less than 0. If not provided, autoscaler chooses a | |
| # default value depending on maximum number of instances allowed. | |
| "mode": "A String", # Defines the operating mode for this policy. | |
| # The following modes are available: | |
| # | |
| # - OFF: Disables the autoscaler but maintains its | |
| # configuration. | |
| # - ONLY_SCALE_OUT: Restricts the autoscaler to add | |
| # VM instances only. | |
| # - ON: Enables all autoscaler activities according to its | |
| # policy. | |
| # | |
| # | |
| # For more information, see | |
| # "Turning off or restricting an autoscaler" | |
| "scaleInControl": { # Configuration that allows for slower scale in so that even if Autoscaler | |
| # recommends an abrupt scale in of a MIG, it will be throttled as specified | |
| # by the parameters below. | |
| "maxScaledInReplicas": { # Encapsulates numeric value that can be either absolute or relative. # Maximum allowed number (or %) of VMs that can be deducted from the peak | |
| # recommendation during the window autoscaler looks at when computing | |
| # recommendations. Possibly all these VMs can be deleted at once so user | |
| # service needs to be prepared to lose that many VMs in one step. | |
| "calculated": 42, # Output only. Absolute value of VM instances calculated based on the specific mode. | |
| # | |
| # | |
| # | |
| # - If the value is fixed, then the calculated | |
| # value is equal to the fixed value. | |
| # - If the value is a percent, then the | |
| # calculated | |
| # value is percent/100 * targetSize. For example, | |
| # the calculated value of a 80% of a managed instance group | |
| # with 150 instances would be (80/100 * 150) = 120 VM instances. If there | |
| # is a remainder, the number is rounded. | |
| "fixed": 42, # Specifies a fixed number of VM instances. This must be a positive integer. | |
| "percent": 42, # Specifies a percentage of instances between 0 to 100%, inclusive. For | |
| # example, specify 80 for 80%. | |
| }, | |
| "timeWindowSec": 42, # How far back autoscaling looks when computing recommendations to | |
| # include directives regarding slower scale in, as described above. | |
| }, | |
| "scalingSchedules": { # Scaling schedules defined for an autoscaler. Multiple schedules | |
| # can be set on an autoscaler, and they can overlap. During overlapping | |
| # periods the greatest min_required_replicas of all scaling schedules is | |
| # applied. Up to 128 scaling schedules are allowed. | |
| "a_key": { # Scaling based on user-defined schedule. The message describes a single | |
| # scaling schedule. A scaling schedule changes the minimum number of VM | |
| # instances an autoscaler can recommend, which can trigger scaling out. | |
| "description": "A String", # A description of a scaling schedule. | |
| "disabled": True or False, # A boolean value that specifies whether a scaling schedule can influence | |
| # autoscaler recommendations. If set to true, then a scaling schedule has | |
| # no effect. This field is optional, and its value is false by default. | |
| "durationSec": 42, # The duration of time intervals, in seconds, for which this | |
| # scaling schedule is to run. The minimum allowed value is 300. | |
| # This field is required. | |
| "minRequiredReplicas": 42, # The minimum number of VM instances that the autoscaler will | |
| # recommend in time intervals starting according to schedule. This field is | |
| # required. | |
| "schedule": "A String", # The start timestamps of time intervals when this scaling | |
| # schedule is to provide a scaling signal. This field uses the extended | |
| # cron format (with an optional year field). The expression can describe a | |
| # single timestamp if the optional year is set, in which case the scaling | |
| # schedule runs once. The schedule is interpreted with respect to | |
| # time_zone. This field is required. Note: These timestamps only describe | |
| # when autoscaler starts providing the scaling signal. The VMs | |
| # need additional time to become serving. | |
| "timeZone": "A String", # The time zone to use when interpreting the schedule. | |
| # The value of this field must be a time zone name from the tz database: | |
| # https://en.wikipedia.org/wiki/Tz_database. This field is assigned a | |
| # default value of "UTC" if left empty. | |
| }, | |
| }, | |
| "stabilizationPeriodSec": 42, # The number of seconds that autoscaler waits for load stabilization before | |
| # making scale-in decisions. This is referred to as the | |
| # [stabilization period](/compute/docs/autoscaler#stabilization_period). | |
| # This might appear as a delay in scaling in but it is an important mechanism | |
| # for your application to not have fluctuating size due to short term load | |
| # fluctuations. | |
| # | |
| # The default stabilization period is 600 seconds. | |
| }, | |
| "creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339 | |
| # text format. | |
| "description": "A String", # An optional description of this resource. Provide this property when you | |
| # create the resource. | |
| "id": "A String", # Output only. [Output Only] The unique identifier for the resource. This identifier is | |
| # defined by the server. | |
| "kind": "compute#autoscaler", # Output only. [Output Only] Type of the resource. Always compute#autoscaler | |
| # for autoscalers. | |
| "name": "A String", # Name of the resource. Provided by the client when the resource is created. | |
| # The name must be 1-63 characters long, and comply withRFC1035. | |
| # Specifically, the name must be 1-63 characters long and match the regular | |
| # expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first | |
| # character must be a lowercase letter, and all following characters must | |
| # be a dash, lowercase letter, or digit, except the last character, which | |
| # cannot be a dash. | |
| "recommendedSize": 42, # Output only. [Output Only] Target recommended MIG size (number of instances) computed by | |
| # autoscaler. Autoscaler calculates the recommended MIG size even when the | |
| # autoscaling policy mode is different from ON. This field is empty when | |
| # autoscaler is not connected to an existing managed instance group or | |
| # autoscaler did not generate its prediction. | |
| "region": "A String", # Output only. [Output Only] URL of theregion | |
| # where the instance group resides (for autoscalers living in regional | |
| # scope). | |
| "scalingScheduleStatus": { # Output only. [Output Only] Status information of existing scaling schedules. | |
| "a_key": { | |
| "lastStartTime": "A String", # [Output Only] The last time the scaling schedule became active. | |
| # Note: this is a timestamp when a schedule actually became active, not when | |
| # it was planned to do so. | |
| # The timestamp is in RFC3339 | |
| # text format. | |
| "nextStartTime": "A String", # [Output Only] The next time the scaling schedule is to become active. | |
| # Note: this is a timestamp when a schedule is planned to run, but the actual | |
| # time might be slightly different. | |
| # The timestamp is in RFC3339 | |
| # text format. | |
| "state": "A String", # [Output Only] The current state of a scaling schedule. | |
| }, | |
| }, | |
| "selfLink": "A String", # [Output Only] Server-defined URL for the resource. | |
| "status": "A String", # [Output Only] The status of the autoscaler configuration. Current set of | |
| # possible values: | |
| # | |
| # - PENDING: | |
| # Autoscaler backend hasn't read new/updated configuration. | |
| # - DELETING: | |
| # Configuration is being deleted. | |
| # - ACTIVE: | |
| # Configuration is acknowledged to be effective. Some warnings might | |
| # be present in the statusDetails field. | |
| # - ERROR: | |
| # Configuration has errors. Actionable for users. Details are present in | |
| # the statusDetails field. | |
| # | |
| # | |
| # New values might be added in the future. | |
| "statusDetails": [ # [Output Only] Human-readable details about the current state of the | |
| # autoscaler. Read the documentation forCommonly | |
| # returned status messages for examples of status messages you might | |
| # encounter. | |
| { | |
| "message": "A String", # The status message. | |
| "type": "A String", # The type of error, warning, or notice returned. Current set of possible | |
| # values: | |
| # | |
| # - ALL_INSTANCES_UNHEALTHY (WARNING): | |
| # All instances in the instance group are unhealthy (not in RUNNING | |
| # state). | |
| # - BACKEND_SERVICE_DOES_NOT_EXIST (ERROR): | |
| # There is no backend service attached to the instance group. | |
| # - CAPPED_AT_MAX_NUM_REPLICAS (WARNING): | |
| # Autoscaler recommends a size greater than maxNumReplicas. | |
| # - CUSTOM_METRIC_DATA_POINTS_TOO_SPARSE (WARNING): | |
| # The custom metric samples are not exported often enough to be | |
| # a credible base for autoscaling. | |
| # - CUSTOM_METRIC_INVALID (ERROR): | |
| # The custom metric that was specified does not exist or does not have | |
| # the necessary labels. | |
| # - MIN_EQUALS_MAX (WARNING): | |
| # The minNumReplicas is equal to maxNumReplicas. This means the | |
| # autoscaler cannot add or remove instances from the instance group. | |
| # - MISSING_CUSTOM_METRIC_DATA_POINTS (WARNING): | |
| # The autoscaler did not receive any data from the custom metric | |
| # configured for autoscaling. | |
| # - MISSING_LOAD_BALANCING_DATA_POINTS (WARNING): | |
| # The autoscaler is configured to scale based on a load balancing signal | |
| # but the instance group has not received any requests from the load | |
| # balancer. | |
| # - MODE_OFF (WARNING): | |
| # Autoscaling is turned off. The number of instances in the group won't | |
| # change automatically. The autoscaling configuration is preserved. | |
| # - MODE_ONLY_UP (WARNING): | |
| # Autoscaling is in the "Autoscale only out" mode. The autoscaler can add | |
| # instances but not remove any. | |
| # - MORE_THAN_ONE_BACKEND_SERVICE (ERROR): | |
| # The instance group cannot be autoscaled because it has more than one | |
| # backend service attached to it. | |
| # - NOT_ENOUGH_QUOTA_AVAILABLE (ERROR): | |
| # There is insufficient quota for the necessary resources, such as CPU or | |
| # number of instances. | |
| # - REGION_RESOURCE_STOCKOUT (ERROR): | |
| # Shown only for regional autoscalers: there is a resource stockout in | |
| # the chosen region. | |
| # - SCALING_TARGET_DOES_NOT_EXIST (ERROR): | |
| # The target to be scaled does not exist. | |
| # - UNSUPPORTED_MAX_RATE_LOAD_BALANCING_CONFIGURATION | |
| # (ERROR): Autoscaling does not work with an HTTP/S load balancer that | |
| # has been configured for maxRate. | |
| # - ZONE_RESOURCE_STOCKOUT (ERROR): | |
| # For zonal autoscalers: there is a resource stockout in the chosen zone. | |
| # For regional autoscalers: in at least one of the zones you're using | |
| # there is a resource stockout. | |
| # | |
| # | |
| # New values might be added in the future. Some of the values might not be | |
| # available in all API versions. | |
| }, | |
| ], | |
| "target": "A String", # URL of the managed instance group that this autoscaler will scale. This | |
| # field is required when creating an autoscaler. | |
| "zone": "A String", # Output only. [Output Only] URL of thezone | |
| # where the instance group resides (for autoscalers living in zonal scope). | |
| }, | |
| ], | |
| "warning": { # [Output Only] Informational warning which replaces the list of autoscalers | |
| # when the list is empty. | |
| "code": "A String", # [Output Only] A warning code, if applicable. For example, Compute | |
| # Engine returns NO_RESULTS_ON_PAGE if there | |
| # are no results in the response. | |
| "data": [ # [Output Only] Metadata about this warning in key: | |
| # value format. For example: | |
| # | |
| # "data": [ | |
| # { | |
| # "key": "scope", | |
| # "value": "zones/us-east1-d" | |
| # }] | |
| { | |
| "key": "A String", # [Output Only] A key that provides more detail on the warning being | |
| # returned. For example, for warnings where there are no results in a list | |
| # request for a particular zone, this key might be scope and | |
| # the key value might be the zone name. Other examples might be a key | |
| # indicating a deprecated resource and a suggested replacement, or a | |
| # warning about invalid network settings (for example, if an instance | |
| # attempts to perform IP forwarding but is not enabled for IP forwarding). | |
| "value": "A String", # [Output Only] A warning data value corresponding to the key. | |
| }, | |
| ], | |
| "message": "A String", # [Output Only] A human-readable description of the warning code. | |
| }, | |
| }, | |
| }, | |
| "kind": "compute#autoscalerAggregatedList", # Output only. [Output Only] Type of resource. Alwayscompute#autoscalerAggregatedList for aggregated lists of | |
| # autoscalers. | |
| "nextPageToken": "A String", # [Output Only] This token allows you to get the next page of results for | |
| # list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for | |
| # the query parameter pageToken in the next list request. | |
| # Subsequent list requests will have their own nextPageToken to | |
| # continue paging through the results. | |
| "selfLink": "A String", # Output only. [Output Only] Server-defined URL for this resource. | |
| "unreachables": [ # Output only. [Output Only] Unreachable resources. | |
| # end_interface: MixerListResponseWithEtagBuilder | |
| "A String", | |
| ], | |
| "warning": { # [Output Only] Informational warning message. | |
| "code": "A String", # [Output Only] A warning code, if applicable. For example, Compute | |
| # Engine returns NO_RESULTS_ON_PAGE if there | |
| # are no results in the response. | |
| "data": [ # [Output Only] Metadata about this warning in key: | |
| # value format. For example: | |
| # | |
| # "data": [ | |
| # { | |
| # "key": "scope", | |
| # "value": "zones/us-east1-d" | |
| # }] | |
| { | |
| "key": "A String", # [Output Only] A key that provides more detail on the warning being | |
| # returned. For example, for warnings where there are no results in a list | |
| # request for a particular zone, this key might be scope and | |
| # the key value might be the zone name. Other examples might be a key | |
| # indicating a deprecated resource and a suggested replacement, or a | |
| # warning about invalid network settings (for example, if an instance | |
| # attempts to perform IP forwarding but is not enabled for IP forwarding). | |
| "value": "A String", # [Output Only] A warning data value corresponding to the key. | |
| }, | |
| ], | |
| "message": "A String", # [Output Only] A human-readable description of the warning code. | |
| }, | |
| }</pre> | |
| </div> | |
| <div class="method"> | |
| <code class="details" id="aggregatedList_next">aggregatedList_next(previous_request, previous_response)</code> | |
| <pre>Retrieves the next page of results. | |
| Args: | |
| previous_request: The request for the previous page. (required) | |
| previous_response: The response from the request for the previous page. (required) | |
| Returns: | |
| A request object that you can call 'execute()' on to request the next | |
| page. Returns None if there are no more items in the collection. | |
| </pre> | |
| </div> | |
| <div class="method"> | |
| <code class="details" id="close">close()</code> | |
| <pre>Close httplib2 connections.</pre> | |
| </div> | |
| <div class="method"> | |
| <code class="details" id="delete">delete(project, zone, autoscaler, requestId=None, x__xgafv=None)</code> | |
| <pre>Deletes the specified autoscaler. | |
| Args: | |
| project: string, Project ID for this request. (required) | |
| zone: string, Name of the zone for this request. (required) | |
| autoscaler: string, Name of the autoscaler to delete. (required) | |
| requestId: string, An optional request ID to identify requests. Specify a unique request ID so | |
| that if you must retry your request, the server will know to ignore the | |
| request if it has already been completed. | |
| For example, consider a situation where you make an initial request and | |
| the request times out. If you make the request again with the same | |
| request ID, the server can check if original operation with the same | |
| request ID was received, and if so, will ignore the second request. This | |
| prevents clients from accidentally creating duplicate commitments. | |
| The request ID must be | |
| a valid UUID with the exception that zero UUID is not supported | |
| (00000000-0000-0000-0000-000000000000). | |
| x__xgafv: string, V1 error format. | |
| Allowed values | |
| 1 - v1 error format | |
| 2 - v2 error format | |
| Returns: | |
| An object of the form: | |
| { # Represents an Operation resource. | |
| # | |
| # Google Compute Engine has three Operation resources: | |
| # | |
| # * [Global](/compute/docs/reference/rest/v1/globalOperations) | |
| # * [Regional](/compute/docs/reference/rest/v1/regionOperations) | |
| # * [Zonal](/compute/docs/reference/rest/v1/zoneOperations) | |
| # | |
| # You can use an operation resource to manage asynchronous API requests. | |
| # For more information, readHandling | |
| # API responses. | |
| # | |
| # Operations can be global, regional or zonal. | |
| # | |
| # - For global operations, use the `globalOperations` | |
| # resource. | |
| # - For regional operations, use the | |
| # `regionOperations` resource. | |
| # - For zonal operations, use | |
| # the `zoneOperations` resource. | |
| # | |
| # | |
| # | |
| # For more information, read | |
| # Global, Regional, and Zonal Resources. | |
| # | |
| # Note that completed Operation resources have a limited | |
| # retention period. | |
| "clientOperationId": "A String", # [Output Only] The value of `requestId` if you provided it in the request. | |
| # Not present otherwise. | |
| "creationTimestamp": "A String", # [Deprecated] This field is deprecated. | |
| "description": "A String", # [Output Only] A textual description of the operation, which is | |
| # set when the operation is created. | |
| "details": { # [Output Only] Extended details about the operation's execution. | |
| "data": { # Machine readable data from the message. | |
| "a_key": "", | |
| }, | |
| "message": "A String", # Human or AI readable details on execution of the operation. | |
| }, | |
| "endTime": "A String", # [Output Only] The time that this operation was completed. This value is inRFC3339 | |
| # text format. | |
| "error": { # [Output Only] If errors are generated during processing of the operation, | |
| # this field will be populated. | |
| "errors": [ # [Output Only] The array of errors encountered while processing this | |
| # operation. | |
| { # Represents a single error encountered during the processing of an | |
| # operation. | |
| "code": "A String", # [Output Only] The error type identifier for this error. | |
| "errorDetails": [ # [Output Only] An optional list of messages that contain the error | |
| # details. There is a set of defined message types to use for providing | |
| # details.The syntax depends on the error code. For example, | |
| # QuotaExceededInfo will have details when the error code is | |
| # QUOTA_EXCEEDED. | |
| { # Container for structured error details providing additional context | |
| # specific to the encountered error code. | |
| "errorInfo": { # Describes the cause of the error with structured details. # Error information containing structured domain, reason, and metadata. | |
| # | |
| # Example of an error when contacting the "pubsub.googleapis.com" API when it | |
| # is not enabled: | |
| # | |
| # { "reason": "API_DISABLED" | |
| # "domain": "googleapis.com" | |
| # "metadata": { | |
| # "resource": "projects/123", | |
| # "service": "pubsub.googleapis.com" | |
| # } | |
| # } | |
| # | |
| # This response indicates that the pubsub.googleapis.com API is not enabled. | |
| # | |
| # Example of an error that is returned when attempting to create a Spanner | |
| # instance in a region that is out of stock: | |
| # | |
| # { "reason": "STOCKOUT" | |
| # "domain": "spanner.googleapis.com", | |
| # "metadata": { | |
| # "availableRegions": "us-central1,us-east2" | |
| # } | |
| # } | |
| "domain": "A String", # The logical grouping to which the "reason" belongs. The error domain | |
| # is typically the registered service name of the tool or product that | |
| # generates the error. Example: "pubsub.googleapis.com". If the error is | |
| # generated by some common infrastructure, the error domain must be a | |
| # globally unique value that identifies the infrastructure. For Google API | |
| # infrastructure, the error domain is "googleapis.com". | |
| "metadatas": { # Additional structured details about this error. | |
| # | |
| # Keys must match a regular expression of `a-z+` but should | |
| # ideally be lowerCamelCase. Also, they must be limited to 64 characters in | |
| # length. When identifying the current value of an exceeded limit, the units | |
| # should be contained in the key, not the value. For example, rather than | |
| # `{"instanceLimit": "100/request"}`, should be returned as, | |
| # `{"instanceLimitPerRequest": "100"}`, if the client exceeds the number of | |
| # instances that can be created in a single (batch) request. | |
| "a_key": "A String", | |
| }, | |
| "reason": "A String", # The reason of the error. This is a constant value that identifies the | |
| # proximate cause of the error. Error reasons are unique within a particular | |
| # domain of errors. This should be at most 63 characters and match a | |
| # regular expression of `A-Z+[A-Z0-9]`, which represents | |
| # UPPER_SNAKE_CASE. | |
| }, | |
| "help": { # Provides links to documentation or for performing an out of band action. # Links and information to help the user resolve the error. | |
| # | |
| # For example, if a quota check failed with an error indicating the calling | |
| # project hasn't enabled the accessed service, this can contain a URL pointing | |
| # directly to the right place in the developer console to flip the bit. | |
| "links": [ # URL(s) pointing to additional information on handling the current error. | |
| { # Describes a URL link. | |
| "description": "A String", # Describes what the link offers. | |
| "url": "A String", # The URL of the link. | |
| }, | |
| ], | |
| }, | |
| "localizedMessage": { # Provides a localized error message that is safe to return to the user # A localized human-readable error message intended for end users. | |
| # which can be attached to an RPC error. | |
| "locale": "A String", # The locale used following the specification defined at | |
| # https://www.rfc-editor.org/rfc/bcp/bcp47.txt. | |
| # Examples are: "en-US", "fr-CH", "es-MX" | |
| "message": "A String", # The localized error message in the above locale. | |
| }, | |
| "quotaInfo": { # Additional details for quota exceeded error for resource quota. # Details about quota limits and metrics when a quota is exceeded. | |
| "dimensions": { # The map holding related quota dimensions. | |
| "a_key": "A String", | |
| }, | |
| "futureLimit": 3.14, # Future quota limit being rolled out. The limit's unit depends on the quota | |
| # type or metric. | |
| "limit": 3.14, # Current effective quota limit. The limit's unit depends on the quota type | |
| # or metric. | |
| "limitName": "A String", # The name of the quota limit. | |
| "metricName": "A String", # The Compute Engine quota metric name. | |
| "rolloutStatus": "A String", # Rollout status of the future quota limit. | |
| }, | |
| }, | |
| ], | |
| "location": "A String", # [Output Only] Indicates the field in the request that caused the error. | |
| # This property is optional. | |
| "message": "A String", # [Output Only] An optional, human-readable error message. | |
| }, | |
| ], | |
| }, | |
| "getHealthOperationMetadata": { # Metadata for GetHealth operations. # Output only. Metadata for GetHealth operations. | |
| "healthInfo": { # Health information. # Output only. The health information. | |
| "availabilitySloStatus": "A String", # Output only. The availability SLO status. | |
| "healthStatus": "A String", # Output only. The health status. | |
| "repairCategory": "A String", # Output only. The repair category. | |
| "unhealthyReason": "A String", # Output only. The reason for unhealthy status. | |
| "updateTime": "A String", # Output only. The time when health info was updated. | |
| }, | |
| }, | |
| "getVersionOperationMetadata": { | |
| "inlineSbomInfo": { | |
| "currentComponentVersions": { # A mapping of components to their currently-applied versions or other | |
| # appropriate identifiers. | |
| "a_key": "A String", | |
| }, | |
| "targetComponentVersions": { # A mapping of components to their target versions or other appropriate | |
| # identifiers. | |
| "a_key": "A String", | |
| }, | |
| }, | |
| }, | |
| "httpErrorMessage": "A String", # [Output Only] If the operation fails, this field contains the HTTP error | |
| # message that was returned, such as `NOT FOUND`. | |
| "httpErrorStatusCode": 42, # [Output Only] If the operation fails, this field contains the HTTP error | |
| # status code that was returned. For example, a `404` means the | |
| # resource was not found. | |
| "id": "A String", # [Output Only] The unique identifier for the operation. This identifier is | |
| # defined by the server. | |
| "insertTime": "A String", # [Output Only] The time that this operation was requested. | |
| # This value is inRFC3339 | |
| # text format. | |
| "instancesBulkInsertOperationMetadata": { | |
| "perLocationStatus": { # Status information per location (location name is key). | |
| # Example key: zones/us-central1-a | |
| "a_key": { | |
| "createdVmCount": 42, # [Output Only] Count of VMs successfully created so far. | |
| "deletedVmCount": 42, # [Output Only] Count of VMs that got deleted during rollback. | |
| "failedToCreateVmCount": 42, # [Output Only] Count of VMs that started creating but encountered an | |
| # error. | |
| "status": "A String", # [Output Only] Creation status of BulkInsert operation - information | |
| # if the flow is rolling forward or rolling back. | |
| "targetVmCount": 42, # [Output Only] Count of VMs originally planned to be created. | |
| }, | |
| }, | |
| }, | |
| "instancesTroubleshootOperationMetadata": { # [Output Only] Operation metadata for instances.troubleshoot. # Output only. [Output Only] Operation metadata for instances.troubleshoot. | |
| "troubleshootOutput": "A String", # Output only. [Output Only] Serialized output of the troubleshooting diagnostic run. | |
| }, | |
| "kind": "compute#operation", # Output only. [Output Only] Type of the resource. Always `compute#operation` for | |
| # Operation resources. | |
| "name": "A String", # [Output Only] Name of the operation. | |
| "operationGroupId": "A String", # Output only. [Output Only] An ID that represents a group of operations, such as when a | |
| # group of operations results from a `bulkInsert` API request. | |
| "operationType": "A String", # [Output Only] The type of operation, such as `insert`, | |
| # `update`, or `delete`, and so on. | |
| "progress": 42, # [Output Only] An optional progress indicator that ranges from 0 to 100. | |
| # There is no requirement that this be linear or support any granularity of | |
| # operations. This should not be used to guess when the operation will be | |
| # complete. This number should monotonically increase as the operation | |
| # progresses. | |
| "region": "A String", # [Output Only] The URL of the region where the operation resides. Only | |
| # applicable when performing regional operations. | |
| "selfLink": "A String", # [Output Only] Server-defined URL for the resource. | |
| "setCommonInstanceMetadataOperationMetadata": { # Output only. [Output Only] If the operation is for projects.setCommonInstanceMetadata, | |
| # this field will contain information on all underlying zonal actions and | |
| # their state. | |
| "clientOperationId": "A String", # [Output Only] The client operation id. | |
| "perLocationOperations": { # [Output Only] Status information per location (location name is key). | |
| # Example key: zones/us-central1-a | |
| "a_key": { | |
| "error": { # The `Status` type defines a logical error model that is suitable for # [Output Only] If state is `ABANDONED` or `FAILED`, this field is | |
| # populated. | |
| # different programming environments, including REST APIs and RPC APIs. It is | |
| # used by [gRPC](https://github.com/grpc). Each `Status` message contains | |
| # three pieces of data: error code, error message, and error details. | |
| # | |
| # You can find out more about this error model and how to work with it in the | |
| # [API Design Guide](https://cloud.google.com/apis/design/errors). | |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. | |
| "details": [ # A list of messages that carry the error details. There is a common set of | |
| # message types for APIs to use. | |
| { | |
| "a_key": "", # Properties of the object. Contains field @type with type URL. | |
| }, | |
| ], | |
| "message": "A String", # A developer-facing error message, which should be in English. Any | |
| # user-facing error message should be localized and sent in the | |
| # google.rpc.Status.details field, or localized by the client. | |
| }, | |
| "state": "A String", # [Output Only] Status of the action, which can be one of the following: | |
| # `PROPAGATING`, `PROPAGATED`, `ABANDONED`, `FAILED`, or `DONE`. | |
| }, | |
| }, | |
| }, | |
| "startTime": "A String", # [Output Only] The time that this operation was started by the server. | |
| # This value is inRFC3339 | |
| # text format. | |
| "status": "A String", # [Output Only] The status of the operation, which can be one of the | |
| # following: | |
| # `PENDING`, `RUNNING`, or `DONE`. | |
| "statusMessage": "A String", # [Output Only] An optional textual description of the current status of the | |
| # operation. | |
| "targetId": "A String", # [Output Only] The unique target ID, which identifies a specific incarnation | |
| # of the target resource. | |
| "targetLink": "A String", # [Output Only] The URL of the resource that the operation modifies. For | |
| # operations related to creating a snapshot, this points to the disk | |
| # that the snapshot was created from. | |
| "user": "A String", # [Output Only] User who requested the operation, for example: | |
| # `user@example.com` or | |
| # `alice_smith_identifier (global/workforcePools/example-com-us-employees)`. | |
| "warnings": [ # [Output Only] If warning messages are generated during processing of the | |
| # operation, this field will be populated. | |
| { | |
| "code": "A String", # [Output Only] A warning code, if applicable. For example, Compute | |
| # Engine returns NO_RESULTS_ON_PAGE if there | |
| # are no results in the response. | |
| "data": [ # [Output Only] Metadata about this warning in key: | |
| # value format. For example: | |
| # | |
| # "data": [ | |
| # { | |
| # "key": "scope", | |
| # "value": "zones/us-east1-d" | |
| # }] | |
| { | |
| "key": "A String", # [Output Only] A key that provides more detail on the warning being | |
| # returned. For example, for warnings where there are no results in a list | |
| # request for a particular zone, this key might be scope and | |
| # the key value might be the zone name. Other examples might be a key | |
| # indicating a deprecated resource and a suggested replacement, or a | |
| # warning about invalid network settings (for example, if an instance | |
| # attempts to perform IP forwarding but is not enabled for IP forwarding). | |
| "value": "A String", # [Output Only] A warning data value corresponding to the key. | |
| }, | |
| ], | |
| "message": "A String", # [Output Only] A human-readable description of the warning code. | |
| }, | |
| ], | |
| "zone": "A String", # [Output Only] The URL of the zone where the operation resides. Only | |
| # applicable when performing per-zone operations. | |
| }</pre> | |
| </div> | |
| <div class="method"> | |
| <code class="details" id="get">get(project, zone, autoscaler, x__xgafv=None)</code> | |
| <pre>Returns the specified autoscaler resource. | |
| Args: | |
| project: string, Project ID for this request. (required) | |
| zone: string, Name of the zone for this request. (required) | |
| autoscaler: string, Name of the autoscaler to return. (required) | |
| x__xgafv: string, V1 error format. | |
| Allowed values | |
| 1 - v1 error format | |
| 2 - v2 error format | |
| Returns: | |
| An object of the form: | |
| { # Represents an Autoscaler resource. | |
| # | |
| # Google Compute Engine has two Autoscaler resources: | |
| # | |
| # * [Zonal](/compute/docs/reference/rest/v1/autoscalers) | |
| # * [Regional](/compute/docs/reference/rest/v1/regionAutoscalers) | |
| # | |
| # Use autoscalers to automatically add or delete instances from a | |
| # managed instance group according to your defined autoscaling policy. | |
| # For more information, read Autoscaling Groups of Instances. | |
| # | |
| # For zonal managed instance groups resource, use the autoscaler | |
| # resource. | |
| # | |
| # For regional managed instance groups, use theregionAutoscalers resource. | |
| "autoscalingPolicy": { # Cloud Autoscaler policy. # The configuration parameters for the autoscaling algorithm. You can define | |
| # one or more signals for an autoscaler: cpuUtilization,customMetricUtilizations, andloadBalancingUtilization. | |
| # | |
| # If none of these are specified, the default will be to autoscale based oncpuUtilization to 0.6 or 60%. | |
| "coolDownPeriodSec": 42, # The number of seconds that your application takes to initialize on a VM | |
| # instance. This is referred to as the | |
| # [initialization period](/compute/docs/autoscaler#cool_down_period). | |
| # Specifying an accurate initialization period improves | |
| # autoscaler decisions. For example, when scaling out, the autoscaler ignores | |
| # data from VMs that are still initializing because those VMs might not yet | |
| # represent normal usage of your application. The default initialization | |
| # period is 60 seconds. | |
| # | |
| # Initialization periods might vary because of numerous | |
| # factors. We recommend that you test how long your application takes to | |
| # initialize. To do this, create a VM and time your application's startup | |
| # process. | |
| "cpuUtilization": { # CPU utilization policy. # Defines the CPU utilization policy that allows the autoscaler to scale | |
| # based on the average CPU utilization of a managed instance group. | |
| "predictiveMethod": "A String", # Indicates whether predictive autoscaling based on CPU metric is enabled. | |
| # Valid values are: | |
| # | |
| # * NONE (default). No predictive method is used. The autoscaler scales the | |
| # group to meet current demand based on real-time metrics. | |
| # * OPTIMIZE_AVAILABILITY. Predictive autoscaling improves availability by | |
| # monitoring daily and weekly load patterns and scaling out ahead of | |
| # anticipated demand. | |
| "utilizationMax": 3.14, # The upper bound of the utilization range. Must be a float value in the | |
| # range ('utilization_min', 1]. A value of 0.0 is equivalent to leaving the | |
| # field unset. | |
| "utilizationMin": 3.14, # The lower bound of the utilization range. Must be a float value in the | |
| # range (0, 'utilization_max']. A value of 0.0 is equivalent to leaving the | |
| # field unset. | |
| "utilizationTarget": 3.14, # The target CPU utilization that the autoscaler maintains. Must be | |
| # a float value in the range (0, 1]. If not specified, the default is0.6. | |
| # | |
| # If the CPU level is below the target utilization, the autoscaler scales | |
| # in the number of instances until it reaches the minimum number of | |
| # instances you specified or until the average CPU of your instances | |
| # reaches the target utilization. | |
| # | |
| # If the average CPU is above the target utilization, the autoscaler | |
| # scales out until it reaches the maximum number of instances you | |
| # specified or until the average utilization reaches the target | |
| # utilization. | |
| }, | |
| "customMetricUtilizations": [ # Configuration parameters of autoscaling based on a custom metric. | |
| { # Custom utilization metric policy. | |
| "filter": "A String", # A filter string, compatible with a Stackdriver Monitoringfilter string forTimeSeries.list API call. This filter is | |
| # used to select a specific TimeSeries for the purpose of autoscaling and | |
| # to determine whether the metric is exporting per-instance or | |
| # per-group data. | |
| # | |
| # For the filter to be valid for autoscaling purposes, the following rules | |
| # apply: | |
| # | |
| # | |
| # - You can only use the AND operator for joining | |
| # selectors. | |
| # - You can only use direct equality comparison operator | |
| # (=) without any functions for each selector. | |
| # - You can specify the metric in both the filter string and in the | |
| # metric field. However, if specified in both places, the metric must | |
| # be identical. | |
| # - The monitored resource type | |
| # determines what kind of values are expected for the metric. If it is | |
| # a gce_instance, the autoscaler expects the metric to | |
| # include a separate TimeSeries for each instance in a group. In such a | |
| # case, you cannot filter on resource labels. | |
| # | |
| # | |
| # If the resource type is any other value, the autoscaler expects | |
| # this metric to contain values that apply to the entire autoscaled | |
| # instance group and resource label filtering can be performed to | |
| # point autoscaler at the correct TimeSeries to scale upon. This is | |
| # called a *per-group metric* for the purpose of autoscaling. | |
| # | |
| # If not specified, the type defaults to | |
| # gce_instance. | |
| # | |
| # | |
| # | |
| # Try to provide a filter that is selective enough to pick just one | |
| # TimeSeries for the autoscaled group or for each of the instances (if you | |
| # are using gce_instance resource type). If multiple | |
| # TimeSeries are returned upon the query execution, the autoscaler will sum | |
| # their respective values to obtain its scaling value. | |
| "metric": "A String", # The identifier (type) of the Stackdriver Monitoring metric. The metric | |
| # cannot have negative values. | |
| # | |
| # The metric must have a value type of INT64 orDOUBLE. | |
| "singleInstanceAssignment": 3.14, # If scaling is based on a per-group metric value that represents the | |
| # total amount of work to be done or resource usage, set this value to an | |
| # amount assigned for a single instance of the scaled group. Autoscaler | |
| # keeps the number of instances proportional to the value of this | |
| # metric. The metric itself does not change value due to group | |
| # resizing. | |
| # | |
| # A good metric to use with the target is for examplepubsub.googleapis.com/subscription/num_undelivered_messages | |
| # or a custom metric exporting the total number of requests coming to | |
| # your instances. | |
| # | |
| # A bad example would be a metric exporting an average or median latency, | |
| # since this value can't include a chunk assignable to a single instance, | |
| # it could be better used with utilization_target instead. | |
| "utilizationTarget": 3.14, # The target value of the metric that autoscaler maintains. This | |
| # must be a positive value. A utilization metric scales number of | |
| # virtual machines handling requests to increase or decrease | |
| # proportionally to the metric. | |
| # | |
| # For example, a good metric to use as a utilization_target ishttps://www.googleapis.com/compute/v1/instance/network/received_bytes_count. | |
| # The autoscaler works to keep this value constant for each of the | |
| # instances. | |
| "utilizationTargetType": "A String", # Defines how target utilization value is expressed for a Stackdriver | |
| # Monitoring metric. Either GAUGE,DELTA_PER_SECOND, or DELTA_PER_MINUTE. | |
| }, | |
| ], | |
| "loadBalancingUtilization": { # Configuration parameters of autoscaling based on load balancing. # Configuration parameters of autoscaling based on load balancer. | |
| "utilizationTarget": 3.14, # Fraction of backend capacity utilization (set in HTTP(S) load balancing | |
| # configuration) that the autoscaler maintains. Must be a positive float | |
| # value. If not defined, the default is 0.8. | |
| }, | |
| "maxNumReplicas": 42, # The maximum number of instances that the autoscaler can scale out to. This | |
| # is required when creating or updating an autoscaler. The maximum number | |
| # of replicas must not be lower than minimal number of replicas. | |
| "minNumReplicas": 42, # The minimum number of replicas that the autoscaler can scale in to. | |
| # This cannot be less than 0. If not provided, autoscaler chooses a | |
| # default value depending on maximum number of instances allowed. | |
| "mode": "A String", # Defines the operating mode for this policy. | |
| # The following modes are available: | |
| # | |
| # - OFF: Disables the autoscaler but maintains its | |
| # configuration. | |
| # - ONLY_SCALE_OUT: Restricts the autoscaler to add | |
| # VM instances only. | |
| # - ON: Enables all autoscaler activities according to its | |
| # policy. | |
| # | |
| # | |
| # For more information, see | |
| # "Turning off or restricting an autoscaler" | |
| "scaleInControl": { # Configuration that allows for slower scale in so that even if Autoscaler | |
| # recommends an abrupt scale in of a MIG, it will be throttled as specified | |
| # by the parameters below. | |
| "maxScaledInReplicas": { # Encapsulates numeric value that can be either absolute or relative. # Maximum allowed number (or %) of VMs that can be deducted from the peak | |
| # recommendation during the window autoscaler looks at when computing | |
| # recommendations. Possibly all these VMs can be deleted at once so user | |
| # service needs to be prepared to lose that many VMs in one step. | |
| "calculated": 42, # Output only. Absolute value of VM instances calculated based on the specific mode. | |
| # | |
| # | |
| # | |
| # - If the value is fixed, then the calculated | |
| # value is equal to the fixed value. | |
| # - If the value is a percent, then the | |
| # calculated | |
| # value is percent/100 * targetSize. For example, | |
| # the calculated value of a 80% of a managed instance group | |
| # with 150 instances would be (80/100 * 150) = 120 VM instances. If there | |
| # is a remainder, the number is rounded. | |
| "fixed": 42, # Specifies a fixed number of VM instances. This must be a positive integer. | |
| "percent": 42, # Specifies a percentage of instances between 0 to 100%, inclusive. For | |
| # example, specify 80 for 80%. | |
| }, | |
| "timeWindowSec": 42, # How far back autoscaling looks when computing recommendations to | |
| # include directives regarding slower scale in, as described above. | |
| }, | |
| "scalingSchedules": { # Scaling schedules defined for an autoscaler. Multiple schedules | |
| # can be set on an autoscaler, and they can overlap. During overlapping | |
| # periods the greatest min_required_replicas of all scaling schedules is | |
| # applied. Up to 128 scaling schedules are allowed. | |
| "a_key": { # Scaling based on user-defined schedule. The message describes a single | |
| # scaling schedule. A scaling schedule changes the minimum number of VM | |
| # instances an autoscaler can recommend, which can trigger scaling out. | |
| "description": "A String", # A description of a scaling schedule. | |
| "disabled": True or False, # A boolean value that specifies whether a scaling schedule can influence | |
| # autoscaler recommendations. If set to true, then a scaling schedule has | |
| # no effect. This field is optional, and its value is false by default. | |
| "durationSec": 42, # The duration of time intervals, in seconds, for which this | |
| # scaling schedule is to run. The minimum allowed value is 300. | |
| # This field is required. | |
| "minRequiredReplicas": 42, # The minimum number of VM instances that the autoscaler will | |
| # recommend in time intervals starting according to schedule. This field is | |
| # required. | |
| "schedule": "A String", # The start timestamps of time intervals when this scaling | |
| # schedule is to provide a scaling signal. This field uses the extended | |
| # cron format (with an optional year field). The expression can describe a | |
| # single timestamp if the optional year is set, in which case the scaling | |
| # schedule runs once. The schedule is interpreted with respect to | |
| # time_zone. This field is required. Note: These timestamps only describe | |
| # when autoscaler starts providing the scaling signal. The VMs | |
| # need additional time to become serving. | |
| "timeZone": "A String", # The time zone to use when interpreting the schedule. | |
| # The value of this field must be a time zone name from the tz database: | |
| # https://en.wikipedia.org/wiki/Tz_database. This field is assigned a | |
| # default value of "UTC" if left empty. | |
| }, | |
| }, | |
| "stabilizationPeriodSec": 42, # The number of seconds that autoscaler waits for load stabilization before | |
| # making scale-in decisions. This is referred to as the | |
| # [stabilization period](/compute/docs/autoscaler#stabilization_period). | |
| # This might appear as a delay in scaling in but it is an important mechanism | |
| # for your application to not have fluctuating size due to short term load | |
| # fluctuations. | |
| # | |
| # The default stabilization period is 600 seconds. | |
| }, | |
| "creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339 | |
| # text format. | |
| "description": "A String", # An optional description of this resource. Provide this property when you | |
| # create the resource. | |
| "id": "A String", # Output only. [Output Only] The unique identifier for the resource. This identifier is | |
| # defined by the server. | |
| "kind": "compute#autoscaler", # Output only. [Output Only] Type of the resource. Always compute#autoscaler | |
| # for autoscalers. | |
| "name": "A String", # Name of the resource. Provided by the client when the resource is created. | |
| # The name must be 1-63 characters long, and comply withRFC1035. | |
| # Specifically, the name must be 1-63 characters long and match the regular | |
| # expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first | |
| # character must be a lowercase letter, and all following characters must | |
| # be a dash, lowercase letter, or digit, except the last character, which | |
| # cannot be a dash. | |
| "recommendedSize": 42, # Output only. [Output Only] Target recommended MIG size (number of instances) computed by | |
| # autoscaler. Autoscaler calculates the recommended MIG size even when the | |
| # autoscaling policy mode is different from ON. This field is empty when | |
| # autoscaler is not connected to an existing managed instance group or | |
| # autoscaler did not generate its prediction. | |
| "region": "A String", # Output only. [Output Only] URL of theregion | |
| # where the instance group resides (for autoscalers living in regional | |
| # scope). | |
| "scalingScheduleStatus": { # Output only. [Output Only] Status information of existing scaling schedules. | |
| "a_key": { | |
| "lastStartTime": "A String", # [Output Only] The last time the scaling schedule became active. | |
| # Note: this is a timestamp when a schedule actually became active, not when | |
| # it was planned to do so. | |
| # The timestamp is in RFC3339 | |
| # text format. | |
| "nextStartTime": "A String", # [Output Only] The next time the scaling schedule is to become active. | |
| # Note: this is a timestamp when a schedule is planned to run, but the actual | |
| # time might be slightly different. | |
| # The timestamp is in RFC3339 | |
| # text format. | |
| "state": "A String", # [Output Only] The current state of a scaling schedule. | |
| }, | |
| }, | |
| "selfLink": "A String", # [Output Only] Server-defined URL for the resource. | |
| "status": "A String", # [Output Only] The status of the autoscaler configuration. Current set of | |
| # possible values: | |
| # | |
| # - PENDING: | |
| # Autoscaler backend hasn't read new/updated configuration. | |
| # - DELETING: | |
| # Configuration is being deleted. | |
| # - ACTIVE: | |
| # Configuration is acknowledged to be effective. Some warnings might | |
| # be present in the statusDetails field. | |
| # - ERROR: | |
| # Configuration has errors. Actionable for users. Details are present in | |
| # the statusDetails field. | |
| # | |
| # | |
| # New values might be added in the future. | |
| "statusDetails": [ # [Output Only] Human-readable details about the current state of the | |
| # autoscaler. Read the documentation forCommonly | |
| # returned status messages for examples of status messages you might | |
| # encounter. | |
| { | |
| "message": "A String", # The status message. | |
| "type": "A String", # The type of error, warning, or notice returned. Current set of possible | |
| # values: | |
| # | |
| # - ALL_INSTANCES_UNHEALTHY (WARNING): | |
| # All instances in the instance group are unhealthy (not in RUNNING | |
| # state). | |
| # - BACKEND_SERVICE_DOES_NOT_EXIST (ERROR): | |
| # There is no backend service attached to the instance group. | |
| # - CAPPED_AT_MAX_NUM_REPLICAS (WARNING): | |
| # Autoscaler recommends a size greater than maxNumReplicas. | |
| # - CUSTOM_METRIC_DATA_POINTS_TOO_SPARSE (WARNING): | |
| # The custom metric samples are not exported often enough to be | |
| # a credible base for autoscaling. | |
| # - CUSTOM_METRIC_INVALID (ERROR): | |
| # The custom metric that was specified does not exist or does not have | |
| # the necessary labels. | |
| # - MIN_EQUALS_MAX (WARNING): | |
| # The minNumReplicas is equal to maxNumReplicas. This means the | |
| # autoscaler cannot add or remove instances from the instance group. | |
| # - MISSING_CUSTOM_METRIC_DATA_POINTS (WARNING): | |
| # The autoscaler did not receive any data from the custom metric | |
| # configured for autoscaling. | |
| # - MISSING_LOAD_BALANCING_DATA_POINTS (WARNING): | |
| # The autoscaler is configured to scale based on a load balancing signal | |
| # but the instance group has not received any requests from the load | |
| # balancer. | |
| # - MODE_OFF (WARNING): | |
| # Autoscaling is turned off. The number of instances in the group won't | |
| # change automatically. The autoscaling configuration is preserved. | |
| # - MODE_ONLY_UP (WARNING): | |
| # Autoscaling is in the "Autoscale only out" mode. The autoscaler can add | |
| # instances but not remove any. | |
| # - MORE_THAN_ONE_BACKEND_SERVICE (ERROR): | |
| # The instance group cannot be autoscaled because it has more than one | |
| # backend service attached to it. | |
| # - NOT_ENOUGH_QUOTA_AVAILABLE (ERROR): | |
| # There is insufficient quota for the necessary resources, such as CPU or | |
| # number of instances. | |
| # - REGION_RESOURCE_STOCKOUT (ERROR): | |
| # Shown only for regional autoscalers: there is a resource stockout in | |
| # the chosen region. | |
| # - SCALING_TARGET_DOES_NOT_EXIST (ERROR): | |
| # The target to be scaled does not exist. | |
| # - UNSUPPORTED_MAX_RATE_LOAD_BALANCING_CONFIGURATION | |
| # (ERROR): Autoscaling does not work with an HTTP/S load balancer that | |
| # has been configured for maxRate. | |
| # - ZONE_RESOURCE_STOCKOUT (ERROR): | |
| # For zonal autoscalers: there is a resource stockout in the chosen zone. | |
| # For regional autoscalers: in at least one of the zones you're using | |
| # there is a resource stockout. | |
| # | |
| # | |
| # New values might be added in the future. Some of the values might not be | |
| # available in all API versions. | |
| }, | |
| ], | |
| "target": "A String", # URL of the managed instance group that this autoscaler will scale. This | |
| # field is required when creating an autoscaler. | |
| "zone": "A String", # Output only. [Output Only] URL of thezone | |
| # where the instance group resides (for autoscalers living in zonal scope). | |
| }</pre> | |
| </div> | |
| <div class="method"> | |
| <code class="details" id="insert">insert(project, zone, body=None, requestId=None, x__xgafv=None)</code> | |
| <pre>Creates an autoscaler in the specified project using the data | |
| included in the request. | |
| Args: | |
| project: string, Project ID for this request. (required) | |
| zone: string, Name of the zone for this request. (required) | |
| body: object, The request body. | |
| The object takes the form of: | |
| { # Represents an Autoscaler resource. | |
| # | |
| # Google Compute Engine has two Autoscaler resources: | |
| # | |
| # * [Zonal](/compute/docs/reference/rest/v1/autoscalers) | |
| # * [Regional](/compute/docs/reference/rest/v1/regionAutoscalers) | |
| # | |
| # Use autoscalers to automatically add or delete instances from a | |
| # managed instance group according to your defined autoscaling policy. | |
| # For more information, read Autoscaling Groups of Instances. | |
| # | |
| # For zonal managed instance groups resource, use the autoscaler | |
| # resource. | |
| # | |
| # For regional managed instance groups, use theregionAutoscalers resource. | |
| "autoscalingPolicy": { # Cloud Autoscaler policy. # The configuration parameters for the autoscaling algorithm. You can define | |
| # one or more signals for an autoscaler: cpuUtilization,customMetricUtilizations, andloadBalancingUtilization. | |
| # | |
| # If none of these are specified, the default will be to autoscale based oncpuUtilization to 0.6 or 60%. | |
| "coolDownPeriodSec": 42, # The number of seconds that your application takes to initialize on a VM | |
| # instance. This is referred to as the | |
| # [initialization period](/compute/docs/autoscaler#cool_down_period). | |
| # Specifying an accurate initialization period improves | |
| # autoscaler decisions. For example, when scaling out, the autoscaler ignores | |
| # data from VMs that are still initializing because those VMs might not yet | |
| # represent normal usage of your application. The default initialization | |
| # period is 60 seconds. | |
| # | |
| # Initialization periods might vary because of numerous | |
| # factors. We recommend that you test how long your application takes to | |
| # initialize. To do this, create a VM and time your application's startup | |
| # process. | |
| "cpuUtilization": { # CPU utilization policy. # Defines the CPU utilization policy that allows the autoscaler to scale | |
| # based on the average CPU utilization of a managed instance group. | |
| "predictiveMethod": "A String", # Indicates whether predictive autoscaling based on CPU metric is enabled. | |
| # Valid values are: | |
| # | |
| # * NONE (default). No predictive method is used. The autoscaler scales the | |
| # group to meet current demand based on real-time metrics. | |
| # * OPTIMIZE_AVAILABILITY. Predictive autoscaling improves availability by | |
| # monitoring daily and weekly load patterns and scaling out ahead of | |
| # anticipated demand. | |
| "utilizationMax": 3.14, # The upper bound of the utilization range. Must be a float value in the | |
| # range ('utilization_min', 1]. A value of 0.0 is equivalent to leaving the | |
| # field unset. | |
| "utilizationMin": 3.14, # The lower bound of the utilization range. Must be a float value in the | |
| # range (0, 'utilization_max']. A value of 0.0 is equivalent to leaving the | |
| # field unset. | |
| "utilizationTarget": 3.14, # The target CPU utilization that the autoscaler maintains. Must be | |
| # a float value in the range (0, 1]. If not specified, the default is0.6. | |
| # | |
| # If the CPU level is below the target utilization, the autoscaler scales | |
| # in the number of instances until it reaches the minimum number of | |
| # instances you specified or until the average CPU of your instances | |
| # reaches the target utilization. | |
| # | |
| # If the average CPU is above the target utilization, the autoscaler | |
| # scales out until it reaches the maximum number of instances you | |
| # specified or until the average utilization reaches the target | |
| # utilization. | |
| }, | |
| "customMetricUtilizations": [ # Configuration parameters of autoscaling based on a custom metric. | |
| { # Custom utilization metric policy. | |
| "filter": "A String", # A filter string, compatible with a Stackdriver Monitoringfilter string forTimeSeries.list API call. This filter is | |
| # used to select a specific TimeSeries for the purpose of autoscaling and | |
| # to determine whether the metric is exporting per-instance or | |
| # per-group data. | |
| # | |
| # For the filter to be valid for autoscaling purposes, the following rules | |
| # apply: | |
| # | |
| # | |
| # - You can only use the AND operator for joining | |
| # selectors. | |
| # - You can only use direct equality comparison operator | |
| # (=) without any functions for each selector. | |
| # - You can specify the metric in both the filter string and in the | |
| # metric field. However, if specified in both places, the metric must | |
| # be identical. | |
| # - The monitored resource type | |
| # determines what kind of values are expected for the metric. If it is | |
| # a gce_instance, the autoscaler expects the metric to | |
| # include a separate TimeSeries for each instance in a group. In such a | |
| # case, you cannot filter on resource labels. | |
| # | |
| # | |
| # If the resource type is any other value, the autoscaler expects | |
| # this metric to contain values that apply to the entire autoscaled | |
| # instance group and resource label filtering can be performed to | |
| # point autoscaler at the correct TimeSeries to scale upon. This is | |
| # called a *per-group metric* for the purpose of autoscaling. | |
| # | |
| # If not specified, the type defaults to | |
| # gce_instance. | |
| # | |
| # | |
| # | |
| # Try to provide a filter that is selective enough to pick just one | |
| # TimeSeries for the autoscaled group or for each of the instances (if you | |
| # are using gce_instance resource type). If multiple | |
| # TimeSeries are returned upon the query execution, the autoscaler will sum | |
| # their respective values to obtain its scaling value. | |
| "metric": "A String", # The identifier (type) of the Stackdriver Monitoring metric. The metric | |
| # cannot have negative values. | |
| # | |
| # The metric must have a value type of INT64 orDOUBLE. | |
| "singleInstanceAssignment": 3.14, # If scaling is based on a per-group metric value that represents the | |
| # total amount of work to be done or resource usage, set this value to an | |
| # amount assigned for a single instance of the scaled group. Autoscaler | |
| # keeps the number of instances proportional to the value of this | |
| # metric. The metric itself does not change value due to group | |
| # resizing. | |
| # | |
| # A good metric to use with the target is for examplepubsub.googleapis.com/subscription/num_undelivered_messages | |
| # or a custom metric exporting the total number of requests coming to | |
| # your instances. | |
| # | |
| # A bad example would be a metric exporting an average or median latency, | |
| # since this value can't include a chunk assignable to a single instance, | |
| # it could be better used with utilization_target instead. | |
| "utilizationTarget": 3.14, # The target value of the metric that autoscaler maintains. This | |
| # must be a positive value. A utilization metric scales number of | |
| # virtual machines handling requests to increase or decrease | |
| # proportionally to the metric. | |
| # | |
| # For example, a good metric to use as a utilization_target ishttps://www.googleapis.com/compute/v1/instance/network/received_bytes_count. | |
| # The autoscaler works to keep this value constant for each of the | |
| # instances. | |
| "utilizationTargetType": "A String", # Defines how target utilization value is expressed for a Stackdriver | |
| # Monitoring metric. Either GAUGE,DELTA_PER_SECOND, or DELTA_PER_MINUTE. | |
| }, | |
| ], | |
| "loadBalancingUtilization": { # Configuration parameters of autoscaling based on load balancing. # Configuration parameters of autoscaling based on load balancer. | |
| "utilizationTarget": 3.14, # Fraction of backend capacity utilization (set in HTTP(S) load balancing | |
| # configuration) that the autoscaler maintains. Must be a positive float | |
| # value. If not defined, the default is 0.8. | |
| }, | |
| "maxNumReplicas": 42, # The maximum number of instances that the autoscaler can scale out to. This | |
| # is required when creating or updating an autoscaler. The maximum number | |
| # of replicas must not be lower than minimal number of replicas. | |
| "minNumReplicas": 42, # The minimum number of replicas that the autoscaler can scale in to. | |
| # This cannot be less than 0. If not provided, autoscaler chooses a | |
| # default value depending on maximum number of instances allowed. | |
| "mode": "A String", # Defines the operating mode for this policy. | |
| # The following modes are available: | |
| # | |
| # - OFF: Disables the autoscaler but maintains its | |
| # configuration. | |
| # - ONLY_SCALE_OUT: Restricts the autoscaler to add | |
| # VM instances only. | |
| # - ON: Enables all autoscaler activities according to its | |
| # policy. | |
| # | |
| # | |
| # For more information, see | |
| # "Turning off or restricting an autoscaler" | |
| "scaleInControl": { # Configuration that allows for slower scale in so that even if Autoscaler | |
| # recommends an abrupt scale in of a MIG, it will be throttled as specified | |
| # by the parameters below. | |
| "maxScaledInReplicas": { # Encapsulates numeric value that can be either absolute or relative. # Maximum allowed number (or %) of VMs that can be deducted from the peak | |
| # recommendation during the window autoscaler looks at when computing | |
| # recommendations. Possibly all these VMs can be deleted at once so user | |
| # service needs to be prepared to lose that many VMs in one step. | |
| "calculated": 42, # Output only. Absolute value of VM instances calculated based on the specific mode. | |
| # | |
| # | |
| # | |
| # - If the value is fixed, then the calculated | |
| # value is equal to the fixed value. | |
| # - If the value is a percent, then the | |
| # calculated | |
| # value is percent/100 * targetSize. For example, | |
| # the calculated value of a 80% of a managed instance group | |
| # with 150 instances would be (80/100 * 150) = 120 VM instances. If there | |
| # is a remainder, the number is rounded. | |
| "fixed": 42, # Specifies a fixed number of VM instances. This must be a positive integer. | |
| "percent": 42, # Specifies a percentage of instances between 0 to 100%, inclusive. For | |
| # example, specify 80 for 80%. | |
| }, | |
| "timeWindowSec": 42, # How far back autoscaling looks when computing recommendations to | |
| # include directives regarding slower scale in, as described above. | |
| }, | |
| "scalingSchedules": { # Scaling schedules defined for an autoscaler. Multiple schedules | |
| # can be set on an autoscaler, and they can overlap. During overlapping | |
| # periods the greatest min_required_replicas of all scaling schedules is | |
| # applied. Up to 128 scaling schedules are allowed. | |
| "a_key": { # Scaling based on user-defined schedule. The message describes a single | |
| # scaling schedule. A scaling schedule changes the minimum number of VM | |
| # instances an autoscaler can recommend, which can trigger scaling out. | |
| "description": "A String", # A description of a scaling schedule. | |
| "disabled": True or False, # A boolean value that specifies whether a scaling schedule can influence | |
| # autoscaler recommendations. If set to true, then a scaling schedule has | |
| # no effect. This field is optional, and its value is false by default. | |
| "durationSec": 42, # The duration of time intervals, in seconds, for which this | |
| # scaling schedule is to run. The minimum allowed value is 300. | |
| # This field is required. | |
| "minRequiredReplicas": 42, # The minimum number of VM instances that the autoscaler will | |
| # recommend in time intervals starting according to schedule. This field is | |
| # required. | |
| "schedule": "A String", # The start timestamps of time intervals when this scaling | |
| # schedule is to provide a scaling signal. This field uses the extended | |
| # cron format (with an optional year field). The expression can describe a | |
| # single timestamp if the optional year is set, in which case the scaling | |
| # schedule runs once. The schedule is interpreted with respect to | |
| # time_zone. This field is required. Note: These timestamps only describe | |
| # when autoscaler starts providing the scaling signal. The VMs | |
| # need additional time to become serving. | |
| "timeZone": "A String", # The time zone to use when interpreting the schedule. | |
| # The value of this field must be a time zone name from the tz database: | |
| # https://en.wikipedia.org/wiki/Tz_database. This field is assigned a | |
| # default value of "UTC" if left empty. | |
| }, | |
| }, | |
| "stabilizationPeriodSec": 42, # The number of seconds that autoscaler waits for load stabilization before | |
| # making scale-in decisions. This is referred to as the | |
| # [stabilization period](/compute/docs/autoscaler#stabilization_period). | |
| # This might appear as a delay in scaling in but it is an important mechanism | |
| # for your application to not have fluctuating size due to short term load | |
| # fluctuations. | |
| # | |
| # The default stabilization period is 600 seconds. | |
| }, | |
| "creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339 | |
| # text format. | |
| "description": "A String", # An optional description of this resource. Provide this property when you | |
| # create the resource. | |
| "id": "A String", # Output only. [Output Only] The unique identifier for the resource. This identifier is | |
| # defined by the server. | |
| "kind": "compute#autoscaler", # Output only. [Output Only] Type of the resource. Always compute#autoscaler | |
| # for autoscalers. | |
| "name": "A String", # Name of the resource. Provided by the client when the resource is created. | |
| # The name must be 1-63 characters long, and comply withRFC1035. | |
| # Specifically, the name must be 1-63 characters long and match the regular | |
| # expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first | |
| # character must be a lowercase letter, and all following characters must | |
| # be a dash, lowercase letter, or digit, except the last character, which | |
| # cannot be a dash. | |
| "recommendedSize": 42, # Output only. [Output Only] Target recommended MIG size (number of instances) computed by | |
| # autoscaler. Autoscaler calculates the recommended MIG size even when the | |
| # autoscaling policy mode is different from ON. This field is empty when | |
| # autoscaler is not connected to an existing managed instance group or | |
| # autoscaler did not generate its prediction. | |
| "region": "A String", # Output only. [Output Only] URL of theregion | |
| # where the instance group resides (for autoscalers living in regional | |
| # scope). | |
| "scalingScheduleStatus": { # Output only. [Output Only] Status information of existing scaling schedules. | |
| "a_key": { | |
| "lastStartTime": "A String", # [Output Only] The last time the scaling schedule became active. | |
| # Note: this is a timestamp when a schedule actually became active, not when | |
| # it was planned to do so. | |
| # The timestamp is in RFC3339 | |
| # text format. | |
| "nextStartTime": "A String", # [Output Only] The next time the scaling schedule is to become active. | |
| # Note: this is a timestamp when a schedule is planned to run, but the actual | |
| # time might be slightly different. | |
| # The timestamp is in RFC3339 | |
| # text format. | |
| "state": "A String", # [Output Only] The current state of a scaling schedule. | |
| }, | |
| }, | |
| "selfLink": "A String", # [Output Only] Server-defined URL for the resource. | |
| "status": "A String", # [Output Only] The status of the autoscaler configuration. Current set of | |
| # possible values: | |
| # | |
| # - PENDING: | |
| # Autoscaler backend hasn't read new/updated configuration. | |
| # - DELETING: | |
| # Configuration is being deleted. | |
| # - ACTIVE: | |
| # Configuration is acknowledged to be effective. Some warnings might | |
| # be present in the statusDetails field. | |
| # - ERROR: | |
| # Configuration has errors. Actionable for users. Details are present in | |
| # the statusDetails field. | |
| # | |
| # | |
| # New values might be added in the future. | |
| "statusDetails": [ # [Output Only] Human-readable details about the current state of the | |
| # autoscaler. Read the documentation forCommonly | |
| # returned status messages for examples of status messages you might | |
| # encounter. | |
| { | |
| "message": "A String", # The status message. | |
| "type": "A String", # The type of error, warning, or notice returned. Current set of possible | |
| # values: | |
| # | |
| # - ALL_INSTANCES_UNHEALTHY (WARNING): | |
| # All instances in the instance group are unhealthy (not in RUNNING | |
| # state). | |
| # - BACKEND_SERVICE_DOES_NOT_EXIST (ERROR): | |
| # There is no backend service attached to the instance group. | |
| # - CAPPED_AT_MAX_NUM_REPLICAS (WARNING): | |
| # Autoscaler recommends a size greater than maxNumReplicas. | |
| # - CUSTOM_METRIC_DATA_POINTS_TOO_SPARSE (WARNING): | |
| # The custom metric samples are not exported often enough to be | |
| # a credible base for autoscaling. | |
| # - CUSTOM_METRIC_INVALID (ERROR): | |
| # The custom metric that was specified does not exist or does not have | |
| # the necessary labels. | |
| # - MIN_EQUALS_MAX (WARNING): | |
| # The minNumReplicas is equal to maxNumReplicas. This means the | |
| # autoscaler cannot add or remove instances from the instance group. | |
| # - MISSING_CUSTOM_METRIC_DATA_POINTS (WARNING): | |
| # The autoscaler did not receive any data from the custom metric | |
| # configured for autoscaling. | |
| # - MISSING_LOAD_BALANCING_DATA_POINTS (WARNING): | |
| # The autoscaler is configured to scale based on a load balancing signal | |
| # but the instance group has not received any requests from the load | |
| # balancer. | |
| # - MODE_OFF (WARNING): | |
| # Autoscaling is turned off. The number of instances in the group won't | |
| # change automatically. The autoscaling configuration is preserved. | |
| # - MODE_ONLY_UP (WARNING): | |
| # Autoscaling is in the "Autoscale only out" mode. The autoscaler can add | |
| # instances but not remove any. | |
| # - MORE_THAN_ONE_BACKEND_SERVICE (ERROR): | |
| # The instance group cannot be autoscaled because it has more than one | |
| # backend service attached to it. | |
| # - NOT_ENOUGH_QUOTA_AVAILABLE (ERROR): | |
| # There is insufficient quota for the necessary resources, such as CPU or | |
| # number of instances. | |
| # - REGION_RESOURCE_STOCKOUT (ERROR): | |
| # Shown only for regional autoscalers: there is a resource stockout in | |
| # the chosen region. | |
| # - SCALING_TARGET_DOES_NOT_EXIST (ERROR): | |
| # The target to be scaled does not exist. | |
| # - UNSUPPORTED_MAX_RATE_LOAD_BALANCING_CONFIGURATION | |
| # (ERROR): Autoscaling does not work with an HTTP/S load balancer that | |
| # has been configured for maxRate. | |
| # - ZONE_RESOURCE_STOCKOUT (ERROR): | |
| # For zonal autoscalers: there is a resource stockout in the chosen zone. | |
| # For regional autoscalers: in at least one of the zones you're using | |
| # there is a resource stockout. | |
| # | |
| # | |
| # New values might be added in the future. Some of the values might not be | |
| # available in all API versions. | |
| }, | |
| ], | |
| "target": "A String", # URL of the managed instance group that this autoscaler will scale. This | |
| # field is required when creating an autoscaler. | |
| "zone": "A String", # Output only. [Output Only] URL of thezone | |
| # where the instance group resides (for autoscalers living in zonal scope). | |
| } | |
| requestId: string, An optional request ID to identify requests. Specify a unique request ID so | |
| that if you must retry your request, the server will know to ignore the | |
| request if it has already been completed. | |
| For example, consider a situation where you make an initial request and | |
| the request times out. If you make the request again with the same | |
| request ID, the server can check if original operation with the same | |
| request ID was received, and if so, will ignore the second request. This | |
| prevents clients from accidentally creating duplicate commitments. | |
| The request ID must be | |
| a valid UUID with the exception that zero UUID is not supported | |
| (00000000-0000-0000-0000-000000000000). | |
| x__xgafv: string, V1 error format. | |
| Allowed values | |
| 1 - v1 error format | |
| 2 - v2 error format | |
| Returns: | |
| An object of the form: | |
| { # Represents an Operation resource. | |
| # | |
| # Google Compute Engine has three Operation resources: | |
| # | |
| # * [Global](/compute/docs/reference/rest/v1/globalOperations) | |
| # * [Regional](/compute/docs/reference/rest/v1/regionOperations) | |
| # * [Zonal](/compute/docs/reference/rest/v1/zoneOperations) | |
| # | |
| # You can use an operation resource to manage asynchronous API requests. | |
| # For more information, readHandling | |
| # API responses. | |
| # | |
| # Operations can be global, regional or zonal. | |
| # | |
| # - For global operations, use the `globalOperations` | |
| # resource. | |
| # - For regional operations, use the | |
| # `regionOperations` resource. | |
| # - For zonal operations, use | |
| # the `zoneOperations` resource. | |
| # | |
| # | |
| # | |
| # For more information, read | |
| # Global, Regional, and Zonal Resources. | |
| # | |
| # Note that completed Operation resources have a limited | |
| # retention period. | |
| "clientOperationId": "A String", # [Output Only] The value of `requestId` if you provided it in the request. | |
| # Not present otherwise. | |
| "creationTimestamp": "A String", # [Deprecated] This field is deprecated. | |
| "description": "A String", # [Output Only] A textual description of the operation, which is | |
| # set when the operation is created. | |
| "details": { # [Output Only] Extended details about the operation's execution. | |
| "data": { # Machine readable data from the message. | |
| "a_key": "", | |
| }, | |
| "message": "A String", # Human or AI readable details on execution of the operation. | |
| }, | |
| "endTime": "A String", # [Output Only] The time that this operation was completed. This value is inRFC3339 | |
| # text format. | |
| "error": { # [Output Only] If errors are generated during processing of the operation, | |
| # this field will be populated. | |
| "errors": [ # [Output Only] The array of errors encountered while processing this | |
| # operation. | |
| { # Represents a single error encountered during the processing of an | |
| # operation. | |
| "code": "A String", # [Output Only] The error type identifier for this error. | |
| "errorDetails": [ # [Output Only] An optional list of messages that contain the error | |
| # details. There is a set of defined message types to use for providing | |
| # details.The syntax depends on the error code. For example, | |
| # QuotaExceededInfo will have details when the error code is | |
| # QUOTA_EXCEEDED. | |
| { # Container for structured error details providing additional context | |
| # specific to the encountered error code. | |
| "errorInfo": { # Describes the cause of the error with structured details. # Error information containing structured domain, reason, and metadata. | |
| # | |
| # Example of an error when contacting the "pubsub.googleapis.com" API when it | |
| # is not enabled: | |
| # | |
| # { "reason": "API_DISABLED" | |
| # "domain": "googleapis.com" | |
| # "metadata": { | |
| # "resource": "projects/123", | |
| # "service": "pubsub.googleapis.com" | |
| # } | |
| # } | |
| # | |
| # This response indicates that the pubsub.googleapis.com API is not enabled. | |
| # | |
| # Example of an error that is returned when attempting to create a Spanner | |
| # instance in a region that is out of stock: | |
| # | |
| # { "reason": "STOCKOUT" | |
| # "domain": "spanner.googleapis.com", | |
| # "metadata": { | |
| # "availableRegions": "us-central1,us-east2" | |
| # } | |
| # } | |
| "domain": "A String", # The logical grouping to which the "reason" belongs. The error domain | |
| # is typically the registered service name of the tool or product that | |
| # generates the error. Example: "pubsub.googleapis.com". If the error is | |
| # generated by some common infrastructure, the error domain must be a | |
| # globally unique value that identifies the infrastructure. For Google API | |
| # infrastructure, the error domain is "googleapis.com". | |
| "metadatas": { # Additional structured details about this error. | |
| # | |
| # Keys must match a regular expression of `a-z+` but should | |
| # ideally be lowerCamelCase. Also, they must be limited to 64 characters in | |
| # length. When identifying the current value of an exceeded limit, the units | |
| # should be contained in the key, not the value. For example, rather than | |
| # `{"instanceLimit": "100/request"}`, should be returned as, | |
| # `{"instanceLimitPerRequest": "100"}`, if the client exceeds the number of | |
| # instances that can be created in a single (batch) request. | |
| "a_key": "A String", | |
| }, | |
| "reason": "A String", # The reason of the error. This is a constant value that identifies the | |
| # proximate cause of the error. Error reasons are unique within a particular | |
| # domain of errors. This should be at most 63 characters and match a | |
| # regular expression of `A-Z+[A-Z0-9]`, which represents | |
| # UPPER_SNAKE_CASE. | |
| }, | |
| "help": { # Provides links to documentation or for performing an out of band action. # Links and information to help the user resolve the error. | |
| # | |
| # For example, if a quota check failed with an error indicating the calling | |
| # project hasn't enabled the accessed service, this can contain a URL pointing | |
| # directly to the right place in the developer console to flip the bit. | |
| "links": [ # URL(s) pointing to additional information on handling the current error. | |
| { # Describes a URL link. | |
| "description": "A String", # Describes what the link offers. | |
| "url": "A String", # The URL of the link. | |
| }, | |
| ], | |
| }, | |
| "localizedMessage": { # Provides a localized error message that is safe to return to the user # A localized human-readable error message intended for end users. | |
| # which can be attached to an RPC error. | |
| "locale": "A String", # The locale used following the specification defined at | |
| # https://www.rfc-editor.org/rfc/bcp/bcp47.txt. | |
| # Examples are: "en-US", "fr-CH", "es-MX" | |
| "message": "A String", # The localized error message in the above locale. | |
| }, | |
| "quotaInfo": { # Additional details for quota exceeded error for resource quota. # Details about quota limits and metrics when a quota is exceeded. | |
| "dimensions": { # The map holding related quota dimensions. | |
| "a_key": "A String", | |
| }, | |
| "futureLimit": 3.14, # Future quota limit being rolled out. The limit's unit depends on the quota | |
| # type or metric. | |
| "limit": 3.14, # Current effective quota limit. The limit's unit depends on the quota type | |
| # or metric. | |
| "limitName": "A String", # The name of the quota limit. | |
| "metricName": "A String", # The Compute Engine quota metric name. | |
| "rolloutStatus": "A String", # Rollout status of the future quota limit. | |
| }, | |
| }, | |
| ], | |
| "location": "A String", # [Output Only] Indicates the field in the request that caused the error. | |
| # This property is optional. | |
| "message": "A String", # [Output Only] An optional, human-readable error message. | |
| }, | |
| ], | |
| }, | |
| "getHealthOperationMetadata": { # Metadata for GetHealth operations. # Output only. Metadata for GetHealth operations. | |
| "healthInfo": { # Health information. # Output only. The health information. | |
| "availabilitySloStatus": "A String", # Output only. The availability SLO status. | |
| "healthStatus": "A String", # Output only. The health status. | |
| "repairCategory": "A String", # Output only. The repair category. | |
| "unhealthyReason": "A String", # Output only. The reason for unhealthy status. | |
| "updateTime": "A String", # Output only. The time when health info was updated. | |
| }, | |
| }, | |
| "getVersionOperationMetadata": { | |
| "inlineSbomInfo": { | |
| "currentComponentVersions": { # A mapping of components to their currently-applied versions or other | |
| # appropriate identifiers. | |
| "a_key": "A String", | |
| }, | |
| "targetComponentVersions": { # A mapping of components to their target versions or other appropriate | |
| # identifiers. | |
| "a_key": "A String", | |
| }, | |
| }, | |
| }, | |
| "httpErrorMessage": "A String", # [Output Only] If the operation fails, this field contains the HTTP error | |
| # message that was returned, such as `NOT FOUND`. | |
| "httpErrorStatusCode": 42, # [Output Only] If the operation fails, this field contains the HTTP error | |
| # status code that was returned. For example, a `404` means the | |
| # resource was not found. | |
| "id": "A String", # [Output Only] The unique identifier for the operation. This identifier is | |
| # defined by the server. | |
| "insertTime": "A String", # [Output Only] The time that this operation was requested. | |
| # This value is inRFC3339 | |
| # text format. | |
| "instancesBulkInsertOperationMetadata": { | |
| "perLocationStatus": { # Status information per location (location name is key). | |
| # Example key: zones/us-central1-a | |
| "a_key": { | |
| "createdVmCount": 42, # [Output Only] Count of VMs successfully created so far. | |
| "deletedVmCount": 42, # [Output Only] Count of VMs that got deleted during rollback. | |
| "failedToCreateVmCount": 42, # [Output Only] Count of VMs that started creating but encountered an | |
| # error. | |
| "status": "A String", # [Output Only] Creation status of BulkInsert operation - information | |
| # if the flow is rolling forward or rolling back. | |
| "targetVmCount": 42, # [Output Only] Count of VMs originally planned to be created. | |
| }, | |
| }, | |
| }, | |
| "instancesTroubleshootOperationMetadata": { # [Output Only] Operation metadata for instances.troubleshoot. # Output only. [Output Only] Operation metadata for instances.troubleshoot. | |
| "troubleshootOutput": "A String", # Output only. [Output Only] Serialized output of the troubleshooting diagnostic run. | |
| }, | |
| "kind": "compute#operation", # Output only. [Output Only] Type of the resource. Always `compute#operation` for | |
| # Operation resources. | |
| "name": "A String", # [Output Only] Name of the operation. | |
| "operationGroupId": "A String", # Output only. [Output Only] An ID that represents a group of operations, such as when a | |
| # group of operations results from a `bulkInsert` API request. | |
| "operationType": "A String", # [Output Only] The type of operation, such as `insert`, | |
| # `update`, or `delete`, and so on. | |
| "progress": 42, # [Output Only] An optional progress indicator that ranges from 0 to 100. | |
| # There is no requirement that this be linear or support any granularity of | |
| # operations. This should not be used to guess when the operation will be | |
| # complete. This number should monotonically increase as the operation | |
| # progresses. | |
| "region": "A String", # [Output Only] The URL of the region where the operation resides. Only | |
| # applicable when performing regional operations. | |
| "selfLink": "A String", # [Output Only] Server-defined URL for the resource. | |
| "setCommonInstanceMetadataOperationMetadata": { # Output only. [Output Only] If the operation is for projects.setCommonInstanceMetadata, | |
| # this field will contain information on all underlying zonal actions and | |
| # their state. | |
| "clientOperationId": "A String", # [Output Only] The client operation id. | |
| "perLocationOperations": { # [Output Only] Status information per location (location name is key). | |
| # Example key: zones/us-central1-a | |
| "a_key": { | |
| "error": { # The `Status` type defines a logical error model that is suitable for # [Output Only] If state is `ABANDONED` or `FAILED`, this field is | |
| # populated. | |
| # different programming environments, including REST APIs and RPC APIs. It is | |
| # used by [gRPC](https://github.com/grpc). Each `Status` message contains | |
| # three pieces of data: error code, error message, and error details. | |
| # | |
| # You can find out more about this error model and how to work with it in the | |
| # [API Design Guide](https://cloud.google.com/apis/design/errors). | |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. | |
| "details": [ # A list of messages that carry the error details. There is a common set of | |
| # message types for APIs to use. | |
| { | |
| "a_key": "", # Properties of the object. Contains field @type with type URL. | |
| }, | |
| ], | |
| "message": "A String", # A developer-facing error message, which should be in English. Any | |
| # user-facing error message should be localized and sent in the | |
| # google.rpc.Status.details field, or localized by the client. | |
| }, | |
| "state": "A String", # [Output Only] Status of the action, which can be one of the following: | |
| # `PROPAGATING`, `PROPAGATED`, `ABANDONED`, `FAILED`, or `DONE`. | |
| }, | |
| }, | |
| }, | |
| "startTime": "A String", # [Output Only] The time that this operation was started by the server. | |
| # This value is inRFC3339 | |
| # text format. | |
| "status": "A String", # [Output Only] The status of the operation, which can be one of the | |
| # following: | |
| # `PENDING`, `RUNNING`, or `DONE`. | |
| "statusMessage": "A String", # [Output Only] An optional textual description of the current status of the | |
| # operation. | |
| "targetId": "A String", # [Output Only] The unique target ID, which identifies a specific incarnation | |
| # of the target resource. | |
| "targetLink": "A String", # [Output Only] The URL of the resource that the operation modifies. For | |
| # operations related to creating a snapshot, this points to the disk | |
| # that the snapshot was created from. | |
| "user": "A String", # [Output Only] User who requested the operation, for example: | |
| # `user@example.com` or | |
| # `alice_smith_identifier (global/workforcePools/example-com-us-employees)`. | |
| "warnings": [ # [Output Only] If warning messages are generated during processing of the | |
| # operation, this field will be populated. | |
| { | |
| "code": "A String", # [Output Only] A warning code, if applicable. For example, Compute | |
| # Engine returns NO_RESULTS_ON_PAGE if there | |
| # are no results in the response. | |
| "data": [ # [Output Only] Metadata about this warning in key: | |
| # value format. For example: | |
| # | |
| # "data": [ | |
| # { | |
| # "key": "scope", | |
| # "value": "zones/us-east1-d" | |
| # }] | |
| { | |
| "key": "A String", # [Output Only] A key that provides more detail on the warning being | |
| # returned. For example, for warnings where there are no results in a list | |
| # request for a particular zone, this key might be scope and | |
| # the key value might be the zone name. Other examples might be a key | |
| # indicating a deprecated resource and a suggested replacement, or a | |
| # warning about invalid network settings (for example, if an instance | |
| # attempts to perform IP forwarding but is not enabled for IP forwarding). | |
| "value": "A String", # [Output Only] A warning data value corresponding to the key. | |
| }, | |
| ], | |
| "message": "A String", # [Output Only] A human-readable description of the warning code. | |
| }, | |
| ], | |
| "zone": "A String", # [Output Only] The URL of the zone where the operation resides. Only | |
| # applicable when performing per-zone operations. | |
| }</pre> | |
| </div> | |
| <div class="method"> | |
| <code class="details" id="list">list(project, zone, filter=None, maxResults=None, orderBy=None, pageToken=None, x__xgafv=None)</code> | |
| <pre>Retrieves a list of autoscalers contained within | |
| the specified zone. | |
| Args: | |
| project: string, Project ID for this request. (required) | |
| zone: string, Name of the zone for this request. (required) | |
| filter: string, A filter expression that filters resources listed in the response. Most | |
| Compute resources support two types of filter expressions: | |
| expressions that support regular expressions and expressions that follow | |
| API improvement proposal AIP-160. | |
| These two types of filter expressions cannot be mixed in one request. | |
| If you want to use AIP-160, your expression must specify the field name, an | |
| operator, and the value that you want to use for filtering. The value | |
| must be a string, a number, or a boolean. The operator | |
| must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. | |
| For example, if you are filtering Compute Engine instances, you can | |
| exclude instances named `example-instance` by specifying | |
| `name != example-instance`. | |
| The `:*` comparison can be used to test whether a key has been defined. | |
| For example, to find all objects with `owner` label use: | |
| ``` | |
| labels.owner:* | |
| ``` | |
| You can also filter nested fields. For example, you could specify | |
| `scheduling.automaticRestart = false` to include instances only | |
| if they are not scheduled for automatic restarts. You can use filtering | |
| on nested fields to filter based onresource labels. | |
| To filter on multiple expressions, provide each separate expression within | |
| parentheses. For example: | |
| ``` | |
| (scheduling.automaticRestart = true) | |
| (cpuPlatform = "Intel Skylake") | |
| ``` | |
| By default, each expression is an `AND` expression. However, you | |
| can include `AND` and `OR` expressions explicitly. | |
| For example: | |
| ``` | |
| (cpuPlatform = "Intel Skylake") OR | |
| (cpuPlatform = "Intel Broadwell") AND | |
| (scheduling.automaticRestart = true) | |
| ``` | |
| If you want to use a regular expression, use the `eq` (equal) or `ne` | |
| (not equal) operator against a single un-parenthesized expression with or | |
| without quotes or against multiple parenthesized expressions. Examples: | |
| `fieldname eq unquoted literal` | |
| `fieldname eq 'single quoted literal'` | |
| `fieldname eq "double quoted literal"` | |
| `(fieldname1 eq literal) (fieldname2 ne "literal")` | |
| The literal value is interpreted as a regular expression using GoogleRE2 library syntax. | |
| The literal value must match the entire field. | |
| For example, to filter for instances that do not end with name "instance", | |
| you would use `name ne .*instance`. | |
| You cannot combine constraints on multiple fields using regular | |
| expressions. | |
| maxResults: integer, The maximum number of results per page that should be returned. | |
| If the number of available results is larger than `maxResults`, | |
| Compute Engine returns a `nextPageToken` that can be used to get | |
| the next page of results in subsequent list requests. Acceptable values are | |
| `0` to `500`, inclusive. (Default: `500`) | |
| orderBy: string, Sorts list results by a certain order. By default, results | |
| are returned in alphanumerical order based on the resource name. | |
| You can also sort results in descending order based on the creation | |
| timestamp using `orderBy="creationTimestamp desc"`. This sorts | |
| results based on the `creationTimestamp` field in | |
| reverse chronological order (newest result first). Use this to sort | |
| resources like operations so that the newest operation is returned first. | |
| Currently, only sorting by `name` or | |
| `creationTimestamp desc` is supported. | |
| pageToken: string, Specifies a page token to use. Set `pageToken` to the | |
| `nextPageToken` returned by a previous list request to get | |
| the next page of results. | |
| x__xgafv: string, V1 error format. | |
| Allowed values | |
| 1 - v1 error format | |
| 2 - v2 error format | |
| Returns: | |
| An object of the form: | |
| { # Contains a list of Autoscaler resources. | |
| "id": "A String", # [Output Only] Unique identifier for the resource; defined by the server. | |
| "items": [ # A list of Autoscaler resources. | |
| { # Represents an Autoscaler resource. | |
| # | |
| # Google Compute Engine has two Autoscaler resources: | |
| # | |
| # * [Zonal](/compute/docs/reference/rest/v1/autoscalers) | |
| # * [Regional](/compute/docs/reference/rest/v1/regionAutoscalers) | |
| # | |
| # Use autoscalers to automatically add or delete instances from a | |
| # managed instance group according to your defined autoscaling policy. | |
| # For more information, read Autoscaling Groups of Instances. | |
| # | |
| # For zonal managed instance groups resource, use the autoscaler | |
| # resource. | |
| # | |
| # For regional managed instance groups, use theregionAutoscalers resource. | |
| "autoscalingPolicy": { # Cloud Autoscaler policy. # The configuration parameters for the autoscaling algorithm. You can define | |
| # one or more signals for an autoscaler: cpuUtilization,customMetricUtilizations, andloadBalancingUtilization. | |
| # | |
| # If none of these are specified, the default will be to autoscale based oncpuUtilization to 0.6 or 60%. | |
| "coolDownPeriodSec": 42, # The number of seconds that your application takes to initialize on a VM | |
| # instance. This is referred to as the | |
| # [initialization period](/compute/docs/autoscaler#cool_down_period). | |
| # Specifying an accurate initialization period improves | |
| # autoscaler decisions. For example, when scaling out, the autoscaler ignores | |
| # data from VMs that are still initializing because those VMs might not yet | |
| # represent normal usage of your application. The default initialization | |
| # period is 60 seconds. | |
| # | |
| # Initialization periods might vary because of numerous | |
| # factors. We recommend that you test how long your application takes to | |
| # initialize. To do this, create a VM and time your application's startup | |
| # process. | |
| "cpuUtilization": { # CPU utilization policy. # Defines the CPU utilization policy that allows the autoscaler to scale | |
| # based on the average CPU utilization of a managed instance group. | |
| "predictiveMethod": "A String", # Indicates whether predictive autoscaling based on CPU metric is enabled. | |
| # Valid values are: | |
| # | |
| # * NONE (default). No predictive method is used. The autoscaler scales the | |
| # group to meet current demand based on real-time metrics. | |
| # * OPTIMIZE_AVAILABILITY. Predictive autoscaling improves availability by | |
| # monitoring daily and weekly load patterns and scaling out ahead of | |
| # anticipated demand. | |
| "utilizationMax": 3.14, # The upper bound of the utilization range. Must be a float value in the | |
| # range ('utilization_min', 1]. A value of 0.0 is equivalent to leaving the | |
| # field unset. | |
| "utilizationMin": 3.14, # The lower bound of the utilization range. Must be a float value in the | |
| # range (0, 'utilization_max']. A value of 0.0 is equivalent to leaving the | |
| # field unset. | |
| "utilizationTarget": 3.14, # The target CPU utilization that the autoscaler maintains. Must be | |
| # a float value in the range (0, 1]. If not specified, the default is0.6. | |
| # | |
| # If the CPU level is below the target utilization, the autoscaler scales | |
| # in the number of instances until it reaches the minimum number of | |
| # instances you specified or until the average CPU of your instances | |
| # reaches the target utilization. | |
| # | |
| # If the average CPU is above the target utilization, the autoscaler | |
| # scales out until it reaches the maximum number of instances you | |
| # specified or until the average utilization reaches the target | |
| # utilization. | |
| }, | |
| "customMetricUtilizations": [ # Configuration parameters of autoscaling based on a custom metric. | |
| { # Custom utilization metric policy. | |
| "filter": "A String", # A filter string, compatible with a Stackdriver Monitoringfilter string forTimeSeries.list API call. This filter is | |
| # used to select a specific TimeSeries for the purpose of autoscaling and | |
| # to determine whether the metric is exporting per-instance or | |
| # per-group data. | |
| # | |
| # For the filter to be valid for autoscaling purposes, the following rules | |
| # apply: | |
| # | |
| # | |
| # - You can only use the AND operator for joining | |
| # selectors. | |
| # - You can only use direct equality comparison operator | |
| # (=) without any functions for each selector. | |
| # - You can specify the metric in both the filter string and in the | |
| # metric field. However, if specified in both places, the metric must | |
| # be identical. | |
| # - The monitored resource type | |
| # determines what kind of values are expected for the metric. If it is | |
| # a gce_instance, the autoscaler expects the metric to | |
| # include a separate TimeSeries for each instance in a group. In such a | |
| # case, you cannot filter on resource labels. | |
| # | |
| # | |
| # If the resource type is any other value, the autoscaler expects | |
| # this metric to contain values that apply to the entire autoscaled | |
| # instance group and resource label filtering can be performed to | |
| # point autoscaler at the correct TimeSeries to scale upon. This is | |
| # called a *per-group metric* for the purpose of autoscaling. | |
| # | |
| # If not specified, the type defaults to | |
| # gce_instance. | |
| # | |
| # | |
| # | |
| # Try to provide a filter that is selective enough to pick just one | |
| # TimeSeries for the autoscaled group or for each of the instances (if you | |
| # are using gce_instance resource type). If multiple | |
| # TimeSeries are returned upon the query execution, the autoscaler will sum | |
| # their respective values to obtain its scaling value. | |
| "metric": "A String", # The identifier (type) of the Stackdriver Monitoring metric. The metric | |
| # cannot have negative values. | |
| # | |
| # The metric must have a value type of INT64 orDOUBLE. | |
| "singleInstanceAssignment": 3.14, # If scaling is based on a per-group metric value that represents the | |
| # total amount of work to be done or resource usage, set this value to an | |
| # amount assigned for a single instance of the scaled group. Autoscaler | |
| # keeps the number of instances proportional to the value of this | |
| # metric. The metric itself does not change value due to group | |
| # resizing. | |
| # | |
| # A good metric to use with the target is for examplepubsub.googleapis.com/subscription/num_undelivered_messages | |
| # or a custom metric exporting the total number of requests coming to | |
| # your instances. | |
| # | |
| # A bad example would be a metric exporting an average or median latency, | |
| # since this value can't include a chunk assignable to a single instance, | |
| # it could be better used with utilization_target instead. | |
| "utilizationTarget": 3.14, # The target value of the metric that autoscaler maintains. This | |
| # must be a positive value. A utilization metric scales number of | |
| # virtual machines handling requests to increase or decrease | |
| # proportionally to the metric. | |
| # | |
| # For example, a good metric to use as a utilization_target ishttps://www.googleapis.com/compute/v1/instance/network/received_bytes_count. | |
| # The autoscaler works to keep this value constant for each of the | |
| # instances. | |
| "utilizationTargetType": "A String", # Defines how target utilization value is expressed for a Stackdriver | |
| # Monitoring metric. Either GAUGE,DELTA_PER_SECOND, or DELTA_PER_MINUTE. | |
| }, | |
| ], | |
| "loadBalancingUtilization": { # Configuration parameters of autoscaling based on load balancing. # Configuration parameters of autoscaling based on load balancer. | |
| "utilizationTarget": 3.14, # Fraction of backend capacity utilization (set in HTTP(S) load balancing | |
| # configuration) that the autoscaler maintains. Must be a positive float | |
| # value. If not defined, the default is 0.8. | |
| }, | |
| "maxNumReplicas": 42, # The maximum number of instances that the autoscaler can scale out to. This | |
| # is required when creating or updating an autoscaler. The maximum number | |
| # of replicas must not be lower than minimal number of replicas. | |
| "minNumReplicas": 42, # The minimum number of replicas that the autoscaler can scale in to. | |
| # This cannot be less than 0. If not provided, autoscaler chooses a | |
| # default value depending on maximum number of instances allowed. | |
| "mode": "A String", # Defines the operating mode for this policy. | |
| # The following modes are available: | |
| # | |
| # - OFF: Disables the autoscaler but maintains its | |
| # configuration. | |
| # - ONLY_SCALE_OUT: Restricts the autoscaler to add | |
| # VM instances only. | |
| # - ON: Enables all autoscaler activities according to its | |
| # policy. | |
| # | |
| # | |
| # For more information, see | |
| # "Turning off or restricting an autoscaler" | |
| "scaleInControl": { # Configuration that allows for slower scale in so that even if Autoscaler | |
| # recommends an abrupt scale in of a MIG, it will be throttled as specified | |
| # by the parameters below. | |
| "maxScaledInReplicas": { # Encapsulates numeric value that can be either absolute or relative. # Maximum allowed number (or %) of VMs that can be deducted from the peak | |
| # recommendation during the window autoscaler looks at when computing | |
| # recommendations. Possibly all these VMs can be deleted at once so user | |
| # service needs to be prepared to lose that many VMs in one step. | |
| "calculated": 42, # Output only. Absolute value of VM instances calculated based on the specific mode. | |
| # | |
| # | |
| # | |
| # - If the value is fixed, then the calculated | |
| # value is equal to the fixed value. | |
| # - If the value is a percent, then the | |
| # calculated | |
| # value is percent/100 * targetSize. For example, | |
| # the calculated value of a 80% of a managed instance group | |
| # with 150 instances would be (80/100 * 150) = 120 VM instances. If there | |
| # is a remainder, the number is rounded. | |
| "fixed": 42, # Specifies a fixed number of VM instances. This must be a positive integer. | |
| "percent": 42, # Specifies a percentage of instances between 0 to 100%, inclusive. For | |
| # example, specify 80 for 80%. | |
| }, | |
| "timeWindowSec": 42, # How far back autoscaling looks when computing recommendations to | |
| # include directives regarding slower scale in, as described above. | |
| }, | |
| "scalingSchedules": { # Scaling schedules defined for an autoscaler. Multiple schedules | |
| # can be set on an autoscaler, and they can overlap. During overlapping | |
| # periods the greatest min_required_replicas of all scaling schedules is | |
| # applied. Up to 128 scaling schedules are allowed. | |
| "a_key": { # Scaling based on user-defined schedule. The message describes a single | |
| # scaling schedule. A scaling schedule changes the minimum number of VM | |
| # instances an autoscaler can recommend, which can trigger scaling out. | |
| "description": "A String", # A description of a scaling schedule. | |
| "disabled": True or False, # A boolean value that specifies whether a scaling schedule can influence | |
| # autoscaler recommendations. If set to true, then a scaling schedule has | |
| # no effect. This field is optional, and its value is false by default. | |
| "durationSec": 42, # The duration of time intervals, in seconds, for which this | |
| # scaling schedule is to run. The minimum allowed value is 300. | |
| # This field is required. | |
| "minRequiredReplicas": 42, # The minimum number of VM instances that the autoscaler will | |
| # recommend in time intervals starting according to schedule. This field is | |
| # required. | |
| "schedule": "A String", # The start timestamps of time intervals when this scaling | |
| # schedule is to provide a scaling signal. This field uses the extended | |
| # cron format (with an optional year field). The expression can describe a | |
| # single timestamp if the optional year is set, in which case the scaling | |
| # schedule runs once. The schedule is interpreted with respect to | |
| # time_zone. This field is required. Note: These timestamps only describe | |
| # when autoscaler starts providing the scaling signal. The VMs | |
| # need additional time to become serving. | |
| "timeZone": "A String", # The time zone to use when interpreting the schedule. | |
| # The value of this field must be a time zone name from the tz database: | |
| # https://en.wikipedia.org/wiki/Tz_database. This field is assigned a | |
| # default value of "UTC" if left empty. | |
| }, | |
| }, | |
| "stabilizationPeriodSec": 42, # The number of seconds that autoscaler waits for load stabilization before | |
| # making scale-in decisions. This is referred to as the | |
| # [stabilization period](/compute/docs/autoscaler#stabilization_period). | |
| # This might appear as a delay in scaling in but it is an important mechanism | |
| # for your application to not have fluctuating size due to short term load | |
| # fluctuations. | |
| # | |
| # The default stabilization period is 600 seconds. | |
| }, | |
| "creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339 | |
| # text format. | |
| "description": "A String", # An optional description of this resource. Provide this property when you | |
| # create the resource. | |
| "id": "A String", # Output only. [Output Only] The unique identifier for the resource. This identifier is | |
| # defined by the server. | |
| "kind": "compute#autoscaler", # Output only. [Output Only] Type of the resource. Always compute#autoscaler | |
| # for autoscalers. | |
| "name": "A String", # Name of the resource. Provided by the client when the resource is created. | |
| # The name must be 1-63 characters long, and comply withRFC1035. | |
| # Specifically, the name must be 1-63 characters long and match the regular | |
| # expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first | |
| # character must be a lowercase letter, and all following characters must | |
| # be a dash, lowercase letter, or digit, except the last character, which | |
| # cannot be a dash. | |
| "recommendedSize": 42, # Output only. [Output Only] Target recommended MIG size (number of instances) computed by | |
| # autoscaler. Autoscaler calculates the recommended MIG size even when the | |
| # autoscaling policy mode is different from ON. This field is empty when | |
| # autoscaler is not connected to an existing managed instance group or | |
| # autoscaler did not generate its prediction. | |
| "region": "A String", # Output only. [Output Only] URL of theregion | |
| # where the instance group resides (for autoscalers living in regional | |
| # scope). | |
| "scalingScheduleStatus": { # Output only. [Output Only] Status information of existing scaling schedules. | |
| "a_key": { | |
| "lastStartTime": "A String", # [Output Only] The last time the scaling schedule became active. | |
| # Note: this is a timestamp when a schedule actually became active, not when | |
| # it was planned to do so. | |
| # The timestamp is in RFC3339 | |
| # text format. | |
| "nextStartTime": "A String", # [Output Only] The next time the scaling schedule is to become active. | |
| # Note: this is a timestamp when a schedule is planned to run, but the actual | |
| # time might be slightly different. | |
| # The timestamp is in RFC3339 | |
| # text format. | |
| "state": "A String", # [Output Only] The current state of a scaling schedule. | |
| }, | |
| }, | |
| "selfLink": "A String", # [Output Only] Server-defined URL for the resource. | |
| "status": "A String", # [Output Only] The status of the autoscaler configuration. Current set of | |
| # possible values: | |
| # | |
| # - PENDING: | |
| # Autoscaler backend hasn't read new/updated configuration. | |
| # - DELETING: | |
| # Configuration is being deleted. | |
| # - ACTIVE: | |
| # Configuration is acknowledged to be effective. Some warnings might | |
| # be present in the statusDetails field. | |
| # - ERROR: | |
| # Configuration has errors. Actionable for users. Details are present in | |
| # the statusDetails field. | |
| # | |
| # | |
| # New values might be added in the future. | |
| "statusDetails": [ # [Output Only] Human-readable details about the current state of the | |
| # autoscaler. Read the documentation forCommonly | |
| # returned status messages for examples of status messages you might | |
| # encounter. | |
| { | |
| "message": "A String", # The status message. | |
| "type": "A String", # The type of error, warning, or notice returned. Current set of possible | |
| # values: | |
| # | |
| # - ALL_INSTANCES_UNHEALTHY (WARNING): | |
| # All instances in the instance group are unhealthy (not in RUNNING | |
| # state). | |
| # - BACKEND_SERVICE_DOES_NOT_EXIST (ERROR): | |
| # There is no backend service attached to the instance group. | |
| # - CAPPED_AT_MAX_NUM_REPLICAS (WARNING): | |
| # Autoscaler recommends a size greater than maxNumReplicas. | |
| # - CUSTOM_METRIC_DATA_POINTS_TOO_SPARSE (WARNING): | |
| # The custom metric samples are not exported often enough to be | |
| # a credible base for autoscaling. | |
| # - CUSTOM_METRIC_INVALID (ERROR): | |
| # The custom metric that was specified does not exist or does not have | |
| # the necessary labels. | |
| # - MIN_EQUALS_MAX (WARNING): | |
| # The minNumReplicas is equal to maxNumReplicas. This means the | |
| # autoscaler cannot add or remove instances from the instance group. | |
| # - MISSING_CUSTOM_METRIC_DATA_POINTS (WARNING): | |
| # The autoscaler did not receive any data from the custom metric | |
| # configured for autoscaling. | |
| # - MISSING_LOAD_BALANCING_DATA_POINTS (WARNING): | |
| # The autoscaler is configured to scale based on a load balancing signal | |
| # but the instance group has not received any requests from the load | |
| # balancer. | |
| # - MODE_OFF (WARNING): | |
| # Autoscaling is turned off. The number of instances in the group won't | |
| # change automatically. The autoscaling configuration is preserved. | |
| # - MODE_ONLY_UP (WARNING): | |
| # Autoscaling is in the "Autoscale only out" mode. The autoscaler can add | |
| # instances but not remove any. | |
| # - MORE_THAN_ONE_BACKEND_SERVICE (ERROR): | |
| # The instance group cannot be autoscaled because it has more than one | |
| # backend service attached to it. | |
| # - NOT_ENOUGH_QUOTA_AVAILABLE (ERROR): | |
| # There is insufficient quota for the necessary resources, such as CPU or | |
| # number of instances. | |
| # - REGION_RESOURCE_STOCKOUT (ERROR): | |
| # Shown only for regional autoscalers: there is a resource stockout in | |
| # the chosen region. | |
| # - SCALING_TARGET_DOES_NOT_EXIST (ERROR): | |
| # The target to be scaled does not exist. | |
| # - UNSUPPORTED_MAX_RATE_LOAD_BALANCING_CONFIGURATION | |
| # (ERROR): Autoscaling does not work with an HTTP/S load balancer that | |
| # has been configured for maxRate. | |
| # - ZONE_RESOURCE_STOCKOUT (ERROR): | |
| # For zonal autoscalers: there is a resource stockout in the chosen zone. | |
| # For regional autoscalers: in at least one of the zones you're using | |
| # there is a resource stockout. | |
| # | |
| # | |
| # New values might be added in the future. Some of the values might not be | |
| # available in all API versions. | |
| }, | |
| ], | |
| "target": "A String", # URL of the managed instance group that this autoscaler will scale. This | |
| # field is required when creating an autoscaler. | |
| "zone": "A String", # Output only. [Output Only] URL of thezone | |
| # where the instance group resides (for autoscalers living in zonal scope). | |
| }, | |
| ], | |
| "kind": "compute#autoscalerList", # Output only. [Output Only] Type of resource. Always compute#autoscalerList | |
| # for lists of autoscalers. | |
| "nextPageToken": "A String", # [Output Only] This token allows you to get the next page of results for | |
| # list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for | |
| # the query parameter pageToken in the next list request. | |
| # Subsequent list requests will have their own nextPageToken to | |
| # continue paging through the results. | |
| "selfLink": "A String", # Output only. [Output Only] Server-defined URL for this resource. | |
| "warning": { # [Output Only] Informational warning message. | |
| "code": "A String", # [Output Only] A warning code, if applicable. For example, Compute | |
| # Engine returns NO_RESULTS_ON_PAGE if there | |
| # are no results in the response. | |
| "data": [ # [Output Only] Metadata about this warning in key: | |
| # value format. For example: | |
| # | |
| # "data": [ | |
| # { | |
| # "key": "scope", | |
| # "value": "zones/us-east1-d" | |
| # }] | |
| { | |
| "key": "A String", # [Output Only] A key that provides more detail on the warning being | |
| # returned. For example, for warnings where there are no results in a list | |
| # request for a particular zone, this key might be scope and | |
| # the key value might be the zone name. Other examples might be a key | |
| # indicating a deprecated resource and a suggested replacement, or a | |
| # warning about invalid network settings (for example, if an instance | |
| # attempts to perform IP forwarding but is not enabled for IP forwarding). | |
| "value": "A String", # [Output Only] A warning data value corresponding to the key. | |
| }, | |
| ], | |
| "message": "A String", # [Output Only] A human-readable description of the warning code. | |
| }, | |
| }</pre> | |
| </div> | |
| <div class="method"> | |
| <code class="details" id="list_next">list_next(previous_request, previous_response)</code> | |
| <pre>Retrieves the next page of results. | |
| Args: | |
| previous_request: The request for the previous page. (required) | |
| previous_response: The response from the request for the previous page. (required) | |
| Returns: | |
| A request object that you can call 'execute()' on to request the next | |
| page. Returns None if there are no more items in the collection. | |
| </pre> | |
| </div> | |
| <div class="method"> | |
| <code class="details" id="patch">patch(project, zone, autoscaler=None, body=None, requestId=None, x__xgafv=None)</code> | |
| <pre>Updates an autoscaler in the specified project using the data | |
| included in the request. This method supportsPATCH | |
| semantics and uses theJSON merge | |
| patch format and processing rules. | |
| Args: | |
| project: string, Project ID for this request. (required) | |
| zone: string, Name of the zone for this request. (required) | |
| body: object, The request body. | |
| The object takes the form of: | |
| { # Represents an Autoscaler resource. | |
| # | |
| # Google Compute Engine has two Autoscaler resources: | |
| # | |
| # * [Zonal](/compute/docs/reference/rest/v1/autoscalers) | |
| # * [Regional](/compute/docs/reference/rest/v1/regionAutoscalers) | |
| # | |
| # Use autoscalers to automatically add or delete instances from a | |
| # managed instance group according to your defined autoscaling policy. | |
| # For more information, read Autoscaling Groups of Instances. | |
| # | |
| # For zonal managed instance groups resource, use the autoscaler | |
| # resource. | |
| # | |
| # For regional managed instance groups, use theregionAutoscalers resource. | |
| "autoscalingPolicy": { # Cloud Autoscaler policy. # The configuration parameters for the autoscaling algorithm. You can define | |
| # one or more signals for an autoscaler: cpuUtilization,customMetricUtilizations, andloadBalancingUtilization. | |
| # | |
| # If none of these are specified, the default will be to autoscale based oncpuUtilization to 0.6 or 60%. | |
| "coolDownPeriodSec": 42, # The number of seconds that your application takes to initialize on a VM | |
| # instance. This is referred to as the | |
| # [initialization period](/compute/docs/autoscaler#cool_down_period). | |
| # Specifying an accurate initialization period improves | |
| # autoscaler decisions. For example, when scaling out, the autoscaler ignores | |
| # data from VMs that are still initializing because those VMs might not yet | |
| # represent normal usage of your application. The default initialization | |
| # period is 60 seconds. | |
| # | |
| # Initialization periods might vary because of numerous | |
| # factors. We recommend that you test how long your application takes to | |
| # initialize. To do this, create a VM and time your application's startup | |
| # process. | |
| "cpuUtilization": { # CPU utilization policy. # Defines the CPU utilization policy that allows the autoscaler to scale | |
| # based on the average CPU utilization of a managed instance group. | |
| "predictiveMethod": "A String", # Indicates whether predictive autoscaling based on CPU metric is enabled. | |
| # Valid values are: | |
| # | |
| # * NONE (default). No predictive method is used. The autoscaler scales the | |
| # group to meet current demand based on real-time metrics. | |
| # * OPTIMIZE_AVAILABILITY. Predictive autoscaling improves availability by | |
| # monitoring daily and weekly load patterns and scaling out ahead of | |
| # anticipated demand. | |
| "utilizationMax": 3.14, # The upper bound of the utilization range. Must be a float value in the | |
| # range ('utilization_min', 1]. A value of 0.0 is equivalent to leaving the | |
| # field unset. | |
| "utilizationMin": 3.14, # The lower bound of the utilization range. Must be a float value in the | |
| # range (0, 'utilization_max']. A value of 0.0 is equivalent to leaving the | |
| # field unset. | |
| "utilizationTarget": 3.14, # The target CPU utilization that the autoscaler maintains. Must be | |
| # a float value in the range (0, 1]. If not specified, the default is0.6. | |
| # | |
| # If the CPU level is below the target utilization, the autoscaler scales | |
| # in the number of instances until it reaches the minimum number of | |
| # instances you specified or until the average CPU of your instances | |
| # reaches the target utilization. | |
| # | |
| # If the average CPU is above the target utilization, the autoscaler | |
| # scales out until it reaches the maximum number of instances you | |
| # specified or until the average utilization reaches the target | |
| # utilization. | |
| }, | |
| "customMetricUtilizations": [ # Configuration parameters of autoscaling based on a custom metric. | |
| { # Custom utilization metric policy. | |
| "filter": "A String", # A filter string, compatible with a Stackdriver Monitoringfilter string forTimeSeries.list API call. This filter is | |
| # used to select a specific TimeSeries for the purpose of autoscaling and | |
| # to determine whether the metric is exporting per-instance or | |
| # per-group data. | |
| # | |
| # For the filter to be valid for autoscaling purposes, the following rules | |
| # apply: | |
| # | |
| # | |
| # - You can only use the AND operator for joining | |
| # selectors. | |
| # - You can only use direct equality comparison operator | |
| # (=) without any functions for each selector. | |
| # - You can specify the metric in both the filter string and in the | |
| # metric field. However, if specified in both places, the metric must | |
| # be identical. | |
| # - The monitored resource type | |
| # determines what kind of values are expected for the metric. If it is | |
| # a gce_instance, the autoscaler expects the metric to | |
| # include a separate TimeSeries for each instance in a group. In such a | |
| # case, you cannot filter on resource labels. | |
| # | |
| # | |
| # If the resource type is any other value, the autoscaler expects | |
| # this metric to contain values that apply to the entire autoscaled | |
| # instance group and resource label filtering can be performed to | |
| # point autoscaler at the correct TimeSeries to scale upon. This is | |
| # called a *per-group metric* for the purpose of autoscaling. | |
| # | |
| # If not specified, the type defaults to | |
| # gce_instance. | |
| # | |
| # | |
| # | |
| # Try to provide a filter that is selective enough to pick just one | |
| # TimeSeries for the autoscaled group or for each of the instances (if you | |
| # are using gce_instance resource type). If multiple | |
| # TimeSeries are returned upon the query execution, the autoscaler will sum | |
| # their respective values to obtain its scaling value. | |
| "metric": "A String", # The identifier (type) of the Stackdriver Monitoring metric. The metric | |
| # cannot have negative values. | |
| # | |
| # The metric must have a value type of INT64 orDOUBLE. | |
| "singleInstanceAssignment": 3.14, # If scaling is based on a per-group metric value that represents the | |
| # total amount of work to be done or resource usage, set this value to an | |
| # amount assigned for a single instance of the scaled group. Autoscaler | |
| # keeps the number of instances proportional to the value of this | |
| # metric. The metric itself does not change value due to group | |
| # resizing. | |
| # | |
| # A good metric to use with the target is for examplepubsub.googleapis.com/subscription/num_undelivered_messages | |
| # or a custom metric exporting the total number of requests coming to | |
| # your instances. | |
| # | |
| # A bad example would be a metric exporting an average or median latency, | |
| # since this value can't include a chunk assignable to a single instance, | |
| # it could be better used with utilization_target instead. | |
| "utilizationTarget": 3.14, # The target value of the metric that autoscaler maintains. This | |
| # must be a positive value. A utilization metric scales number of | |
| # virtual machines handling requests to increase or decrease | |
| # proportionally to the metric. | |
| # | |
| # For example, a good metric to use as a utilization_target ishttps://www.googleapis.com/compute/v1/instance/network/received_bytes_count. | |
| # The autoscaler works to keep this value constant for each of the | |
| # instances. | |
| "utilizationTargetType": "A String", # Defines how target utilization value is expressed for a Stackdriver | |
| # Monitoring metric. Either GAUGE,DELTA_PER_SECOND, or DELTA_PER_MINUTE. | |
| }, | |
| ], | |
| "loadBalancingUtilization": { # Configuration parameters of autoscaling based on load balancing. # Configuration parameters of autoscaling based on load balancer. | |
| "utilizationTarget": 3.14, # Fraction of backend capacity utilization (set in HTTP(S) load balancing | |
| # configuration) that the autoscaler maintains. Must be a positive float | |
| # value. If not defined, the default is 0.8. | |
| }, | |
| "maxNumReplicas": 42, # The maximum number of instances that the autoscaler can scale out to. This | |
| # is required when creating or updating an autoscaler. The maximum number | |
| # of replicas must not be lower than minimal number of replicas. | |
| "minNumReplicas": 42, # The minimum number of replicas that the autoscaler can scale in to. | |
| # This cannot be less than 0. If not provided, autoscaler chooses a | |
| # default value depending on maximum number of instances allowed. | |
| "mode": "A String", # Defines the operating mode for this policy. | |
| # The following modes are available: | |
| # | |
| # - OFF: Disables the autoscaler but maintains its | |
| # configuration. | |
| # - ONLY_SCALE_OUT: Restricts the autoscaler to add | |
| # VM instances only. | |
| # - ON: Enables all autoscaler activities according to its | |
| # policy. | |
| # | |
| # | |
| # For more information, see | |
| # "Turning off or restricting an autoscaler" | |
| "scaleInControl": { # Configuration that allows for slower scale in so that even if Autoscaler | |
| # recommends an abrupt scale in of a MIG, it will be throttled as specified | |
| # by the parameters below. | |
| "maxScaledInReplicas": { # Encapsulates numeric value that can be either absolute or relative. # Maximum allowed number (or %) of VMs that can be deducted from the peak | |
| # recommendation during the window autoscaler looks at when computing | |
| # recommendations. Possibly all these VMs can be deleted at once so user | |
| # service needs to be prepared to lose that many VMs in one step. | |
| "calculated": 42, # Output only. Absolute value of VM instances calculated based on the specific mode. | |
| # | |
| # | |
| # | |
| # - If the value is fixed, then the calculated | |
| # value is equal to the fixed value. | |
| # - If the value is a percent, then the | |
| # calculated | |
| # value is percent/100 * targetSize. For example, | |
| # the calculated value of a 80% of a managed instance group | |
| # with 150 instances would be (80/100 * 150) = 120 VM instances. If there | |
| # is a remainder, the number is rounded. | |
| "fixed": 42, # Specifies a fixed number of VM instances. This must be a positive integer. | |
| "percent": 42, # Specifies a percentage of instances between 0 to 100%, inclusive. For | |
| # example, specify 80 for 80%. | |
| }, | |
| "timeWindowSec": 42, # How far back autoscaling looks when computing recommendations to | |
| # include directives regarding slower scale in, as described above. | |
| }, | |
| "scalingSchedules": { # Scaling schedules defined for an autoscaler. Multiple schedules | |
| # can be set on an autoscaler, and they can overlap. During overlapping | |
| # periods the greatest min_required_replicas of all scaling schedules is | |
| # applied. Up to 128 scaling schedules are allowed. | |
| "a_key": { # Scaling based on user-defined schedule. The message describes a single | |
| # scaling schedule. A scaling schedule changes the minimum number of VM | |
| # instances an autoscaler can recommend, which can trigger scaling out. | |
| "description": "A String", # A description of a scaling schedule. | |
| "disabled": True or False, # A boolean value that specifies whether a scaling schedule can influence | |
| # autoscaler recommendations. If set to true, then a scaling schedule has | |
| # no effect. This field is optional, and its value is false by default. | |
| "durationSec": 42, # The duration of time intervals, in seconds, for which this | |
| # scaling schedule is to run. The minimum allowed value is 300. | |
| # This field is required. | |
| "minRequiredReplicas": 42, # The minimum number of VM instances that the autoscaler will | |
| # recommend in time intervals starting according to schedule. This field is | |
| # required. | |
| "schedule": "A String", # The start timestamps of time intervals when this scaling | |
| # schedule is to provide a scaling signal. This field uses the extended | |
| # cron format (with an optional year field). The expression can describe a | |
| # single timestamp if the optional year is set, in which case the scaling | |
| # schedule runs once. The schedule is interpreted with respect to | |
| # time_zone. This field is required. Note: These timestamps only describe | |
| # when autoscaler starts providing the scaling signal. The VMs | |
| # need additional time to become serving. | |
| "timeZone": "A String", # The time zone to use when interpreting the schedule. | |
| # The value of this field must be a time zone name from the tz database: | |
| # https://en.wikipedia.org/wiki/Tz_database. This field is assigned a | |
| # default value of "UTC" if left empty. | |
| }, | |
| }, | |
| "stabilizationPeriodSec": 42, # The number of seconds that autoscaler waits for load stabilization before | |
| # making scale-in decisions. This is referred to as the | |
| # [stabilization period](/compute/docs/autoscaler#stabilization_period). | |
| # This might appear as a delay in scaling in but it is an important mechanism | |
| # for your application to not have fluctuating size due to short term load | |
| # fluctuations. | |
| # | |
| # The default stabilization period is 600 seconds. | |
| }, | |
| "creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339 | |
| # text format. | |
| "description": "A String", # An optional description of this resource. Provide this property when you | |
| # create the resource. | |
| "id": "A String", # Output only. [Output Only] The unique identifier for the resource. This identifier is | |
| # defined by the server. | |
| "kind": "compute#autoscaler", # Output only. [Output Only] Type of the resource. Always compute#autoscaler | |
| # for autoscalers. | |
| "name": "A String", # Name of the resource. Provided by the client when the resource is created. | |
| # The name must be 1-63 characters long, and comply withRFC1035. | |
| # Specifically, the name must be 1-63 characters long and match the regular | |
| # expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first | |
| # character must be a lowercase letter, and all following characters must | |
| # be a dash, lowercase letter, or digit, except the last character, which | |
| # cannot be a dash. | |
| "recommendedSize": 42, # Output only. [Output Only] Target recommended MIG size (number of instances) computed by | |
| # autoscaler. Autoscaler calculates the recommended MIG size even when the | |
| # autoscaling policy mode is different from ON. This field is empty when | |
| # autoscaler is not connected to an existing managed instance group or | |
| # autoscaler did not generate its prediction. | |
| "region": "A String", # Output only. [Output Only] URL of theregion | |
| # where the instance group resides (for autoscalers living in regional | |
| # scope). | |
| "scalingScheduleStatus": { # Output only. [Output Only] Status information of existing scaling schedules. | |
| "a_key": { | |
| "lastStartTime": "A String", # [Output Only] The last time the scaling schedule became active. | |
| # Note: this is a timestamp when a schedule actually became active, not when | |
| # it was planned to do so. | |
| # The timestamp is in RFC3339 | |
| # text format. | |
| "nextStartTime": "A String", # [Output Only] The next time the scaling schedule is to become active. | |
| # Note: this is a timestamp when a schedule is planned to run, but the actual | |
| # time might be slightly different. | |
| # The timestamp is in RFC3339 | |
| # text format. | |
| "state": "A String", # [Output Only] The current state of a scaling schedule. | |
| }, | |
| }, | |
| "selfLink": "A String", # [Output Only] Server-defined URL for the resource. | |
| "status": "A String", # [Output Only] The status of the autoscaler configuration. Current set of | |
| # possible values: | |
| # | |
| # - PENDING: | |
| # Autoscaler backend hasn't read new/updated configuration. | |
| # - DELETING: | |
| # Configuration is being deleted. | |
| # - ACTIVE: | |
| # Configuration is acknowledged to be effective. Some warnings might | |
| # be present in the statusDetails field. | |
| # - ERROR: | |
| # Configuration has errors. Actionable for users. Details are present in | |
| # the statusDetails field. | |
| # | |
| # | |
| # New values might be added in the future. | |
| "statusDetails": [ # [Output Only] Human-readable details about the current state of the | |
| # autoscaler. Read the documentation forCommonly | |
| # returned status messages for examples of status messages you might | |
| # encounter. | |
| { | |
| "message": "A String", # The status message. | |
| "type": "A String", # The type of error, warning, or notice returned. Current set of possible | |
| # values: | |
| # | |
| # - ALL_INSTANCES_UNHEALTHY (WARNING): | |
| # All instances in the instance group are unhealthy (not in RUNNING | |
| # state). | |
| # - BACKEND_SERVICE_DOES_NOT_EXIST (ERROR): | |
| # There is no backend service attached to the instance group. | |
| # - CAPPED_AT_MAX_NUM_REPLICAS (WARNING): | |
| # Autoscaler recommends a size greater than maxNumReplicas. | |
| # - CUSTOM_METRIC_DATA_POINTS_TOO_SPARSE (WARNING): | |
| # The custom metric samples are not exported often enough to be | |
| # a credible base for autoscaling. | |
| # - CUSTOM_METRIC_INVALID (ERROR): | |
| # The custom metric that was specified does not exist or does not have | |
| # the necessary labels. | |
| # - MIN_EQUALS_MAX (WARNING): | |
| # The minNumReplicas is equal to maxNumReplicas. This means the | |
| # autoscaler cannot add or remove instances from the instance group. | |
| # - MISSING_CUSTOM_METRIC_DATA_POINTS (WARNING): | |
| # The autoscaler did not receive any data from the custom metric | |
| # configured for autoscaling. | |
| # - MISSING_LOAD_BALANCING_DATA_POINTS (WARNING): | |
| # The autoscaler is configured to scale based on a load balancing signal | |
| # but the instance group has not received any requests from the load | |
| # balancer. | |
| # - MODE_OFF (WARNING): | |
| # Autoscaling is turned off. The number of instances in the group won't | |
| # change automatically. The autoscaling configuration is preserved. | |
| # - MODE_ONLY_UP (WARNING): | |
| # Autoscaling is in the "Autoscale only out" mode. The autoscaler can add | |
| # instances but not remove any. | |
| # - MORE_THAN_ONE_BACKEND_SERVICE (ERROR): | |
| # The instance group cannot be autoscaled because it has more than one | |
| # backend service attached to it. | |
| # - NOT_ENOUGH_QUOTA_AVAILABLE (ERROR): | |
| # There is insufficient quota for the necessary resources, such as CPU or | |
| # number of instances. | |
| # - REGION_RESOURCE_STOCKOUT (ERROR): | |
| # Shown only for regional autoscalers: there is a resource stockout in | |
| # the chosen region. | |
| # - SCALING_TARGET_DOES_NOT_EXIST (ERROR): | |
| # The target to be scaled does not exist. | |
| # - UNSUPPORTED_MAX_RATE_LOAD_BALANCING_CONFIGURATION | |
| # (ERROR): Autoscaling does not work with an HTTP/S load balancer that | |
| # has been configured for maxRate. | |
| # - ZONE_RESOURCE_STOCKOUT (ERROR): | |
| # For zonal autoscalers: there is a resource stockout in the chosen zone. | |
| # For regional autoscalers: in at least one of the zones you're using | |
| # there is a resource stockout. | |
| # | |
| # | |
| # New values might be added in the future. Some of the values might not be | |
| # available in all API versions. | |
| }, | |
| ], | |
| "target": "A String", # URL of the managed instance group that this autoscaler will scale. This | |
| # field is required when creating an autoscaler. | |
| "zone": "A String", # Output only. [Output Only] URL of thezone | |
| # where the instance group resides (for autoscalers living in zonal scope). | |
| } | |
| autoscaler: string, Name of the autoscaler to patch. | |
| requestId: string, An optional request ID to identify requests. Specify a unique request ID so | |
| that if you must retry your request, the server will know to ignore the | |
| request if it has already been completed. | |
| For example, consider a situation where you make an initial request and | |
| the request times out. If you make the request again with the same | |
| request ID, the server can check if original operation with the same | |
| request ID was received, and if so, will ignore the second request. This | |
| prevents clients from accidentally creating duplicate commitments. | |
| The request ID must be | |
| a valid UUID with the exception that zero UUID is not supported | |
| (00000000-0000-0000-0000-000000000000). | |
| x__xgafv: string, V1 error format. | |
| Allowed values | |
| 1 - v1 error format | |
| 2 - v2 error format | |
| Returns: | |
| An object of the form: | |
| { # Represents an Operation resource. | |
| # | |
| # Google Compute Engine has three Operation resources: | |
| # | |
| # * [Global](/compute/docs/reference/rest/v1/globalOperations) | |
| # * [Regional](/compute/docs/reference/rest/v1/regionOperations) | |
| # * [Zonal](/compute/docs/reference/rest/v1/zoneOperations) | |
| # | |
| # You can use an operation resource to manage asynchronous API requests. | |
| # For more information, readHandling | |
| # API responses. | |
| # | |
| # Operations can be global, regional or zonal. | |
| # | |
| # - For global operations, use the `globalOperations` | |
| # resource. | |
| # - For regional operations, use the | |
| # `regionOperations` resource. | |
| # - For zonal operations, use | |
| # the `zoneOperations` resource. | |
| # | |
| # | |
| # | |
| # For more information, read | |
| # Global, Regional, and Zonal Resources. | |
| # | |
| # Note that completed Operation resources have a limited | |
| # retention period. | |
| "clientOperationId": "A String", # [Output Only] The value of `requestId` if you provided it in the request. | |
| # Not present otherwise. | |
| "creationTimestamp": "A String", # [Deprecated] This field is deprecated. | |
| "description": "A String", # [Output Only] A textual description of the operation, which is | |
| # set when the operation is created. | |
| "details": { # [Output Only] Extended details about the operation's execution. | |
| "data": { # Machine readable data from the message. | |
| "a_key": "", | |
| }, | |
| "message": "A String", # Human or AI readable details on execution of the operation. | |
| }, | |
| "endTime": "A String", # [Output Only] The time that this operation was completed. This value is inRFC3339 | |
| # text format. | |
| "error": { # [Output Only] If errors are generated during processing of the operation, | |
| # this field will be populated. | |
| "errors": [ # [Output Only] The array of errors encountered while processing this | |
| # operation. | |
| { # Represents a single error encountered during the processing of an | |
| # operation. | |
| "code": "A String", # [Output Only] The error type identifier for this error. | |
| "errorDetails": [ # [Output Only] An optional list of messages that contain the error | |
| # details. There is a set of defined message types to use for providing | |
| # details.The syntax depends on the error code. For example, | |
| # QuotaExceededInfo will have details when the error code is | |
| # QUOTA_EXCEEDED. | |
| { # Container for structured error details providing additional context | |
| # specific to the encountered error code. | |
| "errorInfo": { # Describes the cause of the error with structured details. # Error information containing structured domain, reason, and metadata. | |
| # | |
| # Example of an error when contacting the "pubsub.googleapis.com" API when it | |
| # is not enabled: | |
| # | |
| # { "reason": "API_DISABLED" | |
| # "domain": "googleapis.com" | |
| # "metadata": { | |
| # "resource": "projects/123", | |
| # "service": "pubsub.googleapis.com" | |
| # } | |
| # } | |
| # | |
| # This response indicates that the pubsub.googleapis.com API is not enabled. | |
| # | |
| # Example of an error that is returned when attempting to create a Spanner | |
| # instance in a region that is out of stock: | |
| # | |
| # { "reason": "STOCKOUT" | |
| # "domain": "spanner.googleapis.com", | |
| # "metadata": { | |
| # "availableRegions": "us-central1,us-east2" | |
| # } | |
| # } | |
| "domain": "A String", # The logical grouping to which the "reason" belongs. The error domain | |
| # is typically the registered service name of the tool or product that | |
| # generates the error. Example: "pubsub.googleapis.com". If the error is | |
| # generated by some common infrastructure, the error domain must be a | |
| # globally unique value that identifies the infrastructure. For Google API | |
| # infrastructure, the error domain is "googleapis.com". | |
| "metadatas": { # Additional structured details about this error. | |
| # | |
| # Keys must match a regular expression of `a-z+` but should | |
| # ideally be lowerCamelCase. Also, they must be limited to 64 characters in | |
| # length. When identifying the current value of an exceeded limit, the units | |
| # should be contained in the key, not the value. For example, rather than | |
| # `{"instanceLimit": "100/request"}`, should be returned as, | |
| # `{"instanceLimitPerRequest": "100"}`, if the client exceeds the number of | |
| # instances that can be created in a single (batch) request. | |
| "a_key": "A String", | |
| }, | |
| "reason": "A String", # The reason of the error. This is a constant value that identifies the | |
| # proximate cause of the error. Error reasons are unique within a particular | |
| # domain of errors. This should be at most 63 characters and match a | |
| # regular expression of `A-Z+[A-Z0-9]`, which represents | |
| # UPPER_SNAKE_CASE. | |
| }, | |
| "help": { # Provides links to documentation or for performing an out of band action. # Links and information to help the user resolve the error. | |
| # | |
| # For example, if a quota check failed with an error indicating the calling | |
| # project hasn't enabled the accessed service, this can contain a URL pointing | |
| # directly to the right place in the developer console to flip the bit. | |
| "links": [ # URL(s) pointing to additional information on handling the current error. | |
| { # Describes a URL link. | |
| "description": "A String", # Describes what the link offers. | |
| "url": "A String", # The URL of the link. | |
| }, | |
| ], | |
| }, | |
| "localizedMessage": { # Provides a localized error message that is safe to return to the user # A localized human-readable error message intended for end users. | |
| # which can be attached to an RPC error. | |
| "locale": "A String", # The locale used following the specification defined at | |
| # https://www.rfc-editor.org/rfc/bcp/bcp47.txt. | |
| # Examples are: "en-US", "fr-CH", "es-MX" | |
| "message": "A String", # The localized error message in the above locale. | |
| }, | |
| "quotaInfo": { # Additional details for quota exceeded error for resource quota. # Details about quota limits and metrics when a quota is exceeded. | |
| "dimensions": { # The map holding related quota dimensions. | |
| "a_key": "A String", | |
| }, | |
| "futureLimit": 3.14, # Future quota limit being rolled out. The limit's unit depends on the quota | |
| # type or metric. | |
| "limit": 3.14, # Current effective quota limit. The limit's unit depends on the quota type | |
| # or metric. | |
| "limitName": "A String", # The name of the quota limit. | |
| "metricName": "A String", # The Compute Engine quota metric name. | |
| "rolloutStatus": "A String", # Rollout status of the future quota limit. | |
| }, | |
| }, | |
| ], | |
| "location": "A String", # [Output Only] Indicates the field in the request that caused the error. | |
| # This property is optional. | |
| "message": "A String", # [Output Only] An optional, human-readable error message. | |
| }, | |
| ], | |
| }, | |
| "getHealthOperationMetadata": { # Metadata for GetHealth operations. # Output only. Metadata for GetHealth operations. | |
| "healthInfo": { # Health information. # Output only. The health information. | |
| "availabilitySloStatus": "A String", # Output only. The availability SLO status. | |
| "healthStatus": "A String", # Output only. The health status. | |
| "repairCategory": "A String", # Output only. The repair category. | |
| "unhealthyReason": "A String", # Output only. The reason for unhealthy status. | |
| "updateTime": "A String", # Output only. The time when health info was updated. | |
| }, | |
| }, | |
| "getVersionOperationMetadata": { | |
| "inlineSbomInfo": { | |
| "currentComponentVersions": { # A mapping of components to their currently-applied versions or other | |
| # appropriate identifiers. | |
| "a_key": "A String", | |
| }, | |
| "targetComponentVersions": { # A mapping of components to their target versions or other appropriate | |
| # identifiers. | |
| "a_key": "A String", | |
| }, | |
| }, | |
| }, | |
| "httpErrorMessage": "A String", # [Output Only] If the operation fails, this field contains the HTTP error | |
| # message that was returned, such as `NOT FOUND`. | |
| "httpErrorStatusCode": 42, # [Output Only] If the operation fails, this field contains the HTTP error | |
| # status code that was returned. For example, a `404` means the | |
| # resource was not found. | |
| "id": "A String", # [Output Only] The unique identifier for the operation. This identifier is | |
| # defined by the server. | |
| "insertTime": "A String", # [Output Only] The time that this operation was requested. | |
| # This value is inRFC3339 | |
| # text format. | |
| "instancesBulkInsertOperationMetadata": { | |
| "perLocationStatus": { # Status information per location (location name is key). | |
| # Example key: zones/us-central1-a | |
| "a_key": { | |
| "createdVmCount": 42, # [Output Only] Count of VMs successfully created so far. | |
| "deletedVmCount": 42, # [Output Only] Count of VMs that got deleted during rollback. | |
| "failedToCreateVmCount": 42, # [Output Only] Count of VMs that started creating but encountered an | |
| # error. | |
| "status": "A String", # [Output Only] Creation status of BulkInsert operation - information | |
| # if the flow is rolling forward or rolling back. | |
| "targetVmCount": 42, # [Output Only] Count of VMs originally planned to be created. | |
| }, | |
| }, | |
| }, | |
| "instancesTroubleshootOperationMetadata": { # [Output Only] Operation metadata for instances.troubleshoot. # Output only. [Output Only] Operation metadata for instances.troubleshoot. | |
| "troubleshootOutput": "A String", # Output only. [Output Only] Serialized output of the troubleshooting diagnostic run. | |
| }, | |
| "kind": "compute#operation", # Output only. [Output Only] Type of the resource. Always `compute#operation` for | |
| # Operation resources. | |
| "name": "A String", # [Output Only] Name of the operation. | |
| "operationGroupId": "A String", # Output only. [Output Only] An ID that represents a group of operations, such as when a | |
| # group of operations results from a `bulkInsert` API request. | |
| "operationType": "A String", # [Output Only] The type of operation, such as `insert`, | |
| # `update`, or `delete`, and so on. | |
| "progress": 42, # [Output Only] An optional progress indicator that ranges from 0 to 100. | |
| # There is no requirement that this be linear or support any granularity of | |
| # operations. This should not be used to guess when the operation will be | |
| # complete. This number should monotonically increase as the operation | |
| # progresses. | |
| "region": "A String", # [Output Only] The URL of the region where the operation resides. Only | |
| # applicable when performing regional operations. | |
| "selfLink": "A String", # [Output Only] Server-defined URL for the resource. | |
| "setCommonInstanceMetadataOperationMetadata": { # Output only. [Output Only] If the operation is for projects.setCommonInstanceMetadata, | |
| # this field will contain information on all underlying zonal actions and | |
| # their state. | |
| "clientOperationId": "A String", # [Output Only] The client operation id. | |
| "perLocationOperations": { # [Output Only] Status information per location (location name is key). | |
| # Example key: zones/us-central1-a | |
| "a_key": { | |
| "error": { # The `Status` type defines a logical error model that is suitable for # [Output Only] If state is `ABANDONED` or `FAILED`, this field is | |
| # populated. | |
| # different programming environments, including REST APIs and RPC APIs. It is | |
| # used by [gRPC](https://github.com/grpc). Each `Status` message contains | |
| # three pieces of data: error code, error message, and error details. | |
| # | |
| # You can find out more about this error model and how to work with it in the | |
| # [API Design Guide](https://cloud.google.com/apis/design/errors). | |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. | |
| "details": [ # A list of messages that carry the error details. There is a common set of | |
| # message types for APIs to use. | |
| { | |
| "a_key": "", # Properties of the object. Contains field @type with type URL. | |
| }, | |
| ], | |
| "message": "A String", # A developer-facing error message, which should be in English. Any | |
| # user-facing error message should be localized and sent in the | |
| # google.rpc.Status.details field, or localized by the client. | |
| }, | |
| "state": "A String", # [Output Only] Status of the action, which can be one of the following: | |
| # `PROPAGATING`, `PROPAGATED`, `ABANDONED`, `FAILED`, or `DONE`. | |
| }, | |
| }, | |
| }, | |
| "startTime": "A String", # [Output Only] The time that this operation was started by the server. | |
| # This value is inRFC3339 | |
| # text format. | |
| "status": "A String", # [Output Only] The status of the operation, which can be one of the | |
| # following: | |
| # `PENDING`, `RUNNING`, or `DONE`. | |
| "statusMessage": "A String", # [Output Only] An optional textual description of the current status of the | |
| # operation. | |
| "targetId": "A String", # [Output Only] The unique target ID, which identifies a specific incarnation | |
| # of the target resource. | |
| "targetLink": "A String", # [Output Only] The URL of the resource that the operation modifies. For | |
| # operations related to creating a snapshot, this points to the disk | |
| # that the snapshot was created from. | |
| "user": "A String", # [Output Only] User who requested the operation, for example: | |
| # `user@example.com` or | |
| # `alice_smith_identifier (global/workforcePools/example-com-us-employees)`. | |
| "warnings": [ # [Output Only] If warning messages are generated during processing of the | |
| # operation, this field will be populated. | |
| { | |
| "code": "A String", # [Output Only] A warning code, if applicable. For example, Compute | |
| # Engine returns NO_RESULTS_ON_PAGE if there | |
| # are no results in the response. | |
| "data": [ # [Output Only] Metadata about this warning in key: | |
| # value format. For example: | |
| # | |
| # "data": [ | |
| # { | |
| # "key": "scope", | |
| # "value": "zones/us-east1-d" | |
| # }] | |
| { | |
| "key": "A String", # [Output Only] A key that provides more detail on the warning being | |
| # returned. For example, for warnings where there are no results in a list | |
| # request for a particular zone, this key might be scope and | |
| # the key value might be the zone name. Other examples might be a key | |
| # indicating a deprecated resource and a suggested replacement, or a | |
| # warning about invalid network settings (for example, if an instance | |
| # attempts to perform IP forwarding but is not enabled for IP forwarding). | |
| "value": "A String", # [Output Only] A warning data value corresponding to the key. | |
| }, | |
| ], | |
| "message": "A String", # [Output Only] A human-readable description of the warning code. | |
| }, | |
| ], | |
| "zone": "A String", # [Output Only] The URL of the zone where the operation resides. Only | |
| # applicable when performing per-zone operations. | |
| }</pre> | |
| </div> | |
| <div class="method"> | |
| <code class="details" id="testIamPermissions">testIamPermissions(project, zone, resource, body=None, x__xgafv=None)</code> | |
| <pre>Returns permissions that a caller has on the specified resource. | |
| Args: | |
| project: string, Project ID for this request. (required) | |
| zone: string, The name of the zone for this request. (required) | |
| resource: string, Name or id of the resource for this request. (required) | |
| body: object, The request body. | |
| The object takes the form of: | |
| { | |
| "permissions": [ # The set of permissions to check for the 'resource'. Permissions with | |
| # wildcards (such as '*' or 'storage.*') are not allowed. | |
| "A String", | |
| ], | |
| } | |
| x__xgafv: string, V1 error format. | |
| Allowed values | |
| 1 - v1 error format | |
| 2 - v2 error format | |
| Returns: | |
| An object of the form: | |
| { | |
| "permissions": [ # A subset of `TestPermissionsRequest.permissions` that the caller is | |
| # allowed. | |
| "A String", | |
| ], | |
| }</pre> | |
| </div> | |
| <div class="method"> | |
| <code class="details" id="update">update(project, zone, autoscaler=None, body=None, requestId=None, x__xgafv=None)</code> | |
| <pre>Updates an autoscaler in the specified project using the data | |
| included in the request. | |
| Args: | |
| project: string, Project ID for this request. (required) | |
| zone: string, Name of the zone for this request. (required) | |
| body: object, The request body. | |
| The object takes the form of: | |
| { # Represents an Autoscaler resource. | |
| # | |
| # Google Compute Engine has two Autoscaler resources: | |
| # | |
| # * [Zonal](/compute/docs/reference/rest/v1/autoscalers) | |
| # * [Regional](/compute/docs/reference/rest/v1/regionAutoscalers) | |
| # | |
| # Use autoscalers to automatically add or delete instances from a | |
| # managed instance group according to your defined autoscaling policy. | |
| # For more information, read Autoscaling Groups of Instances. | |
| # | |
| # For zonal managed instance groups resource, use the autoscaler | |
| # resource. | |
| # | |
| # For regional managed instance groups, use theregionAutoscalers resource. | |
| "autoscalingPolicy": { # Cloud Autoscaler policy. # The configuration parameters for the autoscaling algorithm. You can define | |
| # one or more signals for an autoscaler: cpuUtilization,customMetricUtilizations, andloadBalancingUtilization. | |
| # | |
| # If none of these are specified, the default will be to autoscale based oncpuUtilization to 0.6 or 60%. | |
| "coolDownPeriodSec": 42, # The number of seconds that your application takes to initialize on a VM | |
| # instance. This is referred to as the | |
| # [initialization period](/compute/docs/autoscaler#cool_down_period). | |
| # Specifying an accurate initialization period improves | |
| # autoscaler decisions. For example, when scaling out, the autoscaler ignores | |
| # data from VMs that are still initializing because those VMs might not yet | |
| # represent normal usage of your application. The default initialization | |
| # period is 60 seconds. | |
| # | |
| # Initialization periods might vary because of numerous | |
| # factors. We recommend that you test how long your application takes to | |
| # initialize. To do this, create a VM and time your application's startup | |
| # process. | |
| "cpuUtilization": { # CPU utilization policy. # Defines the CPU utilization policy that allows the autoscaler to scale | |
| # based on the average CPU utilization of a managed instance group. | |
| "predictiveMethod": "A String", # Indicates whether predictive autoscaling based on CPU metric is enabled. | |
| # Valid values are: | |
| # | |
| # * NONE (default). No predictive method is used. The autoscaler scales the | |
| # group to meet current demand based on real-time metrics. | |
| # * OPTIMIZE_AVAILABILITY. Predictive autoscaling improves availability by | |
| # monitoring daily and weekly load patterns and scaling out ahead of | |
| # anticipated demand. | |
| "utilizationMax": 3.14, # The upper bound of the utilization range. Must be a float value in the | |
| # range ('utilization_min', 1]. A value of 0.0 is equivalent to leaving the | |
| # field unset. | |
| "utilizationMin": 3.14, # The lower bound of the utilization range. Must be a float value in the | |
| # range (0, 'utilization_max']. A value of 0.0 is equivalent to leaving the | |
| # field unset. | |
| "utilizationTarget": 3.14, # The target CPU utilization that the autoscaler maintains. Must be | |
| # a float value in the range (0, 1]. If not specified, the default is0.6. | |
| # | |
| # If the CPU level is below the target utilization, the autoscaler scales | |
| # in the number of instances until it reaches the minimum number of | |
| # instances you specified or until the average CPU of your instances | |
| # reaches the target utilization. | |
| # | |
| # If the average CPU is above the target utilization, the autoscaler | |
| # scales out until it reaches the maximum number of instances you | |
| # specified or until the average utilization reaches the target | |
| # utilization. | |
| }, | |
| "customMetricUtilizations": [ # Configuration parameters of autoscaling based on a custom metric. | |
| { # Custom utilization metric policy. | |
| "filter": "A String", # A filter string, compatible with a Stackdriver Monitoringfilter string forTimeSeries.list API call. This filter is | |
| # used to select a specific TimeSeries for the purpose of autoscaling and | |
| # to determine whether the metric is exporting per-instance or | |
| # per-group data. | |
| # | |
| # For the filter to be valid for autoscaling purposes, the following rules | |
| # apply: | |
| # | |
| # | |
| # - You can only use the AND operator for joining | |
| # selectors. | |
| # - You can only use direct equality comparison operator | |
| # (=) without any functions for each selector. | |
| # - You can specify the metric in both the filter string and in the | |
| # metric field. However, if specified in both places, the metric must | |
| # be identical. | |
| # - The monitored resource type | |
| # determines what kind of values are expected for the metric. If it is | |
| # a gce_instance, the autoscaler expects the metric to | |
| # include a separate TimeSeries for each instance in a group. In such a | |
| # case, you cannot filter on resource labels. | |
| # | |
| # | |
| # If the resource type is any other value, the autoscaler expects | |
| # this metric to contain values that apply to the entire autoscaled | |
| # instance group and resource label filtering can be performed to | |
| # point autoscaler at the correct TimeSeries to scale upon. This is | |
| # called a *per-group metric* for the purpose of autoscaling. | |
| # | |
| # If not specified, the type defaults to | |
| # gce_instance. | |
| # | |
| # | |
| # | |
| # Try to provide a filter that is selective enough to pick just one | |
| # TimeSeries for the autoscaled group or for each of the instances (if you | |
| # are using gce_instance resource type). If multiple | |
| # TimeSeries are returned upon the query execution, the autoscaler will sum | |
| # their respective values to obtain its scaling value. | |
| "metric": "A String", # The identifier (type) of the Stackdriver Monitoring metric. The metric | |
| # cannot have negative values. | |
| # | |
| # The metric must have a value type of INT64 orDOUBLE. | |
| "singleInstanceAssignment": 3.14, # If scaling is based on a per-group metric value that represents the | |
| # total amount of work to be done or resource usage, set this value to an | |
| # amount assigned for a single instance of the scaled group. Autoscaler | |
| # keeps the number of instances proportional to the value of this | |
| # metric. The metric itself does not change value due to group | |
| # resizing. | |
| # | |
| # A good metric to use with the target is for examplepubsub.googleapis.com/subscription/num_undelivered_messages | |
| # or a custom metric exporting the total number of requests coming to | |
| # your instances. | |
| # | |
| # A bad example would be a metric exporting an average or median latency, | |
| # since this value can't include a chunk assignable to a single instance, | |
| # it could be better used with utilization_target instead. | |
| "utilizationTarget": 3.14, # The target value of the metric that autoscaler maintains. This | |
| # must be a positive value. A utilization metric scales number of | |
| # virtual machines handling requests to increase or decrease | |
| # proportionally to the metric. | |
| # | |
| # For example, a good metric to use as a utilization_target ishttps://www.googleapis.com/compute/v1/instance/network/received_bytes_count. | |
| # The autoscaler works to keep this value constant for each of the | |
| # instances. | |
| "utilizationTargetType": "A String", # Defines how target utilization value is expressed for a Stackdriver | |
| # Monitoring metric. Either GAUGE,DELTA_PER_SECOND, or DELTA_PER_MINUTE. | |
| }, | |
| ], | |
| "loadBalancingUtilization": { # Configuration parameters of autoscaling based on load balancing. # Configuration parameters of autoscaling based on load balancer. | |
| "utilizationTarget": 3.14, # Fraction of backend capacity utilization (set in HTTP(S) load balancing | |
| # configuration) that the autoscaler maintains. Must be a positive float | |
| # value. If not defined, the default is 0.8. | |
| }, | |
| "maxNumReplicas": 42, # The maximum number of instances that the autoscaler can scale out to. This | |
| # is required when creating or updating an autoscaler. The maximum number | |
| # of replicas must not be lower than minimal number of replicas. | |
| "minNumReplicas": 42, # The minimum number of replicas that the autoscaler can scale in to. | |
| # This cannot be less than 0. If not provided, autoscaler chooses a | |
| # default value depending on maximum number of instances allowed. | |
| "mode": "A String", # Defines the operating mode for this policy. | |
| # The following modes are available: | |
| # | |
| # - OFF: Disables the autoscaler but maintains its | |
| # configuration. | |
| # - ONLY_SCALE_OUT: Restricts the autoscaler to add | |
| # VM instances only. | |
| # - ON: Enables all autoscaler activities according to its | |
| # policy. | |
| # | |
| # | |
| # For more information, see | |
| # "Turning off or restricting an autoscaler" | |
| "scaleInControl": { # Configuration that allows for slower scale in so that even if Autoscaler | |
| # recommends an abrupt scale in of a MIG, it will be throttled as specified | |
| # by the parameters below. | |
| "maxScaledInReplicas": { # Encapsulates numeric value that can be either absolute or relative. # Maximum allowed number (or %) of VMs that can be deducted from the peak | |
| # recommendation during the window autoscaler looks at when computing | |
| # recommendations. Possibly all these VMs can be deleted at once so user | |
| # service needs to be prepared to lose that many VMs in one step. | |
| "calculated": 42, # Output only. Absolute value of VM instances calculated based on the specific mode. | |
| # | |
| # | |
| # | |
| # - If the value is fixed, then the calculated | |
| # value is equal to the fixed value. | |
| # - If the value is a percent, then the | |
| # calculated | |
| # value is percent/100 * targetSize. For example, | |
| # the calculated value of a 80% of a managed instance group | |
| # with 150 instances would be (80/100 * 150) = 120 VM instances. If there | |
| # is a remainder, the number is rounded. | |
| "fixed": 42, # Specifies a fixed number of VM instances. This must be a positive integer. | |
| "percent": 42, # Specifies a percentage of instances between 0 to 100%, inclusive. For | |
| # example, specify 80 for 80%. | |
| }, | |
| "timeWindowSec": 42, # How far back autoscaling looks when computing recommendations to | |
| # include directives regarding slower scale in, as described above. | |
| }, | |
| "scalingSchedules": { # Scaling schedules defined for an autoscaler. Multiple schedules | |
| # can be set on an autoscaler, and they can overlap. During overlapping | |
| # periods the greatest min_required_replicas of all scaling schedules is | |
| # applied. Up to 128 scaling schedules are allowed. | |
| "a_key": { # Scaling based on user-defined schedule. The message describes a single | |
| # scaling schedule. A scaling schedule changes the minimum number of VM | |
| # instances an autoscaler can recommend, which can trigger scaling out. | |
| "description": "A String", # A description of a scaling schedule. | |
| "disabled": True or False, # A boolean value that specifies whether a scaling schedule can influence | |
| # autoscaler recommendations. If set to true, then a scaling schedule has | |
| # no effect. This field is optional, and its value is false by default. | |
| "durationSec": 42, # The duration of time intervals, in seconds, for which this | |
| # scaling schedule is to run. The minimum allowed value is 300. | |
| # This field is required. | |
| "minRequiredReplicas": 42, # The minimum number of VM instances that the autoscaler will | |
| # recommend in time intervals starting according to schedule. This field is | |
| # required. | |
| "schedule": "A String", # The start timestamps of time intervals when this scaling | |
| # schedule is to provide a scaling signal. This field uses the extended | |
| # cron format (with an optional year field). The expression can describe a | |
| # single timestamp if the optional year is set, in which case the scaling | |
| # schedule runs once. The schedule is interpreted with respect to | |
| # time_zone. This field is required. Note: These timestamps only describe | |
| # when autoscaler starts providing the scaling signal. The VMs | |
| # need additional time to become serving. | |
| "timeZone": "A String", # The time zone to use when interpreting the schedule. | |
| # The value of this field must be a time zone name from the tz database: | |
| # https://en.wikipedia.org/wiki/Tz_database. This field is assigned a | |
| # default value of "UTC" if left empty. | |
| }, | |
| }, | |
| "stabilizationPeriodSec": 42, # The number of seconds that autoscaler waits for load stabilization before | |
| # making scale-in decisions. This is referred to as the | |
| # [stabilization period](/compute/docs/autoscaler#stabilization_period). | |
| # This might appear as a delay in scaling in but it is an important mechanism | |
| # for your application to not have fluctuating size due to short term load | |
| # fluctuations. | |
| # | |
| # The default stabilization period is 600 seconds. | |
| }, | |
| "creationTimestamp": "A String", # Output only. [Output Only] Creation timestamp inRFC3339 | |
| # text format. | |
| "description": "A String", # An optional description of this resource. Provide this property when you | |
| # create the resource. | |
| "id": "A String", # Output only. [Output Only] The unique identifier for the resource. This identifier is | |
| # defined by the server. | |
| "kind": "compute#autoscaler", # Output only. [Output Only] Type of the resource. Always compute#autoscaler | |
| # for autoscalers. | |
| "name": "A String", # Name of the resource. Provided by the client when the resource is created. | |
| # The name must be 1-63 characters long, and comply withRFC1035. | |
| # Specifically, the name must be 1-63 characters long and match the regular | |
| # expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first | |
| # character must be a lowercase letter, and all following characters must | |
| # be a dash, lowercase letter, or digit, except the last character, which | |
| # cannot be a dash. | |
| "recommendedSize": 42, # Output only. [Output Only] Target recommended MIG size (number of instances) computed by | |
| # autoscaler. Autoscaler calculates the recommended MIG size even when the | |
| # autoscaling policy mode is different from ON. This field is empty when | |
| # autoscaler is not connected to an existing managed instance group or | |
| # autoscaler did not generate its prediction. | |
| "region": "A String", # Output only. [Output Only] URL of theregion | |
| # where the instance group resides (for autoscalers living in regional | |
| # scope). | |
| "scalingScheduleStatus": { # Output only. [Output Only] Status information of existing scaling schedules. | |
| "a_key": { | |
| "lastStartTime": "A String", # [Output Only] The last time the scaling schedule became active. | |
| # Note: this is a timestamp when a schedule actually became active, not when | |
| # it was planned to do so. | |
| # The timestamp is in RFC3339 | |
| # text format. | |
| "nextStartTime": "A String", # [Output Only] The next time the scaling schedule is to become active. | |
| # Note: this is a timestamp when a schedule is planned to run, but the actual | |
| # time might be slightly different. | |
| # The timestamp is in RFC3339 | |
| # text format. | |
| "state": "A String", # [Output Only] The current state of a scaling schedule. | |
| }, | |
| }, | |
| "selfLink": "A String", # [Output Only] Server-defined URL for the resource. | |
| "status": "A String", # [Output Only] The status of the autoscaler configuration. Current set of | |
| # possible values: | |
| # | |
| # - PENDING: | |
| # Autoscaler backend hasn't read new/updated configuration. | |
| # - DELETING: | |
| # Configuration is being deleted. | |
| # - ACTIVE: | |
| # Configuration is acknowledged to be effective. Some warnings might | |
| # be present in the statusDetails field. | |
| # - ERROR: | |
| # Configuration has errors. Actionable for users. Details are present in | |
| # the statusDetails field. | |
| # | |
| # | |
| # New values might be added in the future. | |
| "statusDetails": [ # [Output Only] Human-readable details about the current state of the | |
| # autoscaler. Read the documentation forCommonly | |
| # returned status messages for examples of status messages you might | |
| # encounter. | |
| { | |
| "message": "A String", # The status message. | |
| "type": "A String", # The type of error, warning, or notice returned. Current set of possible | |
| # values: | |
| # | |
| # - ALL_INSTANCES_UNHEALTHY (WARNING): | |
| # All instances in the instance group are unhealthy (not in RUNNING | |
| # state). | |
| # - BACKEND_SERVICE_DOES_NOT_EXIST (ERROR): | |
| # There is no backend service attached to the instance group. | |
| # - CAPPED_AT_MAX_NUM_REPLICAS (WARNING): | |
| # Autoscaler recommends a size greater than maxNumReplicas. | |
| # - CUSTOM_METRIC_DATA_POINTS_TOO_SPARSE (WARNING): | |
| # The custom metric samples are not exported often enough to be | |
| # a credible base for autoscaling. | |
| # - CUSTOM_METRIC_INVALID (ERROR): | |
| # The custom metric that was specified does not exist or does not have | |
| # the necessary labels. | |
| # - MIN_EQUALS_MAX (WARNING): | |
| # The minNumReplicas is equal to maxNumReplicas. This means the | |
| # autoscaler cannot add or remove instances from the instance group. | |
| # - MISSING_CUSTOM_METRIC_DATA_POINTS (WARNING): | |
| # The autoscaler did not receive any data from the custom metric | |
| # configured for autoscaling. | |
| # - MISSING_LOAD_BALANCING_DATA_POINTS (WARNING): | |
| # The autoscaler is configured to scale based on a load balancing signal | |
| # but the instance group has not received any requests from the load | |
| # balancer. | |
| # - MODE_OFF (WARNING): | |
| # Autoscaling is turned off. The number of instances in the group won't | |
| # change automatically. The autoscaling configuration is preserved. | |
| # - MODE_ONLY_UP (WARNING): | |
| # Autoscaling is in the "Autoscale only out" mode. The autoscaler can add | |
| # instances but not remove any. | |
| # - MORE_THAN_ONE_BACKEND_SERVICE (ERROR): | |
| # The instance group cannot be autoscaled because it has more than one | |
| # backend service attached to it. | |
| # - NOT_ENOUGH_QUOTA_AVAILABLE (ERROR): | |
| # There is insufficient quota for the necessary resources, such as CPU or | |
| # number of instances. | |
| # - REGION_RESOURCE_STOCKOUT (ERROR): | |
| # Shown only for regional autoscalers: there is a resource stockout in | |
| # the chosen region. | |
| # - SCALING_TARGET_DOES_NOT_EXIST (ERROR): | |
| # The target to be scaled does not exist. | |
| # - UNSUPPORTED_MAX_RATE_LOAD_BALANCING_CONFIGURATION | |
| # (ERROR): Autoscaling does not work with an HTTP/S load balancer that | |
| # has been configured for maxRate. | |
| # - ZONE_RESOURCE_STOCKOUT (ERROR): | |
| # For zonal autoscalers: there is a resource stockout in the chosen zone. | |
| # For regional autoscalers: in at least one of the zones you're using | |
| # there is a resource stockout. | |
| # | |
| # | |
| # New values might be added in the future. Some of the values might not be | |
| # available in all API versions. | |
| }, | |
| ], | |
| "target": "A String", # URL of the managed instance group that this autoscaler will scale. This | |
| # field is required when creating an autoscaler. | |
| "zone": "A String", # Output only. [Output Only] URL of thezone | |
| # where the instance group resides (for autoscalers living in zonal scope). | |
| } | |
| autoscaler: string, Name of the autoscaler to update. | |
| requestId: string, An optional request ID to identify requests. Specify a unique request ID so | |
| that if you must retry your request, the server will know to ignore the | |
| request if it has already been completed. | |
| For example, consider a situation where you make an initial request and | |
| the request times out. If you make the request again with the same | |
| request ID, the server can check if original operation with the same | |
| request ID was received, and if so, will ignore the second request. This | |
| prevents clients from accidentally creating duplicate commitments. | |
| The request ID must be | |
| a valid UUID with the exception that zero UUID is not supported | |
| (00000000-0000-0000-0000-000000000000). | |
| x__xgafv: string, V1 error format. | |
| Allowed values | |
| 1 - v1 error format | |
| 2 - v2 error format | |
| Returns: | |
| An object of the form: | |
| { # Represents an Operation resource. | |
| # | |
| # Google Compute Engine has three Operation resources: | |
| # | |
| # * [Global](/compute/docs/reference/rest/v1/globalOperations) | |
| # * [Regional](/compute/docs/reference/rest/v1/regionOperations) | |
| # * [Zonal](/compute/docs/reference/rest/v1/zoneOperations) | |
| # | |
| # You can use an operation resource to manage asynchronous API requests. | |
| # For more information, readHandling | |
| # API responses. | |
| # | |
| # Operations can be global, regional or zonal. | |
| # | |
| # - For global operations, use the `globalOperations` | |
| # resource. | |
| # - For regional operations, use the | |
| # `regionOperations` resource. | |
| # - For zonal operations, use | |
| # the `zoneOperations` resource. | |
| # | |
| # | |
| # | |
| # For more information, read | |
| # Global, Regional, and Zonal Resources. | |
| # | |
| # Note that completed Operation resources have a limited | |
| # retention period. | |
| "clientOperationId": "A String", # [Output Only] The value of `requestId` if you provided it in the request. | |
| # Not present otherwise. | |
| "creationTimestamp": "A String", # [Deprecated] This field is deprecated. | |
| "description": "A String", # [Output Only] A textual description of the operation, which is | |
| # set when the operation is created. | |
| "details": { # [Output Only] Extended details about the operation's execution. | |
| "data": { # Machine readable data from the message. | |
| "a_key": "", | |
| }, | |
| "message": "A String", # Human or AI readable details on execution of the operation. | |
| }, | |
| "endTime": "A String", # [Output Only] The time that this operation was completed. This value is inRFC3339 | |
| # text format. | |
| "error": { # [Output Only] If errors are generated during processing of the operation, | |
| # this field will be populated. | |
| "errors": [ # [Output Only] The array of errors encountered while processing this | |
| # operation. | |
| { # Represents a single error encountered during the processing of an | |
| # operation. | |
| "code": "A String", # [Output Only] The error type identifier for this error. | |
| "errorDetails": [ # [Output Only] An optional list of messages that contain the error | |
| # details. There is a set of defined message types to use for providing | |
| # details.The syntax depends on the error code. For example, | |
| # QuotaExceededInfo will have details when the error code is | |
| # QUOTA_EXCEEDED. | |
| { # Container for structured error details providing additional context | |
| # specific to the encountered error code. | |
| "errorInfo": { # Describes the cause of the error with structured details. # Error information containing structured domain, reason, and metadata. | |
| # | |
| # Example of an error when contacting the "pubsub.googleapis.com" API when it | |
| # is not enabled: | |
| # | |
| # { "reason": "API_DISABLED" | |
| # "domain": "googleapis.com" | |
| # "metadata": { | |
| # "resource": "projects/123", | |
| # "service": "pubsub.googleapis.com" | |
| # } | |
| # } | |
| # | |
| # This response indicates that the pubsub.googleapis.com API is not enabled. | |
| # | |
| # Example of an error that is returned when attempting to create a Spanner | |
| # instance in a region that is out of stock: | |
| # | |
| # { "reason": "STOCKOUT" | |
| # "domain": "spanner.googleapis.com", | |
| # "metadata": { | |
| # "availableRegions": "us-central1,us-east2" | |
| # } | |
| # } | |
| "domain": "A String", # The logical grouping to which the "reason" belongs. The error domain | |
| # is typically the registered service name of the tool or product that | |
| # generates the error. Example: "pubsub.googleapis.com". If the error is | |
| # generated by some common infrastructure, the error domain must be a | |
| # globally unique value that identifies the infrastructure. For Google API | |
| # infrastructure, the error domain is "googleapis.com". | |
| "metadatas": { # Additional structured details about this error. | |
| # | |
| # Keys must match a regular expression of `a-z+` but should | |
| # ideally be lowerCamelCase. Also, they must be limited to 64 characters in | |
| # length. When identifying the current value of an exceeded limit, the units | |
| # should be contained in the key, not the value. For example, rather than | |
| # `{"instanceLimit": "100/request"}`, should be returned as, | |
| # `{"instanceLimitPerRequest": "100"}`, if the client exceeds the number of | |
| # instances that can be created in a single (batch) request. | |
| "a_key": "A String", | |
| }, | |
| "reason": "A String", # The reason of the error. This is a constant value that identifies the | |
| # proximate cause of the error. Error reasons are unique within a particular | |
| # domain of errors. This should be at most 63 characters and match a | |
| # regular expression of `A-Z+[A-Z0-9]`, which represents | |
| # UPPER_SNAKE_CASE. | |
| }, | |
| "help": { # Provides links to documentation or for performing an out of band action. # Links and information to help the user resolve the error. | |
| # | |
| # For example, if a quota check failed with an error indicating the calling | |
| # project hasn't enabled the accessed service, this can contain a URL pointing | |
| # directly to the right place in the developer console to flip the bit. | |
| "links": [ # URL(s) pointing to additional information on handling the current error. | |
| { # Describes a URL link. | |
| "description": "A String", # Describes what the link offers. | |
| "url": "A String", # The URL of the link. | |
| }, | |
| ], | |
| }, | |
| "localizedMessage": { # Provides a localized error message that is safe to return to the user # A localized human-readable error message intended for end users. | |
| # which can be attached to an RPC error. | |
| "locale": "A String", # The locale used following the specification defined at | |
| # https://www.rfc-editor.org/rfc/bcp/bcp47.txt. | |
| # Examples are: "en-US", "fr-CH", "es-MX" | |
| "message": "A String", # The localized error message in the above locale. | |
| }, | |
| "quotaInfo": { # Additional details for quota exceeded error for resource quota. # Details about quota limits and metrics when a quota is exceeded. | |
| "dimensions": { # The map holding related quota dimensions. | |
| "a_key": "A String", | |
| }, | |
| "futureLimit": 3.14, # Future quota limit being rolled out. The limit's unit depends on the quota | |
| # type or metric. | |
| "limit": 3.14, # Current effective quota limit. The limit's unit depends on the quota type | |
| # or metric. | |
| "limitName": "A String", # The name of the quota limit. | |
| "metricName": "A String", # The Compute Engine quota metric name. | |
| "rolloutStatus": "A String", # Rollout status of the future quota limit. | |
| }, | |
| }, | |
| ], | |
| "location": "A String", # [Output Only] Indicates the field in the request that caused the error. | |
| # This property is optional. | |
| "message": "A String", # [Output Only] An optional, human-readable error message. | |
| }, | |
| ], | |
| }, | |
| "getHealthOperationMetadata": { # Metadata for GetHealth operations. # Output only. Metadata for GetHealth operations. | |
| "healthInfo": { # Health information. # Output only. The health information. | |
| "availabilitySloStatus": "A String", # Output only. The availability SLO status. | |
| "healthStatus": "A String", # Output only. The health status. | |
| "repairCategory": "A String", # Output only. The repair category. | |
| "unhealthyReason": "A String", # Output only. The reason for unhealthy status. | |
| "updateTime": "A String", # Output only. The time when health info was updated. | |
| }, | |
| }, | |
| "getVersionOperationMetadata": { | |
| "inlineSbomInfo": { | |
| "currentComponentVersions": { # A mapping of components to their currently-applied versions or other | |
| # appropriate identifiers. | |
| "a_key": "A String", | |
| }, | |
| "targetComponentVersions": { # A mapping of components to their target versions or other appropriate | |
| # identifiers. | |
| "a_key": "A String", | |
| }, | |
| }, | |
| }, | |
| "httpErrorMessage": "A String", # [Output Only] If the operation fails, this field contains the HTTP error | |
| # message that was returned, such as `NOT FOUND`. | |
| "httpErrorStatusCode": 42, # [Output Only] If the operation fails, this field contains the HTTP error | |
| # status code that was returned. For example, a `404` means the | |
| # resource was not found. | |
| "id": "A String", # [Output Only] The unique identifier for the operation. This identifier is | |
| # defined by the server. | |
| "insertTime": "A String", # [Output Only] The time that this operation was requested. | |
| # This value is inRFC3339 | |
| # text format. | |
| "instancesBulkInsertOperationMetadata": { | |
| "perLocationStatus": { # Status information per location (location name is key). | |
| # Example key: zones/us-central1-a | |
| "a_key": { | |
| "createdVmCount": 42, # [Output Only] Count of VMs successfully created so far. | |
| "deletedVmCount": 42, # [Output Only] Count of VMs that got deleted during rollback. | |
| "failedToCreateVmCount": 42, # [Output Only] Count of VMs that started creating but encountered an | |
| # error. | |
| "status": "A String", # [Output Only] Creation status of BulkInsert operation - information | |
| # if the flow is rolling forward or rolling back. | |
| "targetVmCount": 42, # [Output Only] Count of VMs originally planned to be created. | |
| }, | |
| }, | |
| }, | |
| "instancesTroubleshootOperationMetadata": { # [Output Only] Operation metadata for instances.troubleshoot. # Output only. [Output Only] Operation metadata for instances.troubleshoot. | |
| "troubleshootOutput": "A String", # Output only. [Output Only] Serialized output of the troubleshooting diagnostic run. | |
| }, | |
| "kind": "compute#operation", # Output only. [Output Only] Type of the resource. Always `compute#operation` for | |
| # Operation resources. | |
| "name": "A String", # [Output Only] Name of the operation. | |
| "operationGroupId": "A String", # Output only. [Output Only] An ID that represents a group of operations, such as when a | |
| # group of operations results from a `bulkInsert` API request. | |
| "operationType": "A String", # [Output Only] The type of operation, such as `insert`, | |
| # `update`, or `delete`, and so on. | |
| "progress": 42, # [Output Only] An optional progress indicator that ranges from 0 to 100. | |
| # There is no requirement that this be linear or support any granularity of | |
| # operations. This should not be used to guess when the operation will be | |
| # complete. This number should monotonically increase as the operation | |
| # progresses. | |
| "region": "A String", # [Output Only] The URL of the region where the operation resides. Only | |
| # applicable when performing regional operations. | |
| "selfLink": "A String", # [Output Only] Server-defined URL for the resource. | |
| "setCommonInstanceMetadataOperationMetadata": { # Output only. [Output Only] If the operation is for projects.setCommonInstanceMetadata, | |
| # this field will contain information on all underlying zonal actions and | |
| # their state. | |
| "clientOperationId": "A String", # [Output Only] The client operation id. | |
| "perLocationOperations": { # [Output Only] Status information per location (location name is key). | |
| # Example key: zones/us-central1-a | |
| "a_key": { | |
| "error": { # The `Status` type defines a logical error model that is suitable for # [Output Only] If state is `ABANDONED` or `FAILED`, this field is | |
| # populated. | |
| # different programming environments, including REST APIs and RPC APIs. It is | |
| # used by [gRPC](https://github.com/grpc). Each `Status` message contains | |
| # three pieces of data: error code, error message, and error details. | |
| # | |
| # You can find out more about this error model and how to work with it in the | |
| # [API Design Guide](https://cloud.google.com/apis/design/errors). | |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. | |
| "details": [ # A list of messages that carry the error details. There is a common set of | |
| # message types for APIs to use. | |
| { | |
| "a_key": "", # Properties of the object. Contains field @type with type URL. | |
| }, | |
| ], | |
| "message": "A String", # A developer-facing error message, which should be in English. Any | |
| # user-facing error message should be localized and sent in the | |
| # google.rpc.Status.details field, or localized by the client. | |
| }, | |
| "state": "A String", # [Output Only] Status of the action, which can be one of the following: | |
| # `PROPAGATING`, `PROPAGATED`, `ABANDONED`, `FAILED`, or `DONE`. | |
| }, | |
| }, | |
| }, | |
| "startTime": "A String", # [Output Only] The time that this operation was started by the server. | |
| # This value is inRFC3339 | |
| # text format. | |
| "status": "A String", # [Output Only] The status of the operation, which can be one of the | |
| # following: | |
| # `PENDING`, `RUNNING`, or `DONE`. | |
| "statusMessage": "A String", # [Output Only] An optional textual description of the current status of the | |
| # operation. | |
| "targetId": "A String", # [Output Only] The unique target ID, which identifies a specific incarnation | |
| # of the target resource. | |
| "targetLink": "A String", # [Output Only] The URL of the resource that the operation modifies. For | |
| # operations related to creating a snapshot, this points to the disk | |
| # that the snapshot was created from. | |
| "user": "A String", # [Output Only] User who requested the operation, for example: | |
| # `user@example.com` or | |
| # `alice_smith_identifier (global/workforcePools/example-com-us-employees)`. | |
| "warnings": [ # [Output Only] If warning messages are generated during processing of the | |
| # operation, this field will be populated. | |
| { | |
| "code": "A String", # [Output Only] A warning code, if applicable. For example, Compute | |
| # Engine returns NO_RESULTS_ON_PAGE if there | |
| # are no results in the response. | |
| "data": [ # [Output Only] Metadata about this warning in key: | |
| # value format. For example: | |
| # | |
| # "data": [ | |
| # { | |
| # "key": "scope", | |
| # "value": "zones/us-east1-d" | |
| # }] | |
| { | |
| "key": "A String", # [Output Only] A key that provides more detail on the warning being | |
| # returned. For example, for warnings where there are no results in a list | |
| # request for a particular zone, this key might be scope and | |
| # the key value might be the zone name. Other examples might be a key | |
| # indicating a deprecated resource and a suggested replacement, or a | |
| # warning about invalid network settings (for example, if an instance | |
| # attempts to perform IP forwarding but is not enabled for IP forwarding). | |
| "value": "A String", # [Output Only] A warning data value corresponding to the key. | |
| }, | |
| ], | |
| "message": "A String", # [Output Only] A human-readable description of the warning code. | |
| }, | |
| ], | |
| "zone": "A String", # [Output Only] The URL of the zone where the operation resides. Only | |
| # applicable when performing per-zone operations. | |
| }</pre> | |
| </div> | |
| </body></html> |