xref: /aosp_15_r20/external/googleapis/google/appengine/v1/instance.proto (revision d5c09012810ac0c9f33fe448fb6da8260d444cc9)
1*d5c09012SAndroid Build Coastguard Worker// Copyright 2022 Google LLC
2*d5c09012SAndroid Build Coastguard Worker//
3*d5c09012SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License");
4*d5c09012SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License.
5*d5c09012SAndroid Build Coastguard Worker// You may obtain a copy of the License at
6*d5c09012SAndroid Build Coastguard Worker//
7*d5c09012SAndroid Build Coastguard Worker//     http://www.apache.org/licenses/LICENSE-2.0
8*d5c09012SAndroid Build Coastguard Worker//
9*d5c09012SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software
10*d5c09012SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS,
11*d5c09012SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12*d5c09012SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and
13*d5c09012SAndroid Build Coastguard Worker// limitations under the License.
14*d5c09012SAndroid Build Coastguard Worker
15*d5c09012SAndroid Build Coastguard Workersyntax = "proto3";
16*d5c09012SAndroid Build Coastguard Worker
17*d5c09012SAndroid Build Coastguard Workerpackage google.appengine.v1;
18*d5c09012SAndroid Build Coastguard Worker
19*d5c09012SAndroid Build Coastguard Workerimport "google/api/field_behavior.proto";
20*d5c09012SAndroid Build Coastguard Workerimport "google/api/resource.proto";
21*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/timestamp.proto";
22*d5c09012SAndroid Build Coastguard Worker
23*d5c09012SAndroid Build Coastguard Workeroption csharp_namespace = "Google.Cloud.AppEngine.V1";
24*d5c09012SAndroid Build Coastguard Workeroption go_package = "cloud.google.com/go/appengine/apiv1/appenginepb;appenginepb";
25*d5c09012SAndroid Build Coastguard Workeroption java_multiple_files = true;
26*d5c09012SAndroid Build Coastguard Workeroption java_outer_classname = "InstanceProto";
27*d5c09012SAndroid Build Coastguard Workeroption java_package = "com.google.appengine.v1";
28*d5c09012SAndroid Build Coastguard Workeroption php_namespace = "Google\\Cloud\\AppEngine\\V1";
29*d5c09012SAndroid Build Coastguard Workeroption ruby_package = "Google::Cloud::AppEngine::V1";
30*d5c09012SAndroid Build Coastguard Worker
31*d5c09012SAndroid Build Coastguard Worker// An Instance resource is the computing unit that App Engine uses to
32*d5c09012SAndroid Build Coastguard Worker// automatically scale an application.
33*d5c09012SAndroid Build Coastguard Workermessage Instance {
34*d5c09012SAndroid Build Coastguard Worker  option (google.api.resource) = {
35*d5c09012SAndroid Build Coastguard Worker    type: "appengine.googleapis.com/Instance"
36*d5c09012SAndroid Build Coastguard Worker    pattern: "apps/{app}/services/{service}/versions/{version}/instances/{instance}"
37*d5c09012SAndroid Build Coastguard Worker  };
38*d5c09012SAndroid Build Coastguard Worker
39*d5c09012SAndroid Build Coastguard Worker  // Availability of the instance.
40*d5c09012SAndroid Build Coastguard Worker  enum Availability {
41*d5c09012SAndroid Build Coastguard Worker    UNSPECIFIED = 0;
42*d5c09012SAndroid Build Coastguard Worker
43*d5c09012SAndroid Build Coastguard Worker    RESIDENT = 1;
44*d5c09012SAndroid Build Coastguard Worker
45*d5c09012SAndroid Build Coastguard Worker    DYNAMIC = 2;
46*d5c09012SAndroid Build Coastguard Worker  }
47*d5c09012SAndroid Build Coastguard Worker
48*d5c09012SAndroid Build Coastguard Worker  // Wrapper for LivenessState enum.
49*d5c09012SAndroid Build Coastguard Worker  message Liveness {
50*d5c09012SAndroid Build Coastguard Worker    // Liveness health check status for Flex instances.
51*d5c09012SAndroid Build Coastguard Worker    enum LivenessState {
52*d5c09012SAndroid Build Coastguard Worker      // There is no liveness health check for the instance. Only applicable for
53*d5c09012SAndroid Build Coastguard Worker      // instances in App Engine standard environment.
54*d5c09012SAndroid Build Coastguard Worker      LIVENESS_STATE_UNSPECIFIED = 0;
55*d5c09012SAndroid Build Coastguard Worker
56*d5c09012SAndroid Build Coastguard Worker      // The health checking system is aware of the instance but its health is
57*d5c09012SAndroid Build Coastguard Worker      // not known at the moment.
58*d5c09012SAndroid Build Coastguard Worker      UNKNOWN = 1;
59*d5c09012SAndroid Build Coastguard Worker
60*d5c09012SAndroid Build Coastguard Worker      // The instance is reachable i.e. a connection to the application health
61*d5c09012SAndroid Build Coastguard Worker      // checking endpoint can be established, and conforms to the requirements
62*d5c09012SAndroid Build Coastguard Worker      // defined by the health check.
63*d5c09012SAndroid Build Coastguard Worker      HEALTHY = 2;
64*d5c09012SAndroid Build Coastguard Worker
65*d5c09012SAndroid Build Coastguard Worker      // The instance is reachable, but does not conform to the requirements
66*d5c09012SAndroid Build Coastguard Worker      // defined by the health check.
67*d5c09012SAndroid Build Coastguard Worker      UNHEALTHY = 3;
68*d5c09012SAndroid Build Coastguard Worker
69*d5c09012SAndroid Build Coastguard Worker      // The instance is being drained. The existing connections to the instance
70*d5c09012SAndroid Build Coastguard Worker      // have time to complete, but the new ones are being refused.
71*d5c09012SAndroid Build Coastguard Worker      DRAINING = 4;
72*d5c09012SAndroid Build Coastguard Worker
73*d5c09012SAndroid Build Coastguard Worker      // The instance is unreachable i.e. a connection to the application health
74*d5c09012SAndroid Build Coastguard Worker      // checking endpoint cannot be established, or the server does not respond
75*d5c09012SAndroid Build Coastguard Worker      // within the specified timeout.
76*d5c09012SAndroid Build Coastguard Worker      TIMEOUT = 5;
77*d5c09012SAndroid Build Coastguard Worker    }
78*d5c09012SAndroid Build Coastguard Worker
79*d5c09012SAndroid Build Coastguard Worker
80*d5c09012SAndroid Build Coastguard Worker  }
81*d5c09012SAndroid Build Coastguard Worker
82*d5c09012SAndroid Build Coastguard Worker  // Output only. Full path to the Instance resource in the API.
83*d5c09012SAndroid Build Coastguard Worker  // Example: `apps/myapp/services/default/versions/v1/instances/instance-1`.
84*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
85*d5c09012SAndroid Build Coastguard Worker
86*d5c09012SAndroid Build Coastguard Worker  // Output only. Relative name of the instance within the version.
87*d5c09012SAndroid Build Coastguard Worker  // Example: `instance-1`.
88*d5c09012SAndroid Build Coastguard Worker  string id = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
89*d5c09012SAndroid Build Coastguard Worker
90*d5c09012SAndroid Build Coastguard Worker  // Output only. App Engine release this instance is running on.
91*d5c09012SAndroid Build Coastguard Worker  string app_engine_release = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
92*d5c09012SAndroid Build Coastguard Worker
93*d5c09012SAndroid Build Coastguard Worker  // Output only. Availability of the instance.
94*d5c09012SAndroid Build Coastguard Worker  Availability availability = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
95*d5c09012SAndroid Build Coastguard Worker
96*d5c09012SAndroid Build Coastguard Worker  // Output only. Name of the virtual machine where this instance lives. Only applicable
97*d5c09012SAndroid Build Coastguard Worker  // for instances in App Engine flexible environment.
98*d5c09012SAndroid Build Coastguard Worker  string vm_name = 5 [(google.api.field_behavior) = OUTPUT_ONLY];
99*d5c09012SAndroid Build Coastguard Worker
100*d5c09012SAndroid Build Coastguard Worker  // Output only. Zone where the virtual machine is located. Only applicable for instances
101*d5c09012SAndroid Build Coastguard Worker  // in App Engine flexible environment.
102*d5c09012SAndroid Build Coastguard Worker  string vm_zone_name = 6 [(google.api.field_behavior) = OUTPUT_ONLY];
103*d5c09012SAndroid Build Coastguard Worker
104*d5c09012SAndroid Build Coastguard Worker  // Output only. Virtual machine ID of this instance. Only applicable for instances in
105*d5c09012SAndroid Build Coastguard Worker  // App Engine flexible environment.
106*d5c09012SAndroid Build Coastguard Worker  string vm_id = 7 [(google.api.field_behavior) = OUTPUT_ONLY];
107*d5c09012SAndroid Build Coastguard Worker
108*d5c09012SAndroid Build Coastguard Worker  // Output only. Time that this instance was started.
109*d5c09012SAndroid Build Coastguard Worker  //
110*d5c09012SAndroid Build Coastguard Worker  // @OutputOnly
111*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Timestamp start_time = 8 [(google.api.field_behavior) = OUTPUT_ONLY];
112*d5c09012SAndroid Build Coastguard Worker
113*d5c09012SAndroid Build Coastguard Worker  // Output only. Number of requests since this instance was started.
114*d5c09012SAndroid Build Coastguard Worker  int32 requests = 9 [(google.api.field_behavior) = OUTPUT_ONLY];
115*d5c09012SAndroid Build Coastguard Worker
116*d5c09012SAndroid Build Coastguard Worker  // Output only. Number of errors since this instance was started.
117*d5c09012SAndroid Build Coastguard Worker  int32 errors = 10 [(google.api.field_behavior) = OUTPUT_ONLY];
118*d5c09012SAndroid Build Coastguard Worker
119*d5c09012SAndroid Build Coastguard Worker  // Output only. Average queries per second (QPS) over the last minute.
120*d5c09012SAndroid Build Coastguard Worker  float qps = 11 [(google.api.field_behavior) = OUTPUT_ONLY];
121*d5c09012SAndroid Build Coastguard Worker
122*d5c09012SAndroid Build Coastguard Worker  // Output only. Average latency (ms) over the last minute.
123*d5c09012SAndroid Build Coastguard Worker  int32 average_latency = 12 [(google.api.field_behavior) = OUTPUT_ONLY];
124*d5c09012SAndroid Build Coastguard Worker
125*d5c09012SAndroid Build Coastguard Worker  // Output only. Total memory in use (bytes).
126*d5c09012SAndroid Build Coastguard Worker  int64 memory_usage = 13 [(google.api.field_behavior) = OUTPUT_ONLY];
127*d5c09012SAndroid Build Coastguard Worker
128*d5c09012SAndroid Build Coastguard Worker  // Output only. Status of the virtual machine where this instance lives. Only applicable
129*d5c09012SAndroid Build Coastguard Worker  // for instances in App Engine flexible environment.
130*d5c09012SAndroid Build Coastguard Worker  string vm_status = 14 [(google.api.field_behavior) = OUTPUT_ONLY];
131*d5c09012SAndroid Build Coastguard Worker
132*d5c09012SAndroid Build Coastguard Worker  // Output only. Whether this instance is in debug mode. Only applicable for instances in
133*d5c09012SAndroid Build Coastguard Worker  // App Engine flexible environment.
134*d5c09012SAndroid Build Coastguard Worker  bool vm_debug_enabled = 15 [(google.api.field_behavior) = OUTPUT_ONLY];
135*d5c09012SAndroid Build Coastguard Worker
136*d5c09012SAndroid Build Coastguard Worker  // Output only. The IP address of this instance. Only applicable for instances in App
137*d5c09012SAndroid Build Coastguard Worker  // Engine flexible environment.
138*d5c09012SAndroid Build Coastguard Worker  string vm_ip = 16 [(google.api.field_behavior) = OUTPUT_ONLY];
139*d5c09012SAndroid Build Coastguard Worker
140*d5c09012SAndroid Build Coastguard Worker  // Output only. The liveness health check of this instance. Only applicable for instances
141*d5c09012SAndroid Build Coastguard Worker  // in App Engine flexible environment.
142*d5c09012SAndroid Build Coastguard Worker  Liveness.LivenessState vm_liveness = 17 [(google.api.field_behavior) = OUTPUT_ONLY];
143*d5c09012SAndroid Build Coastguard Worker}
144