azure_mgmt_monitor 0.11.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (77) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE.txt +21 -0
  3. data/lib/azure_mgmt_monitor.rb +5 -0
  4. data/lib/generated/azure_mgmt_monitor.rb +96 -0
  5. data/lib/generated/azure_mgmt_monitor/action_groups.rb +579 -0
  6. data/lib/generated/azure_mgmt_monitor/activity_log_alerts.rb +593 -0
  7. data/lib/generated/azure_mgmt_monitor/alert_rule_incidents.rb +211 -0
  8. data/lib/generated/azure_mgmt_monitor/alert_rules.rb +510 -0
  9. data/lib/generated/azure_mgmt_monitor/autoscale_settings.rb +618 -0
  10. data/lib/generated/azure_mgmt_monitor/log_profiles.rb +477 -0
  11. data/lib/generated/azure_mgmt_monitor/models/action_group_list.rb +63 -0
  12. data/lib/generated/azure_mgmt_monitor/models/action_group_resource.rb +164 -0
  13. data/lib/generated/azure_mgmt_monitor/models/activity_log_alert_action_group.rb +65 -0
  14. data/lib/generated/azure_mgmt_monitor/models/activity_log_alert_action_list.rb +54 -0
  15. data/lib/generated/azure_mgmt_monitor/models/activity_log_alert_all_of_condition.rb +55 -0
  16. data/lib/generated/azure_mgmt_monitor/models/activity_log_alert_leaf_condition.rb +61 -0
  17. data/lib/generated/azure_mgmt_monitor/models/activity_log_alert_list.rb +64 -0
  18. data/lib/generated/azure_mgmt_monitor/models/activity_log_alert_patch_body.rb +65 -0
  19. data/lib/generated/azure_mgmt_monitor/models/activity_log_alert_resource.rb +147 -0
  20. data/lib/generated/azure_mgmt_monitor/models/alert_rule_resource.rb +159 -0
  21. data/lib/generated/azure_mgmt_monitor/models/alert_rule_resource_collection.rb +54 -0
  22. data/lib/generated/azure_mgmt_monitor/models/alert_rule_resource_patch.rb +131 -0
  23. data/lib/generated/azure_mgmt_monitor/models/autoscale_notification.rb +78 -0
  24. data/lib/generated/azure_mgmt_monitor/models/autoscale_profile.rb +101 -0
  25. data/lib/generated/azure_mgmt_monitor/models/autoscale_setting_resource.rb +155 -0
  26. data/lib/generated/azure_mgmt_monitor/models/autoscale_setting_resource_collection.rb +95 -0
  27. data/lib/generated/azure_mgmt_monitor/models/autoscale_setting_resource_patch.rb +127 -0
  28. data/lib/generated/azure_mgmt_monitor/models/comparison_operation_type.rb +20 -0
  29. data/lib/generated/azure_mgmt_monitor/models/condition_operator.rb +18 -0
  30. data/lib/generated/azure_mgmt_monitor/models/email_notification.rb +75 -0
  31. data/lib/generated/azure_mgmt_monitor/models/email_receiver.rb +69 -0
  32. data/lib/generated/azure_mgmt_monitor/models/enable_request.rb +45 -0
  33. data/lib/generated/azure_mgmt_monitor/models/error_response.rb +55 -0
  34. data/lib/generated/azure_mgmt_monitor/models/incident.rb +93 -0
  35. data/lib/generated/azure_mgmt_monitor/models/incident_list_result.rb +53 -0
  36. data/lib/generated/azure_mgmt_monitor/models/location_threshold_rule_condition.rb +85 -0
  37. data/lib/generated/azure_mgmt_monitor/models/log_profile_collection.rb +53 -0
  38. data/lib/generated/azure_mgmt_monitor/models/log_profile_resource.rb +154 -0
  39. data/lib/generated/azure_mgmt_monitor/models/log_profile_resource_patch.rb +126 -0
  40. data/lib/generated/azure_mgmt_monitor/models/log_settings.rb +70 -0
  41. data/lib/generated/azure_mgmt_monitor/models/management_event_aggregation_condition.rb +70 -0
  42. data/lib/generated/azure_mgmt_monitor/models/management_event_rule_condition.rb +73 -0
  43. data/lib/generated/azure_mgmt_monitor/models/metric_settings.rb +67 -0
  44. data/lib/generated/azure_mgmt_monitor/models/metric_statistic_type.rb +18 -0
  45. data/lib/generated/azure_mgmt_monitor/models/metric_trigger.rb +134 -0
  46. data/lib/generated/azure_mgmt_monitor/models/receiver_status.rb +17 -0
  47. data/lib/generated/azure_mgmt_monitor/models/recurrence.rb +62 -0
  48. data/lib/generated/azure_mgmt_monitor/models/recurrence_frequency.rb +22 -0
  49. data/lib/generated/azure_mgmt_monitor/models/recurrent_schedule.rb +139 -0
  50. data/lib/generated/azure_mgmt_monitor/models/retention_policy.rb +60 -0
  51. data/lib/generated/azure_mgmt_monitor/models/rule_action.rb +48 -0
  52. data/lib/generated/azure_mgmt_monitor/models/rule_condition.rb +63 -0
  53. data/lib/generated/azure_mgmt_monitor/models/rule_data_source.rb +58 -0
  54. data/lib/generated/azure_mgmt_monitor/models/rule_email_action.rb +80 -0
  55. data/lib/generated/azure_mgmt_monitor/models/rule_management_event_claims_data_source.rb +45 -0
  56. data/lib/generated/azure_mgmt_monitor/models/rule_management_event_data_source.rb +150 -0
  57. data/lib/generated/azure_mgmt_monitor/models/rule_metric_data_source.rb +68 -0
  58. data/lib/generated/azure_mgmt_monitor/models/rule_webhook_action.rb +80 -0
  59. data/lib/generated/azure_mgmt_monitor/models/scale_action.rb +86 -0
  60. data/lib/generated/azure_mgmt_monitor/models/scale_capacity.rb +69 -0
  61. data/lib/generated/azure_mgmt_monitor/models/scale_direction.rb +17 -0
  62. data/lib/generated/azure_mgmt_monitor/models/scale_rule.rb +57 -0
  63. data/lib/generated/azure_mgmt_monitor/models/scale_type.rb +17 -0
  64. data/lib/generated/azure_mgmt_monitor/models/service_diagnostic_settings_resource.rb +163 -0
  65. data/lib/generated/azure_mgmt_monitor/models/service_diagnostic_settings_resource_patch.rb +135 -0
  66. data/lib/generated/azure_mgmt_monitor/models/sms_receiver.rb +79 -0
  67. data/lib/generated/azure_mgmt_monitor/models/threshold_rule_condition.rb +108 -0
  68. data/lib/generated/azure_mgmt_monitor/models/time_aggregation_operator.rb +19 -0
  69. data/lib/generated/azure_mgmt_monitor/models/time_aggregation_type.rb +19 -0
  70. data/lib/generated/azure_mgmt_monitor/models/time_window.rb +104 -0
  71. data/lib/generated/azure_mgmt_monitor/models/webhook_notification.rb +63 -0
  72. data/lib/generated/azure_mgmt_monitor/models/webhook_receiver.rb +56 -0
  73. data/lib/generated/azure_mgmt_monitor/module_definition.rb +8 -0
  74. data/lib/generated/azure_mgmt_monitor/monitor_management_client.rb +150 -0
  75. data/lib/generated/azure_mgmt_monitor/service_diagnostic_settings_operations.rb +330 -0
  76. data/lib/generated/azure_mgmt_monitor/version.rb +8 -0
  77. metadata +188 -0
