alibabacloud-nis20211216 2.2.2__py3-none-any.whl → 2.3.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.
Files changed (96) hide show
  1. alibabacloud_nis20211216/__init__.py +1 -1
  2. alibabacloud_nis20211216/client.py +1681 -2184
  3. alibabacloud_nis20211216/models/__init__.py +227 -0
  4. alibabacloud_nis20211216/models/_create_and_analyze_network_path_request.py +136 -0
  5. alibabacloud_nis20211216/models/_create_and_analyze_network_path_response.py +54 -0
  6. alibabacloud_nis20211216/models/_create_and_analyze_network_path_response_body.py +124 -0
  7. alibabacloud_nis20211216/models/_create_network_path_request.py +228 -0
  8. alibabacloud_nis20211216/models/_create_network_path_response.py +54 -0
  9. alibabacloud_nis20211216/models/_create_network_path_response_body.py +43 -0
  10. alibabacloud_nis20211216/models/_create_network_reachable_analysis_request.py +106 -0
  11. alibabacloud_nis20211216/models/_create_network_reachable_analysis_response.py +54 -0
  12. alibabacloud_nis20211216/models/_create_network_reachable_analysis_response_body.py +43 -0
  13. alibabacloud_nis20211216/models/_delete_network_path_request.py +47 -0
  14. alibabacloud_nis20211216/models/_delete_network_path_response.py +54 -0
  15. alibabacloud_nis20211216/models/_delete_network_path_response_body.py +46 -0
  16. alibabacloud_nis20211216/models/_delete_network_path_shrink_request.py +45 -0
  17. alibabacloud_nis20211216/models/_delete_network_reachable_analysis_request.py +47 -0
  18. alibabacloud_nis20211216/models/_delete_network_reachable_analysis_response.py +54 -0
  19. alibabacloud_nis20211216/models/_delete_network_reachable_analysis_response_body.py +45 -0
  20. alibabacloud_nis20211216/models/_delete_network_reachable_analysis_shrink_request.py +45 -0
  21. alibabacloud_nis20211216/models/_delete_nis_inspection_report_request.py +34 -0
  22. alibabacloud_nis20211216/models/_delete_nis_inspection_report_response.py +54 -0
  23. alibabacloud_nis20211216/models/_delete_nis_inspection_report_response_body.py +41 -0
  24. alibabacloud_nis20211216/models/_delete_nis_inspection_task_request.py +34 -0
  25. alibabacloud_nis20211216/models/_delete_nis_inspection_task_response.py +54 -0
  26. alibabacloud_nis20211216/models/_delete_nis_inspection_task_response_body.py +41 -0
  27. alibabacloud_nis20211216/models/_describe_nis_inspection_recommendation_resources_request.py +67 -0
  28. alibabacloud_nis20211216/models/_describe_nis_inspection_recommendation_resources_response.py +54 -0
  29. alibabacloud_nis20211216/models/_describe_nis_inspection_recommendation_resources_response_body.py +127 -0
  30. alibabacloud_nis20211216/models/_describe_nis_inspection_report_check_items_request.py +84 -0
  31. alibabacloud_nis20211216/models/_describe_nis_inspection_report_check_items_response.py +54 -0
  32. alibabacloud_nis20211216/models/_describe_nis_inspection_report_check_items_response_body.py +302 -0
  33. alibabacloud_nis20211216/models/_describe_nis_inspection_report_check_items_shrink_request.py +82 -0
  34. alibabacloud_nis20211216/models/_describe_nis_inspection_report_status_request.py +34 -0
  35. alibabacloud_nis20211216/models/_describe_nis_inspection_report_status_response.py +54 -0
  36. alibabacloud_nis20211216/models/_describe_nis_inspection_report_status_response_body.py +89 -0
  37. alibabacloud_nis20211216/models/_describe_nis_inspection_report_summary_request.py +34 -0
  38. alibabacloud_nis20211216/models/_describe_nis_inspection_report_summary_response.py +54 -0
  39. alibabacloud_nis20211216/models/_describe_nis_inspection_report_summary_response_body.py +240 -0
  40. alibabacloud_nis20211216/models/_describe_nis_inspection_task_request.py +34 -0
  41. alibabacloud_nis20211216/models/_describe_nis_inspection_task_response.py +54 -0
  42. alibabacloud_nis20211216/models/_describe_nis_inspection_task_response_body.py +159 -0
  43. alibabacloud_nis20211216/models/_describe_nis_traffic_ranking_request.py +50 -0
  44. alibabacloud_nis20211216/models/_describe_nis_traffic_ranking_response.py +54 -0
  45. alibabacloud_nis20211216/models/_describe_nis_traffic_ranking_response_body.py +463 -0
  46. alibabacloud_nis20211216/models/_get_internet_tuple_request.py +270 -0
  47. alibabacloud_nis20211216/models/_get_internet_tuple_response.py +54 -0
  48. alibabacloud_nis20211216/models/_get_internet_tuple_response_body.py +366 -0
  49. alibabacloud_nis20211216/models/_get_internet_tuple_shrink_request.py +270 -0
  50. alibabacloud_nis20211216/models/_get_nat_top_nrequest.py +99 -0
  51. alibabacloud_nis20211216/models/_get_nat_top_nresponse.py +54 -0
  52. alibabacloud_nis20211216/models/_get_nat_top_nresponse_body.py +166 -0
  53. alibabacloud_nis20211216/models/_get_network_reachable_analysis_request.py +45 -0
  54. alibabacloud_nis20211216/models/_get_network_reachable_analysis_response.py +54 -0
  55. alibabacloud_nis20211216/models/_get_network_reachable_analysis_response_body.py +114 -0
  56. alibabacloud_nis20211216/models/_get_nis_network_metrics_request.py +155 -0
  57. alibabacloud_nis20211216/models/_get_nis_network_metrics_response.py +54 -0
  58. alibabacloud_nis20211216/models/_get_nis_network_metrics_response_body.py +124 -0
  59. alibabacloud_nis20211216/models/_get_nis_network_metrics_shrink_request.py +111 -0
  60. alibabacloud_nis20211216/models/_get_nis_network_ranking_request.py +172 -0
  61. alibabacloud_nis20211216/models/_get_nis_network_ranking_response.py +54 -0
  62. alibabacloud_nis20211216/models/_get_nis_network_ranking_response_body.py +319 -0
  63. alibabacloud_nis20211216/models/_get_nis_network_ranking_shrink_request.py +128 -0
  64. alibabacloud_nis20211216/models/_get_transit_router_flow_top_nrequest.py +215 -0
  65. alibabacloud_nis20211216/models/_get_transit_router_flow_top_nresponse.py +54 -0
  66. alibabacloud_nis20211216/models/_get_transit_router_flow_top_nresponse_body.py +199 -0
  67. alibabacloud_nis20211216/models/_get_transit_router_flow_top_nshrink_request.py +213 -0
  68. alibabacloud_nis20211216/models/_get_vbr_flow_top_nrequest.py +220 -0
  69. alibabacloud_nis20211216/models/_get_vbr_flow_top_nresponse.py +54 -0
  70. alibabacloud_nis20211216/models/_get_vbr_flow_top_nresponse_body.py +172 -0
  71. alibabacloud_nis20211216/models/_get_vbr_flow_top_nshrink_request.py +218 -0
  72. alibabacloud_nis20211216/models/_list_nis_inspection_resource_type_response.py +54 -0
  73. alibabacloud_nis20211216/models/_list_nis_inspection_resource_type_response_body.py +79 -0
  74. alibabacloud_nis20211216/models/_list_nis_inspection_task_reports_request.py +50 -0
  75. alibabacloud_nis20211216/models/_list_nis_inspection_task_reports_response.py +54 -0
  76. alibabacloud_nis20211216/models/_list_nis_inspection_task_reports_response_body.py +103 -0
  77. alibabacloud_nis20211216/models/_list_nis_inspection_tasks_request.py +73 -0
  78. alibabacloud_nis20211216/models/_list_nis_inspection_tasks_response.py +54 -0
  79. alibabacloud_nis20211216/models/_list_nis_inspection_tasks_response_body.py +143 -0
  80. alibabacloud_nis20211216/models/_start_nis_inspection_task_request.py +34 -0
  81. alibabacloud_nis20211216/models/_start_nis_inspection_task_response.py +54 -0
  82. alibabacloud_nis20211216/models/_start_nis_inspection_task_response_body.py +41 -0
  83. alibabacloud_nis20211216/models/_start_nis_traffic_ranking_request.py +214 -0
  84. alibabacloud_nis20211216/models/_start_nis_traffic_ranking_response.py +54 -0
  85. alibabacloud_nis20211216/models/_start_nis_traffic_ranking_response_body.py +41 -0
  86. alibabacloud_nis20211216/models/_start_nis_traffic_ranking_shrink_request.py +160 -0
  87. alibabacloud_nis20211216/models/_update_nis_inspection_task_request.py +42 -0
  88. alibabacloud_nis20211216/models/_update_nis_inspection_task_response.py +54 -0
  89. alibabacloud_nis20211216/models/_update_nis_inspection_task_response_body.py +41 -0
  90. {alibabacloud_nis20211216-2.2.2.dist-info → alibabacloud_nis20211216-2.3.0.dist-info}/METADATA +7 -7
  91. alibabacloud_nis20211216-2.3.0.dist-info/RECORD +94 -0
  92. alibabacloud_nis20211216/models.py +0 -6298
  93. alibabacloud_nis20211216-2.2.2.dist-info/RECORD +0 -8
  94. {alibabacloud_nis20211216-2.2.2.dist-info → alibabacloud_nis20211216-2.3.0.dist-info}/LICENSE +0 -0
  95. {alibabacloud_nis20211216-2.2.2.dist-info → alibabacloud_nis20211216-2.3.0.dist-info}/WHEEL +0 -0
  96. {alibabacloud_nis20211216-2.2.2.dist-info → alibabacloud_nis20211216-2.3.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,270 @@
1
+ # -*- coding: utf-8 -*-
2
+ # This file is auto-generated, don't edit it. Thanks.
3
+ from __future__ import annotations
4
+
5
+ from typing import List
6
+
7
+ from darabonba.model import DaraModel
8
+
9
+ class GetInternetTupleShrinkRequest(DaraModel):
10
+ def __init__(
11
+ self,
12
+ account_ids: List[int] = None,
13
+ begin_time: int = None,
14
+ cloud_ip: str = None,
15
+ cloud_ip_list_shrink: str = None,
16
+ cloud_isp: str = None,
17
+ cloud_port: str = None,
18
+ direction: str = None,
19
+ end_time: int = None,
20
+ instance_id: str = None,
21
+ instance_list_shrink: str = None,
22
+ order_by: str = None,
23
+ other_city: str = None,
24
+ other_country: str = None,
25
+ other_ip: str = None,
26
+ other_isp: str = None,
27
+ other_port: str = None,
28
+ protocol: str = None,
29
+ region_id: str = None,
30
+ sort: str = None,
31
+ top_n: int = None,
32
+ tuple_type: int = None,
33
+ use_multi_account: bool = None,
34
+ ):
35
+ # The IDs of member accounts.
36
+ self.account_ids = account_ids
37
+ # The beginning of the time range to query. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.
38
+ #
39
+ # This parameter is required.
40
+ self.begin_time = begin_time
41
+ # The local IP address.
42
+ self.cloud_ip = cloud_ip
43
+ # The local IP addresses for filtering.
44
+ self.cloud_ip_list_shrink = cloud_ip_list_shrink
45
+ # The local Internet service provider (ISP).
46
+ #
47
+ # > In most cases, the value is Alibaba or Alibaba Cloud.
48
+ self.cloud_isp = cloud_isp
49
+ # The local port.
50
+ #
51
+ # > This parameter is required only if you set GroupBy to CloudPort.
52
+ self.cloud_port = cloud_port
53
+ # The direction of the Internet traffic that you want to query. Valid values:
54
+ #
55
+ # * **in**: inbound
56
+ # * **out**: outbound
57
+ #
58
+ # This parameter is required.
59
+ self.direction = direction
60
+ # The end of the time range to query. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.
61
+ #
62
+ # This parameter is required.
63
+ self.end_time = end_time
64
+ # The ID of the Alibaba Cloud instance.
65
+ self.instance_id = instance_id
66
+ # The instance IDs for filtering.
67
+ self.instance_list_shrink = instance_list_shrink
68
+ # The metric for data ranking. Default value: **ByteCount**. This value indicates that Internet traffic data is ranked by traffic volume.
69
+ #
70
+ # Valid values:
71
+ #
72
+ # * Rtt
73
+ # * ByteCount
74
+ # * PacketCount
75
+ # * RetransmitRate
76
+ self.order_by = order_by
77
+ # The remote city.
78
+ #
79
+ # > This parameter is required only if you set **TupleType** to **2** or **5**.
80
+ self.other_city = other_city
81
+ # The remote country.
82
+ #
83
+ # > This parameter is required only if you set **TupleType** to **2** or **5**.
84
+ self.other_country = other_country
85
+ # The remote IP address.
86
+ #
87
+ # > This parameter is required only when you set **TupleType** to **2** or **5**.
88
+ self.other_ip = other_ip
89
+ # The remote ISP.
90
+ #
91
+ # > This parameter is required if you want to view the information about the remote ISP.
92
+ self.other_isp = other_isp
93
+ # The remote port.
94
+ #
95
+ # > This parameter is required only when you set **TupleType** to **5**.
96
+ self.other_port = other_port
97
+ # The protocol number.
98
+ #
99
+ # > All protocols are supported. This parameter is required only when you set **TupleType** to **5**.
100
+ self.protocol = protocol
101
+ # The ID of the region for which you want to query the Internet traffic.
102
+ #
103
+ # This parameter is required.
104
+ self.region_id = region_id
105
+ # The order in which instances are ranked by Internet traffic. Valid values:
106
+ #
107
+ # * **desc**: the descending order
108
+ # * **asc**: the ascending order
109
+ self.sort = sort
110
+ # Specifies top-N traffic data to display. Default value: **10**. This value specifies to display top-10 traffic data by default. Max value: **100**.
111
+ self.top_n = top_n
112
+ # The type of the tuple. Valid values:
113
+ #
114
+ # * **1**: 1-tuple
115
+ # * **2**: 2-tuple
116
+ # * **5**: 5-tuple
117
+ #
118
+ # This parameter is required.
119
+ self.tuple_type = tuple_type
120
+ # Specifies whether to enable the multi-account management feature. Default value: **false**. This value specifies that the multi-account management feature is disabled.
121
+ #
122
+ # > By default, the multi-account management feature is not available. If you want to use this feature, contact your account manager to apply for permissions.
123
+ self.use_multi_account = use_multi_account
124
+
125
+ def validate(self):
126
+ pass
127
+
128
+ def to_map(self):
129
+ result = dict()
130
+ _map = super().to_map()
131
+ if _map is not None:
132
+ result = _map
133
+ if self.account_ids is not None:
134
+ result['AccountIds'] = self.account_ids
135
+
136
+ if self.begin_time is not None:
137
+ result['BeginTime'] = self.begin_time
138
+
139
+ if self.cloud_ip is not None:
140
+ result['CloudIp'] = self.cloud_ip
141
+
142
+ if self.cloud_ip_list_shrink is not None:
143
+ result['CloudIpList'] = self.cloud_ip_list_shrink
144
+
145
+ if self.cloud_isp is not None:
146
+ result['CloudIsp'] = self.cloud_isp
147
+
148
+ if self.cloud_port is not None:
149
+ result['CloudPort'] = self.cloud_port
150
+
151
+ if self.direction is not None:
152
+ result['Direction'] = self.direction
153
+
154
+ if self.end_time is not None:
155
+ result['EndTime'] = self.end_time
156
+
157
+ if self.instance_id is not None:
158
+ result['InstanceId'] = self.instance_id
159
+
160
+ if self.instance_list_shrink is not None:
161
+ result['InstanceList'] = self.instance_list_shrink
162
+
163
+ if self.order_by is not None:
164
+ result['OrderBy'] = self.order_by
165
+
166
+ if self.other_city is not None:
167
+ result['OtherCity'] = self.other_city
168
+
169
+ if self.other_country is not None:
170
+ result['OtherCountry'] = self.other_country
171
+
172
+ if self.other_ip is not None:
173
+ result['OtherIp'] = self.other_ip
174
+
175
+ if self.other_isp is not None:
176
+ result['OtherIsp'] = self.other_isp
177
+
178
+ if self.other_port is not None:
179
+ result['OtherPort'] = self.other_port
180
+
181
+ if self.protocol is not None:
182
+ result['Protocol'] = self.protocol
183
+
184
+ if self.region_id is not None:
185
+ result['RegionId'] = self.region_id
186
+
187
+ if self.sort is not None:
188
+ result['Sort'] = self.sort
189
+
190
+ if self.top_n is not None:
191
+ result['TopN'] = self.top_n
192
+
193
+ if self.tuple_type is not None:
194
+ result['TupleType'] = self.tuple_type
195
+
196
+ if self.use_multi_account is not None:
197
+ result['UseMultiAccount'] = self.use_multi_account
198
+
199
+ return result
200
+
201
+ def from_map(self, m: dict = None):
202
+ m = m or dict()
203
+ if m.get('AccountIds') is not None:
204
+ self.account_ids = m.get('AccountIds')
205
+
206
+ if m.get('BeginTime') is not None:
207
+ self.begin_time = m.get('BeginTime')
208
+
209
+ if m.get('CloudIp') is not None:
210
+ self.cloud_ip = m.get('CloudIp')
211
+
212
+ if m.get('CloudIpList') is not None:
213
+ self.cloud_ip_list_shrink = m.get('CloudIpList')
214
+
215
+ if m.get('CloudIsp') is not None:
216
+ self.cloud_isp = m.get('CloudIsp')
217
+
218
+ if m.get('CloudPort') is not None:
219
+ self.cloud_port = m.get('CloudPort')
220
+
221
+ if m.get('Direction') is not None:
222
+ self.direction = m.get('Direction')
223
+
224
+ if m.get('EndTime') is not None:
225
+ self.end_time = m.get('EndTime')
226
+
227
+ if m.get('InstanceId') is not None:
228
+ self.instance_id = m.get('InstanceId')
229
+
230
+ if m.get('InstanceList') is not None:
231
+ self.instance_list_shrink = m.get('InstanceList')
232
+
233
+ if m.get('OrderBy') is not None:
234
+ self.order_by = m.get('OrderBy')
235
+
236
+ if m.get('OtherCity') is not None:
237
+ self.other_city = m.get('OtherCity')
238
+
239
+ if m.get('OtherCountry') is not None:
240
+ self.other_country = m.get('OtherCountry')
241
+
242
+ if m.get('OtherIp') is not None:
243
+ self.other_ip = m.get('OtherIp')
244
+
245
+ if m.get('OtherIsp') is not None:
246
+ self.other_isp = m.get('OtherIsp')
247
+
248
+ if m.get('OtherPort') is not None:
249
+ self.other_port = m.get('OtherPort')
250
+
251
+ if m.get('Protocol') is not None:
252
+ self.protocol = m.get('Protocol')
253
+
254
+ if m.get('RegionId') is not None:
255
+ self.region_id = m.get('RegionId')
256
+
257
+ if m.get('Sort') is not None:
258
+ self.sort = m.get('Sort')
259
+
260
+ if m.get('TopN') is not None:
261
+ self.top_n = m.get('TopN')
262
+
263
+ if m.get('TupleType') is not None:
264
+ self.tuple_type = m.get('TupleType')
265
+
266
+ if m.get('UseMultiAccount') is not None:
267
+ self.use_multi_account = m.get('UseMultiAccount')
268
+
269
+ return self
270
+
@@ -0,0 +1,99 @@
1
+ # -*- coding: utf-8 -*-
2
+ # This file is auto-generated, don't edit it. Thanks.
3
+ from __future__ import annotations
4
+
5
+ from darabonba.model import DaraModel
6
+
7
+ class GetNatTopNRequest(DaraModel):
8
+ def __init__(
9
+ self,
10
+ begin_time: int = None,
11
+ end_time: int = None,
12
+ ip: str = None,
13
+ nat_gateway_id: str = None,
14
+ order_by: str = None,
15
+ region_id: str = None,
16
+ top_n: int = None,
17
+ ):
18
+ # The beginning of the time range to query in milliseconds. If you do not specify **EndTime**, the point in time specified by **BeginTime** is queried.
19
+ #
20
+ # This parameter is required.
21
+ self.begin_time = begin_time
22
+ # The end of the time range to query in milliseconds. The time range specified by **BeginTime** and **EndTime** cannot exceed **86400000** milliseconds (24 hours).
23
+ self.end_time = end_time
24
+ # Query ranking statistics for a specific IP address. If you specify this parameter, you do not need to specify **TopN** or **OrderBy**.
25
+ self.ip = ip
26
+ # The ID of the NAT gateway.
27
+ #
28
+ # This parameter is required.
29
+ self.nat_gateway_id = nat_gateway_id
30
+ # The metric that is used for real-time SNAT performance ranking. Valid values:
31
+ #
32
+ # * **InBps**: inbound data transfer. Unit: bit/s.
33
+ # * **OutBps**: outbound data transfer. Unit: bit/s.
34
+ # * **InPps**: inbound packet forwarding rate. Unit: packets per second.
35
+ # * **OutPps**: outbound packet forwarding rate. Unit: packets per second.
36
+ # * **NewSessionPerSecond**: new connection creation rate. Unit: connections per second.
37
+ # * **ActiveSessionCount**: number of concurrent connections. Unit: connections.
38
+ self.order_by = order_by
39
+ # The ID of the region in which the NAT gateway is deployed.
40
+ self.region_id = region_id
41
+ # The number of entries to return for real-time SNAT performance ranking. Valid values: **1 to 100**. Default value: **10**.
42
+ self.top_n = top_n
43
+
44
+ def validate(self):
45
+ pass
46
+
47
+ def to_map(self):
48
+ result = dict()
49
+ _map = super().to_map()
50
+ if _map is not None:
51
+ result = _map
52
+ if self.begin_time is not None:
53
+ result['BeginTime'] = self.begin_time
54
+
55
+ if self.end_time is not None:
56
+ result['EndTime'] = self.end_time
57
+
58
+ if self.ip is not None:
59
+ result['Ip'] = self.ip
60
+
61
+ if self.nat_gateway_id is not None:
62
+ result['NatGatewayId'] = self.nat_gateway_id
63
+
64
+ if self.order_by is not None:
65
+ result['OrderBy'] = self.order_by
66
+
67
+ if self.region_id is not None:
68
+ result['RegionId'] = self.region_id
69
+
70
+ if self.top_n is not None:
71
+ result['TopN'] = self.top_n
72
+
73
+ return result
74
+
75
+ def from_map(self, m: dict = None):
76
+ m = m or dict()
77
+ if m.get('BeginTime') is not None:
78
+ self.begin_time = m.get('BeginTime')
79
+
80
+ if m.get('EndTime') is not None:
81
+ self.end_time = m.get('EndTime')
82
+
83
+ if m.get('Ip') is not None:
84
+ self.ip = m.get('Ip')
85
+
86
+ if m.get('NatGatewayId') is not None:
87
+ self.nat_gateway_id = m.get('NatGatewayId')
88
+
89
+ if m.get('OrderBy') is not None:
90
+ self.order_by = m.get('OrderBy')
91
+
92
+ if m.get('RegionId') is not None:
93
+ self.region_id = m.get('RegionId')
94
+
95
+ if m.get('TopN') is not None:
96
+ self.top_n = m.get('TopN')
97
+
98
+ return self
99
+
@@ -0,0 +1,54 @@
1
+ # -*- coding: utf-8 -*-
2
+ # This file is auto-generated, don't edit it. Thanks.
3
+ from __future__ import annotations
4
+
5
+ from typing import Dict
6
+
7
+ from alibabacloud_nis20211216 import models as main_models
8
+ from darabonba.model import DaraModel
9
+
10
+ class GetNatTopNResponse(DaraModel):
11
+ def __init__(
12
+ self,
13
+ headers: Dict[str, str] = None,
14
+ status_code: int = None,
15
+ body: main_models.GetNatTopNResponseBody = None,
16
+ ):
17
+ self.headers = headers
18
+ self.status_code = status_code
19
+ self.body = body
20
+
21
+ def validate(self):
22
+ if self.body:
23
+ self.body.validate()
24
+
25
+ def to_map(self):
26
+ result = dict()
27
+ _map = super().to_map()
28
+ if _map is not None:
29
+ result = _map
30
+ if self.headers is not None:
31
+ result['headers'] = self.headers
32
+
33
+ if self.status_code is not None:
34
+ result['statusCode'] = self.status_code
35
+
36
+ if self.body is not None:
37
+ result['body'] = self.body.to_map()
38
+
39
+ return result
40
+
41
+ def from_map(self, m: dict = None):
42
+ m = m or dict()
43
+ if m.get('headers') is not None:
44
+ self.headers = m.get('headers')
45
+
46
+ if m.get('statusCode') is not None:
47
+ self.status_code = m.get('statusCode')
48
+
49
+ if m.get('body') is not None:
50
+ temp_model = main_models.GetNatTopNResponseBody()
51
+ self.body = temp_model.from_map(m.get('body'))
52
+
53
+ return self
54
+
@@ -0,0 +1,166 @@
1
+ # -*- coding: utf-8 -*-
2
+ # This file is auto-generated, don't edit it. Thanks.
3
+ from __future__ import annotations
4
+
5
+ from typing import List
6
+
7
+ from alibabacloud_nis20211216 import models as main_models
8
+ from darabonba.model import DaraModel
9
+
10
+ class GetNatTopNResponseBody(DaraModel):
11
+ def __init__(
12
+ self,
13
+ is_top_nopen: bool = None,
14
+ nat_gateway_top_n: List[main_models.GetNatTopNResponseBodyNatGatewayTopN] = None,
15
+ request_id: str = None,
16
+ ):
17
+ # Indicates whether Network Intelligence Service (NIS) is activated. The NatGatewayTopN parameter returns an empty array when NIS is not activated.
18
+ #
19
+ # * **true**: activated
20
+ # * **false**: not activated
21
+ self.is_top_nopen = is_top_nopen
22
+ # An array of statistics about real-time SNAT performance ranking.
23
+ self.nat_gateway_top_n = nat_gateway_top_n
24
+ # The ID of the request.
25
+ self.request_id = request_id
26
+
27
+ def validate(self):
28
+ if self.nat_gateway_top_n:
29
+ for v1 in self.nat_gateway_top_n:
30
+ if v1:
31
+ v1.validate()
32
+
33
+ def to_map(self):
34
+ result = dict()
35
+ _map = super().to_map()
36
+ if _map is not None:
37
+ result = _map
38
+ if self.is_top_nopen is not None:
39
+ result['IsTopNOpen'] = self.is_top_nopen
40
+
41
+ result['NatGatewayTopN'] = []
42
+ if self.nat_gateway_top_n is not None:
43
+ for k1 in self.nat_gateway_top_n:
44
+ result['NatGatewayTopN'].append(k1.to_map() if k1 else None)
45
+
46
+ if self.request_id is not None:
47
+ result['RequestId'] = self.request_id
48
+
49
+ return result
50
+
51
+ def from_map(self, m: dict = None):
52
+ m = m or dict()
53
+ if m.get('IsTopNOpen') is not None:
54
+ self.is_top_nopen = m.get('IsTopNOpen')
55
+
56
+ self.nat_gateway_top_n = []
57
+ if m.get('NatGatewayTopN') is not None:
58
+ for k1 in m.get('NatGatewayTopN'):
59
+ temp_model = main_models.GetNatTopNResponseBodyNatGatewayTopN()
60
+ self.nat_gateway_top_n.append(temp_model.from_map(k1))
61
+
62
+ if m.get('RequestId') is not None:
63
+ self.request_id = m.get('RequestId')
64
+
65
+ return self
66
+
67
+ class GetNatTopNResponseBodyNatGatewayTopN(DaraModel):
68
+ def __init__(
69
+ self,
70
+ active_session_count: float = None,
71
+ in_bps: float = None,
72
+ in_flow_per_minute: float = None,
73
+ in_pps: float = None,
74
+ ip: str = None,
75
+ new_session_per_second: float = None,
76
+ out_bps: float = None,
77
+ out_flow_per_minute: float = None,
78
+ out_pps: float = None,
79
+ ):
80
+ # The number of concurrent connections. Unit: connections.
81
+ self.active_session_count = active_session_count
82
+ # The inbound data transfer. Unit: bit/s.
83
+ self.in_bps = in_bps
84
+ # This field is reserved and not in use.
85
+ self.in_flow_per_minute = in_flow_per_minute
86
+ # The inbound packet forwarding rate. Unit: packets per second.
87
+ self.in_pps = in_pps
88
+ # The IP address.
89
+ self.ip = ip
90
+ # The new connection creation rate. Unit: connections per second.
91
+ self.new_session_per_second = new_session_per_second
92
+ # The outbound data transfer. Unit: bit/s.
93
+ self.out_bps = out_bps
94
+ # This field is reserved and not in use.
95
+ self.out_flow_per_minute = out_flow_per_minute
96
+ # The outbound packet forwarding rate. Unit: packets per second.
97
+ self.out_pps = out_pps
98
+
99
+ def validate(self):
100
+ pass
101
+
102
+ def to_map(self):
103
+ result = dict()
104
+ _map = super().to_map()
105
+ if _map is not None:
106
+ result = _map
107
+ if self.active_session_count is not None:
108
+ result['ActiveSessionCount'] = self.active_session_count
109
+
110
+ if self.in_bps is not None:
111
+ result['InBps'] = self.in_bps
112
+
113
+ if self.in_flow_per_minute is not None:
114
+ result['InFlowPerMinute'] = self.in_flow_per_minute
115
+
116
+ if self.in_pps is not None:
117
+ result['InPps'] = self.in_pps
118
+
119
+ if self.ip is not None:
120
+ result['Ip'] = self.ip
121
+
122
+ if self.new_session_per_second is not None:
123
+ result['NewSessionPerSecond'] = self.new_session_per_second
124
+
125
+ if self.out_bps is not None:
126
+ result['OutBps'] = self.out_bps
127
+
128
+ if self.out_flow_per_minute is not None:
129
+ result['OutFlowPerMinute'] = self.out_flow_per_minute
130
+
131
+ if self.out_pps is not None:
132
+ result['OutPps'] = self.out_pps
133
+
134
+ return result
135
+
136
+ def from_map(self, m: dict = None):
137
+ m = m or dict()
138
+ if m.get('ActiveSessionCount') is not None:
139
+ self.active_session_count = m.get('ActiveSessionCount')
140
+
141
+ if m.get('InBps') is not None:
142
+ self.in_bps = m.get('InBps')
143
+
144
+ if m.get('InFlowPerMinute') is not None:
145
+ self.in_flow_per_minute = m.get('InFlowPerMinute')
146
+
147
+ if m.get('InPps') is not None:
148
+ self.in_pps = m.get('InPps')
149
+
150
+ if m.get('Ip') is not None:
151
+ self.ip = m.get('Ip')
152
+
153
+ if m.get('NewSessionPerSecond') is not None:
154
+ self.new_session_per_second = m.get('NewSessionPerSecond')
155
+
156
+ if m.get('OutBps') is not None:
157
+ self.out_bps = m.get('OutBps')
158
+
159
+ if m.get('OutFlowPerMinute') is not None:
160
+ self.out_flow_per_minute = m.get('OutFlowPerMinute')
161
+
162
+ if m.get('OutPps') is not None:
163
+ self.out_pps = m.get('OutPps')
164
+
165
+ return self
166
+
@@ -0,0 +1,45 @@
1
+ # -*- coding: utf-8 -*-
2
+ # This file is auto-generated, don't edit it. Thanks.
3
+ from __future__ import annotations
4
+
5
+ from darabonba.model import DaraModel
6
+
7
+ class GetNetworkReachableAnalysisRequest(DaraModel):
8
+ def __init__(
9
+ self,
10
+ network_reachable_analysis_id: str = None,
11
+ region_id: str = None,
12
+ ):
13
+ # The ID of the task for analyzing network reachability. You can call the **CreateNetworkRearchableAnalysis** operation to obtain the ID of the task for analyzing network reachability.
14
+ #
15
+ # This parameter is required.
16
+ self.network_reachable_analysis_id = network_reachable_analysis_id
17
+ # The ID of the region for which you want to obtain the result of network reachability analysis.
18
+ self.region_id = region_id
19
+
20
+ def validate(self):
21
+ pass
22
+
23
+ def to_map(self):
24
+ result = dict()
25
+ _map = super().to_map()
26
+ if _map is not None:
27
+ result = _map
28
+ if self.network_reachable_analysis_id is not None:
29
+ result['NetworkReachableAnalysisId'] = self.network_reachable_analysis_id
30
+
31
+ if self.region_id is not None:
32
+ result['RegionId'] = self.region_id
33
+
34
+ return result
35
+
36
+ def from_map(self, m: dict = None):
37
+ m = m or dict()
38
+ if m.get('NetworkReachableAnalysisId') is not None:
39
+ self.network_reachable_analysis_id = m.get('NetworkReachableAnalysisId')
40
+
41
+ if m.get('RegionId') is not None:
42
+ self.region_id = m.get('RegionId')
43
+
44
+ return self
45
+
@@ -0,0 +1,54 @@
1
+ # -*- coding: utf-8 -*-
2
+ # This file is auto-generated, don't edit it. Thanks.
3
+ from __future__ import annotations
4
+
5
+ from typing import Dict
6
+
7
+ from alibabacloud_nis20211216 import models as main_models
8
+ from darabonba.model import DaraModel
9
+
10
+ class GetNetworkReachableAnalysisResponse(DaraModel):
11
+ def __init__(
12
+ self,
13
+ headers: Dict[str, str] = None,
14
+ status_code: int = None,
15
+ body: main_models.GetNetworkReachableAnalysisResponseBody = None,
16
+ ):
17
+ self.headers = headers
18
+ self.status_code = status_code
19
+ self.body = body
20
+
21
+ def validate(self):
22
+ if self.body:
23
+ self.body.validate()
24
+
25
+ def to_map(self):
26
+ result = dict()
27
+ _map = super().to_map()
28
+ if _map is not None:
29
+ result = _map
30
+ if self.headers is not None:
31
+ result['headers'] = self.headers
32
+
33
+ if self.status_code is not None:
34
+ result['statusCode'] = self.status_code
35
+
36
+ if self.body is not None:
37
+ result['body'] = self.body.to_map()
38
+
39
+ return result
40
+
41
+ def from_map(self, m: dict = None):
42
+ m = m or dict()
43
+ if m.get('headers') is not None:
44
+ self.headers = m.get('headers')
45
+
46
+ if m.get('statusCode') is not None:
47
+ self.status_code = m.get('statusCode')
48
+
49
+ if m.get('body') is not None:
50
+ temp_model = main_models.GetNetworkReachableAnalysisResponseBody()
51
+ self.body = temp_model.from_map(m.get('body'))
52
+
53
+ return self
54
+