xautomata-hive 3.19.0__py3-none-any.whl → 3.20.0__py3-none-any.whl
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.
- hive/api.py +9 -6
- hive/cookbook/cost_tree_nodes.py +12 -2
- hive/cookbook/cost_tree_resources.py +11 -6
- hive/cookbook/customers.py +51 -0
- hive/cookbook/features.py +14 -2
- hive/cookbook/groups.py +105 -6
- hive/cookbook/last_status_v2.py +196 -0
- hive/cookbook/metric_types.py +57 -4
- hive/cookbook/metrics.py +62 -7
- hive/cookbook/objects.py +15 -18
- hive/cookbook/probes.py +6 -4
- hive/cookbook/questions.py +135 -0
- hive/cookbook/services.py +9 -4
- hive/cookbook/tree_hierarchy_v2.py +320 -0
- hive/cookbook/ts_cost_management.py +2 -2
- hive/cookbook/ts_cost_management_v2.py +653 -0
- hive/version.py +1 -1
- {xautomata_hive-3.19.0.dist-info → xautomata_hive-3.20.0.dist-info}/METADATA +2 -2
- {xautomata_hive-3.19.0.dist-info → xautomata_hive-3.20.0.dist-info}/RECORD +22 -18
- {xautomata_hive-3.19.0.dist-info → xautomata_hive-3.20.0.dist-info}/WHEEL +1 -1
- {xautomata_hive-3.19.0.dist-info → xautomata_hive-3.20.0.dist-info}/LICENSE +0 -0
- {xautomata_hive-3.19.0.dist-info → xautomata_hive-3.20.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,653 @@
|
|
1
|
+
from hive.api import ApiManager, handling_single_page_methods, warning_wrong_parameters
|
2
|
+
|
3
|
+
|
4
|
+
class TsCostManagementV2(ApiManager):
|
5
|
+
"""Class that handles all the XAutomata ts_cost_management_v2 APIs"""
|
6
|
+
|
7
|
+
def ts_cost_management_v2(self, warm_start: bool = False,
|
8
|
+
single_page: bool = False, page_size: int = 5000,
|
9
|
+
kwargs: dict = None, **params) -> list:
|
10
|
+
"""Read Costs
|
11
|
+
|
12
|
+
Args:
|
13
|
+
warm_start (bool, optional): salva la risposta in un file e se viene richiamata la stessa funzione con gli stessi argomenti restituisce il contenuto del file. Default to False.
|
14
|
+
single_page (bool, optional): se False la risposta viene ottenuta a step per non appesantire le API. Default to False.
|
15
|
+
page_size (int, optional): Numero di oggetti per pagina se single_page == False. Default to 5000.
|
16
|
+
kwargs (dict, optional): additional parameters for execute. Default to None.
|
17
|
+
**params: additional parameters for the API.
|
18
|
+
|
19
|
+
Keyword Args:
|
20
|
+
sort_by (string optional): Stringa separata da virgole di campi su cui ordinare. Si indica uno o piu campi della risposta e si puo chiedere di ottenere i valori di quei campi in ordine ascendente o discendente. Esempio "Customer:Desc". Default to "". - parameter
|
21
|
+
null_fields (string optional): additional filter - parameter
|
22
|
+
uuid_metric (string optional): additional filter - parameter
|
23
|
+
date_start (string optional): additional filter - parameter
|
24
|
+
date_end (string optional): additional filter - parameter
|
25
|
+
cloud_provider (string optional): additional filter - parameter
|
26
|
+
resource_location (string optional): additional filter - parameter
|
27
|
+
subscription_type (string optional): additional filter - parameter
|
28
|
+
subscription_id (string optional): additional filter - parameter
|
29
|
+
subscription_name (string optional): additional filter - parameter
|
30
|
+
family (string optional): additional filter - parameter
|
31
|
+
category (string optional): additional filter - parameter
|
32
|
+
subcategory (string optional): additional filter - parameter
|
33
|
+
object (string optional): additional filter - parameter
|
34
|
+
metric (string optional): additional filter - parameter
|
35
|
+
unit (string optional): additional filter - parameter
|
36
|
+
resource_group (string optional): additional filter - parameter
|
37
|
+
reservation_name (string optional): additional filter - parameter
|
38
|
+
publisher_name (string optional): additional filter - parameter
|
39
|
+
local_currency (string optional): additional filter - parameter
|
40
|
+
provider_currency (string optional): additional filter - parameter
|
41
|
+
uuid_customer (string optional): additional filter - parameter
|
42
|
+
resource_id (string optional): additional filter - parameter
|
43
|
+
skip (integer optional): numero di oggetti che si vogliono saltare nella risposta. Default to 0. - parameter
|
44
|
+
limit (integer optional): numero di oggetti massimi che si vogliono ottenere. Default to 1_000_000. - parameter
|
45
|
+
like (boolean optional): Se True, eventuali filtri richiesti dalla API vengono presi come porzioni di testo, se False il matching sul campo dei filtri deve essere esatto. Default to True. - parameter
|
46
|
+
join (boolean optional): Se join = true, ogni riga restituita conterra' chiavi aggiuntive che fanno riferimento ad altre entita', con cui la riga ha relazioni 1:1. Default to False - parameter
|
47
|
+
count (boolean optional): Se True nel header della risposta e' presente la dimensione massima a db della chiamata fatta, sconsigliabile perche raddoppia il tempo per chiamata. Default to False. - parameter
|
48
|
+
|
49
|
+
Returns: list"""
|
50
|
+
if kwargs is None:
|
51
|
+
kwargs = dict()
|
52
|
+
official_params_list = ['sort_by', 'null_fields', 'uuid_metric',
|
53
|
+
'date_start', 'date_end', 'cloud_provider', 'resource_location',
|
54
|
+
'subscription_type', 'subscription_id', 'subscription_name',
|
55
|
+
'family', 'category', 'subcategory', 'object', 'metric', 'unit',
|
56
|
+
'resource_group', 'reservation_name', 'publisher_name',
|
57
|
+
'local_currency', 'provider_currency', 'uuid_customer',
|
58
|
+
'resource_id', 'skip', 'limit', 'like', 'join', 'count']
|
59
|
+
params.get('sort_by'), params.get('null_fields'), params.get(
|
60
|
+
'uuid_metric'), params.get('date_start'), params.get('date_end'
|
61
|
+
), params.get('cloud_provider'), params.get('resource_location'
|
62
|
+
), params.get('subscription_type'), params.get('subscription_id'
|
63
|
+
), params.get('subscription_name'), params.get('family'
|
64
|
+
), params.get('category'), params.get('subcategory'), params.get(
|
65
|
+
'object'), params.get('metric'), params.get('unit'), params.get(
|
66
|
+
'resource_group'), params.get('reservation_name'), params.get(
|
67
|
+
'publisher_name'), params.get('local_currency'), params.get(
|
68
|
+
'provider_currency'), params.get('uuid_customer'), params.get(
|
69
|
+
'resource_id'), params.get('skip'), params.get('limit'
|
70
|
+
), params.get('like'), params.get('join'), params.get('count')
|
71
|
+
if not self._silence_warning:
|
72
|
+
warning_wrong_parameters(self.ts_cost_management_v2.__name__,
|
73
|
+
params, official_params_list)
|
74
|
+
response = self.execute('GET', path=f'/ts_cost_management_v2/',
|
75
|
+
single_page=single_page, page_size=page_size, warm_start=
|
76
|
+
warm_start, params=params, **kwargs)
|
77
|
+
return response
|
78
|
+
|
79
|
+
def ts_cost_management_v2_create(self, payload: list,
|
80
|
+
single_page: bool = False, page_size: int = 50, kwargs: dict = None
|
81
|
+
) -> list:
|
82
|
+
"""Create Cost Multi
|
83
|
+
|
84
|
+
Args:
|
85
|
+
payload (list[dict], optional): List dict to create.
|
86
|
+
single_page (bool, optional): se False la risposta viene ottenuta a step per non appesantire le API. Default to False.
|
87
|
+
page_size (int, optional): Numero di oggetti per pagina se single_page == False. Default to 50.
|
88
|
+
kwargs (dict, optional): additional parameters for execute. Default to None.
|
89
|
+
|
90
|
+
Examples:
|
91
|
+
payload =
|
92
|
+
[
|
93
|
+
{
|
94
|
+
"uuid_metric": "string", required
|
95
|
+
"date": "string", required
|
96
|
+
"cloud_provider": "string", required
|
97
|
+
"resource_location": "string", required
|
98
|
+
"subscription_type": "string", optional
|
99
|
+
"subscription_id": "string", required
|
100
|
+
"subscription_name": "string", optional
|
101
|
+
"family": "string", required
|
102
|
+
"category": "string", required
|
103
|
+
"subcategory": "string", required
|
104
|
+
"object": "string", required
|
105
|
+
"metric": "string", required
|
106
|
+
"unit": "string", required
|
107
|
+
"qnt": "number", optional
|
108
|
+
"local_currency": "string", required
|
109
|
+
"unit_cost": "number", required
|
110
|
+
"total_cost": "number", required
|
111
|
+
"unit_revenue": "number", required
|
112
|
+
"total_revenue": "number", required
|
113
|
+
"provider_currency": "string", required
|
114
|
+
"unit_cost_pc": "number", required
|
115
|
+
"total_cost_pc": "number", required
|
116
|
+
"unit_revenue_pc": "number", required
|
117
|
+
"total_revenue_pc": "number", required
|
118
|
+
"cumulative_qnt": "number", required
|
119
|
+
"cumulative_unit_cost": "number", required
|
120
|
+
"cumulative_total_cost": "number", required
|
121
|
+
"cumulative_unit_revenue": "number", required
|
122
|
+
"cumulative_total_revenue": "number", required
|
123
|
+
"resource_group": "string", required
|
124
|
+
"reservation_name": "string", required
|
125
|
+
"publisher_name": "string", required
|
126
|
+
"resource_id": "string", required
|
127
|
+
"tenant_id": "string", optional
|
128
|
+
}
|
129
|
+
]
|
130
|
+
|
131
|
+
Returns: list"""
|
132
|
+
if kwargs is None:
|
133
|
+
kwargs = dict()
|
134
|
+
response = self.execute('POST', path=f'/ts_cost_management_v2/',
|
135
|
+
single_page=single_page, page_size=page_size, payload=payload,
|
136
|
+
**kwargs)
|
137
|
+
return response
|
138
|
+
|
139
|
+
def ts_cost_management_v2_grouped(self, uuid_customer: str,
|
140
|
+
warm_start: bool = False, single_page: bool = False,
|
141
|
+
page_size: int = 5000, kwargs: dict = None, **params) -> list:
|
142
|
+
"""Query Group By Date
|
143
|
+
|
144
|
+
Args:
|
145
|
+
uuid_customer (str, required): uuid_customer
|
146
|
+
warm_start (bool, optional): salva la risposta in un file e se viene richiamata la stessa funzione con gli stessi argomenti restituisce il contenuto del file. Default to False.
|
147
|
+
single_page (bool, optional): se False la risposta viene ottenuta a step per non appesantire le API. Default to False.
|
148
|
+
page_size (int, optional): Numero di oggetti per pagina se single_page == False. Default to 5000.
|
149
|
+
kwargs (dict, optional): additional parameters for execute. Default to None.
|
150
|
+
**params: additional parameters for the API.
|
151
|
+
|
152
|
+
Keyword Args:
|
153
|
+
sort_by (string optional): Stringa separata da virgole di campi su cui ordinare. Si indica uno o piu campi della risposta e si puo chiedere di ottenere i valori di quei campi in ordine ascendente o discendente. Esempio "Customer:Desc". Default to "". - parameter
|
154
|
+
null_fields (string optional): additional filter - parameter
|
155
|
+
date_start (string required): additional filter - parameter
|
156
|
+
date_end (string required): additional filter - parameter
|
157
|
+
cloud_provider (string optional): additional filter - parameter
|
158
|
+
resource_group (string optional): additional filter - parameter
|
159
|
+
resource_location (string optional): additional filter - parameter
|
160
|
+
category (string optional): additional filter - parameter
|
161
|
+
subscription (string optional): additional filter - parameter
|
162
|
+
subscription_type (string optional): additional filter - parameter
|
163
|
+
interval (None optional): additional filter - parameter
|
164
|
+
detailed (boolean optional): additional filter - parameter
|
165
|
+
skip (integer optional): numero di oggetti che si vogliono saltare nella risposta. Default to 0. - parameter
|
166
|
+
limit (integer optional): numero di oggetti massimi che si vogliono ottenere. Default to 1_000_000. - parameter
|
167
|
+
like (boolean optional): Se True, eventuali filtri richiesti dalla API vengono presi come porzioni di testo, se False il matching sul campo dei filtri deve essere esatto. Default to True. - parameter
|
168
|
+
join (boolean optional): Se join = true, ogni riga restituita conterra' chiavi aggiuntive che fanno riferimento ad altre entita', con cui la riga ha relazioni 1:1. Default to False - parameter
|
169
|
+
count (boolean optional): Se True nel header della risposta e' presente la dimensione massima a db della chiamata fatta, sconsigliabile perche raddoppia il tempo per chiamata. Default to False. - parameter
|
170
|
+
|
171
|
+
Returns: list"""
|
172
|
+
if kwargs is None:
|
173
|
+
kwargs = dict()
|
174
|
+
official_params_list = ['sort_by', 'null_fields', 'date_start',
|
175
|
+
'date_end', 'cloud_provider', 'resource_group',
|
176
|
+
'resource_location', 'category', 'subscription',
|
177
|
+
'subscription_type', 'interval', 'detailed', 'skip', 'limit',
|
178
|
+
'like', 'join', 'count']
|
179
|
+
params.get('sort_by'), params.get('null_fields'), params.get(
|
180
|
+
'date_start'), params.get('date_end'), params.get('cloud_provider'
|
181
|
+
), params.get('resource_group'), params.get('resource_location'
|
182
|
+
), params.get('category'), params.get('subscription'), params.get(
|
183
|
+
'subscription_type'), params.get('interval'), params.get('detailed'
|
184
|
+
), params.get('skip'), params.get('limit'), params.get('like'
|
185
|
+
), params.get('join'), params.get('count')
|
186
|
+
if not self._silence_warning:
|
187
|
+
warning_wrong_parameters(self.ts_cost_management_v2_grouped.
|
188
|
+
__name__, params, official_params_list)
|
189
|
+
response = self.execute('GET', path=
|
190
|
+
f'/ts_cost_management_v2/grouped/{uuid_customer}', single_page=
|
191
|
+
single_page, page_size=page_size, warm_start=warm_start, params
|
192
|
+
=params, **kwargs)
|
193
|
+
return response
|
194
|
+
|
195
|
+
def ts_cost_management_v2_uuid_metric(self, uuid_metric: str,
|
196
|
+
warm_start: bool = False, kwargs: dict = None, **params) -> list:
|
197
|
+
"""Read Cost
|
198
|
+
|
199
|
+
Args:
|
200
|
+
uuid_metric (str, required): uuid_metric
|
201
|
+
warm_start (bool, optional): salva la risposta in un file e se viene richiamata la stessa funzione con gli stessi argomenti restituisce il contenuto del file. Default to False.
|
202
|
+
kwargs (dict, optional): additional parameters for execute. Default to None.
|
203
|
+
**params: additional parameters for the API.
|
204
|
+
|
205
|
+
Keyword Args:
|
206
|
+
date (string required): additional filter - parameter
|
207
|
+
|
208
|
+
Returns: list"""
|
209
|
+
if kwargs is None:
|
210
|
+
kwargs = dict()
|
211
|
+
kwargs, params = handling_single_page_methods(kwargs=kwargs, params
|
212
|
+
=params)
|
213
|
+
official_params_list = ['date']
|
214
|
+
params.get('date')
|
215
|
+
if not self._silence_warning:
|
216
|
+
warning_wrong_parameters(self.ts_cost_management_v2.__name__,
|
217
|
+
params, official_params_list)
|
218
|
+
response = self.execute('GET', path=
|
219
|
+
f'/ts_cost_management_v2/{uuid_metric}', warm_start=warm_start,
|
220
|
+
params=params, **kwargs)
|
221
|
+
return response
|
222
|
+
|
223
|
+
def ts_cost_management_v2_ccm_by_date(self, uuid_customer: str,
|
224
|
+
warm_start: bool = False, single_page: bool = False,
|
225
|
+
page_size: int = 5000, kwargs: dict = None, **params) -> list:
|
226
|
+
"""Query Group By Cloud Provider Subscription Type Resource Group
|
227
|
+
|
228
|
+
Args:
|
229
|
+
uuid_customer (str, required): uuid_customer
|
230
|
+
warm_start (bool, optional): salva la risposta in un file e se viene richiamata la stessa funzione con gli stessi argomenti restituisce il contenuto del file. Default to False.
|
231
|
+
single_page (bool, optional): se False la risposta viene ottenuta a step per non appesantire le API. Default to False.
|
232
|
+
page_size (int, optional): Numero di oggetti per pagina se single_page == False. Default to 5000.
|
233
|
+
kwargs (dict, optional): additional parameters for execute. Default to None.
|
234
|
+
**params: additional parameters for the API.
|
235
|
+
|
236
|
+
Keyword Args:
|
237
|
+
date_start (string optional): additional filter - parameter
|
238
|
+
date_end (string optional): additional filter - parameter
|
239
|
+
interval (None optional): additional filter - parameter
|
240
|
+
skip (integer optional): numero di oggetti che si vogliono saltare nella risposta. Default to 0. - parameter
|
241
|
+
limit (integer optional): numero di oggetti massimi che si vogliono ottenere. Default to 1_000_000. - parameter
|
242
|
+
like (boolean optional): Se True, eventuali filtri richiesti dalla API vengono presi come porzioni di testo, se False il matching sul campo dei filtri deve essere esatto. Default to True. - parameter
|
243
|
+
join (boolean optional): Se join = true, ogni riga restituita conterra' chiavi aggiuntive che fanno riferimento ad altre entita', con cui la riga ha relazioni 1:1. Default to False - parameter
|
244
|
+
count (boolean optional): Se True nel header della risposta e' presente la dimensione massima a db della chiamata fatta, sconsigliabile perche raddoppia il tempo per chiamata. Default to False. - parameter
|
245
|
+
|
246
|
+
Returns: list"""
|
247
|
+
if kwargs is None:
|
248
|
+
kwargs = dict()
|
249
|
+
official_params_list = ['date_start', 'date_end', 'interval',
|
250
|
+
'skip', 'limit', 'like', 'join', 'count']
|
251
|
+
params.get('date_start'), params.get('date_end'), params.get('interval'
|
252
|
+
), params.get('skip'), params.get('limit'), params.get('like'
|
253
|
+
), params.get('join'), params.get('count')
|
254
|
+
if not self._silence_warning:
|
255
|
+
warning_wrong_parameters(self.ts_cost_management_v2_ccm_by_date
|
256
|
+
.__name__, params, official_params_list)
|
257
|
+
response = self.execute('GET', path=
|
258
|
+
f'/ts_cost_management_v2/ccm_by_date/{uuid_customer}',
|
259
|
+
single_page=single_page, page_size=page_size, warm_start=
|
260
|
+
warm_start, params=params, **kwargs)
|
261
|
+
return response
|
262
|
+
|
263
|
+
def ts_cost_management_v2_ccm_by_subscription_type(self,
|
264
|
+
uuid_customer: str, warm_start: bool = False,
|
265
|
+
single_page: bool = False, page_size: int = 5000,
|
266
|
+
kwargs: dict = None, **params) -> list:
|
267
|
+
"""Query Group By Cloud Provider Subscription Type
|
268
|
+
|
269
|
+
Args:
|
270
|
+
uuid_customer (str, required): uuid_customer
|
271
|
+
warm_start (bool, optional): salva la risposta in un file e se viene richiamata la stessa funzione con gli stessi argomenti restituisce il contenuto del file. Default to False.
|
272
|
+
single_page (bool, optional): se False la risposta viene ottenuta a step per non appesantire le API. Default to False.
|
273
|
+
page_size (int, optional): Numero di oggetti per pagina se single_page == False. Default to 5000.
|
274
|
+
kwargs (dict, optional): additional parameters for execute. Default to None.
|
275
|
+
**params: additional parameters for the API.
|
276
|
+
|
277
|
+
Keyword Args:
|
278
|
+
date_start (string optional): additional filter - parameter
|
279
|
+
date_end (string optional): additional filter - parameter
|
280
|
+
skip (integer optional): numero di oggetti che si vogliono saltare nella risposta. Default to 0. - parameter
|
281
|
+
limit (integer optional): numero di oggetti massimi che si vogliono ottenere. Default to 1_000_000. - parameter
|
282
|
+
like (boolean optional): Se True, eventuali filtri richiesti dalla API vengono presi come porzioni di testo, se False il matching sul campo dei filtri deve essere esatto. Default to True. - parameter
|
283
|
+
join (boolean optional): Se join = true, ogni riga restituita conterra' chiavi aggiuntive che fanno riferimento ad altre entita', con cui la riga ha relazioni 1:1. Default to False - parameter
|
284
|
+
count (boolean optional): Se True nel header della risposta e' presente la dimensione massima a db della chiamata fatta, sconsigliabile perche raddoppia il tempo per chiamata. Default to False. - parameter
|
285
|
+
|
286
|
+
Returns: list"""
|
287
|
+
if kwargs is None:
|
288
|
+
kwargs = dict()
|
289
|
+
official_params_list = ['date_start', 'date_end', 'skip', 'limit',
|
290
|
+
'like', 'join', 'count']
|
291
|
+
params.get('date_start'), params.get('date_end'), params.get('skip'
|
292
|
+
), params.get('limit'), params.get('like'), params.get('join'
|
293
|
+
), params.get('count')
|
294
|
+
if not self._silence_warning:
|
295
|
+
warning_wrong_parameters(self.
|
296
|
+
ts_cost_management_v2_ccm_by_subscription_type.__name__,
|
297
|
+
params, official_params_list)
|
298
|
+
response = self.execute('GET', path=
|
299
|
+
f'/ts_cost_management_v2/ccm_by_subscription_type/{uuid_customer}',
|
300
|
+
single_page=single_page, page_size=page_size, warm_start=
|
301
|
+
warm_start, params=params, **kwargs)
|
302
|
+
return response
|
303
|
+
|
304
|
+
def ts_cost_management_v2_ccm_by_category(self, uuid_customer: str,
|
305
|
+
warm_start: bool = False, single_page: bool = False,
|
306
|
+
page_size: int = 5000, kwargs: dict = None, **params) -> list:
|
307
|
+
"""Query Group By Category
|
308
|
+
|
309
|
+
Args:
|
310
|
+
uuid_customer (str, required): uuid_customer
|
311
|
+
warm_start (bool, optional): salva la risposta in un file e se viene richiamata la stessa funzione con gli stessi argomenti restituisce il contenuto del file. Default to False.
|
312
|
+
single_page (bool, optional): se False la risposta viene ottenuta a step per non appesantire le API. Default to False.
|
313
|
+
page_size (int, optional): Numero di oggetti per pagina se single_page == False. Default to 5000.
|
314
|
+
kwargs (dict, optional): additional parameters for execute. Default to None.
|
315
|
+
**params: additional parameters for the API.
|
316
|
+
|
317
|
+
Keyword Args:
|
318
|
+
date_start (string optional): additional filter - parameter
|
319
|
+
date_end (string optional): additional filter - parameter
|
320
|
+
skip (integer optional): numero di oggetti che si vogliono saltare nella risposta. Default to 0. - parameter
|
321
|
+
limit (integer optional): numero di oggetti massimi che si vogliono ottenere. Default to 1_000_000. - parameter
|
322
|
+
like (boolean optional): Se True, eventuali filtri richiesti dalla API vengono presi come porzioni di testo, se False il matching sul campo dei filtri deve essere esatto. Default to True. - parameter
|
323
|
+
join (boolean optional): Se join = true, ogni riga restituita conterra' chiavi aggiuntive che fanno riferimento ad altre entita', con cui la riga ha relazioni 1:1. Default to False - parameter
|
324
|
+
count (boolean optional): Se True nel header della risposta e' presente la dimensione massima a db della chiamata fatta, sconsigliabile perche raddoppia il tempo per chiamata. Default to False. - parameter
|
325
|
+
|
326
|
+
Returns: list"""
|
327
|
+
if kwargs is None:
|
328
|
+
kwargs = dict()
|
329
|
+
official_params_list = ['date_start', 'date_end', 'skip', 'limit',
|
330
|
+
'like', 'join', 'count']
|
331
|
+
params.get('date_start'), params.get('date_end'), params.get('skip'
|
332
|
+
), params.get('limit'), params.get('like'), params.get('join'
|
333
|
+
), params.get('count')
|
334
|
+
if not self._silence_warning:
|
335
|
+
warning_wrong_parameters(self.
|
336
|
+
ts_cost_management_v2_ccm_by_category.__name__, params,
|
337
|
+
official_params_list)
|
338
|
+
response = self.execute('GET', path=
|
339
|
+
f'/ts_cost_management_v2/ccm_by_category/{uuid_customer}',
|
340
|
+
single_page=single_page, page_size=page_size, warm_start=
|
341
|
+
warm_start, params=params, **kwargs)
|
342
|
+
return response
|
343
|
+
|
344
|
+
def ts_cost_management_v2_ccm_by_resource_location(self,
|
345
|
+
uuid_customer: str, warm_start: bool = False,
|
346
|
+
single_page: bool = False, page_size: int = 5000,
|
347
|
+
kwargs: dict = None, **params) -> list:
|
348
|
+
"""Query Group By Resource Location
|
349
|
+
|
350
|
+
Args:
|
351
|
+
uuid_customer (str, required): uuid_customer
|
352
|
+
warm_start (bool, optional): salva la risposta in un file e se viene richiamata la stessa funzione con gli stessi argomenti restituisce il contenuto del file. Default to False.
|
353
|
+
single_page (bool, optional): se False la risposta viene ottenuta a step per non appesantire le API. Default to False.
|
354
|
+
page_size (int, optional): Numero di oggetti per pagina se single_page == False. Default to 5000.
|
355
|
+
kwargs (dict, optional): additional parameters for execute. Default to None.
|
356
|
+
**params: additional parameters for the API.
|
357
|
+
|
358
|
+
Keyword Args:
|
359
|
+
date_start (string optional): additional filter - parameter
|
360
|
+
date_end (string optional): additional filter - parameter
|
361
|
+
skip (integer optional): numero di oggetti che si vogliono saltare nella risposta. Default to 0. - parameter
|
362
|
+
limit (integer optional): numero di oggetti massimi che si vogliono ottenere. Default to 1_000_000. - parameter
|
363
|
+
like (boolean optional): Se True, eventuali filtri richiesti dalla API vengono presi come porzioni di testo, se False il matching sul campo dei filtri deve essere esatto. Default to True. - parameter
|
364
|
+
join (boolean optional): Se join = true, ogni riga restituita conterra' chiavi aggiuntive che fanno riferimento ad altre entita', con cui la riga ha relazioni 1:1. Default to False - parameter
|
365
|
+
count (boolean optional): Se True nel header della risposta e' presente la dimensione massima a db della chiamata fatta, sconsigliabile perche raddoppia il tempo per chiamata. Default to False. - parameter
|
366
|
+
|
367
|
+
Returns: list"""
|
368
|
+
if kwargs is None:
|
369
|
+
kwargs = dict()
|
370
|
+
official_params_list = ['date_start', 'date_end', 'skip', 'limit',
|
371
|
+
'like', 'join', 'count']
|
372
|
+
params.get('date_start'), params.get('date_end'), params.get('skip'
|
373
|
+
), params.get('limit'), params.get('like'), params.get('join'
|
374
|
+
), params.get('count')
|
375
|
+
if not self._silence_warning:
|
376
|
+
warning_wrong_parameters(self.
|
377
|
+
ts_cost_management_v2_ccm_by_resource_location.__name__,
|
378
|
+
params, official_params_list)
|
379
|
+
response = self.execute('GET', path=
|
380
|
+
f'/ts_cost_management_v2/ccm_by_resource_location/{uuid_customer}',
|
381
|
+
single_page=single_page, page_size=page_size, warm_start=
|
382
|
+
warm_start, params=params, **kwargs)
|
383
|
+
return response
|
384
|
+
|
385
|
+
def ts_cost_management_v2_ccm_by_resource_group(self,
|
386
|
+
uuid_customer: str, warm_start: bool = False,
|
387
|
+
single_page: bool = False, page_size: int = 5000,
|
388
|
+
kwargs: dict = None, **params) -> list:
|
389
|
+
"""Query Group By Resource Group
|
390
|
+
|
391
|
+
Args:
|
392
|
+
uuid_customer (str, required): uuid_customer
|
393
|
+
warm_start (bool, optional): salva la risposta in un file e se viene richiamata la stessa funzione con gli stessi argomenti restituisce il contenuto del file. Default to False.
|
394
|
+
single_page (bool, optional): se False la risposta viene ottenuta a step per non appesantire le API. Default to False.
|
395
|
+
page_size (int, optional): Numero di oggetti per pagina se single_page == False. Default to 5000.
|
396
|
+
kwargs (dict, optional): additional parameters for execute. Default to None.
|
397
|
+
**params: additional parameters for the API.
|
398
|
+
|
399
|
+
Keyword Args:
|
400
|
+
date_start (string optional): additional filter - parameter
|
401
|
+
date_end (string optional): additional filter - parameter
|
402
|
+
skip (integer optional): numero di oggetti che si vogliono saltare nella risposta. Default to 0. - parameter
|
403
|
+
limit (integer optional): numero di oggetti massimi che si vogliono ottenere. Default to 1_000_000. - parameter
|
404
|
+
like (boolean optional): Se True, eventuali filtri richiesti dalla API vengono presi come porzioni di testo, se False il matching sul campo dei filtri deve essere esatto. Default to True. - parameter
|
405
|
+
join (boolean optional): Se join = true, ogni riga restituita conterra' chiavi aggiuntive che fanno riferimento ad altre entita', con cui la riga ha relazioni 1:1. Default to False - parameter
|
406
|
+
count (boolean optional): Se True nel header della risposta e' presente la dimensione massima a db della chiamata fatta, sconsigliabile perche raddoppia il tempo per chiamata. Default to False. - parameter
|
407
|
+
|
408
|
+
Returns: list"""
|
409
|
+
if kwargs is None:
|
410
|
+
kwargs = dict()
|
411
|
+
official_params_list = ['date_start', 'date_end', 'skip', 'limit',
|
412
|
+
'like', 'join', 'count']
|
413
|
+
params.get('date_start'), params.get('date_end'), params.get('skip'
|
414
|
+
), params.get('limit'), params.get('like'), params.get('join'
|
415
|
+
), params.get('count')
|
416
|
+
if not self._silence_warning:
|
417
|
+
warning_wrong_parameters(self.
|
418
|
+
ts_cost_management_v2_ccm_by_resource_group.__name__,
|
419
|
+
params, official_params_list)
|
420
|
+
response = self.execute('GET', path=
|
421
|
+
f'/ts_cost_management_v2/ccm_by_resource_group/{uuid_customer}',
|
422
|
+
single_page=single_page, page_size=page_size, warm_start=
|
423
|
+
warm_start, params=params, **kwargs)
|
424
|
+
return response
|
425
|
+
|
426
|
+
def ts_cost_management_v2_ccm_by_subscription(self, uuid_customer: str,
|
427
|
+
warm_start: bool = False, single_page: bool = False,
|
428
|
+
page_size: int = 5000, kwargs: dict = None, **params) -> list:
|
429
|
+
"""Query Group By Subscription
|
430
|
+
|
431
|
+
Args:
|
432
|
+
uuid_customer (str, required): uuid_customer
|
433
|
+
warm_start (bool, optional): salva la risposta in un file e se viene richiamata la stessa funzione con gli stessi argomenti restituisce il contenuto del file. Default to False.
|
434
|
+
single_page (bool, optional): se False la risposta viene ottenuta a step per non appesantire le API. Default to False.
|
435
|
+
page_size (int, optional): Numero di oggetti per pagina se single_page == False. Default to 5000.
|
436
|
+
kwargs (dict, optional): additional parameters for execute. Default to None.
|
437
|
+
**params: additional parameters for the API.
|
438
|
+
|
439
|
+
Keyword Args:
|
440
|
+
date_start (string optional): additional filter - parameter
|
441
|
+
date_end (string optional): additional filter - parameter
|
442
|
+
skip (integer optional): numero di oggetti che si vogliono saltare nella risposta. Default to 0. - parameter
|
443
|
+
limit (integer optional): numero di oggetti massimi che si vogliono ottenere. Default to 1_000_000. - parameter
|
444
|
+
like (boolean optional): Se True, eventuali filtri richiesti dalla API vengono presi come porzioni di testo, se False il matching sul campo dei filtri deve essere esatto. Default to True. - parameter
|
445
|
+
join (boolean optional): Se join = true, ogni riga restituita conterra' chiavi aggiuntive che fanno riferimento ad altre entita', con cui la riga ha relazioni 1:1. Default to False - parameter
|
446
|
+
count (boolean optional): Se True nel header della risposta e' presente la dimensione massima a db della chiamata fatta, sconsigliabile perche raddoppia il tempo per chiamata. Default to False. - parameter
|
447
|
+
|
448
|
+
Returns: list"""
|
449
|
+
if kwargs is None:
|
450
|
+
kwargs = dict()
|
451
|
+
official_params_list = ['date_start', 'date_end', 'skip', 'limit',
|
452
|
+
'like', 'join', 'count']
|
453
|
+
params.get('date_start'), params.get('date_end'), params.get('skip'
|
454
|
+
), params.get('limit'), params.get('like'), params.get('join'
|
455
|
+
), params.get('count')
|
456
|
+
if not self._silence_warning:
|
457
|
+
warning_wrong_parameters(self.
|
458
|
+
ts_cost_management_v2_ccm_by_subscription.__name__, params,
|
459
|
+
official_params_list)
|
460
|
+
response = self.execute('GET', path=
|
461
|
+
f'/ts_cost_management_v2/ccm_by_subscription/{uuid_customer}',
|
462
|
+
single_page=single_page, page_size=page_size, warm_start=
|
463
|
+
warm_start, params=params, **kwargs)
|
464
|
+
return response
|
465
|
+
|
466
|
+
def ts_cost_management_v2_anomalies(self, warm_start: bool = False,
|
467
|
+
single_page: bool = False, page_size: int = 5000,
|
468
|
+
kwargs: dict = None, **params) -> list:
|
469
|
+
"""Query Anomalies
|
470
|
+
|
471
|
+
Args:
|
472
|
+
warm_start (bool, optional): salva la risposta in un file e se viene richiamata la stessa funzione con gli stessi argomenti restituisce il contenuto del file. Default to False.
|
473
|
+
single_page (bool, optional): se False la risposta viene ottenuta a step per non appesantire le API. Default to False.
|
474
|
+
page_size (int, optional): Numero di oggetti per pagina se single_page == False. Default to 5000.
|
475
|
+
kwargs (dict, optional): additional parameters for execute. Default to None.
|
476
|
+
**params: additional parameters for the API.
|
477
|
+
|
478
|
+
Keyword Args:
|
479
|
+
date_start (string optional): additional filter - parameter
|
480
|
+
date_end (string optional): additional filter - parameter
|
481
|
+
skip (integer optional): numero di oggetti che si vogliono saltare nella risposta. Default to 0. - parameter
|
482
|
+
limit (integer optional): numero di oggetti massimi che si vogliono ottenere. Default to 1_000_000. - parameter
|
483
|
+
like (boolean optional): Se True, eventuali filtri richiesti dalla API vengono presi come porzioni di testo, se False il matching sul campo dei filtri deve essere esatto. Default to True. - parameter
|
484
|
+
join (boolean optional): Se join = true, ogni riga restituita conterra' chiavi aggiuntive che fanno riferimento ad altre entita', con cui la riga ha relazioni 1:1. Default to False - parameter
|
485
|
+
count (boolean optional): Se True nel header della risposta e' presente la dimensione massima a db della chiamata fatta, sconsigliabile perche raddoppia il tempo per chiamata. Default to False. - parameter
|
486
|
+
|
487
|
+
Returns: list"""
|
488
|
+
if kwargs is None:
|
489
|
+
kwargs = dict()
|
490
|
+
official_params_list = ['date_start', 'date_end', 'skip', 'limit',
|
491
|
+
'like', 'join', 'count']
|
492
|
+
params.get('date_start'), params.get('date_end'), params.get('skip'
|
493
|
+
), params.get('limit'), params.get('like'), params.get('join'
|
494
|
+
), params.get('count')
|
495
|
+
if not self._silence_warning:
|
496
|
+
warning_wrong_parameters(self.ts_cost_management_v2_anomalies.
|
497
|
+
__name__, params, official_params_list)
|
498
|
+
response = self.execute('GET', path=
|
499
|
+
f'/ts_cost_management_v2/anomalies/', single_page=single_page,
|
500
|
+
page_size=page_size, warm_start=warm_start, params=params, **kwargs
|
501
|
+
)
|
502
|
+
return response
|
503
|
+
|
504
|
+
def ts_cost_management_v2_anomaly_selector(self,
|
505
|
+
warm_start: bool = False, kwargs: dict = None, **params) -> list:
|
506
|
+
"""Query Anomaly Selector
|
507
|
+
|
508
|
+
Args:
|
509
|
+
warm_start (bool, optional): salva la risposta in un file e se viene richiamata la stessa funzione con gli stessi argomenti restituisce il contenuto del file. Default to False.
|
510
|
+
kwargs (dict, optional): additional parameters for execute. Default to None.
|
511
|
+
**params: additional parameters for the API.
|
512
|
+
|
513
|
+
Keyword Args:
|
514
|
+
count (boolean optional): Se True nel header della risposta e' presente la dimensione massima a db della chiamata fatta, sconsigliabile perche raddoppia il tempo per chiamata. Default to False. - parameter
|
515
|
+
date_start (string optional): additional filter - parameter
|
516
|
+
date_end (string optional): additional filter - parameter
|
517
|
+
sampling (None optional): additional filter - parameter
|
518
|
+
uuid_customer (string required): additional filter - parameter
|
519
|
+
cloud_provider (string required): additional filter - parameter
|
520
|
+
description (string required): additional filter - parameter
|
521
|
+
family (string required): additional filter - parameter
|
522
|
+
category (string required): additional filter - parameter
|
523
|
+
|
524
|
+
Returns: list"""
|
525
|
+
if kwargs is None:
|
526
|
+
kwargs = dict()
|
527
|
+
kwargs, params = handling_single_page_methods(kwargs=kwargs, params
|
528
|
+
=params)
|
529
|
+
official_params_list = ['count', 'date_start', 'date_end',
|
530
|
+
'sampling', 'uuid_customer', 'cloud_provider', 'description',
|
531
|
+
'family', 'category']
|
532
|
+
params.get('count'), params.get('date_start'), params.get('date_end'
|
533
|
+
), params.get('sampling'), params.get('uuid_customer'), params.get(
|
534
|
+
'cloud_provider'), params.get('description'), params.get('family'
|
535
|
+
), params.get('category')
|
536
|
+
if not self._silence_warning:
|
537
|
+
warning_wrong_parameters(self.
|
538
|
+
ts_cost_management_v2_anomaly_selector.__name__, params,
|
539
|
+
official_params_list)
|
540
|
+
response = self.execute('GET', path=
|
541
|
+
f'/ts_cost_management_v2/anomaly_selector/', warm_start=
|
542
|
+
warm_start, params=params, **kwargs)
|
543
|
+
return response
|
544
|
+
|
545
|
+
def ts_cost_management_v2_anomaly_selector_geo(self,
|
546
|
+
warm_start: bool = False, kwargs: dict = None, **params) -> list:
|
547
|
+
"""Query Anomaly Selector Geo
|
548
|
+
|
549
|
+
Args:
|
550
|
+
warm_start (bool, optional): salva la risposta in un file e se viene richiamata la stessa funzione con gli stessi argomenti restituisce il contenuto del file. Default to False.
|
551
|
+
kwargs (dict, optional): additional parameters for execute. Default to None.
|
552
|
+
**params: additional parameters for the API.
|
553
|
+
|
554
|
+
Keyword Args:
|
555
|
+
count (boolean optional): Se True nel header della risposta e' presente la dimensione massima a db della chiamata fatta, sconsigliabile perche raddoppia il tempo per chiamata. Default to False. - parameter
|
556
|
+
date_start (string optional): additional filter - parameter
|
557
|
+
date_end (string optional): additional filter - parameter
|
558
|
+
sampling (None optional): additional filter - parameter
|
559
|
+
uuid_customer (string required): additional filter - parameter
|
560
|
+
cloud_provider (string required): additional filter - parameter
|
561
|
+
description (string required): additional filter - parameter
|
562
|
+
resource_location (string required): additional filter - parameter
|
563
|
+
|
564
|
+
Returns: list"""
|
565
|
+
if kwargs is None:
|
566
|
+
kwargs = dict()
|
567
|
+
kwargs, params = handling_single_page_methods(kwargs=kwargs, params
|
568
|
+
=params)
|
569
|
+
official_params_list = ['count', 'date_start', 'date_end',
|
570
|
+
'sampling', 'uuid_customer', 'cloud_provider', 'description',
|
571
|
+
'resource_location']
|
572
|
+
params.get('count'), params.get('date_start'), params.get('date_end'
|
573
|
+
), params.get('sampling'), params.get('uuid_customer'), params.get(
|
574
|
+
'cloud_provider'), params.get('description'), params.get(
|
575
|
+
'resource_location')
|
576
|
+
if not self._silence_warning:
|
577
|
+
warning_wrong_parameters(self.
|
578
|
+
ts_cost_management_v2_anomaly_selector_geo.__name__, params,
|
579
|
+
official_params_list)
|
580
|
+
response = self.execute('GET', path=
|
581
|
+
f'/ts_cost_management_v2/anomaly_selector_geo/', warm_start=
|
582
|
+
warm_start, params=params, **kwargs)
|
583
|
+
return response
|
584
|
+
|
585
|
+
def ts_cost_management_v2_anomalies_geo(self, warm_start: bool = False,
|
586
|
+
single_page: bool = False, page_size: int = 5000,
|
587
|
+
kwargs: dict = None, **params) -> list:
|
588
|
+
"""Query Anomalies Geo
|
589
|
+
|
590
|
+
Args:
|
591
|
+
warm_start (bool, optional): salva la risposta in un file e se viene richiamata la stessa funzione con gli stessi argomenti restituisce il contenuto del file. Default to False.
|
592
|
+
single_page (bool, optional): se False la risposta viene ottenuta a step per non appesantire le API. Default to False.
|
593
|
+
page_size (int, optional): Numero di oggetti per pagina se single_page == False. Default to 5000.
|
594
|
+
kwargs (dict, optional): additional parameters for execute. Default to None.
|
595
|
+
**params: additional parameters for the API.
|
596
|
+
|
597
|
+
Keyword Args:
|
598
|
+
date_start (string optional): additional filter - parameter
|
599
|
+
date_end (string optional): additional filter - parameter
|
600
|
+
skip (integer optional): numero di oggetti che si vogliono saltare nella risposta. Default to 0. - parameter
|
601
|
+
limit (integer optional): numero di oggetti massimi che si vogliono ottenere. Default to 1_000_000. - parameter
|
602
|
+
like (boolean optional): Se True, eventuali filtri richiesti dalla API vengono presi come porzioni di testo, se False il matching sul campo dei filtri deve essere esatto. Default to True. - parameter
|
603
|
+
join (boolean optional): Se join = true, ogni riga restituita conterra' chiavi aggiuntive che fanno riferimento ad altre entita', con cui la riga ha relazioni 1:1. Default to False - parameter
|
604
|
+
count (boolean optional): Se True nel header della risposta e' presente la dimensione massima a db della chiamata fatta, sconsigliabile perche raddoppia il tempo per chiamata. Default to False. - parameter
|
605
|
+
|
606
|
+
Returns: list"""
|
607
|
+
if kwargs is None:
|
608
|
+
kwargs = dict()
|
609
|
+
official_params_list = ['date_start', 'date_end', 'skip', 'limit',
|
610
|
+
'like', 'join', 'count']
|
611
|
+
params.get('date_start'), params.get('date_end'), params.get('skip'
|
612
|
+
), params.get('limit'), params.get('like'), params.get('join'
|
613
|
+
), params.get('count')
|
614
|
+
if not self._silence_warning:
|
615
|
+
warning_wrong_parameters(self.
|
616
|
+
ts_cost_management_v2_anomalies_geo.__name__, params,
|
617
|
+
official_params_list)
|
618
|
+
response = self.execute('GET', path=
|
619
|
+
f'/ts_cost_management_v2/anomalies_geo/', single_page=
|
620
|
+
single_page, page_size=page_size, warm_start=warm_start, params
|
621
|
+
=params, **kwargs)
|
622
|
+
return response
|
623
|
+
|
624
|
+
def ts_cost_management_v2_probe_delete(self, uuid_probe: str,
|
625
|
+
kwargs: dict = None, **params) -> list:
|
626
|
+
"""Delete By Uuid Probe And Date Range
|
627
|
+
|
628
|
+
Args:
|
629
|
+
uuid_probe (str, required): uuid_probe
|
630
|
+
kwargs (dict, optional): additional parameters for execute. Default to None.
|
631
|
+
**params: additional parameters for the API.
|
632
|
+
|
633
|
+
Keyword Args:
|
634
|
+
tenant_id (string optional): additional filter - parameter
|
635
|
+
date_start (string required): additional filter - parameter
|
636
|
+
date_end (string required): additional filter - parameter
|
637
|
+
profile (string optional): additional filter - parameter
|
638
|
+
|
639
|
+
Returns: list"""
|
640
|
+
if kwargs is None:
|
641
|
+
kwargs = dict()
|
642
|
+
official_params_list = ['tenant_id', 'date_start', 'date_end',
|
643
|
+
'profile']
|
644
|
+
params.get('tenant_id'), params.get('date_start'), params.get(
|
645
|
+
'date_end'), params.get('profile')
|
646
|
+
if not self._silence_warning:
|
647
|
+
warning_wrong_parameters(self.
|
648
|
+
ts_cost_management_v2_probe_delete.__name__, params,
|
649
|
+
official_params_list)
|
650
|
+
response = self.execute('DELETE', path=
|
651
|
+
f'/ts_cost_management_v2/probe/{uuid_probe}/', params=params,
|
652
|
+
**kwargs)
|
653
|
+
return response
|