@@ -0,0 +1,477 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator 1.2.2.0
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::ARM::Monitor
7
+ #
8
+ # Monitor Management Client
9
+ #
10
+ class LogProfiles
11
+ include MsRestAzure
12
+
13
+ #
14
+ # Creates and initializes a new instance of the LogProfiles class.
15
+ # @param client service class for accessing basic functionality.
16
+ #
17
+ def initialize(client)
18
+ @client = client
19
+ end
20
+
21
+ # @return [MonitorManagementClient] reference to the MonitorManagementClient
22
+ attr_reader :client
23
+
24
+ #
25
+ # Deletes the log profile.
26
+ #
27
+ # @param log_profile_name [String] The name of the log profile.
28
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
29
+ # will be added to the HTTP request.
30
+ #
31
+ #
32
+ def delete(log_profile_name, custom_headers = nil)
33
+ response = delete_async(log_profile_name, custom_headers).value!
34
+ nil
35
+ end
36
+
37
+ #
38
+ # Deletes the log profile.
39
+ #
40
+ # @param log_profile_name [String] The name of the log profile.
41
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
42
+ # will be added to the HTTP request.
43
+ #
44
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
45
+ #
46
+ def delete_with_http_info(log_profile_name, custom_headers = nil)
47
+ delete_async(log_profile_name, custom_headers).value!
48
+ end
49
+
50
+ #
51
+ # Deletes the log profile.
52
+ #
53
+ # @param log_profile_name [String] The name of the log profile.
54
+ # @param [Hash{String => String}] A hash of custom headers that will be added
55
+ # to the HTTP request.
56
+ #
57
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
58
+ #
59
+ def delete_async(log_profile_name, custom_headers = nil)
60
+ fail ArgumentError, 'log_profile_name is nil' if log_profile_name.nil?
61
+ api_version = '2016-03-01'
62
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
63
+
64
+
65
+ request_headers = {}
66
+
67
+ # Set Headers
68
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
69
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
70
+ path_template = 'subscriptions/{subscriptionId}/providers/microsoft.insights/logprofiles/{logProfileName}'
71
+
72
+ request_url = @base_url || @client.base_url
73
+
74
+ options = {
75
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
76
+ path_params: {'logProfileName' => log_profile_name,'subscriptionId' => @client.subscription_id},
77
+ query_params: {'api-version' => api_version},
78
+ headers: request_headers.merge(custom_headers || {}),
79
+ base_url: request_url
80
+ }
81
+ promise = @client.make_request_async(:delete, path_template, options)
82
+
83
+ promise = promise.then do |result|
84
+ http_response = result.response
85
+ status_code = http_response.status
86
+ response_content = http_response.body
87
+ unless status_code == 200
88
+ error_model = JSON.load(response_content)
89
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
90
+ end
91
+
92
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
93
+
94
+ result
95
+ end
96
+
97
+ promise.execute
98
+ end
99
+
100
+ #
101
+ # Gets the log profile.
102
+ #
103
+ # @param log_profile_name [String] The name of the log profile.
104
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
105
+ # will be added to the HTTP request.
106
+ #
107
+ # @return [LogProfileResource] operation results.
108
+ #
109
+ def get(log_profile_name, custom_headers = nil)
110
+ response = get_async(log_profile_name, custom_headers).value!
111
+ response.body unless response.nil?
112
+ end
113
+
114
+ #
115
+ # Gets the log profile.
116
+ #
117
+ # @param log_profile_name [String] The name of the log profile.
118
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
119
+ # will be added to the HTTP request.
120
+ #
121
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
122
+ #
123
+ def get_with_http_info(log_profile_name, custom_headers = nil)
124
+ get_async(log_profile_name, custom_headers).value!
125
+ end
126
+
127
+ #
128
+ # Gets the log profile.
129
+ #
130
+ # @param log_profile_name [String] The name of the log profile.
131
+ # @param [Hash{String => String}] A hash of custom headers that will be added
132
+ # to the HTTP request.
133
+ #
134
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
135
+ #
136
+ def get_async(log_profile_name, custom_headers = nil)
137
+ fail ArgumentError, 'log_profile_name is nil' if log_profile_name.nil?
138
+ api_version = '2016-03-01'
139
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
140
+
141
+
142
+ request_headers = {}
143
+
144
+ # Set Headers
145
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
146
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
147
+ path_template = 'subscriptions/{subscriptionId}/providers/microsoft.insights/logprofiles/{logProfileName}'
148
+
149
+ request_url = @base_url || @client.base_url
150
+
151
+ options = {
152
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
153
+ path_params: {'logProfileName' => log_profile_name,'subscriptionId' => @client.subscription_id},
154
+ query_params: {'api-version' => api_version},
155
+ headers: request_headers.merge(custom_headers || {}),
156
+ base_url: request_url
157
+ }
158
+ promise = @client.make_request_async(:get, path_template, options)
159
+
160
+ promise = promise.then do |result|
161
+ http_response = result.response
162
+ status_code = http_response.status
163
+ response_content = http_response.body
164
+ unless status_code == 200
165
+ error_model = JSON.load(response_content)
166
+ fail MsRest::HttpOperationError.new(result.request, http_response, error_model)
167
+ end
168
+
169
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
170
+ # Deserialize Response
171
+ if status_code == 200
172
+ begin
173
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
174
+ result_mapper = Azure::ARM::Monitor::Models::LogProfileResource.mapper()
175
+ result.body = @client.deserialize(result_mapper, parsed_response)
176
+ rescue Exception => e
177
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
178
+ end
179
+ end
180
+
181
+ result
182
+ end
183
+
184
+ promise.execute
185
+ end
186
+
187
+ #
188
+ # Create or update a log profile in Azure Monitoring REST API.
189
+ #
190
+ # @param log_profile_name [String] The name of the log profile.
191
+ # @param parameters [LogProfileResource] Parameters supplied to the operation.
192
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
193
+ # will be added to the HTTP request.
194
+ #
195
+ # @return [LogProfileResource] operation results.
196
+ #
197
+ def create_or_update(log_profile_name, parameters, custom_headers = nil)
198
+ response = create_or_update_async(log_profile_name, parameters, custom_headers).value!
199
+ response.body unless response.nil?
200
+ end
201
+
202
+ #
203
+ # Create or update a log profile in Azure Monitoring REST API.
204
+ #
205
+ # @param log_profile_name [String] The name of the log profile.
206
+ # @param parameters [LogProfileResource] Parameters supplied to the operation.
207
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
208
+ # will be added to the HTTP request.
209
+ #
210
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
211
+ #
212
+ def create_or_update_with_http_info(log_profile_name, parameters, custom_headers = nil)
213
+ create_or_update_async(log_profile_name, parameters, custom_headers).value!
214
+ end
215
+
216
+ #
217
+ # Create or update a log profile in Azure Monitoring REST API.
218
+ #
219
+ # @param log_profile_name [String] The name of the log profile.
220
+ # @param parameters [LogProfileResource] Parameters supplied to the operation.
221
+ # @param [Hash{String => String}] A hash of custom headers that will be added
222
+ # to the HTTP request.
223
+ #
224
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
225
+ #
226
+ def create_or_update_async(log_profile_name, parameters, custom_headers = nil)
227
+ fail ArgumentError, 'log_profile_name is nil' if log_profile_name.nil?
228
+ api_version = '2016-03-01'
229
+ fail ArgumentError, 'parameters is nil' if parameters.nil?
230
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
231
+
232
+
233
+ request_headers = {}
234
+
235
+ # Set Headers
236
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
237
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
238
+
239
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
240
+
241
+ # Serialize Request
242
+ request_mapper = Azure::ARM::Monitor::Models::LogProfileResource.mapper()
243
+ request_content = @client.serialize(request_mapper, parameters)
244
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
245
+
246
+ path_template = 'subscriptions/{subscriptionId}/providers/microsoft.insights/logprofiles/{logProfileName}'
247
+
248
+ request_url = @base_url || @client.base_url
249
+
250
+ options = {
251
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
252
+ path_params: {'logProfileName' => log_profile_name,'subscriptionId' => @client.subscription_id},
253
+ query_params: {'api-version' => api_version},
254
+ body: request_content,
255
+ headers: request_headers.merge(custom_headers || {}),
256
+ base_url: request_url
257
+ }
258
+ promise = @client.make_request_async(:put, path_template, options)
259
+
260
+ promise = promise.then do |result|
261
+ http_response = result.response
262
+ status_code = http_response.status
263
+ response_content = http_response.body
264
+ unless status_code == 200
265
+ error_model = JSON.load(response_content)
266
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
267
+ end
268
+
269
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
270
+ # Deserialize Response
271
+ if status_code == 200
272
+ begin
273
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
274
+ result_mapper = Azure::ARM::Monitor::Models::LogProfileResource.mapper()
275
+ result.body = @client.deserialize(result_mapper, parsed_response)
276
+ rescue Exception => e
277
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
278
+ end
279
+ end
280
+
281
+ result
282
+ end
283
+
284
+ promise.execute
285
+ end
286
+
287
+ #
288
+ # Updates an existing LogProfilesResource. To update other fields use the
289
+ # CreateOrUpdate method.
290
+ #
291
+ # @param log_profile_name [String] The name of the log profile.
292
+ # @param log_profiles_resource [LogProfileResourcePatch] Parameters supplied to
293
+ # the operation.
294
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
295
+ # will be added to the HTTP request.
296
+ #
297
+ # @return [LogProfileResource] operation results.
298
+ #
299
+ def update(log_profile_name, log_profiles_resource, custom_headers = nil)
300
+ response = update_async(log_profile_name, log_profiles_resource, custom_headers).value!
301
+ response.body unless response.nil?
302
+ end
303
+
304
+ #
305
+ # Updates an existing LogProfilesResource. To update other fields use the
306
+ # CreateOrUpdate method.
307
+ #
308
+ # @param log_profile_name [String] The name of the log profile.
309
+ # @param log_profiles_resource [LogProfileResourcePatch] Parameters supplied to
310
+ # the operation.
311
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
312
+ # will be added to the HTTP request.
313
+ #
314
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
315
+ #
316
+ def update_with_http_info(log_profile_name, log_profiles_resource, custom_headers = nil)
317
+ update_async(log_profile_name, log_profiles_resource, custom_headers).value!
318
+ end
319
+
320
+ #
321
+ # Updates an existing LogProfilesResource. To update other fields use the
322
+ # CreateOrUpdate method.
323
+ #
324
+ # @param log_profile_name [String] The name of the log profile.
325
+ # @param log_profiles_resource [LogProfileResourcePatch] Parameters supplied to
326
+ # the operation.
327
+ # @param [Hash{String => String}] A hash of custom headers that will be added
328
+ # to the HTTP request.
329
+ #
330
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
331
+ #
332
+ def update_async(log_profile_name, log_profiles_resource, custom_headers = nil)
333
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
334
+ fail ArgumentError, 'log_profile_name is nil' if log_profile_name.nil?
335
+ api_version = '2016-03-01'
336
+ fail ArgumentError, 'log_profiles_resource is nil' if log_profiles_resource.nil?
337
+
338
+
339
+ request_headers = {}
340
+
341
+ # Set Headers
342
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
343
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
344
+
345
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
346
+
347
+ # Serialize Request
348
+ request_mapper = Azure::ARM::Monitor::Models::LogProfileResourcePatch.mapper()
349
+ request_content = @client.serialize(request_mapper, log_profiles_resource)
350
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
351
+
352
+ path_template = 'subscriptions/{subscriptionId}/providers/microsoft.insights/logprofiles/{logProfileName}'
353
+
354
+ request_url = @base_url || @client.base_url
355
+
356
+ options = {
357
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
358
+ path_params: {'subscriptionId' => @client.subscription_id,'logProfileName' => log_profile_name},
359
+ query_params: {'api-version' => api_version},
360
+ body: request_content,
361
+ headers: request_headers.merge(custom_headers || {}),
362
+ base_url: request_url
363
+ }
364
+ promise = @client.make_request_async(:patch, path_template, options)
365
+
366
+ promise = promise.then do |result|
367
+ http_response = result.response
368
+ status_code = http_response.status
369
+ response_content = http_response.body
370
+ unless status_code == 200
371
+ error_model = JSON.load(response_content)
372
+ fail MsRest::HttpOperationError.new(result.request, http_response, error_model)
373
+ end
374
+
375
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
376
+ # Deserialize Response
377
+ if status_code == 200
378
+ begin
379
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
380
+ result_mapper = Azure::ARM::Monitor::Models::LogProfileResource.mapper()
381
+ result.body = @client.deserialize(result_mapper, parsed_response)
382
+ rescue Exception => e
383
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
384
+ end
385
+ end
386
+
387
+ result
388
+ end
389
+
390
+ promise.execute
391
+ end
392
+
393
+ #
394
+ # List the log profiles.
395
+ #
396
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
397
+ # will be added to the HTTP request.
398
+ #
399
+ # @return [LogProfileCollection] operation results.
400
+ #
401
+ def list(custom_headers = nil)
402
+ response = list_async(custom_headers).value!
403
+ response.body unless response.nil?
404
+ end
405
+
406
+ #
407
+ # List the log profiles.
408
+ #
409
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
410
+ # will be added to the HTTP request.
411
+ #
412
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
413
+ #
414
+ def list_with_http_info(custom_headers = nil)
415
+ list_async(custom_headers).value!
416
+ end
417
+
418
+ #
419
+ # List the log profiles.
420
+ #
421
+ # @param [Hash{String => String}] A hash of custom headers that will be added
422
+ # to the HTTP request.
423
+ #
424
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
425
+ #
426
+ def list_async(custom_headers = nil)
427
+ api_version = '2016-03-01'
428
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
429
+
430
+
431
+ request_headers = {}
432
+
433
+ # Set Headers
434
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
435
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
436
+ path_template = 'subscriptions/{subscriptionId}/providers/microsoft.insights/logprofiles'
437
+
438
+ request_url = @base_url || @client.base_url
439
+
440
+ options = {
441
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
442
+ path_params: {'subscriptionId' => @client.subscription_id},
443
+ query_params: {'api-version' => api_version},
444
+ headers: request_headers.merge(custom_headers || {}),
445
+ base_url: request_url
446
+ }
447
+ promise = @client.make_request_async(:get, path_template, options)
448
+
449
+ promise = promise.then do |result|
450
+ http_response = result.response
451
+ status_code = http_response.status
452
+ response_content = http_response.body
453
+ unless status_code == 200
454
+ error_model = JSON.load(response_content)
455
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
456
+ end
457
+
458
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
459
+ # Deserialize Response
460
+ if status_code == 200
461
+ begin
462
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
463
+ result_mapper = Azure::ARM::Monitor::Models::LogProfileCollection.mapper()
464
+ result.body = @client.deserialize(result_mapper, parsed_response)
465
+ rescue Exception => e
466
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
467
+ end
468
+ end
469
+
470
+ result
471
+ end
472
+
473
+ promise.execute
474
+ end
475
+
476
+ end
477
+ end