123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739 |
- // Copyright 2022 Google LLC
- //
- // Licensed under the Apache License, Version 2.0 (the "License");
- // you may not use this file except in compliance with the License.
- // You may obtain a copy of the License at
- //
- // http://www.apache.org/licenses/LICENSE-2.0
- //
- // Unless required by applicable law or agreed to in writing, software
- // distributed under the License is distributed on an "AS IS" BASIS,
- // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- // See the License for the specific language governing permissions and
- // limitations under the License.
- syntax = "proto3";
- package google.bigtable.admin.v2;
- import "google/api/annotations.proto";
- import "google/api/client.proto";
- import "google/api/field_behavior.proto";
- import "google/api/resource.proto";
- import "google/bigtable/admin/v2/instance.proto";
- import "google/iam/v1/iam_policy.proto";
- import "google/iam/v1/policy.proto";
- import "google/longrunning/operations.proto";
- import "google/protobuf/empty.proto";
- import "google/protobuf/field_mask.proto";
- import "google/protobuf/timestamp.proto";
- option csharp_namespace = "Google.Cloud.Bigtable.Admin.V2";
- option go_package = "google.golang.org/genproto/googleapis/bigtable/admin/v2;admin";
- option java_multiple_files = true;
- option java_outer_classname = "BigtableInstanceAdminProto";
- option java_package = "com.google.bigtable.admin.v2";
- option php_namespace = "Google\\Cloud\\Bigtable\\Admin\\V2";
- option ruby_package = "Google::Cloud::Bigtable::Admin::V2";
- // Service for creating, configuring, and deleting Cloud Bigtable Instances and
- // Clusters. Provides access to the Instance and Cluster schemas only, not the
- // tables' metadata or data stored in those tables.
- service BigtableInstanceAdmin {
- option (google.api.default_host) = "bigtableadmin.googleapis.com";
- option (google.api.oauth_scopes) =
- "https://www.googleapis.com/auth/bigtable.admin,"
- "https://www.googleapis.com/auth/bigtable.admin.cluster,"
- "https://www.googleapis.com/auth/bigtable.admin.instance,"
- "https://www.googleapis.com/auth/cloud-bigtable.admin,"
- "https://www.googleapis.com/auth/cloud-bigtable.admin.cluster,"
- "https://www.googleapis.com/auth/cloud-platform,"
- "https://www.googleapis.com/auth/cloud-platform.read-only";
- // Create an instance within a project.
- //
- // Note that exactly one of Cluster.serve_nodes and
- // Cluster.cluster_config.cluster_autoscaling_config can be set. If
- // serve_nodes is set to non-zero, then the cluster is manually scaled. If
- // cluster_config.cluster_autoscaling_config is non-empty, then autoscaling is
- // enabled.
- rpc CreateInstance(CreateInstanceRequest) returns (google.longrunning.Operation) {
- option (google.api.http) = {
- post: "/v2/{parent=projects/*}/instances"
- body: "*"
- };
- option (google.api.method_signature) = "parent,instance_id,instance,clusters";
- option (google.longrunning.operation_info) = {
- response_type: "Instance"
- metadata_type: "CreateInstanceMetadata"
- };
- }
- // Gets information about an instance.
- rpc GetInstance(GetInstanceRequest) returns (Instance) {
- option (google.api.http) = {
- get: "/v2/{name=projects/*/instances/*}"
- };
- option (google.api.method_signature) = "name";
- }
- // Lists information about instances in a project.
- rpc ListInstances(ListInstancesRequest) returns (ListInstancesResponse) {
- option (google.api.http) = {
- get: "/v2/{parent=projects/*}/instances"
- };
- option (google.api.method_signature) = "parent";
- }
- // Updates an instance within a project. This method updates only the display
- // name and type for an Instance. To update other Instance properties, such as
- // labels, use PartialUpdateInstance.
- rpc UpdateInstance(Instance) returns (Instance) {
- option (google.api.http) = {
- put: "/v2/{name=projects/*/instances/*}"
- body: "*"
- };
- }
- // Partially updates an instance within a project. This method can modify all
- // fields of an Instance and is the preferred way to update an Instance.
- rpc PartialUpdateInstance(PartialUpdateInstanceRequest) returns (google.longrunning.Operation) {
- option (google.api.http) = {
- patch: "/v2/{instance.name=projects/*/instances/*}"
- body: "instance"
- };
- option (google.api.method_signature) = "instance,update_mask";
- option (google.longrunning.operation_info) = {
- response_type: "Instance"
- metadata_type: "UpdateInstanceMetadata"
- };
- }
- // Delete an instance from a project.
- rpc DeleteInstance(DeleteInstanceRequest) returns (google.protobuf.Empty) {
- option (google.api.http) = {
- delete: "/v2/{name=projects/*/instances/*}"
- };
- option (google.api.method_signature) = "name";
- }
- // Creates a cluster within an instance.
- //
- // Note that exactly one of Cluster.serve_nodes and
- // Cluster.cluster_config.cluster_autoscaling_config can be set. If
- // serve_nodes is set to non-zero, then the cluster is manually scaled. If
- // cluster_config.cluster_autoscaling_config is non-empty, then autoscaling is
- // enabled.
- rpc CreateCluster(CreateClusterRequest) returns (google.longrunning.Operation) {
- option (google.api.http) = {
- post: "/v2/{parent=projects/*/instances/*}/clusters"
- body: "cluster"
- };
- option (google.api.method_signature) = "parent,cluster_id,cluster";
- option (google.longrunning.operation_info) = {
- response_type: "Cluster"
- metadata_type: "CreateClusterMetadata"
- };
- }
- // Gets information about a cluster.
- rpc GetCluster(GetClusterRequest) returns (Cluster) {
- option (google.api.http) = {
- get: "/v2/{name=projects/*/instances/*/clusters/*}"
- };
- option (google.api.method_signature) = "name";
- }
- // Lists information about clusters in an instance.
- rpc ListClusters(ListClustersRequest) returns (ListClustersResponse) {
- option (google.api.http) = {
- get: "/v2/{parent=projects/*/instances/*}/clusters"
- };
- option (google.api.method_signature) = "parent";
- }
- // Updates a cluster within an instance.
- //
- // Note that UpdateCluster does not support updating
- // cluster_config.cluster_autoscaling_config. In order to update it, you
- // must use PartialUpdateCluster.
- rpc UpdateCluster(Cluster) returns (google.longrunning.Operation) {
- option (google.api.http) = {
- put: "/v2/{name=projects/*/instances/*/clusters/*}"
- body: "*"
- };
- option (google.longrunning.operation_info) = {
- response_type: "Cluster"
- metadata_type: "UpdateClusterMetadata"
- };
- }
- // Partially updates a cluster within a project. This method is the preferred
- // way to update a Cluster.
- //
- // To enable and update autoscaling, set
- // cluster_config.cluster_autoscaling_config. When autoscaling is enabled,
- // serve_nodes is treated as an OUTPUT_ONLY field, meaning that updates to it
- // are ignored. Note that an update cannot simultaneously set serve_nodes to
- // non-zero and cluster_config.cluster_autoscaling_config to non-empty, and
- // also specify both in the update_mask.
- //
- // To disable autoscaling, clear cluster_config.cluster_autoscaling_config,
- // and explicitly set a serve_node count via the update_mask.
- rpc PartialUpdateCluster(PartialUpdateClusterRequest) returns (google.longrunning.Operation) {
- option (google.api.http) = {
- patch: "/v2/{cluster.name=projects/*/instances/*/clusters/*}"
- body: "cluster"
- };
- option (google.api.method_signature) = "cluster,update_mask";
- option (google.longrunning.operation_info) = {
- response_type: "Cluster"
- metadata_type: "PartialUpdateClusterMetadata"
- };
- }
- // Deletes a cluster from an instance.
- rpc DeleteCluster(DeleteClusterRequest) returns (google.protobuf.Empty) {
- option (google.api.http) = {
- delete: "/v2/{name=projects/*/instances/*/clusters/*}"
- };
- option (google.api.method_signature) = "name";
- }
- // Creates an app profile within an instance.
- rpc CreateAppProfile(CreateAppProfileRequest) returns (AppProfile) {
- option (google.api.http) = {
- post: "/v2/{parent=projects/*/instances/*}/appProfiles"
- body: "app_profile"
- };
- option (google.api.method_signature) = "parent,app_profile_id,app_profile";
- }
- // Gets information about an app profile.
- rpc GetAppProfile(GetAppProfileRequest) returns (AppProfile) {
- option (google.api.http) = {
- get: "/v2/{name=projects/*/instances/*/appProfiles/*}"
- };
- option (google.api.method_signature) = "name";
- }
- // Lists information about app profiles in an instance.
- rpc ListAppProfiles(ListAppProfilesRequest) returns (ListAppProfilesResponse) {
- option (google.api.http) = {
- get: "/v2/{parent=projects/*/instances/*}/appProfiles"
- };
- option (google.api.method_signature) = "parent";
- }
- // Updates an app profile within an instance.
- rpc UpdateAppProfile(UpdateAppProfileRequest) returns (google.longrunning.Operation) {
- option (google.api.http) = {
- patch: "/v2/{app_profile.name=projects/*/instances/*/appProfiles/*}"
- body: "app_profile"
- };
- option (google.api.method_signature) = "app_profile,update_mask";
- option (google.longrunning.operation_info) = {
- response_type: "AppProfile"
- metadata_type: "UpdateAppProfileMetadata"
- };
- }
- // Deletes an app profile from an instance.
- rpc DeleteAppProfile(DeleteAppProfileRequest) returns (google.protobuf.Empty) {
- option (google.api.http) = {
- delete: "/v2/{name=projects/*/instances/*/appProfiles/*}"
- };
- option (google.api.method_signature) = "name";
- }
- // Gets the access control policy for an instance resource. Returns an empty
- // policy if an instance exists but does not have a policy set.
- rpc GetIamPolicy(google.iam.v1.GetIamPolicyRequest) returns (google.iam.v1.Policy) {
- option (google.api.http) = {
- post: "/v2/{resource=projects/*/instances/*}:getIamPolicy"
- body: "*"
- };
- option (google.api.method_signature) = "resource";
- }
- // Sets the access control policy on an instance resource. Replaces any
- // existing policy.
- rpc SetIamPolicy(google.iam.v1.SetIamPolicyRequest) returns (google.iam.v1.Policy) {
- option (google.api.http) = {
- post: "/v2/{resource=projects/*/instances/*}:setIamPolicy"
- body: "*"
- };
- option (google.api.method_signature) = "resource,policy";
- }
- // Returns permissions that the caller has on the specified instance resource.
- rpc TestIamPermissions(google.iam.v1.TestIamPermissionsRequest) returns (google.iam.v1.TestIamPermissionsResponse) {
- option (google.api.http) = {
- post: "/v2/{resource=projects/*/instances/*}:testIamPermissions"
- body: "*"
- };
- option (google.api.method_signature) = "resource,permissions";
- }
- // Lists hot tablets in a cluster, within the time range provided. Hot
- // tablets are ordered based on CPU usage.
- rpc ListHotTablets(ListHotTabletsRequest) returns (ListHotTabletsResponse) {
- option (google.api.http) = {
- get: "/v2/{parent=projects/*/instances/*/clusters/*}/hotTablets"
- };
- option (google.api.method_signature) = "parent";
- }
- }
- // Request message for BigtableInstanceAdmin.CreateInstance.
- message CreateInstanceRequest {
- // Required. The unique name of the project in which to create the new instance.
- // Values are of the form `projects/{project}`.
- string parent = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "cloudresourcemanager.googleapis.com/Project"
- }
- ];
- // Required. The ID to be used when referring to the new instance within its project,
- // e.g., just `myinstance` rather than
- // `projects/myproject/instances/myinstance`.
- string instance_id = 2 [(google.api.field_behavior) = REQUIRED];
- // Required. The instance to create.
- // Fields marked `OutputOnly` must be left blank.
- Instance instance = 3 [(google.api.field_behavior) = REQUIRED];
- // Required. The clusters to be created within the instance, mapped by desired
- // cluster ID, e.g., just `mycluster` rather than
- // `projects/myproject/instances/myinstance/clusters/mycluster`.
- // Fields marked `OutputOnly` must be left blank.
- // Currently, at most four clusters can be specified.
- map<string, Cluster> clusters = 4 [(google.api.field_behavior) = REQUIRED];
- }
- // Request message for BigtableInstanceAdmin.GetInstance.
- message GetInstanceRequest {
- // Required. The unique name of the requested instance. Values are of the form
- // `projects/{project}/instances/{instance}`.
- string name = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "bigtableadmin.googleapis.com/Instance"
- }
- ];
- }
- // Request message for BigtableInstanceAdmin.ListInstances.
- message ListInstancesRequest {
- // Required. The unique name of the project for which a list of instances is requested.
- // Values are of the form `projects/{project}`.
- string parent = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "cloudresourcemanager.googleapis.com/Project"
- }
- ];
- // DEPRECATED: This field is unused and ignored.
- string page_token = 2;
- }
- // Response message for BigtableInstanceAdmin.ListInstances.
- message ListInstancesResponse {
- // The list of requested instances.
- repeated Instance instances = 1;
- // Locations from which Instance information could not be retrieved,
- // due to an outage or some other transient condition.
- // Instances whose Clusters are all in one of the failed locations
- // may be missing from `instances`, and Instances with at least one
- // Cluster in a failed location may only have partial information returned.
- // Values are of the form `projects/<project>/locations/<zone_id>`
- repeated string failed_locations = 2;
- // DEPRECATED: This field is unused and ignored.
- string next_page_token = 3;
- }
- // Request message for BigtableInstanceAdmin.PartialUpdateInstance.
- message PartialUpdateInstanceRequest {
- // Required. The Instance which will (partially) replace the current value.
- Instance instance = 1 [(google.api.field_behavior) = REQUIRED];
- // Required. The subset of Instance fields which should be replaced.
- // Must be explicitly set.
- google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED];
- }
- // Request message for BigtableInstanceAdmin.DeleteInstance.
- message DeleteInstanceRequest {
- // Required. The unique name of the instance to be deleted.
- // Values are of the form `projects/{project}/instances/{instance}`.
- string name = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "bigtableadmin.googleapis.com/Instance"
- }
- ];
- }
- // Request message for BigtableInstanceAdmin.CreateCluster.
- message CreateClusterRequest {
- // Required. The unique name of the instance in which to create the new cluster.
- // Values are of the form
- // `projects/{project}/instances/{instance}`.
- string parent = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "bigtableadmin.googleapis.com/Instance"
- }
- ];
- // Required. The ID to be used when referring to the new cluster within its instance,
- // e.g., just `mycluster` rather than
- // `projects/myproject/instances/myinstance/clusters/mycluster`.
- string cluster_id = 2 [(google.api.field_behavior) = REQUIRED];
- // Required. The cluster to be created.
- // Fields marked `OutputOnly` must be left blank.
- Cluster cluster = 3 [(google.api.field_behavior) = REQUIRED];
- }
- // Request message for BigtableInstanceAdmin.GetCluster.
- message GetClusterRequest {
- // Required. The unique name of the requested cluster. Values are of the form
- // `projects/{project}/instances/{instance}/clusters/{cluster}`.
- string name = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "bigtableadmin.googleapis.com/Cluster"
- }
- ];
- }
- // Request message for BigtableInstanceAdmin.ListClusters.
- message ListClustersRequest {
- // Required. The unique name of the instance for which a list of clusters is requested.
- // Values are of the form `projects/{project}/instances/{instance}`.
- // Use `{instance} = '-'` to list Clusters for all Instances in a project,
- // e.g., `projects/myproject/instances/-`.
- string parent = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "bigtableadmin.googleapis.com/Instance"
- }
- ];
- // DEPRECATED: This field is unused and ignored.
- string page_token = 2;
- }
- // Response message for BigtableInstanceAdmin.ListClusters.
- message ListClustersResponse {
- // The list of requested clusters.
- repeated Cluster clusters = 1;
- // Locations from which Cluster information could not be retrieved,
- // due to an outage or some other transient condition.
- // Clusters from these locations may be missing from `clusters`,
- // or may only have partial information returned.
- // Values are of the form `projects/<project>/locations/<zone_id>`
- repeated string failed_locations = 2;
- // DEPRECATED: This field is unused and ignored.
- string next_page_token = 3;
- }
- // Request message for BigtableInstanceAdmin.DeleteCluster.
- message DeleteClusterRequest {
- // Required. The unique name of the cluster to be deleted. Values are of the form
- // `projects/{project}/instances/{instance}/clusters/{cluster}`.
- string name = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "bigtableadmin.googleapis.com/Cluster"
- }
- ];
- }
- // The metadata for the Operation returned by CreateInstance.
- message CreateInstanceMetadata {
- // The request that prompted the initiation of this CreateInstance operation.
- CreateInstanceRequest original_request = 1;
- // The time at which the original request was received.
- google.protobuf.Timestamp request_time = 2;
- // The time at which the operation failed or was completed successfully.
- google.protobuf.Timestamp finish_time = 3;
- }
- // The metadata for the Operation returned by UpdateInstance.
- message UpdateInstanceMetadata {
- // The request that prompted the initiation of this UpdateInstance operation.
- PartialUpdateInstanceRequest original_request = 1;
- // The time at which the original request was received.
- google.protobuf.Timestamp request_time = 2;
- // The time at which the operation failed or was completed successfully.
- google.protobuf.Timestamp finish_time = 3;
- }
- // The metadata for the Operation returned by CreateCluster.
- message CreateClusterMetadata {
- // Progress info for copying a table's data to the new cluster.
- message TableProgress {
- enum State {
- STATE_UNSPECIFIED = 0;
- // The table has not yet begun copying to the new cluster.
- PENDING = 1;
- // The table is actively being copied to the new cluster.
- COPYING = 2;
- // The table has been fully copied to the new cluster.
- COMPLETED = 3;
- // The table was deleted before it finished copying to the new cluster.
- // Note that tables deleted after completion will stay marked as
- // COMPLETED, not CANCELLED.
- CANCELLED = 4;
- }
- // Estimate of the size of the table to be copied.
- int64 estimated_size_bytes = 2;
- // Estimate of the number of bytes copied so far for this table.
- // This will eventually reach 'estimated_size_bytes' unless the table copy
- // is CANCELLED.
- int64 estimated_copied_bytes = 3;
- State state = 4;
- }
- // The request that prompted the initiation of this CreateCluster operation.
- CreateClusterRequest original_request = 1;
- // The time at which the original request was received.
- google.protobuf.Timestamp request_time = 2;
- // The time at which the operation failed or was completed successfully.
- google.protobuf.Timestamp finish_time = 3;
- // Keys: the full `name` of each table that existed in the instance when
- // CreateCluster was first called, i.e.
- // `projects/<project>/instances/<instance>/tables/<table>`. Any table added
- // to the instance by a later API call will be created in the new cluster by
- // that API call, not this one.
- //
- // Values: information on how much of a table's data has been copied to the
- // newly-created cluster so far.
- map<string, TableProgress> tables = 4;
- }
- // The metadata for the Operation returned by UpdateCluster.
- message UpdateClusterMetadata {
- // The request that prompted the initiation of this UpdateCluster operation.
- Cluster original_request = 1;
- // The time at which the original request was received.
- google.protobuf.Timestamp request_time = 2;
- // The time at which the operation failed or was completed successfully.
- google.protobuf.Timestamp finish_time = 3;
- }
- // The metadata for the Operation returned by PartialUpdateCluster.
- message PartialUpdateClusterMetadata {
- // The time at which the original request was received.
- google.protobuf.Timestamp request_time = 1;
- // The time at which the operation failed or was completed successfully.
- google.protobuf.Timestamp finish_time = 2;
- // The original request for PartialUpdateCluster.
- PartialUpdateClusterRequest original_request = 3;
- }
- // Request message for BigtableInstanceAdmin.PartialUpdateCluster.
- message PartialUpdateClusterRequest {
- // Required. The Cluster which contains the partial updates to be applied, subject to
- // the update_mask.
- Cluster cluster = 1 [(google.api.field_behavior) = REQUIRED];
- // Required. The subset of Cluster fields which should be replaced.
- google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED];
- }
- // Request message for BigtableInstanceAdmin.CreateAppProfile.
- message CreateAppProfileRequest {
- // Required. The unique name of the instance in which to create the new app profile.
- // Values are of the form
- // `projects/{project}/instances/{instance}`.
- string parent = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "bigtableadmin.googleapis.com/Instance"
- }
- ];
- // Required. The ID to be used when referring to the new app profile within its
- // instance, e.g., just `myprofile` rather than
- // `projects/myproject/instances/myinstance/appProfiles/myprofile`.
- string app_profile_id = 2 [(google.api.field_behavior) = REQUIRED];
- // Required. The app profile to be created.
- // Fields marked `OutputOnly` will be ignored.
- AppProfile app_profile = 3 [(google.api.field_behavior) = REQUIRED];
- // If true, ignore safety checks when creating the app profile.
- bool ignore_warnings = 4;
- }
- // Request message for BigtableInstanceAdmin.GetAppProfile.
- message GetAppProfileRequest {
- // Required. The unique name of the requested app profile. Values are of the form
- // `projects/{project}/instances/{instance}/appProfiles/{app_profile}`.
- string name = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "bigtableadmin.googleapis.com/AppProfile"
- }
- ];
- }
- // Request message for BigtableInstanceAdmin.ListAppProfiles.
- message ListAppProfilesRequest {
- // Required. The unique name of the instance for which a list of app profiles is
- // requested. Values are of the form
- // `projects/{project}/instances/{instance}`.
- // Use `{instance} = '-'` to list AppProfiles for all Instances in a project,
- // e.g., `projects/myproject/instances/-`.
- string parent = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "bigtableadmin.googleapis.com/Instance"
- }
- ];
- // Maximum number of results per page.
- //
- // A page_size of zero lets the server choose the number of items to return.
- // A page_size which is strictly positive will return at most that many items.
- // A negative page_size will cause an error.
- //
- // Following the first request, subsequent paginated calls are not required
- // to pass a page_size. If a page_size is set in subsequent calls, it must
- // match the page_size given in the first request.
- int32 page_size = 3;
- // The value of `next_page_token` returned by a previous call.
- string page_token = 2;
- }
- // Response message for BigtableInstanceAdmin.ListAppProfiles.
- message ListAppProfilesResponse {
- // The list of requested app profiles.
- repeated AppProfile app_profiles = 1;
- // Set if not all app profiles could be returned in a single response.
- // Pass this value to `page_token` in another request to get the next
- // page of results.
- string next_page_token = 2;
- // Locations from which AppProfile information could not be retrieved,
- // due to an outage or some other transient condition.
- // AppProfiles from these locations may be missing from `app_profiles`.
- // Values are of the form `projects/<project>/locations/<zone_id>`
- repeated string failed_locations = 3;
- }
- // Request message for BigtableInstanceAdmin.UpdateAppProfile.
- message UpdateAppProfileRequest {
- // Required. The app profile which will (partially) replace the current value.
- AppProfile app_profile = 1 [(google.api.field_behavior) = REQUIRED];
- // Required. The subset of app profile fields which should be replaced.
- // If unset, all fields will be replaced.
- google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED];
- // If true, ignore safety checks when updating the app profile.
- bool ignore_warnings = 3;
- }
- // Request message for BigtableInstanceAdmin.DeleteAppProfile.
- message DeleteAppProfileRequest {
- // Required. The unique name of the app profile to be deleted. Values are of the form
- // `projects/{project}/instances/{instance}/appProfiles/{app_profile}`.
- string name = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "bigtableadmin.googleapis.com/AppProfile"
- }
- ];
- // Required. If true, ignore safety checks when deleting the app profile.
- bool ignore_warnings = 2 [(google.api.field_behavior) = REQUIRED];
- }
- // The metadata for the Operation returned by UpdateAppProfile.
- message UpdateAppProfileMetadata {
- }
- // Request message for BigtableInstanceAdmin.ListHotTablets.
- message ListHotTabletsRequest {
- // Required. The cluster name to list hot tablets.
- // Value is in the following form:
- // `projects/{project}/instances/{instance}/clusters/{cluster}`.
- string parent = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "bigtableadmin.googleapis.com/Cluster"
- }
- ];
- // The start time to list hot tablets. The hot tablets in the response will
- // have start times between the requested start time and end time. Start time
- // defaults to Now if it is unset, and end time defaults to Now - 24 hours if
- // it is unset. The start time should be less than the end time, and the
- // maximum allowed time range between start time and end time is 48 hours.
- // Start time and end time should have values between Now and Now - 14 days.
- google.protobuf.Timestamp start_time = 2;
- // The end time to list hot tablets.
- google.protobuf.Timestamp end_time = 3;
- // Maximum number of results per page.
- //
- // A page_size that is empty or zero lets the server choose the number of
- // items to return. A page_size which is strictly positive will return at most
- // that many items. A negative page_size will cause an error.
- //
- // Following the first request, subsequent paginated calls do not need a
- // page_size field. If a page_size is set in subsequent calls, it must match
- // the page_size given in the first request.
- int32 page_size = 4;
- // The value of `next_page_token` returned by a previous call.
- string page_token = 5;
- }
- // Response message for BigtableInstanceAdmin.ListHotTablets.
- message ListHotTabletsResponse {
- // List of hot tablets in the tables of the requested cluster that fall
- // within the requested time range. Hot tablets are ordered by node cpu usage
- // percent. If there are multiple hot tablets that correspond to the same
- // tablet within a 15-minute interval, only the hot tablet with the highest
- // node cpu usage will be included in the response.
- repeated HotTablet hot_tablets = 1;
- // Set if not all hot tablets could be returned in a single response.
- // Pass this value to `page_token` in another request to get the next
- // page of results.
- string next_page_token = 2;
- }
|