azure_mgmt_monitor 0.16.0 → 0.16.1

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.
Files changed (135) hide show
  1. checksums.yaml +4 -4
  2. data/lib/2015-04-01/generated/azure_mgmt_monitor.rb +14 -4
  3. data/lib/2015-04-01/generated/azure_mgmt_monitor/activity_logs.rb +313 -0
  4. data/lib/2015-04-01/generated/azure_mgmt_monitor/autoscale_settings.rb +1 -1
  5. data/lib/2015-04-01/generated/azure_mgmt_monitor/event_categories.rb +113 -0
  6. data/lib/2015-04-01/generated/azure_mgmt_monitor/models/event_category_collection.rb +57 -0
  7. data/lib/2015-04-01/generated/azure_mgmt_monitor/models/event_data.rb +380 -0
  8. data/lib/2015-04-01/generated/azure_mgmt_monitor/models/event_data_collection.rb +99 -0
  9. data/lib/2015-04-01/generated/azure_mgmt_monitor/models/event_level.rb +19 -0
  10. data/lib/2015-04-01/generated/azure_mgmt_monitor/models/http_request_info.rb +79 -0
  11. data/lib/2015-04-01/generated/azure_mgmt_monitor/models/localizable_string.rb +57 -0
  12. data/lib/2015-04-01/generated/azure_mgmt_monitor/models/sender_authorization.rb +71 -0
  13. data/lib/2015-04-01/generated/azure_mgmt_monitor/monitor_management_client.rb +12 -0
  14. data/lib/2015-04-01/generated/azure_mgmt_monitor/operations.rb +1 -1
  15. data/lib/2015-04-01/generated/azure_mgmt_monitor/tenant_activity_logs.rb +339 -0
  16. data/lib/2016-03-01/generated/azure_mgmt_monitor.rb +17 -10
  17. data/lib/2016-03-01/generated/azure_mgmt_monitor/alert_rule_incidents.rb +1 -1
  18. data/lib/2016-03-01/generated/azure_mgmt_monitor/alert_rules.rb +1 -1
  19. data/lib/2016-03-01/generated/azure_mgmt_monitor/log_profiles.rb +1 -1
  20. data/lib/2016-03-01/generated/azure_mgmt_monitor/metric_definitions.rb +133 -0
  21. data/lib/2016-03-01/generated/azure_mgmt_monitor/models/aggregation_type.rb +20 -0
  22. data/lib/2016-03-01/generated/azure_mgmt_monitor/models/localizable_string.rb +57 -0
  23. data/lib/2016-03-01/generated/azure_mgmt_monitor/models/metric_availability.rb +60 -0
  24. data/lib/2016-03-01/generated/azure_mgmt_monitor/models/metric_definition.rb +120 -0
  25. data/lib/2016-03-01/generated/azure_mgmt_monitor/models/metric_definition_collection.rb +56 -0
  26. data/lib/2016-03-01/generated/azure_mgmt_monitor/models/unit.rb +21 -0
  27. data/lib/2016-03-01/generated/azure_mgmt_monitor/monitor_management_client.rb +8 -4
  28. data/lib/2016-09-01/generated/azure_mgmt_monitor.rb +9 -3
  29. data/lib/2016-09-01/generated/azure_mgmt_monitor/metrics.rb +172 -0
  30. data/lib/2016-09-01/generated/azure_mgmt_monitor/models/localizable_string.rb +57 -0
  31. data/lib/2016-09-01/generated/azure_mgmt_monitor/models/metric.rb +105 -0
  32. data/lib/2016-09-01/generated/azure_mgmt_monitor/models/metric_collection.rb +55 -0
  33. data/lib/2016-09-01/generated/azure_mgmt_monitor/models/metric_value.rb +104 -0
  34. data/lib/2016-09-01/generated/azure_mgmt_monitor/models/unit.rb +21 -0
  35. data/lib/2016-09-01/generated/azure_mgmt_monitor/monitor_client.rb +4 -0
  36. data/lib/2016-09-01/generated/azure_mgmt_monitor/service_diagnostic_settings_operations.rb +4 -4
  37. data/lib/2017-04-01/generated/azure_mgmt_monitor/action_groups.rb +1 -1
  38. data/lib/2017-04-01/generated/azure_mgmt_monitor/activity_log_alerts.rb +1 -1
  39. data/lib/2017-04-01/generated/azure_mgmt_monitor/models/action_group_resource.rb +1 -1
  40. data/lib/2017-05-01-preview/generated/azure_mgmt_monitor.rb +19 -5
  41. data/lib/2017-05-01-preview/generated/azure_mgmt_monitor/diagnostic_settings_category_operations.rb +4 -3
  42. data/lib/2017-05-01-preview/generated/azure_mgmt_monitor/diagnostic_settings_operations.rb +8 -5
  43. data/lib/2017-05-01-preview/generated/azure_mgmt_monitor/metric_definitions.rb +112 -0
  44. data/lib/2017-05-01-preview/generated/azure_mgmt_monitor/metrics.rb +190 -0
  45. data/lib/2017-05-01-preview/generated/azure_mgmt_monitor/models/aggregation_type.rb +20 -0
  46. data/lib/2017-05-01-preview/generated/azure_mgmt_monitor/models/localizable_string.rb +57 -0
  47. data/lib/2017-05-01-preview/generated/azure_mgmt_monitor/models/metadata_value.rb +58 -0
  48. data/lib/2017-05-01-preview/generated/azure_mgmt_monitor/models/metric.rb +105 -0
  49. data/lib/2017-05-01-preview/generated/azure_mgmt_monitor/models/metric_availability.rb +60 -0
  50. data/lib/2017-05-01-preview/generated/azure_mgmt_monitor/models/metric_definition.rb +152 -0
  51. data/lib/2017-05-01-preview/generated/azure_mgmt_monitor/models/metric_definition_collection.rb +56 -0
  52. data/lib/2017-05-01-preview/generated/azure_mgmt_monitor/models/metric_value.rb +104 -0
  53. data/lib/2017-05-01-preview/generated/azure_mgmt_monitor/models/response.rb +98 -0
  54. data/lib/2017-05-01-preview/generated/azure_mgmt_monitor/models/result_type.rb +16 -0
  55. data/lib/2017-05-01-preview/generated/azure_mgmt_monitor/models/time_series_element.rb +79 -0
  56. data/lib/2017-05-01-preview/generated/azure_mgmt_monitor/models/unit.rb +23 -0
  57. data/lib/2017-05-01-preview/generated/azure_mgmt_monitor/monitor_management_client.rb +11 -3
  58. data/lib/2017-11-01-preview/generated/azure_mgmt_monitor/metric_baseline.rb +1 -1
  59. data/lib/2018-01-01/generated/azure_mgmt_monitor.rb +42 -0
  60. data/lib/2018-01-01/generated/azure_mgmt_monitor/metric_definitions.rb +118 -0
  61. data/lib/2018-01-01/generated/azure_mgmt_monitor/metrics.rb +199 -0
  62. data/lib/2018-01-01/generated/azure_mgmt_monitor/models/aggregation_type.rb +20 -0
  63. data/lib/2018-01-01/generated/azure_mgmt_monitor/models/error_response.rb +57 -0
  64. data/lib/2018-01-01/generated/azure_mgmt_monitor/models/localizable_string.rb +57 -0
  65. data/lib/2018-01-01/generated/azure_mgmt_monitor/models/metadata_value.rb +58 -0
  66. data/lib/2018-01-01/generated/azure_mgmt_monitor/models/metric.rb +105 -0
  67. data/lib/2018-01-01/generated/azure_mgmt_monitor/models/metric_availability.rb +60 -0
  68. data/lib/2018-01-01/generated/azure_mgmt_monitor/models/metric_definition.rb +184 -0
  69. data/lib/2018-01-01/generated/azure_mgmt_monitor/models/metric_definition_collection.rb +56 -0
  70. data/lib/2018-01-01/generated/azure_mgmt_monitor/models/metric_value.rb +104 -0
  71. data/lib/2018-01-01/generated/azure_mgmt_monitor/models/response.rb +120 -0
  72. data/lib/2018-01-01/generated/azure_mgmt_monitor/models/result_type.rb +16 -0
  73. data/lib/2018-01-01/generated/azure_mgmt_monitor/models/time_series_element.rb +79 -0
  74. data/lib/2018-01-01/generated/azure_mgmt_monitor/models/unit.rb +23 -0
  75. data/lib/2018-01-01/generated/azure_mgmt_monitor/module_definition.rb +9 -0
  76. data/lib/2018-01-01/generated/azure_mgmt_monitor/monitor_management_client.rb +131 -0
  77. data/lib/2018-03-01/generated/azure_mgmt_monitor.rb +57 -0
  78. data/lib/2018-03-01/generated/azure_mgmt_monitor/action_groups.rb +693 -0
  79. data/lib/2018-03-01/generated/azure_mgmt_monitor/metric_alerts.rb +582 -0
  80. data/lib/2018-03-01/generated/azure_mgmt_monitor/metric_alerts_status.rb +213 -0
  81. data/lib/2018-03-01/generated/azure_mgmt_monitor/models/action_group_list.rb +67 -0
  82. data/lib/2018-03-01/generated/azure_mgmt_monitor/models/action_group_patch_body.rb +68 -0
  83. data/lib/2018-03-01/generated/azure_mgmt_monitor/models/action_group_resource.rb +304 -0
  84. data/lib/2018-03-01/generated/azure_mgmt_monitor/models/automation_runbook_receiver.rb +102 -0
  85. data/lib/2018-03-01/generated/azure_mgmt_monitor/models/azure_app_push_receiver.rb +58 -0
  86. data/lib/2018-03-01/generated/azure_mgmt_monitor/models/azure_function_receiver.rb +80 -0
  87. data/lib/2018-03-01/generated/azure_mgmt_monitor/models/email_receiver.rb +72 -0
  88. data/lib/2018-03-01/generated/azure_mgmt_monitor/models/enable_request.rb +46 -0
  89. data/lib/2018-03-01/generated/azure_mgmt_monitor/models/error_response.rb +57 -0
  90. data/lib/2018-03-01/generated/azure_mgmt_monitor/models/itsm_receiver.rb +94 -0
  91. data/lib/2018-03-01/generated/azure_mgmt_monitor/models/logic_app_receiver.rb +69 -0
  92. data/lib/2018-03-01/generated/azure_mgmt_monitor/models/metric_alert_action.rb +65 -0
  93. data/lib/2018-03-01/generated/azure_mgmt_monitor/models/metric_alert_criteria.rb +65 -0
  94. data/lib/2018-03-01/generated/azure_mgmt_monitor/models/metric_alert_resource.rb +226 -0
  95. data/lib/2018-03-01/generated/azure_mgmt_monitor/models/metric_alert_resource_collection.rb +56 -0
  96. data/lib/2018-03-01/generated/azure_mgmt_monitor/models/metric_alert_resource_patch.rb +194 -0
  97. data/lib/2018-03-01/generated/azure_mgmt_monitor/models/metric_alert_single_resource_multiple_metric_criteria.rb +88 -0
  98. data/lib/2018-03-01/generated/azure_mgmt_monitor/models/metric_alert_status.rb +81 -0
  99. data/lib/2018-03-01/generated/azure_mgmt_monitor/models/metric_alert_status_collection.rb +56 -0
  100. data/lib/2018-03-01/generated/azure_mgmt_monitor/models/metric_alert_status_properties.rb +76 -0
  101. data/lib/2018-03-01/generated/azure_mgmt_monitor/models/metric_criteria.rb +122 -0
  102. data/lib/2018-03-01/generated/azure_mgmt_monitor/models/metric_dimension.rb +77 -0
  103. data/lib/2018-03-01/generated/azure_mgmt_monitor/models/receiver_status.rb +17 -0
  104. data/lib/2018-03-01/generated/azure_mgmt_monitor/models/resource.rb +101 -0
  105. data/lib/2018-03-01/generated/azure_mgmt_monitor/models/sms_receiver.rb +83 -0
  106. data/lib/2018-03-01/generated/azure_mgmt_monitor/models/voice_receiver.rb +69 -0
  107. data/lib/2018-03-01/generated/azure_mgmt_monitor/models/webhook_receiver.rb +58 -0
  108. data/lib/2018-03-01/generated/azure_mgmt_monitor/module_definition.rb +9 -0
  109. data/lib/2018-03-01/generated/azure_mgmt_monitor/monitor_management_client.rb +138 -0
  110. data/lib/2018-04-16/generated/azure_mgmt_monitor.rb +46 -0
  111. data/lib/2018-04-16/generated/azure_mgmt_monitor/models/action.rb +47 -0
  112. data/lib/2018-04-16/generated/azure_mgmt_monitor/models/alert_severity.rb +19 -0
  113. data/lib/2018-04-16/generated/azure_mgmt_monitor/models/alerting_action.rb +99 -0
  114. data/lib/2018-04-16/generated/azure_mgmt_monitor/models/az_ns_action_group.rb +78 -0
  115. data/lib/2018-04-16/generated/azure_mgmt_monitor/models/conditional_operator.rb +17 -0
  116. data/lib/2018-04-16/generated/azure_mgmt_monitor/models/enabled.rb +16 -0
  117. data/lib/2018-04-16/generated/azure_mgmt_monitor/models/error_response.rb +57 -0
  118. data/lib/2018-04-16/generated/azure_mgmt_monitor/models/log_metric_trigger.rb +83 -0
  119. data/lib/2018-04-16/generated/azure_mgmt_monitor/models/log_search_rule_resource.rb +174 -0
  120. data/lib/2018-04-16/generated/azure_mgmt_monitor/models/log_search_rule_resource_collection.rb +56 -0
  121. data/lib/2018-04-16/generated/azure_mgmt_monitor/models/log_search_rule_resource_patch.rb +67 -0
  122. data/lib/2018-04-16/generated/azure_mgmt_monitor/models/metric_trigger_type.rb +16 -0
  123. data/lib/2018-04-16/generated/azure_mgmt_monitor/models/provisioning_state.rb +18 -0
  124. data/lib/2018-04-16/generated/azure_mgmt_monitor/models/query_type.rb +15 -0
  125. data/lib/2018-04-16/generated/azure_mgmt_monitor/models/resource.rb +101 -0
  126. data/lib/2018-04-16/generated/azure_mgmt_monitor/models/schedule.rb +59 -0
  127. data/lib/2018-04-16/generated/azure_mgmt_monitor/models/source.rb +89 -0
  128. data/lib/2018-04-16/generated/azure_mgmt_monitor/models/trigger_condition.rb +72 -0
  129. data/lib/2018-04-16/generated/azure_mgmt_monitor/module_definition.rb +9 -0
  130. data/lib/2018-04-16/generated/azure_mgmt_monitor/monitor_client.rb +130 -0
  131. data/lib/2018-04-16/generated/azure_mgmt_monitor/scheduled_query_rules.rb +610 -0
  132. data/lib/azure_mgmt_monitor.rb +5 -2
  133. data/lib/profiles/latest/modules/monitor_profile_module.rb +119 -45
  134. data/lib/version.rb +1 -1
  135. metadata +113 -3
