diff --git a/google-cloud-database_center-v1beta/.owlbot-manifest.json b/google-cloud-database_center-v1beta/.owlbot-manifest.json index d752fc1ebc68..091f98cb0b69 100644 --- a/google-cloud-database_center-v1beta/.owlbot-manifest.json +++ b/google-cloud-database_center-v1beta/.owlbot-manifest.json @@ -53,6 +53,7 @@ "proto_docs/google/type/timeofday.rb", "snippets/Gemfile", "snippets/database_center/aggregate_fleet.rb", + "snippets/database_center/aggregate_issue_stats.rb", "snippets/database_center/query_database_resource_groups.rb", "snippets/database_center/query_products.rb", "snippets/snippet_metadata_google.cloud.databasecenter.v1beta.json", diff --git a/google-cloud-database_center-v1beta/gapic_metadata.json b/google-cloud-database_center-v1beta/gapic_metadata.json index 48b7779a30fb..e9702b951c3c 100644 --- a/google-cloud-database_center-v1beta/gapic_metadata.json +++ b/google-cloud-database_center-v1beta/gapic_metadata.json @@ -24,6 +24,11 @@ "methods": [ "query_database_resource_groups" ] + }, + "AggregateIssueStats": { + "methods": [ + "aggregate_issue_stats" + ] } } } diff --git a/google-cloud-database_center-v1beta/lib/google/cloud/database_center/v1beta/database_center/client.rb b/google-cloud-database_center-v1beta/lib/google/cloud/database_center/v1beta/database_center/client.rb index 9d80f52f650e..2cbaa893b3df 100644 --- a/google-cloud-database_center-v1beta/lib/google/cloud/database_center/v1beta/database_center/client.rb +++ b/google-cloud-database_center-v1beta/lib/google/cloud/database_center/v1beta/database_center/client.rb @@ -621,6 +621,114 @@ def query_database_resource_groups request, options = nil raise ::Google::Cloud::Error.from_error(e) end + ## + # AggregateIssueStats provides database resource issues statistics. + # + # @overload aggregate_issue_stats(request, options = nil) + # Pass arguments to `aggregate_issue_stats` via a request object, either of type + # {::Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional. + # + # @overload aggregate_issue_stats(parent: nil, filter: nil, signal_type_groups: nil, baseline_date: nil) + # Pass arguments to `aggregate_issue_stats` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param parent [::String] + # Required. Parent can be a project, a folder, or an organization. The search + # is limited to the resources within the `scope`. + # + # The allowed values are: + # + # * projects/\\{PROJECT_ID} (e.g., "projects/foo-bar") + # * projects/\\{PROJECT_NUMBER} (e.g., "projects/12345678") + # * folders/\\{FOLDER_NUMBER} (e.g., "folders/1234567") + # * organizations/\\{ORGANIZATION_NUMBER} (e.g., "organizations/123456") + # @param filter [::String] + # Optional. The expression to filter resources. + # + # Supported fields are: `full_resource_name`, `resource_type`, `container`, + # `product.type`, `product.engine`, `product.version`, `location`, + # `labels`, `issues`, fields of availability_info, + # data_protection_info,'resource_name', etc. + # + # The expression is a list of zero or more restrictions combined via logical + # operators `AND` and `OR`. When `AND` and `OR` are both used in the + # expression, parentheses must be appropriately used to group the + # combinations. + # + # Example: location="us-east1" + # Example: container="projects/123" OR container="projects/456" + # Example: (container="projects/123" OR + # container="projects/456") AND location="us-east1" + # @param signal_type_groups [::Array<::Google::Cloud::DatabaseCenter::V1beta::SignalTypeGroup, ::Hash>] + # Optional. Lists of signal types that are issues. + # @param baseline_date [::Google::Type::Date, ::Hash] + # Optional. The baseline date w.r.t. which the delta counts are calculated. + # If not set, delta counts are not included in the response and the response + # indicates the current state of the fleet. + # + # @yield [response, operation] Access the result along with the RPC operation + # @yieldparam response [::Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsResponse] + # @yieldparam operation [::GRPC::ActiveCall::Operation] + # + # @return [::Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsResponse] + # + # @raise [::Google::Cloud::Error] if the RPC is aborted. + # + # @example Basic example + # require "google/cloud/database_center/v1beta" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::DatabaseCenter::V1beta::DatabaseCenter::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsRequest.new + # + # # Call the aggregate_issue_stats method. + # result = client.aggregate_issue_stats request + # + # # The returned object is of type Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsResponse. + # p result + # + def aggregate_issue_stats request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + metadata = @config.rpcs.aggregate_issue_stats.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::DatabaseCenter::V1beta::VERSION + metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.aggregate_issue_stats.timeout, + metadata: metadata, + retry_policy: @config.rpcs.aggregate_issue_stats.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @database_center_stub.call_rpc :aggregate_issue_stats, request, options: options do |response, operation| + yield response, operation if block_given? + end + rescue ::GRPC::BadStatus => e + raise ::Google::Cloud::Error.from_error(e) + end + ## # Configuration class for the DatabaseCenter API. # @@ -819,6 +927,11 @@ class Rpcs # @return [::Gapic::Config::Method] # attr_reader :query_database_resource_groups + ## + # RPC-specific configuration for `aggregate_issue_stats` + # @return [::Gapic::Config::Method] + # + attr_reader :aggregate_issue_stats # @private def initialize parent_rpcs = nil @@ -828,6 +941,8 @@ def initialize parent_rpcs = nil @aggregate_fleet = ::Gapic::Config::Method.new aggregate_fleet_config query_database_resource_groups_config = parent_rpcs.query_database_resource_groups if parent_rpcs.respond_to? :query_database_resource_groups @query_database_resource_groups = ::Gapic::Config::Method.new query_database_resource_groups_config + aggregate_issue_stats_config = parent_rpcs.aggregate_issue_stats if parent_rpcs.respond_to? :aggregate_issue_stats + @aggregate_issue_stats = ::Gapic::Config::Method.new aggregate_issue_stats_config yield self if block_given? end diff --git a/google-cloud-database_center-v1beta/lib/google/cloud/database_center/v1beta/database_center/rest/client.rb b/google-cloud-database_center-v1beta/lib/google/cloud/database_center/v1beta/database_center/rest/client.rb index 783b1af3c95c..97d6d1ce6088 100644 --- a/google-cloud-database_center-v1beta/lib/google/cloud/database_center/v1beta/database_center/rest/client.rb +++ b/google-cloud-database_center-v1beta/lib/google/cloud/database_center/v1beta/database_center/rest/client.rb @@ -617,6 +617,115 @@ def query_database_resource_groups request, options = nil raise ::Google::Cloud::Error.from_error(e) end + ## + # AggregateIssueStats provides database resource issues statistics. + # + # @overload aggregate_issue_stats(request, options = nil) + # Pass arguments to `aggregate_issue_stats` via a request object, either of type + # {::Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload aggregate_issue_stats(parent: nil, filter: nil, signal_type_groups: nil, baseline_date: nil) + # Pass arguments to `aggregate_issue_stats` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param parent [::String] + # Required. Parent can be a project, a folder, or an organization. The search + # is limited to the resources within the `scope`. + # + # The allowed values are: + # + # * projects/\\{PROJECT_ID} (e.g., "projects/foo-bar") + # * projects/\\{PROJECT_NUMBER} (e.g., "projects/12345678") + # * folders/\\{FOLDER_NUMBER} (e.g., "folders/1234567") + # * organizations/\\{ORGANIZATION_NUMBER} (e.g., "organizations/123456") + # @param filter [::String] + # Optional. The expression to filter resources. + # + # Supported fields are: `full_resource_name`, `resource_type`, `container`, + # `product.type`, `product.engine`, `product.version`, `location`, + # `labels`, `issues`, fields of availability_info, + # data_protection_info,'resource_name', etc. + # + # The expression is a list of zero or more restrictions combined via logical + # operators `AND` and `OR`. When `AND` and `OR` are both used in the + # expression, parentheses must be appropriately used to group the + # combinations. + # + # Example: location="us-east1" + # Example: container="projects/123" OR container="projects/456" + # Example: (container="projects/123" OR + # container="projects/456") AND location="us-east1" + # @param signal_type_groups [::Array<::Google::Cloud::DatabaseCenter::V1beta::SignalTypeGroup, ::Hash>] + # Optional. Lists of signal types that are issues. + # @param baseline_date [::Google::Type::Date, ::Hash] + # Optional. The baseline date w.r.t. which the delta counts are calculated. + # If not set, delta counts are not included in the response and the response + # indicates the current state of the fleet. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsResponse] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsResponse] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/database_center/v1beta" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::DatabaseCenter::V1beta::DatabaseCenter::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsRequest.new + # + # # Call the aggregate_issue_stats method. + # result = client.aggregate_issue_stats request + # + # # The returned object is of type Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsResponse. + # p result + # + def aggregate_issue_stats request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.aggregate_issue_stats.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::DatabaseCenter::V1beta::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.aggregate_issue_stats.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.aggregate_issue_stats.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @database_center_stub.aggregate_issue_stats request, options do |result, operation| + yield result, operation if block_given? + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + ## # Configuration class for the DatabaseCenter REST API. # @@ -778,6 +887,11 @@ class Rpcs # @return [::Gapic::Config::Method] # attr_reader :query_database_resource_groups + ## + # RPC-specific configuration for `aggregate_issue_stats` + # @return [::Gapic::Config::Method] + # + attr_reader :aggregate_issue_stats # @private def initialize parent_rpcs = nil @@ -787,6 +901,8 @@ def initialize parent_rpcs = nil @aggregate_fleet = ::Gapic::Config::Method.new aggregate_fleet_config query_database_resource_groups_config = parent_rpcs.query_database_resource_groups if parent_rpcs.respond_to? :query_database_resource_groups @query_database_resource_groups = ::Gapic::Config::Method.new query_database_resource_groups_config + aggregate_issue_stats_config = parent_rpcs.aggregate_issue_stats if parent_rpcs.respond_to? :aggregate_issue_stats + @aggregate_issue_stats = ::Gapic::Config::Method.new aggregate_issue_stats_config yield self if block_given? end diff --git a/google-cloud-database_center-v1beta/lib/google/cloud/database_center/v1beta/database_center/rest/service_stub.rb b/google-cloud-database_center-v1beta/lib/google/cloud/database_center/v1beta/database_center/rest/service_stub.rb index 0b1bfecedb81..d48bc6c370de 100644 --- a/google-cloud-database_center-v1beta/lib/google/cloud/database_center/v1beta/database_center/rest/service_stub.rb +++ b/google-cloud-database_center-v1beta/lib/google/cloud/database_center/v1beta/database_center/rest/service_stub.rb @@ -193,6 +193,46 @@ def query_database_resource_groups request_pb, options = nil end end + ## + # Baseline implementation for the aggregate_issue_stats REST call + # + # @param request_pb [::Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsResponse] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsResponse] + # A result object deserialized from the server's reply + def aggregate_issue_stats request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_aggregate_issue_stats_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "aggregate_issue_stats", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsResponse.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + ## # @private # @@ -250,6 +290,26 @@ def self.transcode_query_database_resource_groups_request request_pb ) transcoder.transcode request_pb end + + ## + # @private + # + # GRPC transcoding helper method for the aggregate_issue_stats REST call + # + # @param request_pb [::Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_aggregate_issue_stats_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :post, + uri_template: "/v1beta:aggregateIssueStats", + body: "*", + matches: [] + ) + transcoder.transcode request_pb + end end end end diff --git a/google-cloud-database_center-v1beta/lib/google/cloud/databasecenter/v1beta/service_pb.rb b/google-cloud-database_center-v1beta/lib/google/cloud/databasecenter/v1beta/service_pb.rb index 02d287baf647..4bc64256786f 100644 --- a/google-cloud-database_center-v1beta/lib/google/cloud/databasecenter/v1beta/service_pb.rb +++ b/google-cloud-database_center-v1beta/lib/google/cloud/databasecenter/v1beta/service_pb.rb @@ -15,7 +15,7 @@ require 'google/type/date_pb' -descriptor_data = "\n0google/cloud/databasecenter/v1beta/service.proto\x12\"google.cloud.databasecenter.v1beta\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x37google/cloud/databasecenter/v1beta/machine_config.proto\x1a\x34google/cloud/databasecenter/v1beta/maintenance.proto\x1a\x34google/cloud/databasecenter/v1beta/metric_data.proto\x1a\x30google/cloud/databasecenter/v1beta/product.proto\x1a\x30google/cloud/databasecenter/v1beta/signals.proto\x1a\x16google/type/date.proto\"\\\n\x14QueryProductsRequest\x12\x13\n\x06parent\x18\x03 \x01(\tB\x03\xe0\x41\x02\x12\x16\n\tpage_size\x18\x01 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x02 \x01(\tB\x03\xe0\x41\x01\"\x89\x01\n\x15QueryProductsResponse\x12=\n\x08products\x18\x01 \x03(\x0b\x32+.google.cloud.databasecenter.v1beta.Product\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x18\n\x0bunreachable\x18\x03 \x03(\tB\x03\xe0\x41\x06\"\xbb\x02\n\"QueryDatabaseResourceGroupsRequest\x12\x13\n\x06parent\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x13\n\x06\x66ilter\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12T\n\x12signal_type_groups\x18\x03 \x03(\x0b\x32\x33.google.cloud.databasecenter.v1beta.SignalTypeGroupB\x03\xe0\x41\x01\x12M\n\x0esignal_filters\x18\x04 \x03(\x0b\x32\x30.google.cloud.databasecenter.v1beta.SignalFilterB\x03\xe0\x41\x01\x12\x15\n\x08order_by\x18\x05 \x01(\tB\x03\xe0\x41\x01\x12\x16\n\tpage_size\x18\x06 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x07 \x01(\tB\x03\xe0\x41\x01\"\xac\x01\n#QueryDatabaseResourceGroupsResponse\x12R\n\x0fresource_groups\x18\x01 \x03(\x0b\x32\x39.google.cloud.databasecenter.v1beta.DatabaseResourceGroup\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x18\n\x0bunreachable\x18\x03 \x03(\tB\x03\xe0\x41\x06\"\xac\x01\n\x15\x44\x61tabaseResourceGroup\x12L\n\x0eroot_resources\x18\x01 \x03(\x0b\x32\x34.google.cloud.databasecenter.v1beta.DatabaseResource\x12\x45\n\rsignal_groups\x18\x02 \x03(\x0b\x32..google.cloud.databasecenter.v1beta.IssueCount\"\xd6\x07\n\x10\x44\x61tabaseResource\x12M\n\x0f\x63hild_resources\x18\x01 \x03(\x0b\x32\x34.google.cloud.databasecenter.v1beta.DatabaseResource\x12\x1a\n\x12\x66ull_resource_name\x18\x03 \x01(\t\x12\x11\n\tcontainer\x18\x04 \x01(\t\x12<\n\x07product\x18\x05 \x01(\x0b\x32+.google.cloud.databasecenter.v1beta.Product\x12\x10\n\x08location\x18\x06 \x01(\t\x12\x39\n\x06labels\x18\x07 \x03(\x0b\x32).google.cloud.databasecenter.v1beta.Label\x12\x35\n\x04tags\x18\x10 \x03(\x0b\x32\'.google.cloud.databasecenter.v1beta.Tag\x12\x15\n\rresource_type\x18\x08 \x01(\t\x12N\n\x11sub_resource_type\x18\t \x01(\x0e\x32\x33.google.cloud.databasecenter.v1beta.SubResourceType\x12I\n\x0emachine_config\x18\x0c \x01(\x0b\x32\x31.google.cloud.databasecenter.v1beta.MachineConfig\x12\x46\n\rsignal_groups\x18\n \x03(\x0b\x32/.google.cloud.databasecenter.v1beta.SignalGroup\x12<\n\x07metrics\x18\r \x01(\x0b\x32+.google.cloud.databasecenter.v1beta.Metrics\x12O\n\x11resource_category\x18\x0e \x01(\x0e\x32\x34.google.cloud.databasecenter.v1beta.ResourceCategory\x12\x15\n\rresource_name\x18\x0f \x01(\t\x12P\n\x0f\x62\x61\x63kupdr_config\x18\x11 \x01(\x0b\x32\x32.google.cloud.databasecenter.v1beta.BackupDRConfigB\x03\xe0\x41\x01\x12<\n\x07\x65\x64ition\x18\x12 \x01(\x0e\x32+.google.cloud.databasecenter.v1beta.Edition\x12R\n\x10maintenance_info\x18\x13 \x01(\x0b\x32\x33.google.cloud.databasecenter.v1beta.MaintenanceInfoB\x03\xe0\x41\x01\"3\n\x05Label\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\x12\x0e\n\x06source\x18\x03 \x01(\t\"\xe6\x01\n\x15\x41ggregateFleetRequest\x12\x13\n\x06parent\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x13\n\x06\x66ilter\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x15\n\x08group_by\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x15\n\x08order_by\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x16\n\tpage_size\x18\x05 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x06 \x01(\tB\x03\xe0\x41\x01\x12\x32\n\rbaseline_date\x18\x07 \x01(\x0b\x32\x11.google.type.DateB\x03\xe0\x41\x01H\x00\x88\x01\x01\x42\x10\n\x0e_baseline_date\"\xd3\x01\n\x16\x41ggregateFleetResponse\x12\x43\n\x04rows\x18\x01 \x03(\x0b\x32\x35.google.cloud.databasecenter.v1beta.AggregateFleetRow\x12#\n\x1bresource_groups_total_count\x18\x02 \x01(\x05\x12\x1c\n\x14resource_total_count\x18\x03 \x01(\x05\x12\x17\n\x0fnext_page_token\x18\x04 \x01(\t\x12\x18\n\x0bunreachable\x18\x05 \x03(\tB\x03\xe0\x41\x06\"\xf2\x01\n\x11\x41ggregateFleetRow\x12@\n\tdimension\x18\x01 \x03(\x0b\x32-.google.cloud.databasecenter.v1beta.Dimension\x12\x1d\n\x15resource_groups_count\x18\x02 \x01(\x05\x12\x17\n\x0fresources_count\x18\x03 \x01(\x05\x12Q\n\rdelta_details\x18\x04 \x01(\x0b\x32\x30.google.cloud.databasecenter.v1beta.DeltaDetailsB\x03\xe0\x41\x01H\x00\x88\x01\x01\x42\x10\n\x0e_delta_details\"\xa1\x06\n\tDimension\x12\x13\n\tcontainer\x18\x02 \x01(\tH\x00\x12G\n\x0cproduct_type\x18\x03 \x01(\x0e\x32/.google.cloud.databasecenter.v1beta.ProductTypeH\x00\x12\x44\n\x0eproduct_engine\x18\x04 \x01(\x0e\x32*.google.cloud.databasecenter.v1beta.EngineH\x00\x12\x19\n\x0fproduct_version\x18\x05 \x01(\tH\x00\x12\x12\n\x08location\x18\x06 \x01(\tH\x00\x12\x17\n\rresource_type\x18\x07 \x01(\tH\x00\x12P\n\x11sub_resource_type\x18\x08 \x01(\x0e\x32\x33.google.cloud.databasecenter.v1beta.SubResourceTypeH\x00\x12Q\n\x11resource_category\x18\t \x01(\x0e\x32\x34.google.cloud.databasecenter.v1beta.ResourceCategoryH\x00\x12M\n\x0fmanagement_type\x18\n \x01(\x0e\x32\x32.google.cloud.databasecenter.v1beta.ManagementTypeH\x00\x12>\n\x07\x65\x64ition\x18\x0b \x01(\x0e\x32+.google.cloud.databasecenter.v1beta.EditionH\x00\x12\x11\n\x07tag_key\x18\x0c \x01(\tH\x00\x12\x13\n\ttag_value\x18\r \x01(\tH\x00\x12\x14\n\ntag_source\x18\x0e \x01(\tH\x00\x12\x17\n\rtag_inherited\x18\x0f \x01(\x08H\x00\x12\x13\n\tlabel_key\x18\x10 \x01(\tH\x00\x12\x15\n\x0blabel_value\x18\x11 \x01(\tH\x00\x12\x16\n\x0clabel_source\x18\x12 \x01(\tH\x00\x12\"\n\x18has_maintenance_schedule\x18\x13 \x01(\x08H\x00\x12(\n\x1ehas_deny_maintenance_schedules\x18\x14 \x01(\x08H\x00\x42\x0b\n\tdimension\"D\n\x0e\x42\x61\x63kupDRConfig\x12\x1d\n\x10\x62\x61\x63kupdr_managed\x18\x01 \x01(\x08H\x00\x88\x01\x01\x42\x13\n\x11_backupdr_managed\"D\n\x03Tag\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\x12\x0e\n\x06source\x18\x03 \x01(\t\x12\x11\n\tinherited\x18\x04 \x01(\x08\"\x90\x01\n\x0fResourceDetails\x12\x1a\n\x12\x66ull_resource_name\x18\x01 \x01(\t\x12\x11\n\tcontainer\x18\x02 \x01(\t\x12<\n\x07product\x18\x03 \x01(\x0b\x32+.google.cloud.databasecenter.v1beta.Product\x12\x10\n\x08location\x18\x04 \x01(\t\"\xb2\x01\n\x0c\x44\x65ltaDetails\x12P\n\x13increased_resources\x18\x01 \x03(\x0b\x32\x33.google.cloud.databasecenter.v1beta.ResourceDetails\x12P\n\x13\x64\x65\x63reased_resources\x18\x02 \x03(\x0b\x32\x33.google.cloud.databasecenter.v1beta.ResourceDetails*^\n\x10ResourceCategory\x12!\n\x1dRESOURCE_CATEGORY_UNSPECIFIED\x10\x00\x12\x0c\n\x08INSTANCE\x10\x01\x12\x0b\n\x07\x43LUSTER\x10\x02\x12\x0c\n\x08\x44\x41TABASE\x10\x03*m\n\x07\x45\x64ition\x12\x17\n\x13\x45\x44ITION_UNSPECIFIED\x10\x00\x12\x16\n\x12\x45\x44ITION_ENTERPRISE\x10\x01\x12\x1b\n\x17\x45\x44ITION_ENTERPRISE_PLUS\x10\x02\x12\x14\n\x10\x45\x44ITION_STANDARD\x10\x03*\xdd\x01\n\x0fSubResourceType\x12!\n\x1dSUB_RESOURCE_TYPE_UNSPECIFIED\x10\x00\x12\x1d\n\x19SUB_RESOURCE_TYPE_PRIMARY\x10\x01\x12\x1f\n\x1bSUB_RESOURCE_TYPE_SECONDARY\x10\x02\x12\"\n\x1eSUB_RESOURCE_TYPE_READ_REPLICA\x10\x03\x12&\n\"SUB_RESOURCE_TYPE_EXTERNAL_PRIMARY\x10\x05\x12\x1b\n\x17SUB_RESOURCE_TYPE_OTHER\x10\x04*t\n\x0eManagementType\x12\x1f\n\x1bMANAGEMENT_TYPE_UNSPECIFIED\x10\x00\x12\x1f\n\x1bMANAGEMENT_TYPE_GCP_MANAGED\x10\x01\x12 \n\x1cMANAGEMENT_TYPE_SELF_MANAGED\x10\x02\x32\x94\x05\n\x0e\x44\x61tabaseCenter\x12\xa3\x01\n\rQueryProducts\x12\x38.google.cloud.databasecenter.v1beta.QueryProductsRequest\x1a\x39.google.cloud.databasecenter.v1beta.QueryProductsResponse\"\x1d\x82\xd3\xe4\x93\x02\x17\x12\x15/v1beta:queryProducts\x12\xa7\x01\n\x0e\x41ggregateFleet\x12\x39.google.cloud.databasecenter.v1beta.AggregateFleetRequest\x1a:.google.cloud.databasecenter.v1beta.AggregateFleetResponse\"\x1e\x82\xd3\xe4\x93\x02\x18\x12\x16/v1beta:aggregateFleet\x12\xde\x01\n\x1bQueryDatabaseResourceGroups\x12\x46.google.cloud.databasecenter.v1beta.QueryDatabaseResourceGroupsRequest\x1aG.google.cloud.databasecenter.v1beta.QueryDatabaseResourceGroupsResponse\".\x82\xd3\xe4\x93\x02(\"#/v1beta:queryDatabaseResourceGroups:\x01*\x1aQ\xca\x41\x1d\x64\x61tabasecenter.googleapis.com\xd2\x41.https://www.googleapis.com/auth/cloud-platformB\xfa\x01\n&com.google.cloud.databasecenter.v1betaB\x0cServiceProtoP\x01ZNcloud.google.com/go/databasecenter/apiv1beta/databasecenterpb;databasecenterpb\xaa\x02\"Google.Cloud.DatabaseCenter.V1Beta\xca\x02\"Google\\Cloud\\DatabaseCenter\\V1beta\xea\x02%Google::Cloud::DatabaseCenter::V1betab\x06proto3" +descriptor_data = "\n0google/cloud/databasecenter/v1beta/service.proto\x12\"google.cloud.databasecenter.v1beta\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x37google/cloud/databasecenter/v1beta/machine_config.proto\x1a\x34google/cloud/databasecenter/v1beta/maintenance.proto\x1a\x34google/cloud/databasecenter/v1beta/metric_data.proto\x1a\x30google/cloud/databasecenter/v1beta/product.proto\x1a\x30google/cloud/databasecenter/v1beta/signals.proto\x1a\x16google/type/date.proto\"\\\n\x14QueryProductsRequest\x12\x13\n\x06parent\x18\x03 \x01(\tB\x03\xe0\x41\x02\x12\x16\n\tpage_size\x18\x01 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x02 \x01(\tB\x03\xe0\x41\x01\"\x89\x01\n\x15QueryProductsResponse\x12=\n\x08products\x18\x01 \x03(\x0b\x32+.google.cloud.databasecenter.v1beta.Product\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x18\n\x0bunreachable\x18\x03 \x03(\tB\x03\xe0\x41\x06\"\xbb\x02\n\"QueryDatabaseResourceGroupsRequest\x12\x13\n\x06parent\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x13\n\x06\x66ilter\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12T\n\x12signal_type_groups\x18\x03 \x03(\x0b\x32\x33.google.cloud.databasecenter.v1beta.SignalTypeGroupB\x03\xe0\x41\x01\x12M\n\x0esignal_filters\x18\x04 \x03(\x0b\x32\x30.google.cloud.databasecenter.v1beta.SignalFilterB\x03\xe0\x41\x01\x12\x15\n\x08order_by\x18\x05 \x01(\tB\x03\xe0\x41\x01\x12\x16\n\tpage_size\x18\x06 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x07 \x01(\tB\x03\xe0\x41\x01\"\xac\x01\n#QueryDatabaseResourceGroupsResponse\x12R\n\x0fresource_groups\x18\x01 \x03(\x0b\x32\x39.google.cloud.databasecenter.v1beta.DatabaseResourceGroup\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x18\n\x0bunreachable\x18\x03 \x03(\tB\x03\xe0\x41\x06\"\xac\x01\n\x15\x44\x61tabaseResourceGroup\x12L\n\x0eroot_resources\x18\x01 \x03(\x0b\x32\x34.google.cloud.databasecenter.v1beta.DatabaseResource\x12\x45\n\rsignal_groups\x18\x02 \x03(\x0b\x32..google.cloud.databasecenter.v1beta.IssueCount\"\xd6\x07\n\x10\x44\x61tabaseResource\x12M\n\x0f\x63hild_resources\x18\x01 \x03(\x0b\x32\x34.google.cloud.databasecenter.v1beta.DatabaseResource\x12\x1a\n\x12\x66ull_resource_name\x18\x03 \x01(\t\x12\x11\n\tcontainer\x18\x04 \x01(\t\x12<\n\x07product\x18\x05 \x01(\x0b\x32+.google.cloud.databasecenter.v1beta.Product\x12\x10\n\x08location\x18\x06 \x01(\t\x12\x39\n\x06labels\x18\x07 \x03(\x0b\x32).google.cloud.databasecenter.v1beta.Label\x12\x35\n\x04tags\x18\x10 \x03(\x0b\x32\'.google.cloud.databasecenter.v1beta.Tag\x12\x15\n\rresource_type\x18\x08 \x01(\t\x12N\n\x11sub_resource_type\x18\t \x01(\x0e\x32\x33.google.cloud.databasecenter.v1beta.SubResourceType\x12I\n\x0emachine_config\x18\x0c \x01(\x0b\x32\x31.google.cloud.databasecenter.v1beta.MachineConfig\x12\x46\n\rsignal_groups\x18\n \x03(\x0b\x32/.google.cloud.databasecenter.v1beta.SignalGroup\x12<\n\x07metrics\x18\r \x01(\x0b\x32+.google.cloud.databasecenter.v1beta.Metrics\x12O\n\x11resource_category\x18\x0e \x01(\x0e\x32\x34.google.cloud.databasecenter.v1beta.ResourceCategory\x12\x15\n\rresource_name\x18\x0f \x01(\t\x12P\n\x0f\x62\x61\x63kupdr_config\x18\x11 \x01(\x0b\x32\x32.google.cloud.databasecenter.v1beta.BackupDRConfigB\x03\xe0\x41\x01\x12<\n\x07\x65\x64ition\x18\x12 \x01(\x0e\x32+.google.cloud.databasecenter.v1beta.Edition\x12R\n\x10maintenance_info\x18\x13 \x01(\x0b\x32\x33.google.cloud.databasecenter.v1beta.MaintenanceInfoB\x03\xe0\x41\x01\"\xe2\x01\n\x1a\x41ggregateIssueStatsRequest\x12\x13\n\x06parent\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x13\n\x06\x66ilter\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12T\n\x12signal_type_groups\x18\x03 \x03(\x0b\x32\x33.google.cloud.databasecenter.v1beta.SignalTypeGroupB\x03\xe0\x41\x01\x12\x32\n\rbaseline_date\x18\x04 \x01(\x0b\x32\x11.google.type.DateB\x03\xe0\x41\x01H\x00\x88\x01\x01\x42\x10\n\x0e_baseline_date\"\xcb\x01\n\x1b\x41ggregateIssueStatsResponse\x12N\n\x11issue_group_stats\x18\x01 \x03(\x0b\x32\x33.google.cloud.databasecenter.v1beta.IssueGroupStats\x12\x1d\n\x15total_resources_count\x18\x02 \x01(\x05\x12#\n\x1btotal_resource_groups_count\x18\x03 \x01(\x05\x12\x18\n\x0bunreachable\x18\x04 \x03(\tB\x03\xe0\x41\x06\"\xec\x01\n\x0fIssueGroupStats\x12\x14\n\x0c\x64isplay_name\x18\x01 \x01(\t\x12\x1d\n\x15resource_groups_count\x18\x02 \x01(\x05\x12\x17\n\x0fresources_count\x18\x03 \x01(\x05\x12%\n\x1dhealthy_resource_groups_count\x18\x04 \x01(\x05\x12\x1f\n\x17healthy_resources_count\x18\x05 \x01(\x05\x12\x43\n\x0bissue_stats\x18\x06 \x03(\x0b\x32..google.cloud.databasecenter.v1beta.IssueStats\"\xb1\x02\n\nIssueStats\x12\x43\n\x0bsignal_type\x18\x01 \x01(\x0e\x32..google.cloud.databasecenter.v1beta.SignalType\x12\x16\n\x0eresource_count\x18\x02 \x01(\x05\x12Q\n\rdelta_details\x18\x03 \x01(\x0b\x32\x30.google.cloud.databasecenter.v1beta.DeltaDetailsB\x03\xe0\x41\x01H\x00\x88\x01\x01\x12N\n\x0eissue_severity\x18\x04 \x01(\x0e\x32\x31.google.cloud.databasecenter.v1beta.IssueSeverityH\x01\x88\x01\x01\x42\x10\n\x0e_delta_detailsB\x11\n\x0f_issue_severity\"3\n\x05Label\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\x12\x0e\n\x06source\x18\x03 \x01(\t\"\xe6\x01\n\x15\x41ggregateFleetRequest\x12\x13\n\x06parent\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x13\n\x06\x66ilter\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x15\n\x08group_by\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x15\n\x08order_by\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x16\n\tpage_size\x18\x05 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x06 \x01(\tB\x03\xe0\x41\x01\x12\x32\n\rbaseline_date\x18\x07 \x01(\x0b\x32\x11.google.type.DateB\x03\xe0\x41\x01H\x00\x88\x01\x01\x42\x10\n\x0e_baseline_date\"\xd3\x01\n\x16\x41ggregateFleetResponse\x12\x43\n\x04rows\x18\x01 \x03(\x0b\x32\x35.google.cloud.databasecenter.v1beta.AggregateFleetRow\x12#\n\x1bresource_groups_total_count\x18\x02 \x01(\x05\x12\x1c\n\x14resource_total_count\x18\x03 \x01(\x05\x12\x17\n\x0fnext_page_token\x18\x04 \x01(\t\x12\x18\n\x0bunreachable\x18\x05 \x03(\tB\x03\xe0\x41\x06\"\xf2\x01\n\x11\x41ggregateFleetRow\x12@\n\tdimension\x18\x01 \x03(\x0b\x32-.google.cloud.databasecenter.v1beta.Dimension\x12\x1d\n\x15resource_groups_count\x18\x02 \x01(\x05\x12\x17\n\x0fresources_count\x18\x03 \x01(\x05\x12Q\n\rdelta_details\x18\x04 \x01(\x0b\x32\x30.google.cloud.databasecenter.v1beta.DeltaDetailsB\x03\xe0\x41\x01H\x00\x88\x01\x01\x42\x10\n\x0e_delta_details\"\xa1\x06\n\tDimension\x12\x13\n\tcontainer\x18\x02 \x01(\tH\x00\x12G\n\x0cproduct_type\x18\x03 \x01(\x0e\x32/.google.cloud.databasecenter.v1beta.ProductTypeH\x00\x12\x44\n\x0eproduct_engine\x18\x04 \x01(\x0e\x32*.google.cloud.databasecenter.v1beta.EngineH\x00\x12\x19\n\x0fproduct_version\x18\x05 \x01(\tH\x00\x12\x12\n\x08location\x18\x06 \x01(\tH\x00\x12\x17\n\rresource_type\x18\x07 \x01(\tH\x00\x12P\n\x11sub_resource_type\x18\x08 \x01(\x0e\x32\x33.google.cloud.databasecenter.v1beta.SubResourceTypeH\x00\x12Q\n\x11resource_category\x18\t \x01(\x0e\x32\x34.google.cloud.databasecenter.v1beta.ResourceCategoryH\x00\x12M\n\x0fmanagement_type\x18\n \x01(\x0e\x32\x32.google.cloud.databasecenter.v1beta.ManagementTypeH\x00\x12>\n\x07\x65\x64ition\x18\x0b \x01(\x0e\x32+.google.cloud.databasecenter.v1beta.EditionH\x00\x12\x11\n\x07tag_key\x18\x0c \x01(\tH\x00\x12\x13\n\ttag_value\x18\r \x01(\tH\x00\x12\x14\n\ntag_source\x18\x0e \x01(\tH\x00\x12\x17\n\rtag_inherited\x18\x0f \x01(\x08H\x00\x12\x13\n\tlabel_key\x18\x10 \x01(\tH\x00\x12\x15\n\x0blabel_value\x18\x11 \x01(\tH\x00\x12\x16\n\x0clabel_source\x18\x12 \x01(\tH\x00\x12\"\n\x18has_maintenance_schedule\x18\x13 \x01(\x08H\x00\x12(\n\x1ehas_deny_maintenance_schedules\x18\x14 \x01(\x08H\x00\x42\x0b\n\tdimension\"D\n\x0e\x42\x61\x63kupDRConfig\x12\x1d\n\x10\x62\x61\x63kupdr_managed\x18\x01 \x01(\x08H\x00\x88\x01\x01\x42\x13\n\x11_backupdr_managed\"D\n\x03Tag\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\x12\x0e\n\x06source\x18\x03 \x01(\t\x12\x11\n\tinherited\x18\x04 \x01(\x08\"\x90\x01\n\x0fResourceDetails\x12\x1a\n\x12\x66ull_resource_name\x18\x01 \x01(\t\x12\x11\n\tcontainer\x18\x02 \x01(\t\x12<\n\x07product\x18\x03 \x01(\x0b\x32+.google.cloud.databasecenter.v1beta.Product\x12\x10\n\x08location\x18\x04 \x01(\t\"\xb2\x01\n\x0c\x44\x65ltaDetails\x12P\n\x13increased_resources\x18\x01 \x03(\x0b\x32\x33.google.cloud.databasecenter.v1beta.ResourceDetails\x12P\n\x13\x64\x65\x63reased_resources\x18\x02 \x03(\x0b\x32\x33.google.cloud.databasecenter.v1beta.ResourceDetails*^\n\x10ResourceCategory\x12!\n\x1dRESOURCE_CATEGORY_UNSPECIFIED\x10\x00\x12\x0c\n\x08INSTANCE\x10\x01\x12\x0b\n\x07\x43LUSTER\x10\x02\x12\x0c\n\x08\x44\x41TABASE\x10\x03*m\n\x07\x45\x64ition\x12\x17\n\x13\x45\x44ITION_UNSPECIFIED\x10\x00\x12\x16\n\x12\x45\x44ITION_ENTERPRISE\x10\x01\x12\x1b\n\x17\x45\x44ITION_ENTERPRISE_PLUS\x10\x02\x12\x14\n\x10\x45\x44ITION_STANDARD\x10\x03*\xdd\x01\n\x0fSubResourceType\x12!\n\x1dSUB_RESOURCE_TYPE_UNSPECIFIED\x10\x00\x12\x1d\n\x19SUB_RESOURCE_TYPE_PRIMARY\x10\x01\x12\x1f\n\x1bSUB_RESOURCE_TYPE_SECONDARY\x10\x02\x12\"\n\x1eSUB_RESOURCE_TYPE_READ_REPLICA\x10\x03\x12&\n\"SUB_RESOURCE_TYPE_EXTERNAL_PRIMARY\x10\x05\x12\x1b\n\x17SUB_RESOURCE_TYPE_OTHER\x10\x04*t\n\x0eManagementType\x12\x1f\n\x1bMANAGEMENT_TYPE_UNSPECIFIED\x10\x00\x12\x1f\n\x1bMANAGEMENT_TYPE_GCP_MANAGED\x10\x01\x12 \n\x1cMANAGEMENT_TYPE_SELF_MANAGED\x10\x02\x32\xd5\x06\n\x0e\x44\x61tabaseCenter\x12\xa3\x01\n\rQueryProducts\x12\x38.google.cloud.databasecenter.v1beta.QueryProductsRequest\x1a\x39.google.cloud.databasecenter.v1beta.QueryProductsResponse\"\x1d\x82\xd3\xe4\x93\x02\x17\x12\x15/v1beta:queryProducts\x12\xa7\x01\n\x0e\x41ggregateFleet\x12\x39.google.cloud.databasecenter.v1beta.AggregateFleetRequest\x1a:.google.cloud.databasecenter.v1beta.AggregateFleetResponse\"\x1e\x82\xd3\xe4\x93\x02\x18\x12\x16/v1beta:aggregateFleet\x12\xde\x01\n\x1bQueryDatabaseResourceGroups\x12\x46.google.cloud.databasecenter.v1beta.QueryDatabaseResourceGroupsRequest\x1aG.google.cloud.databasecenter.v1beta.QueryDatabaseResourceGroupsResponse\".\x82\xd3\xe4\x93\x02(\"#/v1beta:queryDatabaseResourceGroups:\x01*\x12\xbe\x01\n\x13\x41ggregateIssueStats\x12>.google.cloud.databasecenter.v1beta.AggregateIssueStatsRequest\x1a?.google.cloud.databasecenter.v1beta.AggregateIssueStatsResponse\"&\x82\xd3\xe4\x93\x02 \"\x1b/v1beta:aggregateIssueStats:\x01*\x1aQ\xca\x41\x1d\x64\x61tabasecenter.googleapis.com\xd2\x41.https://www.googleapis.com/auth/cloud-platformB\xfa\x01\n&com.google.cloud.databasecenter.v1betaB\x0cServiceProtoP\x01ZNcloud.google.com/go/databasecenter/apiv1beta/databasecenterpb;databasecenterpb\xaa\x02\"Google.Cloud.DatabaseCenter.V1Beta\xca\x02\"Google\\Cloud\\DatabaseCenter\\V1beta\xea\x02%Google::Cloud::DatabaseCenter::V1betab\x06proto3" pool = Google::Protobuf::DescriptorPool.generated_pool @@ -57,6 +57,10 @@ module V1beta QueryDatabaseResourceGroupsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.databasecenter.v1beta.QueryDatabaseResourceGroupsResponse").msgclass DatabaseResourceGroup = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.databasecenter.v1beta.DatabaseResourceGroup").msgclass DatabaseResource = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.databasecenter.v1beta.DatabaseResource").msgclass + AggregateIssueStatsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.databasecenter.v1beta.AggregateIssueStatsRequest").msgclass + AggregateIssueStatsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.databasecenter.v1beta.AggregateIssueStatsResponse").msgclass + IssueGroupStats = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.databasecenter.v1beta.IssueGroupStats").msgclass + IssueStats = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.databasecenter.v1beta.IssueStats").msgclass Label = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.databasecenter.v1beta.Label").msgclass AggregateFleetRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.databasecenter.v1beta.AggregateFleetRequest").msgclass AggregateFleetResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.databasecenter.v1beta.AggregateFleetResponse").msgclass diff --git a/google-cloud-database_center-v1beta/lib/google/cloud/databasecenter/v1beta/service_services_pb.rb b/google-cloud-database_center-v1beta/lib/google/cloud/databasecenter/v1beta/service_services_pb.rb index ecedc2409289..de7b8e7db0bd 100644 --- a/google-cloud-database_center-v1beta/lib/google/cloud/databasecenter/v1beta/service_services_pb.rb +++ b/google-cloud-database_center-v1beta/lib/google/cloud/databasecenter/v1beta/service_services_pb.rb @@ -41,6 +41,8 @@ class Service rpc :AggregateFleet, ::Google::Cloud::DatabaseCenter::V1beta::AggregateFleetRequest, ::Google::Cloud::DatabaseCenter::V1beta::AggregateFleetResponse # QueryDatabaseResourceGroups returns paginated results of database groups. rpc :QueryDatabaseResourceGroups, ::Google::Cloud::DatabaseCenter::V1beta::QueryDatabaseResourceGroupsRequest, ::Google::Cloud::DatabaseCenter::V1beta::QueryDatabaseResourceGroupsResponse + # AggregateIssueStats provides database resource issues statistics. + rpc :AggregateIssueStats, ::Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsRequest, ::Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsResponse end Stub = Service.rpc_stub_class diff --git a/google-cloud-database_center-v1beta/proto_docs/google/cloud/databasecenter/v1beta/machine_config.rb b/google-cloud-database_center-v1beta/proto_docs/google/cloud/databasecenter/v1beta/machine_config.rb index 0ba6b59b8dbd..0c9e45906981 100644 --- a/google-cloud-database_center-v1beta/proto_docs/google/cloud/databasecenter/v1beta/machine_config.rb +++ b/google-cloud-database_center-v1beta/proto_docs/google/cloud/databasecenter/v1beta/machine_config.rb @@ -23,7 +23,6 @@ module DatabaseCenter module V1beta # MachineConfig describes the configuration of a machine specific to a Database # Resource. - # NextID: 5 # @!attribute [rw] memory_size_bytes # @return [::Integer] # Memory size in bytes. diff --git a/google-cloud-database_center-v1beta/proto_docs/google/cloud/databasecenter/v1beta/service.rb b/google-cloud-database_center-v1beta/proto_docs/google/cloud/databasecenter/v1beta/service.rb index f481e7cb200c..f8b08209ec0e 100644 --- a/google-cloud-database_center-v1beta/proto_docs/google/cloud/databasecenter/v1beta/service.rb +++ b/google-cloud-database_center-v1beta/proto_docs/google/cloud/databasecenter/v1beta/service.rb @@ -309,6 +309,123 @@ class DatabaseResource extend ::Google::Protobuf::MessageExts::ClassMethods end + # AggregateIssueStatsRequest represents the input to the AggregateIssueStats + # method. + # @!attribute [rw] parent + # @return [::String] + # Required. Parent can be a project, a folder, or an organization. The search + # is limited to the resources within the `scope`. + # + # The allowed values are: + # + # * projects/\\{PROJECT_ID} (e.g., "projects/foo-bar") + # * projects/\\{PROJECT_NUMBER} (e.g., "projects/12345678") + # * folders/\\{FOLDER_NUMBER} (e.g., "folders/1234567") + # * organizations/\\{ORGANIZATION_NUMBER} (e.g., "organizations/123456") + # @!attribute [rw] filter + # @return [::String] + # Optional. The expression to filter resources. + # + # Supported fields are: `full_resource_name`, `resource_type`, `container`, + # `product.type`, `product.engine`, `product.version`, `location`, + # `labels`, `issues`, fields of availability_info, + # data_protection_info,'resource_name', etc. + # + # The expression is a list of zero or more restrictions combined via logical + # operators `AND` and `OR`. When `AND` and `OR` are both used in the + # expression, parentheses must be appropriately used to group the + # combinations. + # + # Example: location="us-east1" + # Example: container="projects/123" OR container="projects/456" + # Example: (container="projects/123" OR + # container="projects/456") AND location="us-east1" + # @!attribute [rw] signal_type_groups + # @return [::Array<::Google::Cloud::DatabaseCenter::V1beta::SignalTypeGroup>] + # Optional. Lists of signal types that are issues. + # @!attribute [rw] baseline_date + # @return [::Google::Type::Date] + # Optional. The baseline date w.r.t. which the delta counts are calculated. + # If not set, delta counts are not included in the response and the response + # indicates the current state of the fleet. + class AggregateIssueStatsRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # The response message containing one of more group of relevant health issues + # for database resources. + # @!attribute [rw] issue_group_stats + # @return [::Array<::Google::Cloud::DatabaseCenter::V1beta::IssueGroupStats>] + # List of issue group stats where each group contains stats for resources + # having a particular combination of relevant issues. + # @!attribute [rw] total_resources_count + # @return [::Integer] + # Total count of the resources filtered in based on the user given filter. + # @!attribute [rw] total_resource_groups_count + # @return [::Integer] + # Total count of the resource filtered in based on the user given filter. + # @!attribute [rw] unreachable + # @return [::Array<::String>] + # Unordered list. List of unreachable regions from where data could not be + # retrieved. + class AggregateIssueStatsResponse + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # IssueGroupStats refers to stats for a particulare combination of relevant + # health issues of database resources. + # @!attribute [rw] display_name + # @return [::String] + # Database resource level health card name. This will corresponds to one of + # the requested input group names. + # @!attribute [rw] resource_groups_count + # @return [::Integer] + # Total count of the groups of resources returned by the filter that + # also have one or more resources for which any of the specified issues + # are applicable. + # @!attribute [rw] resources_count + # @return [::Integer] + # Total count of resources returned by the filter for which any of the + # specified issues are applicable. + # @!attribute [rw] healthy_resource_groups_count + # @return [::Integer] + # The number of resource groups from the total groups as defined above + # that are healthy with respect to all of the specified issues. + # @!attribute [rw] healthy_resources_count + # @return [::Integer] + # The number of resources from the total defined above in field + # total_resources_count that are healthy with respect to all of the specified + # issues. + # @!attribute [rw] issue_stats + # @return [::Array<::Google::Cloud::DatabaseCenter::V1beta::IssueStats>] + # List of issues stats containing count of resources having particular issue + # category. + class IssueGroupStats + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # IssueStats holds stats for a particular signal category. + # @!attribute [rw] signal_type + # @return [::Google::Cloud::DatabaseCenter::V1beta::SignalType] + # Type of signal which is an issue. + # @!attribute [rw] resource_count + # @return [::Integer] + # Number of resources having issues of a given type. + # @!attribute [rw] delta_details + # @return [::Google::Cloud::DatabaseCenter::V1beta::DeltaDetails] + # Optional. Delta counts and details of resources for which issue was raised + # or fixed. + # @!attribute [rw] issue_severity + # @return [::Google::Cloud::DatabaseCenter::V1beta::IssueSeverity] + # Severity of the issue. + class IssueStats + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # Label is a key value pair applied to a resource. # @!attribute [rw] key # @return [::String] diff --git a/google-cloud-database_center-v1beta/snippets/database_center/aggregate_issue_stats.rb b/google-cloud-database_center-v1beta/snippets/database_center/aggregate_issue_stats.rb new file mode 100644 index 000000000000..318b81e5de66 --- /dev/null +++ b/google-cloud-database_center-v1beta/snippets/database_center/aggregate_issue_stats.rb @@ -0,0 +1,47 @@ +# frozen_string_literal: true + +# Copyright 2026 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 +# +# https://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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +# [START databasecenter_v1beta_generated_DatabaseCenter_AggregateIssueStats_sync] +require "google/cloud/database_center/v1beta" + +## +# Snippet for the aggregate_issue_stats call in the DatabaseCenter service +# +# This snippet has been automatically generated and should be regarded as a code +# template only. It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in https://cloud.google.com/ruby/docs/reference. +# +# This is an auto-generated example demonstrating basic usage of +# Google::Cloud::DatabaseCenter::V1beta::DatabaseCenter::Client#aggregate_issue_stats. +# +def aggregate_issue_stats + # Create a client object. The client can be reused for multiple calls. + client = Google::Cloud::DatabaseCenter::V1beta::DatabaseCenter::Client.new + + # Create a request. To set request fields, pass in keyword arguments. + request = Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsRequest.new + + # Call the aggregate_issue_stats method. + result = client.aggregate_issue_stats request + + # The returned object is of type Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsResponse. + p result +end +# [END databasecenter_v1beta_generated_DatabaseCenter_AggregateIssueStats_sync] diff --git a/google-cloud-database_center-v1beta/snippets/snippet_metadata_google.cloud.databasecenter.v1beta.json b/google-cloud-database_center-v1beta/snippets/snippet_metadata_google.cloud.databasecenter.v1beta.json index dac60cc0ee1a..8946b4150683 100644 --- a/google-cloud-database_center-v1beta/snippets/snippet_metadata_google.cloud.databasecenter.v1beta.json +++ b/google-cloud-database_center-v1beta/snippets/snippet_metadata_google.cloud.databasecenter.v1beta.json @@ -130,6 +130,46 @@ "type": "FULL" } ] + }, + { + "region_tag": "databasecenter_v1beta_generated_DatabaseCenter_AggregateIssueStats_sync", + "title": "Snippet for the aggregate_issue_stats call in the DatabaseCenter service", + "description": "This is an auto-generated example demonstrating basic usage of Google::Cloud::DatabaseCenter::V1beta::DatabaseCenter::Client#aggregate_issue_stats.", + "file": "database_center/aggregate_issue_stats.rb", + "language": "RUBY", + "client_method": { + "short_name": "aggregate_issue_stats", + "full_name": "::Google::Cloud::DatabaseCenter::V1beta::DatabaseCenter::Client#aggregate_issue_stats", + "async": false, + "parameters": [ + { + "type": "::Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsRequest", + "name": "request" + } + ], + "result_type": "::Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsResponse", + "client": { + "short_name": "DatabaseCenter::Client", + "full_name": "::Google::Cloud::DatabaseCenter::V1beta::DatabaseCenter::Client" + }, + "method": { + "short_name": "AggregateIssueStats", + "full_name": "google.cloud.databasecenter.v1beta.DatabaseCenter.AggregateIssueStats", + "service": { + "short_name": "DatabaseCenter", + "full_name": "google.cloud.databasecenter.v1beta.DatabaseCenter" + } + } + }, + "canonical": true, + "origin": "API_DEFINITION", + "segments": [ + { + "start": 20, + "end": 46, + "type": "FULL" + } + ] } ] } \ No newline at end of file diff --git a/google-cloud-database_center-v1beta/test/google/cloud/database_center/v1beta/database_center_rest_test.rb b/google-cloud-database_center-v1beta/test/google/cloud/database_center/v1beta/database_center_rest_test.rb index 0f47dd70d5b3..c0acb538581c 100644 --- a/google-cloud-database_center-v1beta/test/google/cloud/database_center/v1beta/database_center_rest_test.rb +++ b/google-cloud-database_center-v1beta/test/google/cloud/database_center/v1beta/database_center_rest_test.rb @@ -254,6 +254,63 @@ def test_query_database_resource_groups end end + def test_aggregate_issue_stats + # Create test objects. + client_result = ::Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsResponse.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + parent = "hello world" + filter = "hello world" + signal_type_groups = [{}] + baseline_date = {} + + aggregate_issue_stats_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::DatabaseCenter::V1beta::DatabaseCenter::Rest::ServiceStub.stub :transcode_aggregate_issue_stats_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, aggregate_issue_stats_client_stub do + # Create client + client = ::Google::Cloud::DatabaseCenter::V1beta::DatabaseCenter::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.aggregate_issue_stats({ parent: parent, filter: filter, signal_type_groups: signal_type_groups, baseline_date: baseline_date }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.aggregate_issue_stats parent: parent, filter: filter, signal_type_groups: signal_type_groups, baseline_date: baseline_date do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.aggregate_issue_stats ::Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsRequest.new(parent: parent, filter: filter, signal_type_groups: signal_type_groups, baseline_date: baseline_date) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.aggregate_issue_stats({ parent: parent, filter: filter, signal_type_groups: signal_type_groups, baseline_date: baseline_date }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.aggregate_issue_stats(::Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsRequest.new(parent: parent, filter: filter, signal_type_groups: signal_type_groups, baseline_date: baseline_date), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, aggregate_issue_stats_client_stub.call_count + end + end + end + def test_configure credentials_token = :dummy_value diff --git a/google-cloud-database_center-v1beta/test/google/cloud/database_center/v1beta/database_center_test.rb b/google-cloud-database_center-v1beta/test/google/cloud/database_center/v1beta/database_center_test.rb index ddf886418957..b407f275f721 100644 --- a/google-cloud-database_center-v1beta/test/google/cloud/database_center/v1beta/database_center_test.rb +++ b/google-cloud-database_center-v1beta/test/google/cloud/database_center/v1beta/database_center_test.rb @@ -281,6 +281,71 @@ def test_query_database_resource_groups end end + def test_aggregate_issue_stats + # Create GRPC objects. + grpc_response = ::Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsResponse.new + grpc_operation = GRPC::ActiveCall::Operation.new nil + grpc_channel = GRPC::Core::Channel.new "localhost:8888", nil, :this_channel_is_insecure + grpc_options = {} + + # Create request parameters for a unary method. + parent = "hello world" + filter = "hello world" + signal_type_groups = [{}] + baseline_date = {} + + aggregate_issue_stats_client_stub = ClientStub.new grpc_response, grpc_operation do |name, request, options:| + assert_equal :aggregate_issue_stats, name + assert_kind_of ::Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsRequest, request + assert_equal "hello world", request["parent"] + assert_equal "hello world", request["filter"] + assert_kind_of ::Google::Cloud::DatabaseCenter::V1beta::SignalTypeGroup, request["signal_type_groups"].first + assert_equal Gapic::Protobuf.coerce({}, to: ::Google::Type::Date), request["baseline_date"] + assert request.has_baseline_date? + refute_nil options + end + + Gapic::ServiceStub.stub :new, aggregate_issue_stats_client_stub do + # Create client + client = ::Google::Cloud::DatabaseCenter::V1beta::DatabaseCenter::Client.new do |config| + config.credentials = grpc_channel + end + + # Use hash object + client.aggregate_issue_stats({ parent: parent, filter: filter, signal_type_groups: signal_type_groups, baseline_date: baseline_date }) do |response, operation| + assert_equal grpc_response, response + assert_equal grpc_operation, operation + end + + # Use named arguments + client.aggregate_issue_stats parent: parent, filter: filter, signal_type_groups: signal_type_groups, baseline_date: baseline_date do |response, operation| + assert_equal grpc_response, response + assert_equal grpc_operation, operation + end + + # Use protobuf object + client.aggregate_issue_stats ::Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsRequest.new(parent: parent, filter: filter, signal_type_groups: signal_type_groups, baseline_date: baseline_date) do |response, operation| + assert_equal grpc_response, response + assert_equal grpc_operation, operation + end + + # Use hash object with options + client.aggregate_issue_stats({ parent: parent, filter: filter, signal_type_groups: signal_type_groups, baseline_date: baseline_date }, grpc_options) do |response, operation| + assert_equal grpc_response, response + assert_equal grpc_operation, operation + end + + # Use protobuf object with options + client.aggregate_issue_stats(::Google::Cloud::DatabaseCenter::V1beta::AggregateIssueStatsRequest.new(parent: parent, filter: filter, signal_type_groups: signal_type_groups, baseline_date: baseline_date), grpc_options) do |response, operation| + assert_equal grpc_response, response + assert_equal grpc_operation, operation + end + + # Verify method calls + assert_equal 5, aggregate_issue_stats_client_stub.call_rpc_count + end + end + def test_configure grpc_channel = GRPC::Core::Channel.new "localhost:8888", nil, :this_channel_is_insecure