xautomata-hive 3.15.5__py3-none-any.whl → 3.16.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 +3 -1
- hive/cookbook/cost_tagging.py +19 -18
- hive/cookbook/cost_tree_nodes.py +213 -0
- hive/cookbook/cost_tree_resources.py +155 -0
- hive/cookbook/cost_views.py +12 -9
- hive/cookbook/customers.py +25 -9
- hive/cookbook/dispatchers.py +1 -1
- hive/cookbook/downtimes.py +1 -1
- hive/cookbook/tree_hierarchy.py +21 -18
- hive/cookbook/ts_cost_management.py +10 -7
- hive/cookbook/ts_metric_status.py +10 -5
- hive/cookbook/ts_metric_value.py +10 -6
- hive/cookbook/ts_ntop_flows.py +35 -21
- hive/tools.py +20 -1
- hive/version.py +1 -1
- {xautomata_hive-3.15.5.dist-info → xautomata_hive-3.16.0.dist-info}/METADATA +2 -2
- {xautomata_hive-3.15.5.dist-info → xautomata_hive-3.16.0.dist-info}/RECORD +20 -18
- {xautomata_hive-3.15.5.dist-info → xautomata_hive-3.16.0.dist-info}/LICENSE +0 -0
- {xautomata_hive-3.15.5.dist-info → xautomata_hive-3.16.0.dist-info}/WHEEL +0 -0
- {xautomata_hive-3.15.5.dist-info → xautomata_hive-3.16.0.dist-info}/top_level.txt +0 -0
hive/api.py
CHANGED
@@ -474,6 +474,8 @@ from hive.cookbook.calendars import Calendars
|
|
474
474
|
from hive.cookbook.cost_tagging import CostTagging
|
475
475
|
from hive.cookbook.cost_tags import CostTags
|
476
476
|
from hive.cookbook.cost_views import CostViews
|
477
|
+
from hive.cookbook.cost_tree_nodes import CostTreeNodes
|
478
|
+
from hive.cookbook.cost_tree_resources import CostTreeResources
|
477
479
|
from hive.cookbook.contacts import Contacts
|
478
480
|
from hive.cookbook.customers import Customers
|
479
481
|
from hive.cookbook.dashboards import Dashboards
|
@@ -523,7 +525,7 @@ from hive.cookbook.widget_groups import WidgetGroups
|
|
523
525
|
# hive imports stop
|
524
526
|
|
525
527
|
|
526
|
-
class XautomataApi(AclDocs, AclOverrides, Analytics, Anomalies, Calendars, CostTagging, CostTags, CostViews, Contacts, Customers, Dashboards, Dispatchers, Downtimes, ExternalTickets, Features, FirmwareUpdates, Groups, MetricIngest, Microsoft, Google, Login, Jobs, Messages, Metrics, ProbesLogIngest, MetricTypes, NotificationProviders, NotificationProviderTypes, Objects, OpeningReasons, Probes, ProbeTypes, ProfileTopics, ReasonForClosure, RetentionRules, Schedules, Services, Sites, LastStatus, TermsAndConditions, TreeHierarchy, TsCostAzureRaw, TsCostManagement, TsMetricStatus, TsMetricValue, TsNtopFlows, TsServiceStatus, TsServiceValue, Users, UsersNotifications, VirtualDomains, Widgets, Webhooks, WidgetGroups):
|
528
|
+
class XautomataApi(AclDocs, AclOverrides, Analytics, Anomalies, Calendars, CostTagging, CostTags, CostViews, CostTreeNodes, CostTreeResources, Contacts, Customers, Dashboards, Dispatchers, Downtimes, ExternalTickets, Features, FirmwareUpdates, Groups, MetricIngest, Microsoft, Google, Login, Jobs, Messages, Metrics, ProbesLogIngest, MetricTypes, NotificationProviders, NotificationProviderTypes, Objects, OpeningReasons, Probes, ProbeTypes, ProfileTopics, ReasonForClosure, RetentionRules, Schedules, Services, Sites, LastStatus, TermsAndConditions, TreeHierarchy, TsCostAzureRaw, TsCostManagement, TsMetricStatus, TsMetricValue, TsNtopFlows, TsServiceStatus, TsServiceValue, Users, UsersNotifications, VirtualDomains, Widgets, Webhooks, WidgetGroups):
|
527
529
|
"""
|
528
530
|
Class with each specific API, based on the ApiManager Class created for a more general interaction with Xautomata API
|
529
531
|
"""
|
hive/cookbook/cost_tagging.py
CHANGED
@@ -19,6 +19,7 @@ class CostTagging(ApiManager):
|
|
19
19
|
Keyword Args:
|
20
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
21
|
uuid_view (string optional): additional filter - parameter
|
22
|
+
uuid_tag (string optional): additional filter - parameter
|
22
23
|
tag_code (string optional): additional filter - parameter
|
23
24
|
cost_category (string optional): additional filter - parameter
|
24
25
|
cost_category_value (string optional): additional filter - parameter
|
@@ -32,14 +33,14 @@ class CostTagging(ApiManager):
|
|
32
33
|
Returns: list"""
|
33
34
|
if kwargs is None:
|
34
35
|
kwargs = dict()
|
35
|
-
official_params_list = ['sort_by', 'uuid_view', '
|
36
|
-
'
|
37
|
-
'limit', 'like', 'join', 'count']
|
38
|
-
params.get('sort_by'), params.get('uuid_view'), params.get('
|
39
|
-
), params.get('
|
40
|
-
|
41
|
-
'
|
42
|
-
'count')
|
36
|
+
official_params_list = ['sort_by', 'uuid_view', 'uuid_tag',
|
37
|
+
'tag_code', 'cost_category', 'cost_category_value',
|
38
|
+
'null_fields', 'skip', 'limit', 'like', 'join', 'count']
|
39
|
+
params.get('sort_by'), params.get('uuid_view'), params.get('uuid_tag'
|
40
|
+
), params.get('tag_code'), params.get('cost_category'), params.get(
|
41
|
+
'cost_category_value'), params.get('null_fields'), params.get(
|
42
|
+
'skip'), params.get('limit'), params.get('like'), params.get('join'
|
43
|
+
), params.get('count')
|
43
44
|
if not self._silence_warning:
|
44
45
|
warning_wrong_parameters(self.cost_tagging.__name__, params,
|
45
46
|
official_params_list)
|
@@ -56,18 +57,18 @@ class CostTagging(ApiManager):
|
|
56
57
|
**payload: additional parameters for the API.
|
57
58
|
|
58
59
|
Keyword Args:
|
59
|
-
tag_code (string required): additional filter - payload
|
60
60
|
cost_category_value (string required): additional filter - payload
|
61
61
|
cost_category (string required): additional filter - payload
|
62
62
|
uuid_view (string required): additional filter - payload
|
63
|
+
uuid_tag (string required): additional filter - payload
|
63
64
|
|
64
65
|
Returns: list"""
|
65
66
|
if kwargs is None:
|
66
67
|
kwargs = dict()
|
67
|
-
official_payload_list = ['
|
68
|
-
'
|
69
|
-
payload.get('
|
70
|
-
), payload.get('
|
68
|
+
official_payload_list = ['cost_category_value', 'cost_category',
|
69
|
+
'uuid_view', 'uuid_tag']
|
70
|
+
payload.get('cost_category_value'), payload.get('cost_category'
|
71
|
+
), payload.get('uuid_view'), payload.get('uuid_tag')
|
71
72
|
if not self._silence_warning:
|
72
73
|
warning_wrong_parameters(self.cost_tagging_create.__name__,
|
73
74
|
payload, official_payload_list)
|
@@ -112,18 +113,18 @@ class CostTagging(ApiManager):
|
|
112
113
|
**payload: additional parameters for the API.
|
113
114
|
|
114
115
|
Keyword Args:
|
115
|
-
tag_code (string optional): additional filter - payload
|
116
116
|
cost_category_value (string optional): additional filter - payload
|
117
117
|
cost_category (string optional): additional filter - payload
|
118
118
|
uuid_view (string optional): additional filter - payload
|
119
|
+
uuid_tag (string optional): additional filter - payload
|
119
120
|
|
120
121
|
Returns: list"""
|
121
122
|
if kwargs is None:
|
122
123
|
kwargs = dict()
|
123
|
-
official_payload_list = ['
|
124
|
-
'
|
125
|
-
payload.get('
|
126
|
-
), payload.get('
|
124
|
+
official_payload_list = ['cost_category_value', 'cost_category',
|
125
|
+
'uuid_view', 'uuid_tag']
|
126
|
+
payload.get('cost_category_value'), payload.get('cost_category'
|
127
|
+
), payload.get('uuid_view'), payload.get('uuid_tag')
|
127
128
|
if not self._silence_warning:
|
128
129
|
warning_wrong_parameters(self.cost_tagging_put.__name__,
|
129
130
|
payload, official_payload_list)
|
@@ -0,0 +1,213 @@
|
|
1
|
+
from hive.api import ApiManager, handling_single_page_methods, warning_wrong_parameters
|
2
|
+
|
3
|
+
|
4
|
+
class CostTreeNodes(ApiManager):
|
5
|
+
"""Class that handles all the XAutomata cost_tree_nodes APIs"""
|
6
|
+
|
7
|
+
def cost_tree_nodes(self, warm_start: bool = False,
|
8
|
+
single_page: bool = False, page_size: int = 5000,
|
9
|
+
kwargs: dict = None, **params) -> list:
|
10
|
+
"""Read Cost Tree Nodes
|
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
|
+
uuid_parent (string optional): additional filter - parameter
|
22
|
+
code (string optional): additional filter - parameter
|
23
|
+
description (string optional): additional filter - parameter
|
24
|
+
uuid_view (string optional): additional filter - parameter
|
25
|
+
budget (integer optional): additional filter - parameter
|
26
|
+
null_fields (string optional): additional filter - parameter
|
27
|
+
skip (integer optional): numero di oggetti che si vogliono saltare nella risposta. Default to 0. - parameter
|
28
|
+
limit (integer optional): numero di oggetti massimi che si vogliono ottenere. Default to 1_000_000. - parameter
|
29
|
+
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
|
30
|
+
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
|
31
|
+
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
|
32
|
+
|
33
|
+
Returns: list"""
|
34
|
+
if kwargs is None:
|
35
|
+
kwargs = dict()
|
36
|
+
official_params_list = ['sort_by', 'uuid_parent', 'code',
|
37
|
+
'description', 'uuid_view', 'budget', 'null_fields', 'skip',
|
38
|
+
'limit', 'like', 'join', 'count']
|
39
|
+
params.get('sort_by'), params.get('uuid_parent'), params.get('code'
|
40
|
+
), params.get('description'), params.get('uuid_view'), params.get(
|
41
|
+
'budget'), params.get('null_fields'), params.get('skip'
|
42
|
+
), params.get('limit'), params.get('like'), params.get('join'
|
43
|
+
), params.get('count')
|
44
|
+
if not self._silence_warning:
|
45
|
+
warning_wrong_parameters(self.cost_tree_nodes.__name__, params,
|
46
|
+
official_params_list)
|
47
|
+
response = self.execute('GET', path=f'/cost_tree_nodes/',
|
48
|
+
single_page=single_page, page_size=page_size, warm_start=
|
49
|
+
warm_start, params=params, **kwargs)
|
50
|
+
return response
|
51
|
+
|
52
|
+
def cost_tree_nodes_create(self, kwargs: dict = None, **payload) -> list:
|
53
|
+
"""Create Cost Tree Node
|
54
|
+
|
55
|
+
Args:
|
56
|
+
kwargs (dict, optional): additional parameters for execute. Default to None.
|
57
|
+
**payload: additional parameters for the API.
|
58
|
+
|
59
|
+
Keyword Args:
|
60
|
+
uuid_parent (string optional): additional filter - payload
|
61
|
+
code (string required): additional filter - payload
|
62
|
+
description (string optional): additional filter - payload
|
63
|
+
uuid_view (string required): additional filter - payload
|
64
|
+
budget (integer optional): additional filter - payload
|
65
|
+
|
66
|
+
Returns: list"""
|
67
|
+
if kwargs is None:
|
68
|
+
kwargs = dict()
|
69
|
+
official_payload_list = ['uuid_parent', 'code', 'description',
|
70
|
+
'uuid_view', 'budget']
|
71
|
+
payload.get('uuid_parent'), payload.get('code'), payload.get(
|
72
|
+
'description'), payload.get('uuid_view'), payload.get('budget')
|
73
|
+
if not self._silence_warning:
|
74
|
+
warning_wrong_parameters(self.cost_tree_nodes_create.__name__,
|
75
|
+
payload, official_payload_list)
|
76
|
+
response = self.execute('POST', path=f'/cost_tree_nodes/', payload=
|
77
|
+
payload, **kwargs)
|
78
|
+
return response
|
79
|
+
|
80
|
+
def cost_tree_node(self, uuid: str, warm_start: bool = False,
|
81
|
+
kwargs: dict = None, **params) -> list:
|
82
|
+
"""Read Cost Tree Node
|
83
|
+
|
84
|
+
Args:
|
85
|
+
uuid (str, required): uuid
|
86
|
+
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.
|
87
|
+
kwargs (dict, optional): additional parameters for execute. Default to None.
|
88
|
+
**params: additional parameters for the API.
|
89
|
+
|
90
|
+
Keyword Args:
|
91
|
+
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
|
92
|
+
|
93
|
+
Returns: list"""
|
94
|
+
if kwargs is None:
|
95
|
+
kwargs = dict()
|
96
|
+
kwargs, params = handling_single_page_methods(kwargs=kwargs, params
|
97
|
+
=params)
|
98
|
+
official_params_list = ['join']
|
99
|
+
params.get('join')
|
100
|
+
if not self._silence_warning:
|
101
|
+
warning_wrong_parameters(self.cost_tree_node.__name__, params,
|
102
|
+
official_params_list)
|
103
|
+
response = self.execute('GET', path=f'/cost_tree_nodes/{uuid}',
|
104
|
+
warm_start=warm_start, params=params, **kwargs)
|
105
|
+
return response
|
106
|
+
|
107
|
+
def cost_tree_nodes_put(self, uuid: str, kwargs: dict = None, **payload
|
108
|
+
) -> list:
|
109
|
+
"""Update Cost Tree Node
|
110
|
+
|
111
|
+
Args:
|
112
|
+
uuid (str, required): uuid
|
113
|
+
kwargs (dict, optional): additional parameters for execute. Default to None.
|
114
|
+
**payload: additional parameters for the API.
|
115
|
+
|
116
|
+
Keyword Args:
|
117
|
+
uuid_parent (string optional): additional filter - payload
|
118
|
+
code (string optional): additional filter - payload
|
119
|
+
description (string optional): additional filter - payload
|
120
|
+
uuid_view (string optional): additional filter - payload
|
121
|
+
budget (integer optional): additional filter - payload
|
122
|
+
|
123
|
+
Returns: list"""
|
124
|
+
if kwargs is None:
|
125
|
+
kwargs = dict()
|
126
|
+
official_payload_list = ['uuid_parent', 'code', 'description',
|
127
|
+
'uuid_view', 'budget']
|
128
|
+
payload.get('uuid_parent'), payload.get('code'), payload.get(
|
129
|
+
'description'), payload.get('uuid_view'), payload.get('budget')
|
130
|
+
if not self._silence_warning:
|
131
|
+
warning_wrong_parameters(self.cost_tree_nodes_put.__name__,
|
132
|
+
payload, official_payload_list)
|
133
|
+
response = self.execute('PUT', path=f'/cost_tree_nodes/{uuid}',
|
134
|
+
payload=payload, **kwargs)
|
135
|
+
return response
|
136
|
+
|
137
|
+
def cost_tree_nodes_delete(self, uuid: str, kwargs: dict = None) -> list:
|
138
|
+
"""Delete Cost Tree Node
|
139
|
+
|
140
|
+
Args:
|
141
|
+
uuid (str, required): uuid
|
142
|
+
kwargs (dict, optional): additional parameters for execute. Default to None.
|
143
|
+
|
144
|
+
Returns: list"""
|
145
|
+
if kwargs is None:
|
146
|
+
kwargs = dict()
|
147
|
+
response = self.execute('DELETE', path=f'/cost_tree_nodes/{uuid}',
|
148
|
+
**kwargs)
|
149
|
+
return response
|
150
|
+
|
151
|
+
def cost_tree_nodes_navigate_tree(self, uuid: str,
|
152
|
+
warm_start: bool = False, kwargs: dict = None, **params) -> list:
|
153
|
+
"""Get Tree From Node
|
154
|
+
|
155
|
+
Args:
|
156
|
+
uuid (str, required): uuid
|
157
|
+
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.
|
158
|
+
kwargs (dict, optional): additional parameters for execute. Default to None.
|
159
|
+
**params: additional parameters for the API.
|
160
|
+
|
161
|
+
Keyword Args:
|
162
|
+
ts_start (string required): additional filter - parameter
|
163
|
+
ts_end (string required): additional filter - parameter
|
164
|
+
|
165
|
+
Returns: list"""
|
166
|
+
if kwargs is None:
|
167
|
+
kwargs = dict()
|
168
|
+
kwargs, params = handling_single_page_methods(kwargs=kwargs, params
|
169
|
+
=params)
|
170
|
+
official_params_list = ['ts_start', 'ts_end']
|
171
|
+
params.get('ts_start'), params.get('ts_end')
|
172
|
+
if not self._silence_warning:
|
173
|
+
warning_wrong_parameters(self.cost_tree_nodes_navigate_tree.
|
174
|
+
__name__, params, official_params_list)
|
175
|
+
response = self.execute('GET', path=
|
176
|
+
f'/cost_tree_nodes/navigate_tree/{uuid}', warm_start=warm_start,
|
177
|
+
params=params, **kwargs)
|
178
|
+
return response
|
179
|
+
|
180
|
+
def cost_tree_nodes_get_node_resources(self, uuid: str,
|
181
|
+
warm_start: bool = False, single_page: bool = False,
|
182
|
+
page_size: int = 5000, kwargs: dict = None, **params) -> list:
|
183
|
+
"""Get Resources From Node
|
184
|
+
|
185
|
+
Args:
|
186
|
+
uuid (str, required): uuid
|
187
|
+
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.
|
188
|
+
single_page (bool, optional): se False la risposta viene ottenuta a step per non appesantire le API. Default to False.
|
189
|
+
page_size (int, optional): Numero di oggetti per pagina se single_page == False. Default to 5000.
|
190
|
+
kwargs (dict, optional): additional parameters for execute. Default to None.
|
191
|
+
**params: additional parameters for the API.
|
192
|
+
|
193
|
+
Keyword Args:
|
194
|
+
ts_start (string required): additional filter - parameter
|
195
|
+
ts_end (string required): additional filter - parameter
|
196
|
+
skip (integer optional): numero di oggetti che si vogliono saltare nella risposta. Default to 0. - parameter
|
197
|
+
limit (integer optional): numero di oggetti massimi che si vogliono ottenere. Default to 1_000_000. - parameter
|
198
|
+
|
199
|
+
Returns: list"""
|
200
|
+
if kwargs is None:
|
201
|
+
kwargs = dict()
|
202
|
+
official_params_list = ['ts_start', 'ts_end', 'skip', 'limit']
|
203
|
+
params.get('ts_start'), params.get('ts_end'), params.get('skip'
|
204
|
+
), params.get('limit')
|
205
|
+
if not self._silence_warning:
|
206
|
+
warning_wrong_parameters(self.
|
207
|
+
cost_tree_nodes_get_node_resources.__name__, params,
|
208
|
+
official_params_list)
|
209
|
+
response = self.execute('GET', path=
|
210
|
+
f'/cost_tree_nodes/get_node_resources/{uuid}', single_page=
|
211
|
+
single_page, page_size=page_size, warm_start=warm_start, params
|
212
|
+
=params, **kwargs)
|
213
|
+
return response
|
@@ -0,0 +1,155 @@
|
|
1
|
+
from hive.api import ApiManager, handling_single_page_methods, warning_wrong_parameters
|
2
|
+
|
3
|
+
|
4
|
+
class CostTreeResources(ApiManager):
|
5
|
+
"""Class that handles all the XAutomata cost_tree_resources APIs"""
|
6
|
+
|
7
|
+
def cost_tree_resources(self, warm_start: bool = False,
|
8
|
+
single_page: bool = False, page_size: int = 5000,
|
9
|
+
kwargs: dict = None, **params) -> list:
|
10
|
+
"""Read Cost Tree Resources
|
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
|
+
uuid_tree_node (string optional): additional filter - parameter
|
22
|
+
uuid_tag (string optional): additional filter - parameter
|
23
|
+
cost_category (string optional): additional filter - parameter
|
24
|
+
cost_category_value (string optional): additional filter - parameter
|
25
|
+
percentage (integer optional): additional filter - parameter
|
26
|
+
null_fields (string optional): additional filter - parameter
|
27
|
+
skip (integer optional): numero di oggetti che si vogliono saltare nella risposta. Default to 0. - parameter
|
28
|
+
limit (integer optional): numero di oggetti massimi che si vogliono ottenere. Default to 1_000_000. - parameter
|
29
|
+
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
|
30
|
+
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
|
31
|
+
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
|
32
|
+
|
33
|
+
Returns: list"""
|
34
|
+
if kwargs is None:
|
35
|
+
kwargs = dict()
|
36
|
+
official_params_list = ['sort_by', 'uuid_tree_node', 'uuid_tag',
|
37
|
+
'cost_category', 'cost_category_value', 'percentage',
|
38
|
+
'null_fields', 'skip', 'limit', 'like', 'join', 'count']
|
39
|
+
params.get('sort_by'), params.get('uuid_tree_node'), params.get(
|
40
|
+
'uuid_tag'), params.get('cost_category'), params.get(
|
41
|
+
'cost_category_value'), params.get('percentage'), params.get(
|
42
|
+
'null_fields'), params.get('skip'), params.get('limit'
|
43
|
+
), params.get('like'), params.get('join'), params.get('count')
|
44
|
+
if not self._silence_warning:
|
45
|
+
warning_wrong_parameters(self.cost_tree_resources.__name__,
|
46
|
+
params, official_params_list)
|
47
|
+
response = self.execute('GET', path=f'/cost_tree_resources/',
|
48
|
+
single_page=single_page, page_size=page_size, warm_start=
|
49
|
+
warm_start, params=params, **kwargs)
|
50
|
+
return response
|
51
|
+
|
52
|
+
def cost_tree_resources_create(self, kwargs: dict = None, **payload
|
53
|
+
) -> list:
|
54
|
+
"""Create Cost Tree Resource
|
55
|
+
|
56
|
+
Args:
|
57
|
+
kwargs (dict, optional): additional parameters for execute. Default to None.
|
58
|
+
**payload: additional parameters for the API.
|
59
|
+
|
60
|
+
Keyword Args:
|
61
|
+
uuid_tree_node (string required): additional filter - payload
|
62
|
+
cost_category (string required): additional filter - payload
|
63
|
+
cost_category_value (string required): additional filter - payload
|
64
|
+
percentage (integer optional): additional filter - payload
|
65
|
+
|
66
|
+
Returns: list"""
|
67
|
+
if kwargs is None:
|
68
|
+
kwargs = dict()
|
69
|
+
official_payload_list = ['uuid_tree_node', 'cost_category',
|
70
|
+
'cost_category_value', 'percentage']
|
71
|
+
payload.get('uuid_tree_node'), payload.get('cost_category'
|
72
|
+
), payload.get('cost_category_value'), payload.get('percentage')
|
73
|
+
if not self._silence_warning:
|
74
|
+
warning_wrong_parameters(self.cost_tree_resources_create.
|
75
|
+
__name__, payload, official_payload_list)
|
76
|
+
response = self.execute('POST', path=f'/cost_tree_resources/',
|
77
|
+
payload=payload, **kwargs)
|
78
|
+
return response
|
79
|
+
|
80
|
+
def cost_tree_resources_uuid_tree_node(self, uuid_tree_node: str,
|
81
|
+
uuid_tag: str, warm_start: bool = False, kwargs: dict = None, **params
|
82
|
+
) -> list:
|
83
|
+
"""Read Cost Tree Resources
|
84
|
+
|
85
|
+
Args:
|
86
|
+
uuid_tree_node (str, required): uuid_tree_node
|
87
|
+
uuid_tag (str, required): uuid_tag
|
88
|
+
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.
|
89
|
+
kwargs (dict, optional): additional parameters for execute. Default to None.
|
90
|
+
**params: additional parameters for the API.
|
91
|
+
|
92
|
+
Keyword Args:
|
93
|
+
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
|
94
|
+
|
95
|
+
Returns: list"""
|
96
|
+
if kwargs is None:
|
97
|
+
kwargs = dict()
|
98
|
+
kwargs, params = handling_single_page_methods(kwargs=kwargs, params
|
99
|
+
=params)
|
100
|
+
official_params_list = ['join']
|
101
|
+
params.get('join')
|
102
|
+
if not self._silence_warning:
|
103
|
+
warning_wrong_parameters(self.cost_tree_resources.__name__,
|
104
|
+
params, official_params_list)
|
105
|
+
response = self.execute('GET', path=
|
106
|
+
f'/cost_tree_resources/{uuid_tree_node}/{uuid_tag}', warm_start
|
107
|
+
=warm_start, params=params, **kwargs)
|
108
|
+
return response
|
109
|
+
|
110
|
+
def cost_tree_resources_put(self, uuid_tree_node: str, uuid_tag: str,
|
111
|
+
kwargs: dict = None, **payload) -> list:
|
112
|
+
"""Update Cost Tree Resources
|
113
|
+
|
114
|
+
Args:
|
115
|
+
uuid_tree_node (str, required): uuid_tree_node
|
116
|
+
uuid_tag (str, required): uuid_tag
|
117
|
+
kwargs (dict, optional): additional parameters for execute. Default to None.
|
118
|
+
**payload: additional parameters for the API.
|
119
|
+
|
120
|
+
Keyword Args:
|
121
|
+
uuid_tree_node (string optional): additional filter - payload
|
122
|
+
cost_category (string optional): additional filter - payload
|
123
|
+
cost_category_value (string optional): additional filter - payload
|
124
|
+
percentage (integer optional): additional filter - payload
|
125
|
+
|
126
|
+
Returns: list"""
|
127
|
+
if kwargs is None:
|
128
|
+
kwargs = dict()
|
129
|
+
official_payload_list = ['uuid_tree_node', 'cost_category',
|
130
|
+
'cost_category_value', 'percentage']
|
131
|
+
payload.get('uuid_tree_node'), payload.get('cost_category'
|
132
|
+
), payload.get('cost_category_value'), payload.get('percentage')
|
133
|
+
if not self._silence_warning:
|
134
|
+
warning_wrong_parameters(self.cost_tree_resources_put.__name__,
|
135
|
+
payload, official_payload_list)
|
136
|
+
response = self.execute('PUT', path=
|
137
|
+
f'/cost_tree_resources/{uuid_tree_node}/{uuid_tag}', payload=
|
138
|
+
payload, **kwargs)
|
139
|
+
return response
|
140
|
+
|
141
|
+
def cost_tree_resources_delete(self, uuid_tree_node: str, uuid_tag: str,
|
142
|
+
kwargs: dict = None) -> list:
|
143
|
+
"""Delete Cost Tree Resources
|
144
|
+
|
145
|
+
Args:
|
146
|
+
uuid_tree_node (str, required): uuid_tree_node
|
147
|
+
uuid_tag (str, required): uuid_tag
|
148
|
+
kwargs (dict, optional): additional parameters for execute. Default to None.
|
149
|
+
|
150
|
+
Returns: list"""
|
151
|
+
if kwargs is None:
|
152
|
+
kwargs = dict()
|
153
|
+
response = self.execute('DELETE', path=
|
154
|
+
f'/cost_tree_resources/{uuid_tree_node}/{uuid_tag}', **kwargs)
|
155
|
+
return response
|
hive/cookbook/cost_views.py
CHANGED
@@ -20,6 +20,7 @@ class CostViews(ApiManager):
|
|
20
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
21
|
name (string optional): additional filter - parameter
|
22
22
|
description (string optional): additional filter - parameter
|
23
|
+
type (string optional): additional filter - parameter
|
23
24
|
null_fields (string optional): additional filter - parameter
|
24
25
|
skip (integer optional): numero di oggetti che si vogliono saltare nella risposta. Default to 0. - parameter
|
25
26
|
limit (integer optional): numero di oggetti massimi che si vogliono ottenere. Default to 1_000_000. - parameter
|
@@ -30,12 +31,12 @@ class CostViews(ApiManager):
|
|
30
31
|
Returns: list"""
|
31
32
|
if kwargs is None:
|
32
33
|
kwargs = dict()
|
33
|
-
official_params_list = ['sort_by', 'name', 'description',
|
34
|
+
official_params_list = ['sort_by', 'name', 'description', 'type',
|
34
35
|
'null_fields', 'skip', 'limit', 'like', 'join', 'count']
|
35
36
|
params.get('sort_by'), params.get('name'), params.get('description'
|
36
|
-
), params.get('
|
37
|
-
|
38
|
-
'count')
|
37
|
+
), params.get('type'), params.get('null_fields'), params.get('skip'
|
38
|
+
), params.get('limit'), params.get('like'), params.get('join'
|
39
|
+
), params.get('count')
|
39
40
|
if not self._silence_warning:
|
40
41
|
warning_wrong_parameters(self.cost_views.__name__, params,
|
41
42
|
official_params_list)
|
@@ -53,13 +54,14 @@ class CostViews(ApiManager):
|
|
53
54
|
|
54
55
|
Keyword Args:
|
55
56
|
name (string required): additional filter - payload
|
56
|
-
description (string
|
57
|
+
description (string optional): additional filter - payload
|
58
|
+
type (string optional): additional filter - payload
|
57
59
|
|
58
60
|
Returns: list"""
|
59
61
|
if kwargs is None:
|
60
62
|
kwargs = dict()
|
61
|
-
official_payload_list = ['name', 'description']
|
62
|
-
payload.get('name'), payload.get('description')
|
63
|
+
official_payload_list = ['name', 'description', 'type']
|
64
|
+
payload.get('name'), payload.get('description'), payload.get('type')
|
63
65
|
if not self._silence_warning:
|
64
66
|
warning_wrong_parameters(self.cost_views_create.__name__,
|
65
67
|
payload, official_payload_list)
|
@@ -106,12 +108,13 @@ class CostViews(ApiManager):
|
|
106
108
|
Keyword Args:
|
107
109
|
name (string optional): additional filter - payload
|
108
110
|
description (string optional): additional filter - payload
|
111
|
+
type (string optional): additional filter - payload
|
109
112
|
|
110
113
|
Returns: list"""
|
111
114
|
if kwargs is None:
|
112
115
|
kwargs = dict()
|
113
|
-
official_payload_list = ['name', 'description']
|
114
|
-
payload.get('name'), payload.get('description')
|
116
|
+
official_payload_list = ['name', 'description', 'type']
|
117
|
+
payload.get('name'), payload.get('description'), payload.get('type')
|
115
118
|
if not self._silence_warning:
|
116
119
|
warning_wrong_parameters(self.cost_views_put.__name__, payload,
|
117
120
|
official_payload_list)
|
hive/cookbook/customers.py
CHANGED
@@ -717,6 +717,22 @@ class Customers(ApiManager):
|
|
717
717
|
warm_start, params=params, **kwargs)
|
718
718
|
return response
|
719
719
|
|
720
|
+
def customers_by_vat(self, vat_id: str, warm_start: bool = False,
|
721
|
+
kwargs: dict = None) -> list:
|
722
|
+
"""Get Customer By Vat Id
|
723
|
+
|
724
|
+
Args:
|
725
|
+
vat_id (str, required): vat_id
|
726
|
+
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.
|
727
|
+
kwargs (dict, optional): additional parameters for execute. Default to None.
|
728
|
+
|
729
|
+
Returns: list"""
|
730
|
+
if kwargs is None:
|
731
|
+
kwargs = dict()
|
732
|
+
response = self.execute('GET', path=f'/customers/by_vat/{vat_id}',
|
733
|
+
warm_start=warm_start, **kwargs)
|
734
|
+
return response
|
735
|
+
|
720
736
|
def customers_bulk(self, payload: list, warm_start: bool = False,
|
721
737
|
single_page: bool = False, page_size: int = 50, kwargs: dict = None,
|
722
738
|
**params) -> list:
|
@@ -1053,20 +1069,20 @@ class Customers(ApiManager):
|
|
1053
1069
|
base_margin (number required): additional filter - payload
|
1054
1070
|
reserved_margin (number required): additional filter - payload
|
1055
1071
|
azure_customer_id (string required): additional filter - payload
|
1056
|
-
|
1072
|
+
uuid_virtual_domain (string required): additional filter - payload
|
1057
1073
|
|
1058
1074
|
Returns: list"""
|
1059
1075
|
if kwargs is None:
|
1060
1076
|
kwargs = dict()
|
1061
1077
|
official_payload_list = ['target_company', 'target_code', 'address',
|
1062
1078
|
'zip_code', 'city', 'country', 'state_province', 'base_margin',
|
1063
|
-
'reserved_margin', 'azure_customer_id', '
|
1079
|
+
'reserved_margin', 'azure_customer_id', 'uuid_virtual_domain']
|
1064
1080
|
payload.get('target_company'), payload.get('target_code'), payload.get(
|
1065
1081
|
'address'), payload.get('zip_code'), payload.get('city'
|
1066
1082
|
), payload.get('country'), payload.get('state_province'
|
1067
1083
|
), payload.get('base_margin'), payload.get('reserved_margin'
|
1068
1084
|
), payload.get('azure_customer_id'), payload.get(
|
1069
|
-
'
|
1085
|
+
'uuid_virtual_domain')
|
1070
1086
|
if not self._silence_warning:
|
1071
1087
|
warning_wrong_parameters(self.customers_azure_v2_create.
|
1072
1088
|
__name__, payload, official_payload_list)
|
@@ -1091,7 +1107,7 @@ class Customers(ApiManager):
|
|
1091
1107
|
city (string optional): additional filter - payload
|
1092
1108
|
country (string optional): additional filter - payload
|
1093
1109
|
state_province (string optional): additional filter - payload
|
1094
|
-
|
1110
|
+
uuid_virtual_domain (string optional): additional filter - payload
|
1095
1111
|
uuid_probe_type (string optional): additional filter - payload
|
1096
1112
|
uuid_object (string optional): additional filter - payload
|
1097
1113
|
subscriptions (array required): additional filter - payload
|
@@ -1101,12 +1117,12 @@ class Customers(ApiManager):
|
|
1101
1117
|
kwargs = dict()
|
1102
1118
|
official_payload_list = ['target_company', 'target_code', 'address',
|
1103
1119
|
'zip_code', 'city', 'country', 'state_province',
|
1104
|
-
'
|
1120
|
+
'uuid_virtual_domain', 'uuid_probe_type', 'uuid_object',
|
1105
1121
|
'subscriptions']
|
1106
1122
|
payload.get('target_company'), payload.get('target_code'), payload.get(
|
1107
1123
|
'address'), payload.get('zip_code'), payload.get('city'
|
1108
1124
|
), payload.get('country'), payload.get('state_province'
|
1109
|
-
), payload.get('
|
1125
|
+
), payload.get('uuid_virtual_domain'), payload.get(
|
1110
1126
|
'uuid_probe_type'), payload.get('uuid_object'), payload.get(
|
1111
1127
|
'subscriptions')
|
1112
1128
|
if not self._silence_warning:
|
@@ -1160,7 +1176,7 @@ class Customers(ApiManager):
|
|
1160
1176
|
city (string optional): additional filter - payload
|
1161
1177
|
country (string optional): additional filter - payload
|
1162
1178
|
state_province (string optional): additional filter - payload
|
1163
|
-
|
1179
|
+
uuid_virtual_domain (string optional): additional filter - payload
|
1164
1180
|
uuid_probe_type (string optional): additional filter - payload
|
1165
1181
|
uuid_object (string optional): additional filter - payload
|
1166
1182
|
subscriptions (array required): additional filter - payload
|
@@ -1170,12 +1186,12 @@ class Customers(ApiManager):
|
|
1170
1186
|
kwargs = dict()
|
1171
1187
|
official_payload_list = ['target_company', 'target_code', 'address',
|
1172
1188
|
'zip_code', 'city', 'country', 'state_province',
|
1173
|
-
'
|
1189
|
+
'uuid_virtual_domain', 'uuid_probe_type', 'uuid_object',
|
1174
1190
|
'subscriptions']
|
1175
1191
|
payload.get('target_company'), payload.get('target_code'), payload.get(
|
1176
1192
|
'address'), payload.get('zip_code'), payload.get('city'
|
1177
1193
|
), payload.get('country'), payload.get('state_province'
|
1178
|
-
), payload.get('
|
1194
|
+
), payload.get('uuid_virtual_domain'), payload.get(
|
1179
1195
|
'uuid_probe_type'), payload.get('uuid_object'), payload.get(
|
1180
1196
|
'subscriptions')
|
1181
1197
|
if not self._silence_warning:
|
hive/cookbook/dispatchers.py
CHANGED
hive/cookbook/downtimes.py
CHANGED
hive/cookbook/tree_hierarchy.py
CHANGED
@@ -92,6 +92,7 @@ class TreeHierarchy(ApiManager):
|
|
92
92
|
null_fields (string optional): additional filter - parameter
|
93
93
|
extract_data_profile (boolean optional): additional filter - parameter
|
94
94
|
extract_severity (boolean optional): Se True nella risposta e' anche presente la severita, Default to False. - parameter
|
95
|
+
extract_ip_cidr (boolean optional): additional filter - parameter
|
95
96
|
uuid_customer (string optional): additional filter - parameter
|
96
97
|
customer_code (string optional): additional filter - parameter
|
97
98
|
customer_status (string optional): additional filter - parameter
|
@@ -124,26 +125,28 @@ class TreeHierarchy(ApiManager):
|
|
124
125
|
if kwargs is None:
|
125
126
|
kwargs = dict()
|
126
127
|
official_params_list = ['sort_by', 'null_fields',
|
127
|
-
'extract_data_profile', 'extract_severity', '
|
128
|
-
'
|
129
|
-
'
|
130
|
-
'
|
131
|
-
'
|
132
|
-
'
|
133
|
-
'
|
134
|
-
'
|
128
|
+
'extract_data_profile', 'extract_severity', 'extract_ip_cidr',
|
129
|
+
'uuid_customer', 'customer_code', 'customer_status',
|
130
|
+
'uuid_site', 'site_code', 'site_description', 'site_address',
|
131
|
+
'site_zip_code', 'site_city', 'site_country',
|
132
|
+
'site_state_province', 'site_status', 'uuid_group',
|
133
|
+
'group_name', 'group_status', 'group_type', 'uuid_object',
|
134
|
+
'object_name', 'object_status', 'object_profile',
|
135
|
+
'uuid_virtual_domain', 'virtual_domain_name', 'skip', 'limit',
|
136
|
+
'like', 'join', 'count']
|
135
137
|
params.get('sort_by'), params.get('null_fields'), params.get(
|
136
138
|
'extract_data_profile'), params.get('extract_severity'
|
137
|
-
), params.get('
|
138
|
-
), params.get('
|
139
|
-
), params.get('
|
140
|
-
), params.get('site_address'), params.get(
|
141
|
-
|
142
|
-
'
|
143
|
-
'
|
144
|
-
), params.get('
|
145
|
-
|
146
|
-
|
139
|
+
), params.get('extract_ip_cidr'), params.get('uuid_customer'
|
140
|
+
), params.get('customer_code'), params.get('customer_status'
|
141
|
+
), params.get('uuid_site'), params.get('site_code'), params.get(
|
142
|
+
'site_description'), params.get('site_address'), params.get(
|
143
|
+
'site_zip_code'), params.get('site_city'), params.get(
|
144
|
+
'site_country'), params.get('site_state_province'), params.get(
|
145
|
+
'site_status'), params.get('uuid_group'), params.get('group_name'
|
146
|
+
), params.get('group_status'), params.get('group_type'
|
147
|
+
), params.get('uuid_object'), params.get('object_name'
|
148
|
+
), params.get('object_status'), params.get('object_profile'
|
149
|
+
), params.get('uuid_virtual_domain'), params.get(
|
147
150
|
'virtual_domain_name'), params.get('skip'), params.get('limit'
|
148
151
|
), params.get('like'), params.get('join'), params.get('count')
|
149
152
|
if not self._silence_warning:
|
@@ -39,6 +39,7 @@ class TsCostManagement(ApiManager):
|
|
39
39
|
local_currency (string optional): additional filter - parameter
|
40
40
|
provider_currency (string optional): additional filter - parameter
|
41
41
|
uuid_customer (string optional): additional filter - parameter
|
42
|
+
resource_id (string optional): additional filter - parameter
|
42
43
|
skip (integer optional): numero di oggetti che si vogliono saltare nella risposta. Default to 0. - parameter
|
43
44
|
limit (integer optional): numero di oggetti massimi che si vogliono ottenere. Default to 1_000_000. - parameter
|
44
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
|
@@ -53,8 +54,8 @@ class TsCostManagement(ApiManager):
|
|
53
54
|
'subscription_type', 'subscription_id', 'subscription_name',
|
54
55
|
'family', 'category', 'subcategory', 'object', 'metric', 'unit',
|
55
56
|
'resource_group', 'reservation_name', 'publisher_name',
|
56
|
-
'local_currency', 'provider_currency', 'uuid_customer',
|
57
|
-
'limit', 'like', 'join', 'count']
|
57
|
+
'local_currency', 'provider_currency', 'uuid_customer',
|
58
|
+
'resource_id', 'skip', 'limit', 'like', 'join', 'count']
|
58
59
|
params.get('sort_by'), params.get('null_fields'), params.get(
|
59
60
|
'uuid_metric'), params.get('date_start'), params.get('date_end'
|
60
61
|
), params.get('cloud_provider'), params.get('resource_location'
|
@@ -65,8 +66,8 @@ class TsCostManagement(ApiManager):
|
|
65
66
|
'resource_group'), params.get('reservation_name'), params.get(
|
66
67
|
'publisher_name'), params.get('local_currency'), params.get(
|
67
68
|
'provider_currency'), params.get('uuid_customer'), params.get(
|
68
|
-
'
|
69
|
-
), params.get('count')
|
69
|
+
'resource_id'), params.get('skip'), params.get('limit'
|
70
|
+
), params.get('like'), params.get('join'), params.get('count')
|
70
71
|
if not self._silence_warning:
|
71
72
|
warning_wrong_parameters(self.ts_cost_management.__name__,
|
72
73
|
params, official_params_list)
|
@@ -116,6 +117,7 @@ class TsCostManagement(ApiManager):
|
|
116
117
|
resource_group (string required): additional filter - payload
|
117
118
|
reservation_name (string required): additional filter - payload
|
118
119
|
publisher_name (string required): additional filter - payload
|
120
|
+
resource_id (string required): additional filter - payload
|
119
121
|
tenant_id (string optional): additional filter - payload
|
120
122
|
|
121
123
|
Returns: list"""
|
@@ -130,8 +132,8 @@ class TsCostManagement(ApiManager):
|
|
130
132
|
'unit_revenue_pc', 'total_revenue_pc', 'cumulative_qnt',
|
131
133
|
'cumulative_unit_cost', 'cumulative_total_cost',
|
132
134
|
'cumulative_unit_revenue', 'cumulative_total_revenue',
|
133
|
-
'resource_group', 'reservation_name', 'publisher_name',
|
134
|
-
]
|
135
|
+
'resource_group', 'reservation_name', 'publisher_name',
|
136
|
+
'resource_id', 'tenant_id']
|
135
137
|
payload.get('uuid_metric'), payload.get('date'), payload.get(
|
136
138
|
'cloud_provider'), payload.get('resource_location'), payload.get(
|
137
139
|
'subscription_type'), payload.get('subscription_id'), payload.get(
|
@@ -147,7 +149,8 @@ class TsCostManagement(ApiManager):
|
|
147
149
|
), payload.get('cumulative_total_cost'), payload.get(
|
148
150
|
'cumulative_unit_revenue'), payload.get('cumulative_total_revenue'
|
149
151
|
), payload.get('resource_group'), payload.get('reservation_name'
|
150
|
-
), payload.get('publisher_name'), payload.get('
|
152
|
+
), payload.get('publisher_name'), payload.get('resource_id'
|
153
|
+
), payload.get('tenant_id')
|
151
154
|
if not self._silence_warning:
|
152
155
|
warning_wrong_parameters(self.ts_cost_management_create.
|
153
156
|
__name__, payload, official_payload_list)
|
@@ -29,6 +29,7 @@ class TsMetricStatus(ApiManager):
|
|
29
29
|
ranking (integer optional): additional filter - parameter
|
30
30
|
description (string optional): additional filter - parameter
|
31
31
|
null_fields (string optional): additional filter - parameter
|
32
|
+
merge_last_value (boolean optional): additional filter - parameter
|
32
33
|
skip (integer optional): numero di oggetti che si vogliono saltare nella risposta. Default to 0. - parameter
|
33
34
|
limit (integer optional): numero di oggetti massimi che si vogliono ottenere. Default to 1_000_000. - parameter
|
34
35
|
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
|
@@ -42,15 +43,17 @@ class TsMetricStatus(ApiManager):
|
|
42
43
|
'timestamp_end', 'ingest_timestamp_start',
|
43
44
|
'ingest_timestamp_end', 'database_timestamp_start',
|
44
45
|
'database_timestamp_end', 'status', 'ranking', 'description',
|
45
|
-
'null_fields', '
|
46
|
+
'null_fields', 'merge_last_value', 'skip', 'limit', 'like',
|
47
|
+
'join', 'count']
|
46
48
|
params.get('sort_by'), params.get('uuid_metric'), params.get(
|
47
49
|
'timestamp_start'), params.get('timestamp_end'), params.get(
|
48
50
|
'ingest_timestamp_start'), params.get('ingest_timestamp_end'
|
49
51
|
), params.get('database_timestamp_start'), params.get(
|
50
52
|
'database_timestamp_end'), params.get('status'), params.get(
|
51
53
|
'ranking'), params.get('description'), params.get('null_fields'
|
52
|
-
), params.get('
|
53
|
-
), params.get('
|
54
|
+
), params.get('merge_last_value'), params.get('skip'), params.get(
|
55
|
+
'limit'), params.get('like'), params.get('join'), params.get(
|
56
|
+
'count')
|
54
57
|
if not self._silence_warning:
|
55
58
|
warning_wrong_parameters(self.ts_metric_status.__name__, params,
|
56
59
|
official_params_list)
|
@@ -75,6 +78,7 @@ class TsMetricStatus(ApiManager):
|
|
75
78
|
Keyword Args:
|
76
79
|
ts_start (string required): additional filter - parameter
|
77
80
|
ts_end (string required): additional filter - parameter
|
81
|
+
merge_last_value (boolean optional): additional filter - parameter
|
78
82
|
|
79
83
|
Examples:
|
80
84
|
payload =
|
@@ -85,8 +89,9 @@ class TsMetricStatus(ApiManager):
|
|
85
89
|
Returns: list"""
|
86
90
|
if kwargs is None:
|
87
91
|
kwargs = dict()
|
88
|
-
official_params_list = ['ts_start', 'ts_end']
|
89
|
-
params.get('ts_start'), params.get('ts_end')
|
92
|
+
official_params_list = ['ts_start', 'ts_end', 'merge_last_value']
|
93
|
+
params.get('ts_start'), params.get('ts_end'), params.get(
|
94
|
+
'merge_last_value')
|
90
95
|
if not self._silence_warning:
|
91
96
|
warning_wrong_parameters(self.ts_metric_status_bulk.__name__,
|
92
97
|
params, official_params_list)
|
hive/cookbook/ts_metric_value.py
CHANGED
@@ -27,6 +27,7 @@ class TsMetricValue(ApiManager):
|
|
27
27
|
database_timestamp_start (string optional): additional filter - parameter
|
28
28
|
database_timestamp_end (string optional): additional filter - parameter
|
29
29
|
value (number optional): additional filter - parameter
|
30
|
+
merge_last_value (boolean optional): additional filter - parameter
|
30
31
|
skip (integer optional): numero di oggetti che si vogliono saltare nella risposta. Default to 0. - parameter
|
31
32
|
limit (integer optional): numero di oggetti massimi che si vogliono ottenere. Default to 1_000_000. - parameter
|
32
33
|
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
|
@@ -39,15 +40,16 @@ class TsMetricValue(ApiManager):
|
|
39
40
|
official_params_list = ['sort_by', 'null_fields', 'uuid_metric',
|
40
41
|
'timestamp_start', 'timestamp_end', 'ingest_timestamp_start',
|
41
42
|
'ingest_timestamp_end', 'database_timestamp_start',
|
42
|
-
'database_timestamp_end', 'value', '
|
43
|
-
'join', 'count']
|
43
|
+
'database_timestamp_end', 'value', 'merge_last_value', 'skip',
|
44
|
+
'limit', 'like', 'join', 'count']
|
44
45
|
params.get('sort_by'), params.get('null_fields'), params.get(
|
45
46
|
'uuid_metric'), params.get('timestamp_start'), params.get(
|
46
47
|
'timestamp_end'), params.get('ingest_timestamp_start'), params.get(
|
47
48
|
'ingest_timestamp_end'), params.get('database_timestamp_start'
|
48
49
|
), params.get('database_timestamp_end'), params.get('value'
|
49
|
-
), params.get('
|
50
|
-
), params.get('
|
50
|
+
), params.get('merge_last_value'), params.get('skip'), params.get(
|
51
|
+
'limit'), params.get('like'), params.get('join'), params.get(
|
52
|
+
'count')
|
51
53
|
if not self._silence_warning:
|
52
54
|
warning_wrong_parameters(self.ts_metric_value.__name__, params,
|
53
55
|
official_params_list)
|
@@ -72,6 +74,7 @@ class TsMetricValue(ApiManager):
|
|
72
74
|
Keyword Args:
|
73
75
|
ts_start (string required): additional filter - parameter
|
74
76
|
ts_end (string required): additional filter - parameter
|
77
|
+
merge_last_value (boolean optional): additional filter - parameter
|
75
78
|
|
76
79
|
Examples:
|
77
80
|
payload =
|
@@ -82,8 +85,9 @@ class TsMetricValue(ApiManager):
|
|
82
85
|
Returns: list"""
|
83
86
|
if kwargs is None:
|
84
87
|
kwargs = dict()
|
85
|
-
official_params_list = ['ts_start', 'ts_end']
|
86
|
-
params.get('ts_start'), params.get('ts_end')
|
88
|
+
official_params_list = ['ts_start', 'ts_end', 'merge_last_value']
|
89
|
+
params.get('ts_start'), params.get('ts_end'), params.get(
|
90
|
+
'merge_last_value')
|
87
91
|
if not self._silence_warning:
|
88
92
|
warning_wrong_parameters(self.ts_metric_value_bulk.__name__,
|
89
93
|
params, official_params_list)
|
hive/cookbook/ts_ntop_flows.py
CHANGED
@@ -20,6 +20,8 @@ class TsNtopFlows(ApiManager):
|
|
20
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
21
|
null_fields (string optional): additional filter - parameter
|
22
22
|
uuid_service (string optional): additional filter - parameter
|
23
|
+
uuid_site_src (string optional): additional filter - parameter
|
24
|
+
uuid_site_dst (string optional): additional filter - parameter
|
23
25
|
l7_proto (string optional): additional filter - parameter
|
24
26
|
ip_src_addr (None optional): additional filter - parameter
|
25
27
|
ip_dst_addr (None optional): additional filter - parameter
|
@@ -41,12 +43,14 @@ class TsNtopFlows(ApiManager):
|
|
41
43
|
if kwargs is None:
|
42
44
|
kwargs = dict()
|
43
45
|
official_params_list = ['sort_by', 'null_fields', 'uuid_service',
|
44
|
-
'
|
45
|
-
'
|
46
|
-
'
|
47
|
-
'
|
46
|
+
'uuid_site_src', 'uuid_site_dst', 'l7_proto', 'ip_src_addr',
|
47
|
+
'ip_dst_addr', 'l4_dst_port', 'fqdn_src_addr', 'fqdn_dst_addr',
|
48
|
+
'in_bytes', 'out_bytes', 'last_switched_start',
|
49
|
+
'last_switched_end', 'interface_id', 'skip', 'limit', 'like',
|
50
|
+
'join', 'count']
|
48
51
|
params.get('sort_by'), params.get('null_fields'), params.get(
|
49
|
-
'uuid_service'), params.get('
|
52
|
+
'uuid_service'), params.get('uuid_site_src'), params.get(
|
53
|
+
'uuid_site_dst'), params.get('l7_proto'), params.get('ip_src_addr'
|
50
54
|
), params.get('ip_dst_addr'), params.get('l4_dst_port'
|
51
55
|
), params.get('fqdn_src_addr'), params.get('fqdn_dst_addr'
|
52
56
|
), params.get('in_bytes'), params.get('out_bytes'), params.get(
|
@@ -78,6 +82,8 @@ class TsNtopFlows(ApiManager):
|
|
78
82
|
[
|
79
83
|
{
|
80
84
|
"uuid_service": "string", optional
|
85
|
+
"uuid_site_src": "string", optional
|
86
|
+
"uuid_site_dst": "string", optional
|
81
87
|
"l7_proto": "string", optional
|
82
88
|
"ip_src_addr": "integer string string", optional
|
83
89
|
"ip_dst_addr": "integer string string", optional
|
@@ -113,6 +119,7 @@ class TsNtopFlows(ApiManager):
|
|
113
119
|
**params: additional parameters for the API.
|
114
120
|
|
115
121
|
Keyword Args:
|
122
|
+
uuid_site (string optional): additional filter - parameter
|
116
123
|
profile (string optional): additional filter - parameter
|
117
124
|
skip (integer optional): numero di oggetti che si vogliono saltare nella risposta. Default to 0. - parameter
|
118
125
|
limit (integer optional): numero di oggetti massimi che si vogliono ottenere. Default to 1_000_000. - parameter
|
@@ -123,10 +130,11 @@ class TsNtopFlows(ApiManager):
|
|
123
130
|
Returns: list"""
|
124
131
|
if kwargs is None:
|
125
132
|
kwargs = dict()
|
126
|
-
official_params_list = ['
|
127
|
-
'count']
|
128
|
-
params.get('
|
129
|
-
), params.get('
|
133
|
+
official_params_list = ['uuid_site', 'profile', 'skip', 'limit',
|
134
|
+
'like', 'join', 'count']
|
135
|
+
params.get('uuid_site'), params.get('profile'), params.get('skip'
|
136
|
+
), params.get('limit'), params.get('like'), params.get('join'
|
137
|
+
), params.get('count')
|
130
138
|
if not self._silence_warning:
|
131
139
|
warning_wrong_parameters(self.ts_ntop_flows_top_protocols.
|
132
140
|
__name__, params, official_params_list)
|
@@ -150,6 +158,7 @@ class TsNtopFlows(ApiManager):
|
|
150
158
|
**params: additional parameters for the API.
|
151
159
|
|
152
160
|
Keyword Args:
|
161
|
+
uuid_site (string optional): additional filter - parameter
|
153
162
|
profile (string optional): additional filter - parameter
|
154
163
|
skip (integer optional): numero di oggetti che si vogliono saltare nella risposta. Default to 0. - parameter
|
155
164
|
limit (integer optional): numero di oggetti massimi che si vogliono ottenere. Default to 1_000_000. - parameter
|
@@ -160,10 +169,11 @@ class TsNtopFlows(ApiManager):
|
|
160
169
|
Returns: list"""
|
161
170
|
if kwargs is None:
|
162
171
|
kwargs = dict()
|
163
|
-
official_params_list = ['
|
164
|
-
'count']
|
165
|
-
params.get('
|
166
|
-
), params.get('
|
172
|
+
official_params_list = ['uuid_site', 'profile', 'skip', 'limit',
|
173
|
+
'like', 'join', 'count']
|
174
|
+
params.get('uuid_site'), params.get('profile'), params.get('skip'
|
175
|
+
), params.get('limit'), params.get('like'), params.get('join'
|
176
|
+
), params.get('count')
|
167
177
|
if not self._silence_warning:
|
168
178
|
warning_wrong_parameters(self.ts_ntop_flows_top_talkers.
|
169
179
|
__name__, params, official_params_list)
|
@@ -187,6 +197,7 @@ class TsNtopFlows(ApiManager):
|
|
187
197
|
**params: additional parameters for the API.
|
188
198
|
|
189
199
|
Keyword Args:
|
200
|
+
uuid_site (string optional): additional filter - parameter
|
190
201
|
profile (string optional): additional filter - parameter
|
191
202
|
skip (integer optional): numero di oggetti che si vogliono saltare nella risposta. Default to 0. - parameter
|
192
203
|
limit (integer optional): numero di oggetti massimi che si vogliono ottenere. Default to 1_000_000. - parameter
|
@@ -197,10 +208,11 @@ class TsNtopFlows(ApiManager):
|
|
197
208
|
Returns: list"""
|
198
209
|
if kwargs is None:
|
199
210
|
kwargs = dict()
|
200
|
-
official_params_list = ['
|
201
|
-
'count']
|
202
|
-
params.get('
|
203
|
-
), params.get('
|
211
|
+
official_params_list = ['uuid_site', 'profile', 'skip', 'limit',
|
212
|
+
'like', 'join', 'count']
|
213
|
+
params.get('uuid_site'), params.get('profile'), params.get('skip'
|
214
|
+
), params.get('limit'), params.get('like'), params.get('join'
|
215
|
+
), params.get('count')
|
204
216
|
if not self._silence_warning:
|
205
217
|
warning_wrong_parameters(self.ts_ntop_flows_top_receivers.
|
206
218
|
__name__, params, official_params_list)
|
@@ -224,6 +236,7 @@ class TsNtopFlows(ApiManager):
|
|
224
236
|
**params: additional parameters for the API.
|
225
237
|
|
226
238
|
Keyword Args:
|
239
|
+
uuid_site (string optional): additional filter - parameter
|
227
240
|
profile (string optional): additional filter - parameter
|
228
241
|
skip (integer optional): numero di oggetti che si vogliono saltare nella risposta. Default to 0. - parameter
|
229
242
|
limit (integer optional): numero di oggetti massimi che si vogliono ottenere. Default to 1_000_000. - parameter
|
@@ -234,10 +247,11 @@ class TsNtopFlows(ApiManager):
|
|
234
247
|
Returns: list"""
|
235
248
|
if kwargs is None:
|
236
249
|
kwargs = dict()
|
237
|
-
official_params_list = ['
|
238
|
-
'count']
|
239
|
-
params.get('
|
240
|
-
), params.get('
|
250
|
+
official_params_list = ['uuid_site', 'profile', 'skip', 'limit',
|
251
|
+
'like', 'join', 'count']
|
252
|
+
params.get('uuid_site'), params.get('profile'), params.get('skip'
|
253
|
+
), params.get('limit'), params.get('like'), params.get('join'
|
254
|
+
), params.get('count')
|
241
255
|
if not self._silence_warning:
|
242
256
|
warning_wrong_parameters(self.
|
243
257
|
ts_ntop_flows_top_protocols_history.__name__, params,
|
hive/tools.py
CHANGED
@@ -1,4 +1,13 @@
|
|
1
|
-
def dict_by_request(responce_list, univocal_keys):
|
1
|
+
def dict_by_request(responce_list: list, univocal_keys: list):
|
2
|
+
"""
|
3
|
+
Given a responce list it turn the List[Dict] into a Dict[Dict] where the keys are the univocal_keys given in the arguments.
|
4
|
+
|
5
|
+
Args:
|
6
|
+
responce_list (list[dict]): API responce
|
7
|
+
univocal_keys (list[str]): list of keys to use to identify the univocal arguments to be turned into the new dict keys
|
8
|
+
|
9
|
+
Returns: dict
|
10
|
+
"""
|
2
11
|
responce_dict = dict()
|
3
12
|
for cont in responce_list:
|
4
13
|
chiave = tuple(cont[k] for k in univocal_keys)
|
@@ -7,6 +16,16 @@ def dict_by_request(responce_list, univocal_keys):
|
|
7
16
|
|
8
17
|
|
9
18
|
def order_by_request(params_list, responce_list, univocal_keys):
|
19
|
+
"""
|
20
|
+
Given a API responce, its univocal keys and the params list used to get that responce, a new
|
21
|
+
Args:
|
22
|
+
params_list: params given to the API
|
23
|
+
responce_list: API responce
|
24
|
+
univocal_keys: keys that represents the univocal field of the responce
|
25
|
+
|
26
|
+
Returns: Dict
|
27
|
+
|
28
|
+
"""
|
10
29
|
responce_dict = dict_by_request(responce_list, univocal_keys)
|
11
30
|
response_content = [None for _ in range(len(params_list))]
|
12
31
|
for i, ele in enumerate(params_list):
|
hive/version.py
CHANGED
@@ -1 +1 @@
|
|
1
|
-
version = '3.
|
1
|
+
version = '3.16.0'
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: xautomata-hive
|
3
|
-
Version: 3.
|
3
|
+
Version: 3.16.0
|
4
4
|
Home-page: https://github.com/sherlogic/xautomata-hive.git
|
5
5
|
Author: Enrico Ferro - Andrea Jacassi
|
6
6
|
Author-email:
|
@@ -9,7 +9,7 @@ Requires-Python: >=3.8.0
|
|
9
9
|
Description-Content-Type: text/markdown
|
10
10
|
License-File: LICENSE
|
11
11
|
Requires-Dist: tqdm ==4.64.1
|
12
|
-
Requires-Dist: urllib3 ==
|
12
|
+
Requires-Dist: urllib3 ==2.0.4
|
13
13
|
Requires-Dist: requests ==2.31.0
|
14
14
|
|
15
15
|
# Xautomata API
|
@@ -1,10 +1,10 @@
|
|
1
1
|
hive/__init__.py,sha256=UjH5QfSfRGu2FR5_StfVbEtL_fuGS2Z_iZXmf1nx4AE,68
|
2
|
-
hive/api.py,sha256=
|
2
|
+
hive/api.py,sha256=azqajJbLzoek_eMGi-6ETKF_C9pfgGsLvKn9L8-wD5g,40619
|
3
3
|
hive/decorators.py,sha256=tId1zEXXKgegU_F9g2nbjFosB-9NNWQWueMu60w60Cc,9947
|
4
4
|
hive/exceptions.py,sha256=kTJSPMViU2ZhF_ENbL_i-skU3YEv_ViJH2PpUQ6ums8,136
|
5
5
|
hive/infrastrucure_keys.py,sha256=wFUWGY3Ct9OdiQMRtF7ZlzwtctNwq2eEGt-o0Lqmn10,3688
|
6
|
-
hive/tools.py,sha256=
|
7
|
-
hive/version.py,sha256=
|
6
|
+
hive/tools.py,sha256=7hfHFLyflcZrwW3s1yswFwHU87I3u26WE2CnAj5WCqI,1355
|
7
|
+
hive/version.py,sha256=WoTmk-37b708GnkAO87gS-p1lBcikyP1L0Mm67hr3xY,18
|
8
8
|
hive/cookbook/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
9
9
|
hive/cookbook/acl_docs.py,sha256=0xr7Vb9121vhsiZjQaKvuAt4gKlXOO4aUJM472HeARw,786
|
10
10
|
hive/cookbook/acl_overrides.py,sha256=l3xyJmGeQysP1M2Sa6kVhDn8n6ttCKUzJ0jTcPjyo78,9690
|
@@ -12,13 +12,15 @@ hive/cookbook/analytics.py,sha256=1OMwo0vUuOAtT8WNz6HY6NJ-JTLpru4vTlYtdiczDrg,35
|
|
12
12
|
hive/cookbook/anomalies.py,sha256=VnuIWGH0om2XuFiz9jlFjQWWWcIdbr3fmUECfiqvM0A,11208
|
13
13
|
hive/cookbook/calendars.py,sha256=hLjerNUJETT6xOa6-zhRFR2GTzUxruQCABcM-mJKACs,22663
|
14
14
|
hive/cookbook/contacts.py,sha256=vhkBjaxFoQA5P-GSGLsgtcvo3rbAPfHOCiB87tXtQsM,39183
|
15
|
-
hive/cookbook/cost_tagging.py,sha256=
|
15
|
+
hive/cookbook/cost_tagging.py,sha256=wwLgo3YaDI4Xm7QcQVlf4kXxz8kPP7J7Qh4ddzuaDro,7779
|
16
16
|
hive/cookbook/cost_tags.py,sha256=G4iI97oasXQnke9R4_chNmWFr1yxpysTKFp-CnnE6aI,7464
|
17
|
-
hive/cookbook/
|
18
|
-
hive/cookbook/
|
17
|
+
hive/cookbook/cost_tree_nodes.py,sha256=ws4e5y23xkz-NMtjBeRbGS7AxAr-KNHEj4vHcdpM1J0,11200
|
18
|
+
hive/cookbook/cost_tree_resources.py,sha256=oivSKm_m-57dQAgUdQiUxSc1_vSVWmEVhlT47zbMVBc,8390
|
19
|
+
hive/cookbook/cost_views.py,sha256=wZt_UBLBudS4d85bxtteXlWUV0NmaQTO9RCVPltoHkw,10468
|
20
|
+
hive/cookbook/customers.py,sha256=LPz4wm5m1G6QyWFHETuJA_g2Kqusr9HBO7GrmWxLboY,71482
|
19
21
|
hive/cookbook/dashboards.py,sha256=oAgx4XbIu26hLoXjS8sEhI-gg9lIpeGRoG1MT5UKxJM,27647
|
20
|
-
hive/cookbook/dispatchers.py,sha256
|
21
|
-
hive/cookbook/downtimes.py,sha256=
|
22
|
+
hive/cookbook/dispatchers.py,sha256=Mk-u6xhBYdvU_av9ac9a1yejLiukUB30Ey9mIme-V5w,43301
|
23
|
+
hive/cookbook/downtimes.py,sha256=ylhT8TPm87LRjSVwoZgeKwUqnJ2IPva0jqcudbhS0cI,45001
|
22
24
|
hive/cookbook/external_tickets.py,sha256=Lv30Mu6Hu4L8zWdduR_2OUCC_QTy8rvdWv-9gmWCljo,29510
|
23
25
|
hive/cookbook/features.py,sha256=D_N27mifwGbmR9I7-4aHQKmBLyn4LENDqq9Yd9yp6Po,799
|
24
26
|
hive/cookbook/firmware_updates.py,sha256=2N4dwLWWOq6it0f3SbLYixzAkATZ0O9v5lX-6gQwMZE,5996
|
@@ -46,12 +48,12 @@ hive/cookbook/schedules.py,sha256=ldI-hpOx-EpCy3oSOVczk8114QL2bS_2rsjNI6TEMjc,69
|
|
46
48
|
hive/cookbook/services.py,sha256=hnuMse9Epcq4j2mT7vFHbugld0bMEPP8Ef1pojCs2Xc,44843
|
47
49
|
hive/cookbook/sites.py,sha256=1mMfi1vsF0zAfcrCQy8G-joF3JmbJfKvhZExI48Avsg,33138
|
48
50
|
hive/cookbook/terms_and_conditions.py,sha256=cc01N2N41yAbFa5HCvY2Ur4nujSQb1VnEbsrWVq1znY,4669
|
49
|
-
hive/cookbook/tree_hierarchy.py,sha256=
|
51
|
+
hive/cookbook/tree_hierarchy.py,sha256=v_i2vyWQYo79oLZdBQkwQ20v437GnYANCG65OaEgE5Q,23627
|
50
52
|
hive/cookbook/ts_cost_azure_raw.py,sha256=e4-bsmjOEu14dQljyNzZpEkG7-iSu1LaP9w3zbB1FHE,34075
|
51
|
-
hive/cookbook/ts_cost_management.py,sha256=
|
52
|
-
hive/cookbook/ts_metric_status.py,sha256=
|
53
|
-
hive/cookbook/ts_metric_value.py,sha256=
|
54
|
-
hive/cookbook/ts_ntop_flows.py,sha256=
|
53
|
+
hive/cookbook/ts_cost_management.py,sha256=B3cl3Un7PMc5wIuJIUoBvxuKZ1NyKmCkaHNK9cq9uG8,37606
|
54
|
+
hive/cookbook/ts_metric_status.py,sha256=hnWhpqBNYawEsMwOd1G5Vgg6JUPk7lT1NBfnxg9TbCw,6370
|
55
|
+
hive/cookbook/ts_metric_value.py,sha256=ehkjUMsAcZaA9HC0sN39gYKtXEG2xArdPsmhXWKSBIA,6103
|
56
|
+
hive/cookbook/ts_ntop_flows.py,sha256=B8lbGAOKrx2Cjf1X0Gk1PZ0yhqgxbKQg7wQkWM-WobI,17197
|
55
57
|
hive/cookbook/ts_service_status.py,sha256=hr0heuEkEWmjvVsYVMQJpcve0hrQiY3a8w-OdfBchT8,15143
|
56
58
|
hive/cookbook/ts_service_value.py,sha256=oJ0fOAyAr2OuBerwDZRHeFtATkkdED4e_X6mmv7WTzo,14430
|
57
59
|
hive/cookbook/users.py,sha256=XRTFgZEvHqYUr2ieRkI_RXF3VIg4WEOgzxlskj-8-_s,49356
|
@@ -60,8 +62,8 @@ hive/cookbook/virtual_domains.py,sha256=-i666Jyi3j_EwRUzlymh2-q3bCxAz6TA3Q_lPVDC
|
|
60
62
|
hive/cookbook/webhooks.py,sha256=xQp7gW4FQP6717d4MCOuQN2Py7nw7TFy4pl9RmkqMKs,6705
|
61
63
|
hive/cookbook/widget_groups.py,sha256=Sd8u_eNr7GYLyN0-wC-k9lsHfNOEmU3HkAvWrwWoZtE,15917
|
62
64
|
hive/cookbook/widgets.py,sha256=d7-DXC-ODNpdt4KjCAzFW0T3HWf0ThOO9yL17jJigdc,23396
|
63
|
-
xautomata_hive-3.
|
64
|
-
xautomata_hive-3.
|
65
|
-
xautomata_hive-3.
|
66
|
-
xautomata_hive-3.
|
67
|
-
xautomata_hive-3.
|
65
|
+
xautomata_hive-3.16.0.dist-info/LICENSE,sha256=CFT1oIPm4kciOjwep2r1LQnpATugddSy3D839fsmgFs,1065
|
66
|
+
xautomata_hive-3.16.0.dist-info/METADATA,sha256=tVa3VmOLbUq-p8cBhhiJ7kP9icURPjkg2i8pAWVMjuY,10750
|
67
|
+
xautomata_hive-3.16.0.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
|
68
|
+
xautomata_hive-3.16.0.dist-info/top_level.txt,sha256=pLpVAuviHGk3pzaFXU-4GKttxGTGAbFoWK8JvUl1jHQ,5
|
69
|
+
xautomata_hive-3.16.0.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|