@@ -0,0 +1,582 @@
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::Monitor::Mgmt::V2018_03_01
7
+ #
8
+ # Monitor Management Client
9
+ #
10
+ class MetricAlerts
11
+ include MsRestAzure
12
+
13
+ #
14
+ # Creates and initializes a new instance of the MetricAlerts 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
+ # Retrieve alert rule definitions in a subscription.
26
+ #
27
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
28
+ # will be added to the HTTP request.
29
+ #
30
+ # @return [MetricAlertResourceCollection] operation results.
31
+ #
32
+ def list_by_subscription(custom_headers:nil)
33
+ response = list_by_subscription_async(custom_headers:custom_headers).value!
34
+ response.body unless response.nil?
35
+ end
36
+
37
+ #
38
+ # Retrieve alert rule definitions in a subscription.
39
+ #
40
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
41
+ # will be added to the HTTP request.
42
+ #
43
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
44
+ #
45
+ def list_by_subscription_with_http_info(custom_headers:nil)
46
+ list_by_subscription_async(custom_headers:custom_headers).value!
47
+ end
48
+
49
+ #
50
+ # Retrieve alert rule definitions in a subscription.
51
+ #
52
+ # @param [Hash{String => String}] A hash of custom headers that will be added
53
+ # to the HTTP request.
54
+ #
55
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
56
+ #
57
+ def list_by_subscription_async(custom_headers:nil)
58
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
59
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
60
+
61
+
62
+ request_headers = {}
63
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
64
+
65
+ # Set Headers
66
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
67
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
68
+ path_template = 'subscriptions/{subscriptionId}/providers/Microsoft.Insights/metricAlerts'
69
+
70
+ request_url = @base_url || @client.base_url
71
+
72
+ options = {
73
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
74
+ path_params: {'subscriptionId' => @client.subscription_id},
75
+ query_params: {'api-version' => @client.api_version},
76
+ headers: request_headers.merge(custom_headers || {}),
77
+ base_url: request_url
78
+ }
79
+ promise = @client.make_request_async(:get, path_template, options)
80
+
81
+ promise = promise.then do |result|
82
+ http_response = result.response
83
+ status_code = http_response.status
84
+ response_content = http_response.body
85
+ unless status_code == 200
86
+ error_model = JSON.load(response_content)
87
+ fail MsRest::HttpOperationError.new(result.request, http_response, error_model)
88
+ end
89
+
90
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
91
+ # Deserialize Response
92
+ if status_code == 200
93
+ begin
94
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
95
+ result_mapper = Azure::Monitor::Mgmt::V2018_03_01::Models::MetricAlertResourceCollection.mapper()
96
+ result.body = @client.deserialize(result_mapper, parsed_response)
97
+ rescue Exception => e
98
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
99
+ end
100
+ end
101
+
102
+ result
103
+ end
104
+
105
+ promise.execute
106
+ end
107
+
108
+ #
109
+ # Retrieve alert rule defintions in a resource group.
110
+ #
111
+ # @param resource_group_name [String] The name of the resource group.
112
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
113
+ # will be added to the HTTP request.
114
+ #
115
+ # @return [MetricAlertResourceCollection] operation results.
116
+ #
117
+ def list_by_resource_group(resource_group_name, custom_headers:nil)
118
+ response = list_by_resource_group_async(resource_group_name, custom_headers:custom_headers).value!
119
+ response.body unless response.nil?
120
+ end
121
+
122
+ #
123
+ # Retrieve alert rule defintions in a resource group.
124
+ #
125
+ # @param resource_group_name [String] The name of the resource group.
126
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
127
+ # will be added to the HTTP request.
128
+ #
129
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
130
+ #
131
+ def list_by_resource_group_with_http_info(resource_group_name, custom_headers:nil)
132
+ list_by_resource_group_async(resource_group_name, custom_headers:custom_headers).value!
133
+ end
134
+
135
+ #
136
+ # Retrieve alert rule defintions in a resource group.
137
+ #
138
+ # @param resource_group_name [String] The name of the resource group.
139
+ # @param [Hash{String => String}] A hash of custom headers that will be added
140
+ # to the HTTP request.
141
+ #
142
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
143
+ #
144
+ def list_by_resource_group_async(resource_group_name, custom_headers:nil)
145
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
146
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
147
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
148
+
149
+
150
+ request_headers = {}
151
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
152
+
153
+ # Set Headers
154
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
155
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
156
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/metricAlerts'
157
+
158
+ request_url = @base_url || @client.base_url
159
+
160
+ options = {
161
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
162
+ path_params: {'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name},
163
+ query_params: {'api-version' => @client.api_version},
164
+ headers: request_headers.merge(custom_headers || {}),
165
+ base_url: request_url
166
+ }
167
+ promise = @client.make_request_async(:get, path_template, options)
168
+
169
+ promise = promise.then do |result|
170
+ http_response = result.response
171
+ status_code = http_response.status
172
+ response_content = http_response.body
173
+ unless status_code == 200
174
+ error_model = JSON.load(response_content)
175
+ fail MsRest::HttpOperationError.new(result.request, http_response, error_model)
176
+ end
177
+
178
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
179
+ # Deserialize Response
180
+ if status_code == 200
181
+ begin
182
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
183
+ result_mapper = Azure::Monitor::Mgmt::V2018_03_01::Models::MetricAlertResourceCollection.mapper()
184
+ result.body = @client.deserialize(result_mapper, parsed_response)
185
+ rescue Exception => e
186
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
187
+ end
188
+ end
189
+
190
+ result
191
+ end
192
+
193
+ promise.execute
194
+ end
195
+
196
+ #
197
+ # Retrieve an alert rule definiton.
198
+ #
199
+ # @param resource_group_name [String] The name of the resource group.
200
+ # @param rule_name [String] The name of the rule.
201
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
202
+ # will be added to the HTTP request.
203
+ #
204
+ # @return [MetricAlertResource] operation results.
205
+ #
206
+ def get(resource_group_name, rule_name, custom_headers:nil)
207
+ response = get_async(resource_group_name, rule_name, custom_headers:custom_headers).value!
208
+ response.body unless response.nil?
209
+ end
210
+
211
+ #
212
+ # Retrieve an alert rule definiton.
213
+ #
214
+ # @param resource_group_name [String] The name of the resource group.
215
+ # @param rule_name [String] The name of the rule.
216
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
217
+ # will be added to the HTTP request.
218
+ #
219
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
220
+ #
221
+ def get_with_http_info(resource_group_name, rule_name, custom_headers:nil)
222
+ get_async(resource_group_name, rule_name, custom_headers:custom_headers).value!
223
+ end
224
+
225
+ #
226
+ # Retrieve an alert rule definiton.
227
+ #
228
+ # @param resource_group_name [String] The name of the resource group.
229
+ # @param rule_name [String] The name of the rule.
230
+ # @param [Hash{String => String}] A hash of custom headers that will be added
231
+ # to the HTTP request.
232
+ #
233
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
234
+ #
235
+ def get_async(resource_group_name, rule_name, custom_headers:nil)
236
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
237
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
238
+ fail ArgumentError, 'rule_name is nil' if rule_name.nil?
239
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
240
+
241
+
242
+ request_headers = {}
243
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
244
+
245
+ # Set Headers
246
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
247
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
248
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/metricAlerts/{ruleName}'
249
+
250
+ request_url = @base_url || @client.base_url
251
+
252
+ options = {
253
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
254
+ path_params: {'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name,'ruleName' => rule_name},
255
+ query_params: {'api-version' => @client.api_version},
256
+ headers: request_headers.merge(custom_headers || {}),
257
+ base_url: request_url
258
+ }
259
+ promise = @client.make_request_async(:get, path_template, options)
260
+
261
+ promise = promise.then do |result|
262
+ http_response = result.response
263
+ status_code = http_response.status
264
+ response_content = http_response.body
265
+ unless status_code == 200
266
+ error_model = JSON.load(response_content)
267
+ fail MsRest::HttpOperationError.new(result.request, http_response, error_model)
268
+ end
269
+
270
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
271
+ # Deserialize Response
272
+ if status_code == 200
273
+ begin
274
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
275
+ result_mapper = Azure::Monitor::Mgmt::V2018_03_01::Models::MetricAlertResource.mapper()
276
+ result.body = @client.deserialize(result_mapper, parsed_response)
277
+ rescue Exception => e
278
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
279
+ end
280
+ end
281
+
282
+ result
283
+ end
284
+
285
+ promise.execute
286
+ end
287
+
288
+ #
289
+ # Create or update an metric alert definition.
290
+ #
291
+ # @param resource_group_name [String] The name of the resource group.
292
+ # @param rule_name [String] The name of the rule.
293
+ # @param parameters [MetricAlertResource] The parameters of the rule to create
294
+ # or update.
295
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
296
+ # will be added to the HTTP request.
297
+ #
298
+ # @return [MetricAlertResource] operation results.
299
+ #
300
+ def create_or_update(resource_group_name, rule_name, parameters, custom_headers:nil)
301
+ response = create_or_update_async(resource_group_name, rule_name, parameters, custom_headers:custom_headers).value!
302
+ response.body unless response.nil?
303
+ end
304
+
305
+ #
306
+ # Create or update an metric alert definition.
307
+ #
308
+ # @param resource_group_name [String] The name of the resource group.
309
+ # @param rule_name [String] The name of the rule.
310
+ # @param parameters [MetricAlertResource] The parameters of the rule to create
311
+ # or update.
312
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
313
+ # will be added to the HTTP request.
314
+ #
315
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
316
+ #
317
+ def create_or_update_with_http_info(resource_group_name, rule_name, parameters, custom_headers:nil)
318
+ create_or_update_async(resource_group_name, rule_name, parameters, custom_headers:custom_headers).value!
319
+ end
320
+
321
+ #
322
+ # Create or update an metric alert definition.
323
+ #
324
+ # @param resource_group_name [String] The name of the resource group.
325
+ # @param rule_name [String] The name of the rule.
326
+ # @param parameters [MetricAlertResource] The parameters of the rule to create
327
+ # or update.
328
+ # @param [Hash{String => String}] A hash of custom headers that will be added
329
+ # to the HTTP request.
330
+ #
331
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
332
+ #
333
+ def create_or_update_async(resource_group_name, rule_name, parameters, custom_headers:nil)
334
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
335
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
336
+ fail ArgumentError, 'rule_name is nil' if rule_name.nil?
337
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
338
+ fail ArgumentError, 'parameters is nil' if parameters.nil?
339
+
340
+
341
+ request_headers = {}
342
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
343
+
344
+ # Set Headers
345
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
346
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
347
+
348
+ # Serialize Request
349
+ request_mapper = Azure::Monitor::Mgmt::V2018_03_01::Models::MetricAlertResource.mapper()
350
+ request_content = @client.serialize(request_mapper, parameters)
351
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
352
+
353
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/metricAlerts/{ruleName}'
354
+
355
+ request_url = @base_url || @client.base_url
356
+
357
+ options = {
358
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
359
+ path_params: {'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name,'ruleName' => rule_name},
360
+ query_params: {'api-version' => @client.api_version},
361
+ body: request_content,
362
+ headers: request_headers.merge(custom_headers || {}),
363
+ base_url: request_url
364
+ }
365
+ promise = @client.make_request_async(:put, path_template, options)
366
+
367
+ promise = promise.then do |result|
368
+ http_response = result.response
369
+ status_code = http_response.status
370
+ response_content = http_response.body
371
+ unless status_code == 200
372
+ error_model = JSON.load(response_content)
373
+ fail MsRest::HttpOperationError.new(result.request, http_response, error_model)
374
+ end
375
+
376
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
377
+ # Deserialize Response
378
+ if status_code == 200
379
+ begin
380
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
381
+ result_mapper = Azure::Monitor::Mgmt::V2018_03_01::Models::MetricAlertResource.mapper()
382
+ result.body = @client.deserialize(result_mapper, parsed_response)
383
+ rescue Exception => e
384
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
385
+ end
386
+ end
387
+
388
+ result
389
+ end
390
+
391
+ promise.execute
392
+ end
393
+
394
+ #
395
+ # Update an metric alert definition.
396
+ #
397
+ # @param resource_group_name [String] The name of the resource group.
398
+ # @param rule_name [String] The name of the rule.
399
+ # @param parameters [MetricAlertResourcePatch] The parameters of the rule to
400
+ # update.
401
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
402
+ # will be added to the HTTP request.
403
+ #
404
+ # @return [MetricAlertResource] operation results.
405
+ #
406
+ def update(resource_group_name, rule_name, parameters, custom_headers:nil)
407
+ response = update_async(resource_group_name, rule_name, parameters, custom_headers:custom_headers).value!
408
+ response.body unless response.nil?
409
+ end
410
+
411
+ #
412
+ # Update an metric alert definition.
413
+ #
414
+ # @param resource_group_name [String] The name of the resource group.
415
+ # @param rule_name [String] The name of the rule.
416
+ # @param parameters [MetricAlertResourcePatch] The parameters of the rule to
417
+ # update.
418
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
419
+ # will be added to the HTTP request.
420
+ #
421
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
422
+ #
423
+ def update_with_http_info(resource_group_name, rule_name, parameters, custom_headers:nil)
424
+ update_async(resource_group_name, rule_name, parameters, custom_headers:custom_headers).value!
425
+ end
426
+
427
+ #
428
+ # Update an metric alert definition.
429
+ #
430
+ # @param resource_group_name [String] The name of the resource group.
431
+ # @param rule_name [String] The name of the rule.
432
+ # @param parameters [MetricAlertResourcePatch] The parameters of the rule to
433
+ # update.
434
+ # @param [Hash{String => String}] A hash of custom headers that will be added
435
+ # to the HTTP request.
436
+ #
437
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
438
+ #
439
+ def update_async(resource_group_name, rule_name, parameters, custom_headers:nil)
440
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
441
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
442
+ fail ArgumentError, 'rule_name is nil' if rule_name.nil?
443
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
444
+ fail ArgumentError, 'parameters is nil' if parameters.nil?
445
+
446
+
447
+ request_headers = {}
448
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
449
+
450
+ # Set Headers
451
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
452
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
453
+
454
+ # Serialize Request
455
+ request_mapper = Azure::Monitor::Mgmt::V2018_03_01::Models::MetricAlertResourcePatch.mapper()
456
+ request_content = @client.serialize(request_mapper, parameters)
457
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
458
+
459
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/metricAlerts/{ruleName}'
460
+
461
+ request_url = @base_url || @client.base_url
462
+
463
+ options = {
464
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
465
+ path_params: {'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name,'ruleName' => rule_name},
466
+ query_params: {'api-version' => @client.api_version},
467
+ body: request_content,
468
+ headers: request_headers.merge(custom_headers || {}),
469
+ base_url: request_url
470
+ }
471
+ promise = @client.make_request_async(:patch, path_template, options)
472
+
473
+ promise = promise.then do |result|
474
+ http_response = result.response
475
+ status_code = http_response.status
476
+ response_content = http_response.body
477
+ unless status_code == 200
478
+ error_model = JSON.load(response_content)
479
+ fail MsRest::HttpOperationError.new(result.request, http_response, error_model)
480
+ end
481
+
482
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
483
+ # Deserialize Response
484
+ if status_code == 200
485
+ begin
486
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
487
+ result_mapper = Azure::Monitor::Mgmt::V2018_03_01::Models::MetricAlertResource.mapper()
488
+ result.body = @client.deserialize(result_mapper, parsed_response)
489
+ rescue Exception => e
490
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
491
+ end
492
+ end
493
+
494
+ result
495
+ end
496
+
497
+ promise.execute
498
+ end
499
+
500
+ #
501
+ # Delete an alert rule defitiniton.
502
+ #
503
+ # @param resource_group_name [String] The name of the resource group.
504
+ # @param rule_name [String] The name of the rule.
505
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
506
+ # will be added to the HTTP request.
507
+ #
508
+ #
509
+ def delete(resource_group_name, rule_name, custom_headers:nil)
510
+ response = delete_async(resource_group_name, rule_name, custom_headers:custom_headers).value!
511
+ nil
512
+ end
513
+
514
+ #
515
+ # Delete an alert rule defitiniton.
516
+ #
517
+ # @param resource_group_name [String] The name of the resource group.
518
+ # @param rule_name [String] The name of the rule.
519
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
520
+ # will be added to the HTTP request.
521
+ #
522
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
523
+ #
524
+ def delete_with_http_info(resource_group_name, rule_name, custom_headers:nil)
525
+ delete_async(resource_group_name, rule_name, custom_headers:custom_headers).value!
526
+ end
527
+
528
+ #
529
+ # Delete an alert rule defitiniton.
530
+ #
531
+ # @param resource_group_name [String] The name of the resource group.
532
+ # @param rule_name [String] The name of the rule.
533
+ # @param [Hash{String => String}] A hash of custom headers that will be added
534
+ # to the HTTP request.
535
+ #
536
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
537
+ #
538
+ def delete_async(resource_group_name, rule_name, custom_headers:nil)
539
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
540
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
541
+ fail ArgumentError, 'rule_name is nil' if rule_name.nil?
542
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
543
+
544
+
545
+ request_headers = {}
546
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
547
+
548
+ # Set Headers
549
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
550
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
551
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/metricAlerts/{ruleName}'
552
+
553
+ request_url = @base_url || @client.base_url
554
+
555
+ options = {
556
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
557
+ path_params: {'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name,'ruleName' => rule_name},
558
+ query_params: {'api-version' => @client.api_version},
559
+ headers: request_headers.merge(custom_headers || {}),
560
+ base_url: request_url
561
+ }
562
+ promise = @client.make_request_async(:delete, path_template, options)
563
+
564
+ promise = promise.then do |result|
565
+ http_response = result.response
566
+ status_code = http_response.status
567
+ response_content = http_response.body
568
+ unless status_code == 204 || status_code == 200
569
+ error_model = JSON.load(response_content)
570
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
571
+ end
572
+
573
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
574
+
575
+ result
576
+ end
577
+
578
+ promise.execute
579
+ end
580
+
581
+ end
582
+ end