azure_mgmt_cosmosdb 0.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/LICENSE.txt +21 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb.rb +140 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/collection.rb +371 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/collection_partition.rb +267 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/collection_partition_region.rb +155 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/collection_region.rb +155 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/cosmos_db.rb +180 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/database.rb +359 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/database_account_region.rb +147 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/database_accounts.rb +6805 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/capability.rb +48 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/cassandra_keyspace.rb +97 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/cassandra_keyspace_create_update_parameters.rb +69 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/cassandra_keyspace_list_result.rb +58 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/cassandra_keyspace_resource.rb +46 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/cassandra_partition_key.rb +46 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/cassandra_schema.rb +95 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/cassandra_table.rb +120 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/cassandra_table_create_update_parameters.rb +69 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/cassandra_table_list_result.rb +58 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/cassandra_table_resource.rb +69 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/cluster_key.rb +58 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/column.rb +57 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/conflict_resolution_mode.rb +16 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/conflict_resolution_policy.rb +73 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/consistency_policy.rb +86 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/container_partition_key.rb +70 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/data_type.rb +20 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/database_account.rb +313 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/database_account_connection_string.rb +59 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/database_account_create_update_parameters.rb +243 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/database_account_kind.rb +17 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/database_account_list_connection_strings_result.rb +57 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/database_account_list_keys_result.rb +83 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/database_account_list_read_only_keys_result.rb +59 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/database_account_offer_type.rb +15 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/database_account_patch_parameters.rb +75 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/database_account_regenerate_key_parameters.rb +47 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/database_accounts_list_result.rb +58 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/default_consistency_level.rb +19 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/error_response.rb +57 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/excluded_path.rb +48 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/extended_resource_properties.rb +71 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/failover_policies.rb +55 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/failover_policy.rb +79 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/gremlin_database.rb +132 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/gremlin_database_create_update_parameters.rb +69 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/gremlin_database_list_result.rb +58 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/gremlin_database_resource.rb +46 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/gremlin_graph.rb +197 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/gremlin_graph_create_update_parameters.rb +69 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/gremlin_graph_list_result.rb +57 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/gremlin_graph_resource.rb +111 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/included_path.rb +67 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/index_kind.rb +17 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/indexes.rb +73 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/indexing_mode.rb +17 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/indexing_policy.rb +99 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/key_kind.rb +18 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/location.rb +102 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/metric.rb +120 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/metric_availability.rb +60 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/metric_definition.rb +109 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/metric_definitions_list_result.rb +57 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/metric_list_result.rb +56 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/metric_name.rb +59 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/metric_value.rb +107 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/mongo_dbcollection.rb +137 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/mongo_dbcollection_create_update_parameters.rb +69 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/mongo_dbcollection_list_result.rb +58 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/mongo_dbcollection_resource.rb +86 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/mongo_dbdatabase.rb +97 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/mongo_dbdatabase_create_update_parameters.rb +69 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/mongo_dbdatabase_list_result.rb +58 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/mongo_dbdatabase_resource.rb +46 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/mongo_index.rb +60 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/mongo_index_keys.rb +55 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/mongo_index_options.rb +57 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/operation.rb +58 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/operation_display.rb +80 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/operation_list_result.rb +101 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/partition_kind.rb +16 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/partition_metric.rb +124 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/partition_metric_list_result.rb +57 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/partition_usage.rb +105 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/partition_usages_result.rb +57 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/percentile_metric.rb +120 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/percentile_metric_list_result.rb +57 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/percentile_metric_value.rb +173 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/primary_aggregation_type.rb +20 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/region_for_online_offline.rb +47 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/resource.rb +112 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/sql_container.rb +197 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/sql_container_create_update_parameters.rb +68 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/sql_container_list_result.rb +57 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/sql_container_resource.rb +111 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/sql_database.rb +156 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/sql_database_create_update_parameters.rb +69 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/sql_database_list_result.rb +58 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/sql_database_resource.rb +46 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/table.rb +97 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/table_create_update_parameters.rb +68 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/table_list_result.rb +57 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/table_resource.rb +46 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/unique_key.rb +56 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/unique_key_policy.rb +58 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/unit_type.rb +21 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/usage.rb +97 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/usages_result.rb +57 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/models/virtual_network_rule.rb +59 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/module_definition.rb +9 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/operations.rb +219 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/partition_key_range_id.rb +155 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/partition_key_range_id_region.rb +162 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/percentile.rb +140 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/percentile_source_target.rb +157 -0
- data/lib/2015-04-08/generated/azure_mgmt_cosmosdb/percentile_target.rb +147 -0
- data/lib/azure_mgmt_cosmosdb.rb +6 -0
- data/lib/module_definition.rb +7 -0
- data/lib/profiles/latest/cosmosdb_latest_profile_client.rb +40 -0
- data/lib/profiles/latest/cosmosdb_module_definition.rb +8 -0
- data/lib/profiles/latest/modules/cosmosdb_profile_module.rb +485 -0
- data/lib/version.rb +7 -0
- metadata +240 -0
|
@@ -0,0 +1,267 @@
|
|
|
1
|
+
# encoding: utf-8
|
|
2
|
+
# Code generated by Microsoft (R) AutoRest Code Generator.
|
|
3
|
+
# Changes may cause incorrect behavior and will be lost if the code is
|
|
4
|
+
# regenerated.
|
|
5
|
+
|
|
6
|
+
module Azure::Cosmosdb::Mgmt::V2015_04_08
|
|
7
|
+
#
|
|
8
|
+
# Azure Cosmos DB Database Service Resource Provider REST API
|
|
9
|
+
#
|
|
10
|
+
class CollectionPartition
|
|
11
|
+
include MsRestAzure
|
|
12
|
+
|
|
13
|
+
#
|
|
14
|
+
# Creates and initializes a new instance of the CollectionPartition class.
|
|
15
|
+
# @param client service class for accessing basic functionality.
|
|
16
|
+
#
|
|
17
|
+
def initialize(client)
|
|
18
|
+
@client = client
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
# @return [CosmosDB] reference to the CosmosDB
|
|
22
|
+
attr_reader :client
|
|
23
|
+
|
|
24
|
+
#
|
|
25
|
+
# Retrieves the metrics determined by the given filter for the given
|
|
26
|
+
# collection, split by partition.
|
|
27
|
+
#
|
|
28
|
+
# @param resource_group_name [String] Name of an Azure resource group.
|
|
29
|
+
# @param account_name [String] Cosmos DB database account name.
|
|
30
|
+
# @param database_rid [String] Cosmos DB database rid.
|
|
31
|
+
# @param collection_rid [String] Cosmos DB collection rid.
|
|
32
|
+
# @param filter [String] An OData filter expression that describes a subset of
|
|
33
|
+
# metrics to return. The parameters that can be filtered are name.value (name
|
|
34
|
+
# of the metric, can have an or of multiple names), startTime, endTime, and
|
|
35
|
+
# timeGrain. The supported operator is eq.
|
|
36
|
+
# @param custom_headers [Hash{String => String}] A hash of custom headers that
|
|
37
|
+
# will be added to the HTTP request.
|
|
38
|
+
#
|
|
39
|
+
# @return [PartitionMetricListResult] operation results.
|
|
40
|
+
#
|
|
41
|
+
def list_metrics(resource_group_name, account_name, database_rid, collection_rid, filter, custom_headers:nil)
|
|
42
|
+
response = list_metrics_async(resource_group_name, account_name, database_rid, collection_rid, filter, custom_headers:custom_headers).value!
|
|
43
|
+
response.body unless response.nil?
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
#
|
|
47
|
+
# Retrieves the metrics determined by the given filter for the given
|
|
48
|
+
# collection, split by partition.
|
|
49
|
+
#
|
|
50
|
+
# @param resource_group_name [String] Name of an Azure resource group.
|
|
51
|
+
# @param account_name [String] Cosmos DB database account name.
|
|
52
|
+
# @param database_rid [String] Cosmos DB database rid.
|
|
53
|
+
# @param collection_rid [String] Cosmos DB collection rid.
|
|
54
|
+
# @param filter [String] An OData filter expression that describes a subset of
|
|
55
|
+
# metrics to return. The parameters that can be filtered are name.value (name
|
|
56
|
+
# of the metric, can have an or of multiple names), startTime, endTime, and
|
|
57
|
+
# timeGrain. The supported operator is eq.
|
|
58
|
+
# @param custom_headers [Hash{String => String}] A hash of custom headers that
|
|
59
|
+
# will be added to the HTTP request.
|
|
60
|
+
#
|
|
61
|
+
# @return [MsRestAzure::AzureOperationResponse] HTTP response information.
|
|
62
|
+
#
|
|
63
|
+
def list_metrics_with_http_info(resource_group_name, account_name, database_rid, collection_rid, filter, custom_headers:nil)
|
|
64
|
+
list_metrics_async(resource_group_name, account_name, database_rid, collection_rid, filter, custom_headers:custom_headers).value!
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
#
|
|
68
|
+
# Retrieves the metrics determined by the given filter for the given
|
|
69
|
+
# collection, split by partition.
|
|
70
|
+
#
|
|
71
|
+
# @param resource_group_name [String] Name of an Azure resource group.
|
|
72
|
+
# @param account_name [String] Cosmos DB database account name.
|
|
73
|
+
# @param database_rid [String] Cosmos DB database rid.
|
|
74
|
+
# @param collection_rid [String] Cosmos DB collection rid.
|
|
75
|
+
# @param filter [String] An OData filter expression that describes a subset of
|
|
76
|
+
# metrics to return. The parameters that can be filtered are name.value (name
|
|
77
|
+
# of the metric, can have an or of multiple names), startTime, endTime, and
|
|
78
|
+
# timeGrain. The supported operator is eq.
|
|
79
|
+
# @param [Hash{String => String}] A hash of custom headers that will be added
|
|
80
|
+
# to the HTTP request.
|
|
81
|
+
#
|
|
82
|
+
# @return [Concurrent::Promise] Promise object which holds the HTTP response.
|
|
83
|
+
#
|
|
84
|
+
def list_metrics_async(resource_group_name, account_name, database_rid, collection_rid, filter, custom_headers:nil)
|
|
85
|
+
fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
|
|
86
|
+
fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
|
|
87
|
+
fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'MaxLength': '90'" if !resource_group_name.nil? && resource_group_name.length > 90
|
|
88
|
+
fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'MinLength': '1'" if !resource_group_name.nil? && resource_group_name.length < 1
|
|
89
|
+
fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'Pattern': '^[-\w\._\(\)]+$'" if !resource_group_name.nil? && resource_group_name.match(Regexp.new('^^[-\w\._\(\)]+$$')).nil?
|
|
90
|
+
fail ArgumentError, 'account_name is nil' if account_name.nil?
|
|
91
|
+
fail ArgumentError, "'account_name' should satisfy the constraint - 'MaxLength': '50'" if !account_name.nil? && account_name.length > 50
|
|
92
|
+
fail ArgumentError, "'account_name' should satisfy the constraint - 'MinLength': '3'" if !account_name.nil? && account_name.length < 3
|
|
93
|
+
fail ArgumentError, 'database_rid is nil' if database_rid.nil?
|
|
94
|
+
fail ArgumentError, 'collection_rid is nil' if collection_rid.nil?
|
|
95
|
+
fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
|
|
96
|
+
fail ArgumentError, 'filter is nil' if filter.nil?
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
request_headers = {}
|
|
100
|
+
request_headers['Content-Type'] = 'application/json; charset=utf-8'
|
|
101
|
+
|
|
102
|
+
# Set Headers
|
|
103
|
+
request_headers['x-ms-client-request-id'] = SecureRandom.uuid
|
|
104
|
+
request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
|
|
105
|
+
path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/partitions/metrics'
|
|
106
|
+
|
|
107
|
+
request_url = @base_url || @client.base_url
|
|
108
|
+
|
|
109
|
+
options = {
|
|
110
|
+
middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
|
|
111
|
+
path_params: {'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name,'accountName' => account_name,'databaseRid' => database_rid,'collectionRid' => collection_rid},
|
|
112
|
+
query_params: {'api-version' => @client.api_version,'$filter' => filter},
|
|
113
|
+
headers: request_headers.merge(custom_headers || {}),
|
|
114
|
+
base_url: request_url
|
|
115
|
+
}
|
|
116
|
+
promise = @client.make_request_async(:get, path_template, options)
|
|
117
|
+
|
|
118
|
+
promise = promise.then do |result|
|
|
119
|
+
http_response = result.response
|
|
120
|
+
status_code = http_response.status
|
|
121
|
+
response_content = http_response.body
|
|
122
|
+
unless status_code == 200
|
|
123
|
+
error_model = JSON.load(response_content)
|
|
124
|
+
fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
|
|
125
|
+
end
|
|
126
|
+
|
|
127
|
+
result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
|
|
128
|
+
result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
|
|
129
|
+
result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
|
|
130
|
+
# Deserialize Response
|
|
131
|
+
if status_code == 200
|
|
132
|
+
begin
|
|
133
|
+
parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
|
|
134
|
+
result_mapper = Azure::Cosmosdb::Mgmt::V2015_04_08::Models::PartitionMetricListResult.mapper()
|
|
135
|
+
result.body = @client.deserialize(result_mapper, parsed_response)
|
|
136
|
+
rescue Exception => e
|
|
137
|
+
fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
|
|
138
|
+
end
|
|
139
|
+
end
|
|
140
|
+
|
|
141
|
+
result
|
|
142
|
+
end
|
|
143
|
+
|
|
144
|
+
promise.execute
|
|
145
|
+
end
|
|
146
|
+
|
|
147
|
+
#
|
|
148
|
+
# Retrieves the usages (most recent storage data) for the given collection,
|
|
149
|
+
# split by partition.
|
|
150
|
+
#
|
|
151
|
+
# @param resource_group_name [String] Name of an Azure resource group.
|
|
152
|
+
# @param account_name [String] Cosmos DB database account name.
|
|
153
|
+
# @param database_rid [String] Cosmos DB database rid.
|
|
154
|
+
# @param collection_rid [String] Cosmos DB collection rid.
|
|
155
|
+
# @param filter [String] An OData filter expression that describes a subset of
|
|
156
|
+
# usages to return. The supported parameter is name.value (name of the metric,
|
|
157
|
+
# can have an or of multiple names).
|
|
158
|
+
# @param custom_headers [Hash{String => String}] A hash of custom headers that
|
|
159
|
+
# will be added to the HTTP request.
|
|
160
|
+
#
|
|
161
|
+
# @return [PartitionUsagesResult] operation results.
|
|
162
|
+
#
|
|
163
|
+
def list_usages(resource_group_name, account_name, database_rid, collection_rid, filter:nil, custom_headers:nil)
|
|
164
|
+
response = list_usages_async(resource_group_name, account_name, database_rid, collection_rid, filter:filter, custom_headers:custom_headers).value!
|
|
165
|
+
response.body unless response.nil?
|
|
166
|
+
end
|
|
167
|
+
|
|
168
|
+
#
|
|
169
|
+
# Retrieves the usages (most recent storage data) for the given collection,
|
|
170
|
+
# split by partition.
|
|
171
|
+
#
|
|
172
|
+
# @param resource_group_name [String] Name of an Azure resource group.
|
|
173
|
+
# @param account_name [String] Cosmos DB database account name.
|
|
174
|
+
# @param database_rid [String] Cosmos DB database rid.
|
|
175
|
+
# @param collection_rid [String] Cosmos DB collection rid.
|
|
176
|
+
# @param filter [String] An OData filter expression that describes a subset of
|
|
177
|
+
# usages to return. The supported parameter is name.value (name of the metric,
|
|
178
|
+
# can have an or of multiple names).
|
|
179
|
+
# @param custom_headers [Hash{String => String}] A hash of custom headers that
|
|
180
|
+
# will be added to the HTTP request.
|
|
181
|
+
#
|
|
182
|
+
# @return [MsRestAzure::AzureOperationResponse] HTTP response information.
|
|
183
|
+
#
|
|
184
|
+
def list_usages_with_http_info(resource_group_name, account_name, database_rid, collection_rid, filter:nil, custom_headers:nil)
|
|
185
|
+
list_usages_async(resource_group_name, account_name, database_rid, collection_rid, filter:filter, custom_headers:custom_headers).value!
|
|
186
|
+
end
|
|
187
|
+
|
|
188
|
+
#
|
|
189
|
+
# Retrieves the usages (most recent storage data) for the given collection,
|
|
190
|
+
# split by partition.
|
|
191
|
+
#
|
|
192
|
+
# @param resource_group_name [String] Name of an Azure resource group.
|
|
193
|
+
# @param account_name [String] Cosmos DB database account name.
|
|
194
|
+
# @param database_rid [String] Cosmos DB database rid.
|
|
195
|
+
# @param collection_rid [String] Cosmos DB collection rid.
|
|
196
|
+
# @param filter [String] An OData filter expression that describes a subset of
|
|
197
|
+
# usages to return. The supported parameter is name.value (name of the metric,
|
|
198
|
+
# can have an or of multiple names).
|
|
199
|
+
# @param [Hash{String => String}] A hash of custom headers that will be added
|
|
200
|
+
# to the HTTP request.
|
|
201
|
+
#
|
|
202
|
+
# @return [Concurrent::Promise] Promise object which holds the HTTP response.
|
|
203
|
+
#
|
|
204
|
+
def list_usages_async(resource_group_name, account_name, database_rid, collection_rid, filter:nil, custom_headers:nil)
|
|
205
|
+
fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
|
|
206
|
+
fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
|
|
207
|
+
fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'MaxLength': '90'" if !resource_group_name.nil? && resource_group_name.length > 90
|
|
208
|
+
fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'MinLength': '1'" if !resource_group_name.nil? && resource_group_name.length < 1
|
|
209
|
+
fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'Pattern': '^[-\w\._\(\)]+$'" if !resource_group_name.nil? && resource_group_name.match(Regexp.new('^^[-\w\._\(\)]+$$')).nil?
|
|
210
|
+
fail ArgumentError, 'account_name is nil' if account_name.nil?
|
|
211
|
+
fail ArgumentError, "'account_name' should satisfy the constraint - 'MaxLength': '50'" if !account_name.nil? && account_name.length > 50
|
|
212
|
+
fail ArgumentError, "'account_name' should satisfy the constraint - 'MinLength': '3'" if !account_name.nil? && account_name.length < 3
|
|
213
|
+
fail ArgumentError, 'database_rid is nil' if database_rid.nil?
|
|
214
|
+
fail ArgumentError, 'collection_rid is nil' if collection_rid.nil?
|
|
215
|
+
fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
|
|
216
|
+
|
|
217
|
+
|
|
218
|
+
request_headers = {}
|
|
219
|
+
request_headers['Content-Type'] = 'application/json; charset=utf-8'
|
|
220
|
+
|
|
221
|
+
# Set Headers
|
|
222
|
+
request_headers['x-ms-client-request-id'] = SecureRandom.uuid
|
|
223
|
+
request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
|
|
224
|
+
path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/partitions/usages'
|
|
225
|
+
|
|
226
|
+
request_url = @base_url || @client.base_url
|
|
227
|
+
|
|
228
|
+
options = {
|
|
229
|
+
middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
|
|
230
|
+
path_params: {'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name,'accountName' => account_name,'databaseRid' => database_rid,'collectionRid' => collection_rid},
|
|
231
|
+
query_params: {'api-version' => @client.api_version,'$filter' => filter},
|
|
232
|
+
headers: request_headers.merge(custom_headers || {}),
|
|
233
|
+
base_url: request_url
|
|
234
|
+
}
|
|
235
|
+
promise = @client.make_request_async(:get, path_template, options)
|
|
236
|
+
|
|
237
|
+
promise = promise.then do |result|
|
|
238
|
+
http_response = result.response
|
|
239
|
+
status_code = http_response.status
|
|
240
|
+
response_content = http_response.body
|
|
241
|
+
unless status_code == 200
|
|
242
|
+
error_model = JSON.load(response_content)
|
|
243
|
+
fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
|
|
244
|
+
end
|
|
245
|
+
|
|
246
|
+
result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
|
|
247
|
+
result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
|
|
248
|
+
result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
|
|
249
|
+
# Deserialize Response
|
|
250
|
+
if status_code == 200
|
|
251
|
+
begin
|
|
252
|
+
parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
|
|
253
|
+
result_mapper = Azure::Cosmosdb::Mgmt::V2015_04_08::Models::PartitionUsagesResult.mapper()
|
|
254
|
+
result.body = @client.deserialize(result_mapper, parsed_response)
|
|
255
|
+
rescue Exception => e
|
|
256
|
+
fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
|
|
257
|
+
end
|
|
258
|
+
end
|
|
259
|
+
|
|
260
|
+
result
|
|
261
|
+
end
|
|
262
|
+
|
|
263
|
+
promise.execute
|
|
264
|
+
end
|
|
265
|
+
|
|
266
|
+
end
|
|
267
|
+
end
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
# encoding: utf-8
|
|
2
|
+
# Code generated by Microsoft (R) AutoRest Code Generator.
|
|
3
|
+
# Changes may cause incorrect behavior and will be lost if the code is
|
|
4
|
+
# regenerated.
|
|
5
|
+
|
|
6
|
+
module Azure::Cosmosdb::Mgmt::V2015_04_08
|
|
7
|
+
#
|
|
8
|
+
# Azure Cosmos DB Database Service Resource Provider REST API
|
|
9
|
+
#
|
|
10
|
+
class CollectionPartitionRegion
|
|
11
|
+
include MsRestAzure
|
|
12
|
+
|
|
13
|
+
#
|
|
14
|
+
# Creates and initializes a new instance of the CollectionPartitionRegion class.
|
|
15
|
+
# @param client service class for accessing basic functionality.
|
|
16
|
+
#
|
|
17
|
+
def initialize(client)
|
|
18
|
+
@client = client
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
# @return [CosmosDB] reference to the CosmosDB
|
|
22
|
+
attr_reader :client
|
|
23
|
+
|
|
24
|
+
#
|
|
25
|
+
# Retrieves the metrics determined by the given filter for the given collection
|
|
26
|
+
# and region, split by partition.
|
|
27
|
+
#
|
|
28
|
+
# @param resource_group_name [String] Name of an Azure resource group.
|
|
29
|
+
# @param account_name [String] Cosmos DB database account name.
|
|
30
|
+
# @param region [String] Cosmos DB region, with spaces between words and each
|
|
31
|
+
# word capitalized.
|
|
32
|
+
# @param database_rid [String] Cosmos DB database rid.
|
|
33
|
+
# @param collection_rid [String] Cosmos DB collection rid.
|
|
34
|
+
# @param filter [String] An OData filter expression that describes a subset of
|
|
35
|
+
# metrics to return. The parameters that can be filtered are name.value (name
|
|
36
|
+
# of the metric, can have an or of multiple names), startTime, endTime, and
|
|
37
|
+
# timeGrain. The supported operator is eq.
|
|
38
|
+
# @param custom_headers [Hash{String => String}] A hash of custom headers that
|
|
39
|
+
# will be added to the HTTP request.
|
|
40
|
+
#
|
|
41
|
+
# @return [PartitionMetricListResult] operation results.
|
|
42
|
+
#
|
|
43
|
+
def list_metrics(resource_group_name, account_name, region, database_rid, collection_rid, filter, custom_headers:nil)
|
|
44
|
+
response = list_metrics_async(resource_group_name, account_name, region, database_rid, collection_rid, filter, custom_headers:custom_headers).value!
|
|
45
|
+
response.body unless response.nil?
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
#
|
|
49
|
+
# Retrieves the metrics determined by the given filter for the given collection
|
|
50
|
+
# and region, split by partition.
|
|
51
|
+
#
|
|
52
|
+
# @param resource_group_name [String] Name of an Azure resource group.
|
|
53
|
+
# @param account_name [String] Cosmos DB database account name.
|
|
54
|
+
# @param region [String] Cosmos DB region, with spaces between words and each
|
|
55
|
+
# word capitalized.
|
|
56
|
+
# @param database_rid [String] Cosmos DB database rid.
|
|
57
|
+
# @param collection_rid [String] Cosmos DB collection rid.
|
|
58
|
+
# @param filter [String] An OData filter expression that describes a subset of
|
|
59
|
+
# metrics to return. The parameters that can be filtered are name.value (name
|
|
60
|
+
# of the metric, can have an or of multiple names), startTime, endTime, and
|
|
61
|
+
# timeGrain. The supported operator is eq.
|
|
62
|
+
# @param custom_headers [Hash{String => String}] A hash of custom headers that
|
|
63
|
+
# will be added to the HTTP request.
|
|
64
|
+
#
|
|
65
|
+
# @return [MsRestAzure::AzureOperationResponse] HTTP response information.
|
|
66
|
+
#
|
|
67
|
+
def list_metrics_with_http_info(resource_group_name, account_name, region, database_rid, collection_rid, filter, custom_headers:nil)
|
|
68
|
+
list_metrics_async(resource_group_name, account_name, region, database_rid, collection_rid, filter, custom_headers:custom_headers).value!
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
#
|
|
72
|
+
# Retrieves the metrics determined by the given filter for the given collection
|
|
73
|
+
# and region, split by partition.
|
|
74
|
+
#
|
|
75
|
+
# @param resource_group_name [String] Name of an Azure resource group.
|
|
76
|
+
# @param account_name [String] Cosmos DB database account name.
|
|
77
|
+
# @param region [String] Cosmos DB region, with spaces between words and each
|
|
78
|
+
# word capitalized.
|
|
79
|
+
# @param database_rid [String] Cosmos DB database rid.
|
|
80
|
+
# @param collection_rid [String] Cosmos DB collection rid.
|
|
81
|
+
# @param filter [String] An OData filter expression that describes a subset of
|
|
82
|
+
# metrics to return. The parameters that can be filtered are name.value (name
|
|
83
|
+
# of the metric, can have an or of multiple names), startTime, endTime, and
|
|
84
|
+
# timeGrain. The supported operator is eq.
|
|
85
|
+
# @param [Hash{String => String}] A hash of custom headers that will be added
|
|
86
|
+
# to the HTTP request.
|
|
87
|
+
#
|
|
88
|
+
# @return [Concurrent::Promise] Promise object which holds the HTTP response.
|
|
89
|
+
#
|
|
90
|
+
def list_metrics_async(resource_group_name, account_name, region, database_rid, collection_rid, filter, custom_headers:nil)
|
|
91
|
+
fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
|
|
92
|
+
fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
|
|
93
|
+
fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'MaxLength': '90'" if !resource_group_name.nil? && resource_group_name.length > 90
|
|
94
|
+
fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'MinLength': '1'" if !resource_group_name.nil? && resource_group_name.length < 1
|
|
95
|
+
fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'Pattern': '^[-\w\._\(\)]+$'" if !resource_group_name.nil? && resource_group_name.match(Regexp.new('^^[-\w\._\(\)]+$$')).nil?
|
|
96
|
+
fail ArgumentError, 'account_name is nil' if account_name.nil?
|
|
97
|
+
fail ArgumentError, "'account_name' should satisfy the constraint - 'MaxLength': '50'" if !account_name.nil? && account_name.length > 50
|
|
98
|
+
fail ArgumentError, "'account_name' should satisfy the constraint - 'MinLength': '3'" if !account_name.nil? && account_name.length < 3
|
|
99
|
+
fail ArgumentError, 'region is nil' if region.nil?
|
|
100
|
+
fail ArgumentError, 'database_rid is nil' if database_rid.nil?
|
|
101
|
+
fail ArgumentError, 'collection_rid is nil' if collection_rid.nil?
|
|
102
|
+
fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
|
|
103
|
+
fail ArgumentError, 'filter is nil' if filter.nil?
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
request_headers = {}
|
|
107
|
+
request_headers['Content-Type'] = 'application/json; charset=utf-8'
|
|
108
|
+
|
|
109
|
+
# Set Headers
|
|
110
|
+
request_headers['x-ms-client-request-id'] = SecureRandom.uuid
|
|
111
|
+
request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
|
|
112
|
+
path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/region/{region}/databases/{databaseRid}/collections/{collectionRid}/partitions/metrics'
|
|
113
|
+
|
|
114
|
+
request_url = @base_url || @client.base_url
|
|
115
|
+
|
|
116
|
+
options = {
|
|
117
|
+
middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
|
|
118
|
+
path_params: {'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name,'accountName' => account_name,'region' => region,'databaseRid' => database_rid,'collectionRid' => collection_rid},
|
|
119
|
+
query_params: {'api-version' => @client.api_version,'$filter' => filter},
|
|
120
|
+
headers: request_headers.merge(custom_headers || {}),
|
|
121
|
+
base_url: request_url
|
|
122
|
+
}
|
|
123
|
+
promise = @client.make_request_async(:get, path_template, options)
|
|
124
|
+
|
|
125
|
+
promise = promise.then do |result|
|
|
126
|
+
http_response = result.response
|
|
127
|
+
status_code = http_response.status
|
|
128
|
+
response_content = http_response.body
|
|
129
|
+
unless status_code == 200
|
|
130
|
+
error_model = JSON.load(response_content)
|
|
131
|
+
fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
|
|
132
|
+
end
|
|
133
|
+
|
|
134
|
+
result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
|
|
135
|
+
result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
|
|
136
|
+
result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
|
|
137
|
+
# Deserialize Response
|
|
138
|
+
if status_code == 200
|
|
139
|
+
begin
|
|
140
|
+
parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
|
|
141
|
+
result_mapper = Azure::Cosmosdb::Mgmt::V2015_04_08::Models::PartitionMetricListResult.mapper()
|
|
142
|
+
result.body = @client.deserialize(result_mapper, parsed_response)
|
|
143
|
+
rescue Exception => e
|
|
144
|
+
fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
|
|
145
|
+
end
|
|
146
|
+
end
|
|
147
|
+
|
|
148
|
+
result
|
|
149
|
+
end
|
|
150
|
+
|
|
151
|
+
promise.execute
|
|
152
|
+
end
|
|
153
|
+
|
|
154
|
+
end
|
|
155
|
+
end
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
# encoding: utf-8
|
|
2
|
+
# Code generated by Microsoft (R) AutoRest Code Generator.
|
|
3
|
+
# Changes may cause incorrect behavior and will be lost if the code is
|
|
4
|
+
# regenerated.
|
|
5
|
+
|
|
6
|
+
module Azure::Cosmosdb::Mgmt::V2015_04_08
|
|
7
|
+
#
|
|
8
|
+
# Azure Cosmos DB Database Service Resource Provider REST API
|
|
9
|
+
#
|
|
10
|
+
class CollectionRegion
|
|
11
|
+
include MsRestAzure
|
|
12
|
+
|
|
13
|
+
#
|
|
14
|
+
# Creates and initializes a new instance of the CollectionRegion class.
|
|
15
|
+
# @param client service class for accessing basic functionality.
|
|
16
|
+
#
|
|
17
|
+
def initialize(client)
|
|
18
|
+
@client = client
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
# @return [CosmosDB] reference to the CosmosDB
|
|
22
|
+
attr_reader :client
|
|
23
|
+
|
|
24
|
+
#
|
|
25
|
+
# Retrieves the metrics determined by the given filter for the given database
|
|
26
|
+
# account, collection and region.
|
|
27
|
+
#
|
|
28
|
+
# @param resource_group_name [String] Name of an Azure resource group.
|
|
29
|
+
# @param account_name [String] Cosmos DB database account name.
|
|
30
|
+
# @param region [String] Cosmos DB region, with spaces between words and each
|
|
31
|
+
# word capitalized.
|
|
32
|
+
# @param database_rid [String] Cosmos DB database rid.
|
|
33
|
+
# @param collection_rid [String] Cosmos DB collection rid.
|
|
34
|
+
# @param filter [String] An OData filter expression that describes a subset of
|
|
35
|
+
# metrics to return. The parameters that can be filtered are name.value (name
|
|
36
|
+
# of the metric, can have an or of multiple names), startTime, endTime, and
|
|
37
|
+
# timeGrain. The supported operator is eq.
|
|
38
|
+
# @param custom_headers [Hash{String => String}] A hash of custom headers that
|
|
39
|
+
# will be added to the HTTP request.
|
|
40
|
+
#
|
|
41
|
+
# @return [MetricListResult] operation results.
|
|
42
|
+
#
|
|
43
|
+
def list_metrics(resource_group_name, account_name, region, database_rid, collection_rid, filter, custom_headers:nil)
|
|
44
|
+
response = list_metrics_async(resource_group_name, account_name, region, database_rid, collection_rid, filter, custom_headers:custom_headers).value!
|
|
45
|
+
response.body unless response.nil?
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
#
|
|
49
|
+
# Retrieves the metrics determined by the given filter for the given database
|
|
50
|
+
# account, collection and region.
|
|
51
|
+
#
|
|
52
|
+
# @param resource_group_name [String] Name of an Azure resource group.
|
|
53
|
+
# @param account_name [String] Cosmos DB database account name.
|
|
54
|
+
# @param region [String] Cosmos DB region, with spaces between words and each
|
|
55
|
+
# word capitalized.
|
|
56
|
+
# @param database_rid [String] Cosmos DB database rid.
|
|
57
|
+
# @param collection_rid [String] Cosmos DB collection rid.
|
|
58
|
+
# @param filter [String] An OData filter expression that describes a subset of
|
|
59
|
+
# metrics to return. The parameters that can be filtered are name.value (name
|
|
60
|
+
# of the metric, can have an or of multiple names), startTime, endTime, and
|
|
61
|
+
# timeGrain. The supported operator is eq.
|
|
62
|
+
# @param custom_headers [Hash{String => String}] A hash of custom headers that
|
|
63
|
+
# will be added to the HTTP request.
|
|
64
|
+
#
|
|
65
|
+
# @return [MsRestAzure::AzureOperationResponse] HTTP response information.
|
|
66
|
+
#
|
|
67
|
+
def list_metrics_with_http_info(resource_group_name, account_name, region, database_rid, collection_rid, filter, custom_headers:nil)
|
|
68
|
+
list_metrics_async(resource_group_name, account_name, region, database_rid, collection_rid, filter, custom_headers:custom_headers).value!
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
#
|
|
72
|
+
# Retrieves the metrics determined by the given filter for the given database
|
|
73
|
+
# account, collection and region.
|
|
74
|
+
#
|
|
75
|
+
# @param resource_group_name [String] Name of an Azure resource group.
|
|
76
|
+
# @param account_name [String] Cosmos DB database account name.
|
|
77
|
+
# @param region [String] Cosmos DB region, with spaces between words and each
|
|
78
|
+
# word capitalized.
|
|
79
|
+
# @param database_rid [String] Cosmos DB database rid.
|
|
80
|
+
# @param collection_rid [String] Cosmos DB collection rid.
|
|
81
|
+
# @param filter [String] An OData filter expression that describes a subset of
|
|
82
|
+
# metrics to return. The parameters that can be filtered are name.value (name
|
|
83
|
+
# of the metric, can have an or of multiple names), startTime, endTime, and
|
|
84
|
+
# timeGrain. The supported operator is eq.
|
|
85
|
+
# @param [Hash{String => String}] A hash of custom headers that will be added
|
|
86
|
+
# to the HTTP request.
|
|
87
|
+
#
|
|
88
|
+
# @return [Concurrent::Promise] Promise object which holds the HTTP response.
|
|
89
|
+
#
|
|
90
|
+
def list_metrics_async(resource_group_name, account_name, region, database_rid, collection_rid, filter, custom_headers:nil)
|
|
91
|
+
fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
|
|
92
|
+
fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
|
|
93
|
+
fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'MaxLength': '90'" if !resource_group_name.nil? && resource_group_name.length > 90
|
|
94
|
+
fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'MinLength': '1'" if !resource_group_name.nil? && resource_group_name.length < 1
|
|
95
|
+
fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'Pattern': '^[-\w\._\(\)]+$'" if !resource_group_name.nil? && resource_group_name.match(Regexp.new('^^[-\w\._\(\)]+$$')).nil?
|
|
96
|
+
fail ArgumentError, 'account_name is nil' if account_name.nil?
|
|
97
|
+
fail ArgumentError, "'account_name' should satisfy the constraint - 'MaxLength': '50'" if !account_name.nil? && account_name.length > 50
|
|
98
|
+
fail ArgumentError, "'account_name' should satisfy the constraint - 'MinLength': '3'" if !account_name.nil? && account_name.length < 3
|
|
99
|
+
fail ArgumentError, 'region is nil' if region.nil?
|
|
100
|
+
fail ArgumentError, 'database_rid is nil' if database_rid.nil?
|
|
101
|
+
fail ArgumentError, 'collection_rid is nil' if collection_rid.nil?
|
|
102
|
+
fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
|
|
103
|
+
fail ArgumentError, 'filter is nil' if filter.nil?
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
request_headers = {}
|
|
107
|
+
request_headers['Content-Type'] = 'application/json; charset=utf-8'
|
|
108
|
+
|
|
109
|
+
# Set Headers
|
|
110
|
+
request_headers['x-ms-client-request-id'] = SecureRandom.uuid
|
|
111
|
+
request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
|
|
112
|
+
path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/region/{region}/databases/{databaseRid}/collections/{collectionRid}/metrics'
|
|
113
|
+
|
|
114
|
+
request_url = @base_url || @client.base_url
|
|
115
|
+
|
|
116
|
+
options = {
|
|
117
|
+
middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
|
|
118
|
+
path_params: {'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name,'accountName' => account_name,'region' => region,'databaseRid' => database_rid,'collectionRid' => collection_rid},
|
|
119
|
+
query_params: {'api-version' => @client.api_version,'$filter' => filter},
|
|
120
|
+
headers: request_headers.merge(custom_headers || {}),
|
|
121
|
+
base_url: request_url
|
|
122
|
+
}
|
|
123
|
+
promise = @client.make_request_async(:get, path_template, options)
|
|
124
|
+
|
|
125
|
+
promise = promise.then do |result|
|
|
126
|
+
http_response = result.response
|
|
127
|
+
status_code = http_response.status
|
|
128
|
+
response_content = http_response.body
|
|
129
|
+
unless status_code == 200
|
|
130
|
+
error_model = JSON.load(response_content)
|
|
131
|
+
fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
|
|
132
|
+
end
|
|
133
|
+
|
|
134
|
+
result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
|
|
135
|
+
result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
|
|
136
|
+
result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
|
|
137
|
+
# Deserialize Response
|
|
138
|
+
if status_code == 200
|
|
139
|
+
begin
|
|
140
|
+
parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
|
|
141
|
+
result_mapper = Azure::Cosmosdb::Mgmt::V2015_04_08::Models::MetricListResult.mapper()
|
|
142
|
+
result.body = @client.deserialize(result_mapper, parsed_response)
|
|
143
|
+
rescue Exception => e
|
|
144
|
+
fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
|
|
145
|
+
end
|
|
146
|
+
end
|
|
147
|
+
|
|
148
|
+
result
|
|
149
|
+
end
|
|
150
|
+
|
|
151
|
+
promise.execute
|
|
152
|
+
end
|
|
153
|
+
|
|
154
|
+
end
|
|
155
|
+
end
|