alibabacloud-sls20201230 5.1.0__py3-none-any.whl → 5.2.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.
@@ -77,6 +77,7 @@ class GroupConfiguration(TeaModel):
77
77
  type: str = None,
78
78
  ):
79
79
  self.fields = fields
80
+ # This parameter is required.
80
81
  self.type = type
81
82
 
82
83
  def validate(self):
@@ -194,15 +195,23 @@ class AlertQuery(TeaModel):
194
195
  ):
195
196
  self.chart_title = chart_title
196
197
  self.dashboard_id = dashboard_id
198
+ # This parameter is required.
197
199
  self.end = end
198
200
  self.power_sql_mode = power_sql_mode
201
+ # This parameter is required.
199
202
  self.project = project
203
+ # This parameter is required.
200
204
  self.query = query
205
+ # This parameter is required.
201
206
  self.region = region
202
207
  self.role_arn = role_arn
208
+ # This parameter is required.
203
209
  self.start = start
210
+ # This parameter is required.
204
211
  self.store = store
212
+ # This parameter is required.
205
213
  self.store_type = store_type
214
+ # This parameter is required.
206
215
  self.time_span_type = time_span_type
207
216
  self.ui = ui
208
217
 
@@ -425,9 +434,11 @@ class TemplateConfiguration(TeaModel):
425
434
  version: str = None,
426
435
  ):
427
436
  self.aonotations = aonotations
437
+ # This parameter is required.
428
438
  self.id = id
429
439
  self.lang = lang
430
440
  self.tokens = tokens
441
+ # This parameter is required.
431
442
  self.type = type
432
443
  self.version = version
433
444
 
@@ -498,26 +509,34 @@ class AlertConfiguration(TeaModel):
498
509
  version: str = None,
499
510
  ):
500
511
  self.annotations = annotations
512
+ # This parameter is required.
501
513
  self.auto_annotation = auto_annotation
502
514
  self.condition_configuration = condition_configuration
503
515
  self.dashboard = dashboard
516
+ # This parameter is required.
504
517
  self.group_configuration = group_configuration
505
518
  self.join_configurations = join_configurations
506
519
  self.labels = labels
507
520
  self.mute_until = mute_until
521
+ # This parameter is required.
508
522
  self.no_data_fire = no_data_fire
509
523
  self.no_data_severity = no_data_severity
510
524
  self.policy_configuration = policy_configuration
525
+ # This parameter is required.
511
526
  self.query_list = query_list
527
+ # This parameter is required.
512
528
  self.send_resolved = send_resolved
529
+ # This parameter is required.
513
530
  self.severity_configurations = severity_configurations
514
531
  self.sink_alerthub = sink_alerthub
515
532
  self.sink_cms = sink_cms
516
533
  self.sink_event_store = sink_event_store
517
534
  self.tags = tags
518
535
  self.template_configuration = template_configuration
536
+ # This parameter is required.
519
537
  self.threshold = threshold
520
538
  self.type = type
539
+ # This parameter is required.
521
540
  self.version = version
522
541
 
523
542
  def validate(self):
@@ -704,6 +723,7 @@ class Schedule(TeaModel):
704
723
  self.interval = interval
705
724
  self.run_immediately = run_immediately
706
725
  self.time_zone = time_zone
726
+ # This parameter is required.
707
727
  self.type = type
708
728
 
709
729
  def validate(self):
@@ -758,12 +778,16 @@ class Alert(TeaModel):
758
778
  schedule: Schedule = None,
759
779
  status: str = None,
760
780
  ):
781
+ # This parameter is required.
761
782
  self.configuration = configuration
762
783
  self.create_time = create_time
763
784
  self.description = description
785
+ # This parameter is required.
764
786
  self.display_name = display_name
765
787
  self.last_modified_time = last_modified_time
788
+ # This parameter is required.
766
789
  self.name = name
790
+ # This parameter is required.
767
791
  self.schedule = schedule
768
792
  self.status = status
769
793
 
@@ -859,481 +883,6 @@ class ConsumerGroup(TeaModel):
859
883
  return self
860
884
 
861
885
 
862
- class CreateAlertReq(TeaModel):
863
- def __init__(
864
- self,
865
- configuration: AlertConfiguration = None,
866
- description: str = None,
867
- display_name: str = None,
868
- name: str = None,
869
- schedule: Schedule = None,
870
- ):
871
- self.configuration = configuration
872
- self.description = description
873
- self.display_name = display_name
874
- self.name = name
875
- self.schedule = schedule
876
-
877
- def validate(self):
878
- if self.configuration:
879
- self.configuration.validate()
880
- if self.schedule:
881
- self.schedule.validate()
882
-
883
- def to_map(self):
884
- _map = super().to_map()
885
- if _map is not None:
886
- return _map
887
-
888
- result = dict()
889
- if self.configuration is not None:
890
- result['configuration'] = self.configuration.to_map()
891
- if self.description is not None:
892
- result['description'] = self.description
893
- if self.display_name is not None:
894
- result['displayName'] = self.display_name
895
- if self.name is not None:
896
- result['name'] = self.name
897
- if self.schedule is not None:
898
- result['schedule'] = self.schedule.to_map()
899
- return result
900
-
901
- def from_map(self, m: dict = None):
902
- m = m or dict()
903
- if m.get('configuration') is not None:
904
- temp_model = AlertConfiguration()
905
- self.configuration = temp_model.from_map(m['configuration'])
906
- if m.get('description') is not None:
907
- self.description = m.get('description')
908
- if m.get('displayName') is not None:
909
- self.display_name = m.get('displayName')
910
- if m.get('name') is not None:
911
- self.name = m.get('name')
912
- if m.get('schedule') is not None:
913
- temp_model = Schedule()
914
- self.schedule = temp_model.from_map(m['schedule'])
915
- return self
916
-
917
-
918
- class OSSExportConfigurationSink(TeaModel):
919
- def __init__(
920
- self,
921
- bucket: str = None,
922
- buffer_interval: int = None,
923
- buffer_size: int = None,
924
- compression_type: str = None,
925
- content_detail: Dict[str, Any] = None,
926
- content_type: str = None,
927
- delay_sec: int = None,
928
- endpoint: str = None,
929
- path_format: str = None,
930
- path_format_type: str = None,
931
- prefix: str = None,
932
- role_arn: str = None,
933
- suffix: str = None,
934
- time_zone: str = None,
935
- ):
936
- self.bucket = bucket
937
- self.buffer_interval = buffer_interval
938
- self.buffer_size = buffer_size
939
- self.compression_type = compression_type
940
- self.content_detail = content_detail
941
- self.content_type = content_type
942
- self.delay_sec = delay_sec
943
- self.endpoint = endpoint
944
- self.path_format = path_format
945
- self.path_format_type = path_format_type
946
- self.prefix = prefix
947
- self.role_arn = role_arn
948
- self.suffix = suffix
949
- self.time_zone = time_zone
950
-
951
- def validate(self):
952
- pass
953
-
954
- def to_map(self):
955
- _map = super().to_map()
956
- if _map is not None:
957
- return _map
958
-
959
- result = dict()
960
- if self.bucket is not None:
961
- result['bucket'] = self.bucket
962
- if self.buffer_interval is not None:
963
- result['bufferInterval'] = self.buffer_interval
964
- if self.buffer_size is not None:
965
- result['bufferSize'] = self.buffer_size
966
- if self.compression_type is not None:
967
- result['compressionType'] = self.compression_type
968
- if self.content_detail is not None:
969
- result['contentDetail'] = self.content_detail
970
- if self.content_type is not None:
971
- result['contentType'] = self.content_type
972
- if self.delay_sec is not None:
973
- result['delaySec'] = self.delay_sec
974
- if self.endpoint is not None:
975
- result['endpoint'] = self.endpoint
976
- if self.path_format is not None:
977
- result['pathFormat'] = self.path_format
978
- if self.path_format_type is not None:
979
- result['pathFormatType'] = self.path_format_type
980
- if self.prefix is not None:
981
- result['prefix'] = self.prefix
982
- if self.role_arn is not None:
983
- result['roleArn'] = self.role_arn
984
- if self.suffix is not None:
985
- result['suffix'] = self.suffix
986
- if self.time_zone is not None:
987
- result['timeZone'] = self.time_zone
988
- return result
989
-
990
- def from_map(self, m: dict = None):
991
- m = m or dict()
992
- if m.get('bucket') is not None:
993
- self.bucket = m.get('bucket')
994
- if m.get('bufferInterval') is not None:
995
- self.buffer_interval = m.get('bufferInterval')
996
- if m.get('bufferSize') is not None:
997
- self.buffer_size = m.get('bufferSize')
998
- if m.get('compressionType') is not None:
999
- self.compression_type = m.get('compressionType')
1000
- if m.get('contentDetail') is not None:
1001
- self.content_detail = m.get('contentDetail')
1002
- if m.get('contentType') is not None:
1003
- self.content_type = m.get('contentType')
1004
- if m.get('delaySec') is not None:
1005
- self.delay_sec = m.get('delaySec')
1006
- if m.get('endpoint') is not None:
1007
- self.endpoint = m.get('endpoint')
1008
- if m.get('pathFormat') is not None:
1009
- self.path_format = m.get('pathFormat')
1010
- if m.get('pathFormatType') is not None:
1011
- self.path_format_type = m.get('pathFormatType')
1012
- if m.get('prefix') is not None:
1013
- self.prefix = m.get('prefix')
1014
- if m.get('roleArn') is not None:
1015
- self.role_arn = m.get('roleArn')
1016
- if m.get('suffix') is not None:
1017
- self.suffix = m.get('suffix')
1018
- if m.get('timeZone') is not None:
1019
- self.time_zone = m.get('timeZone')
1020
- return self
1021
-
1022
-
1023
- class OSSExportConfiguration(TeaModel):
1024
- def __init__(
1025
- self,
1026
- from_time: int = None,
1027
- logstore: str = None,
1028
- role_arn: str = None,
1029
- sink: OSSExportConfigurationSink = None,
1030
- to_time: int = None,
1031
- ):
1032
- self.from_time = from_time
1033
- self.logstore = logstore
1034
- self.role_arn = role_arn
1035
- self.sink = sink
1036
- self.to_time = to_time
1037
-
1038
- def validate(self):
1039
- if self.sink:
1040
- self.sink.validate()
1041
-
1042
- def to_map(self):
1043
- _map = super().to_map()
1044
- if _map is not None:
1045
- return _map
1046
-
1047
- result = dict()
1048
- if self.from_time is not None:
1049
- result['fromTime'] = self.from_time
1050
- if self.logstore is not None:
1051
- result['logstore'] = self.logstore
1052
- if self.role_arn is not None:
1053
- result['roleArn'] = self.role_arn
1054
- if self.sink is not None:
1055
- result['sink'] = self.sink.to_map()
1056
- if self.to_time is not None:
1057
- result['toTime'] = self.to_time
1058
- return result
1059
-
1060
- def from_map(self, m: dict = None):
1061
- m = m or dict()
1062
- if m.get('fromTime') is not None:
1063
- self.from_time = m.get('fromTime')
1064
- if m.get('logstore') is not None:
1065
- self.logstore = m.get('logstore')
1066
- if m.get('roleArn') is not None:
1067
- self.role_arn = m.get('roleArn')
1068
- if m.get('sink') is not None:
1069
- temp_model = OSSExportConfigurationSink()
1070
- self.sink = temp_model.from_map(m['sink'])
1071
- if m.get('toTime') is not None:
1072
- self.to_time = m.get('toTime')
1073
- return self
1074
-
1075
-
1076
- class CreateOSSExportReq(TeaModel):
1077
- def __init__(
1078
- self,
1079
- configuration: OSSExportConfiguration = None,
1080
- description: str = None,
1081
- display_name: str = None,
1082
- name: str = None,
1083
- ):
1084
- self.configuration = configuration
1085
- self.description = description
1086
- self.display_name = display_name
1087
- self.name = name
1088
-
1089
- def validate(self):
1090
- if self.configuration:
1091
- self.configuration.validate()
1092
-
1093
- def to_map(self):
1094
- _map = super().to_map()
1095
- if _map is not None:
1096
- return _map
1097
-
1098
- result = dict()
1099
- if self.configuration is not None:
1100
- result['configuration'] = self.configuration.to_map()
1101
- if self.description is not None:
1102
- result['description'] = self.description
1103
- if self.display_name is not None:
1104
- result['displayName'] = self.display_name
1105
- if self.name is not None:
1106
- result['name'] = self.name
1107
- return result
1108
-
1109
- def from_map(self, m: dict = None):
1110
- m = m or dict()
1111
- if m.get('configuration') is not None:
1112
- temp_model = OSSExportConfiguration()
1113
- self.configuration = temp_model.from_map(m['configuration'])
1114
- if m.get('description') is not None:
1115
- self.description = m.get('description')
1116
- if m.get('displayName') is not None:
1117
- self.display_name = m.get('displayName')
1118
- if m.get('name') is not None:
1119
- self.name = m.get('name')
1120
- return self
1121
-
1122
-
1123
- class OSSIngestionConfigurationSource(TeaModel):
1124
- def __init__(
1125
- self,
1126
- bucket: str = None,
1127
- compression_codec: str = None,
1128
- encoding: str = None,
1129
- end_time: int = None,
1130
- endpoint: str = None,
1131
- format: Dict[str, Any] = None,
1132
- interval: str = None,
1133
- pattern: str = None,
1134
- prefix: str = None,
1135
- restore_object_enabled: bool = None,
1136
- role_arn: str = None,
1137
- start_time: int = None,
1138
- time_field: str = None,
1139
- time_format: str = None,
1140
- time_pattern: str = None,
1141
- time_zone: str = None,
1142
- use_meta_index: bool = None,
1143
- ):
1144
- self.bucket = bucket
1145
- self.compression_codec = compression_codec
1146
- self.encoding = encoding
1147
- self.end_time = end_time
1148
- self.endpoint = endpoint
1149
- self.format = format
1150
- self.interval = interval
1151
- self.pattern = pattern
1152
- self.prefix = prefix
1153
- self.restore_object_enabled = restore_object_enabled
1154
- self.role_arn = role_arn
1155
- self.start_time = start_time
1156
- self.time_field = time_field
1157
- self.time_format = time_format
1158
- self.time_pattern = time_pattern
1159
- self.time_zone = time_zone
1160
- self.use_meta_index = use_meta_index
1161
-
1162
- def validate(self):
1163
- pass
1164
-
1165
- def to_map(self):
1166
- _map = super().to_map()
1167
- if _map is not None:
1168
- return _map
1169
-
1170
- result = dict()
1171
- if self.bucket is not None:
1172
- result['bucket'] = self.bucket
1173
- if self.compression_codec is not None:
1174
- result['compressionCodec'] = self.compression_codec
1175
- if self.encoding is not None:
1176
- result['encoding'] = self.encoding
1177
- if self.end_time is not None:
1178
- result['endTime'] = self.end_time
1179
- if self.endpoint is not None:
1180
- result['endpoint'] = self.endpoint
1181
- if self.format is not None:
1182
- result['format'] = self.format
1183
- if self.interval is not None:
1184
- result['interval'] = self.interval
1185
- if self.pattern is not None:
1186
- result['pattern'] = self.pattern
1187
- if self.prefix is not None:
1188
- result['prefix'] = self.prefix
1189
- if self.restore_object_enabled is not None:
1190
- result['restoreObjectEnabled'] = self.restore_object_enabled
1191
- if self.role_arn is not None:
1192
- result['roleARN'] = self.role_arn
1193
- if self.start_time is not None:
1194
- result['startTime'] = self.start_time
1195
- if self.time_field is not None:
1196
- result['timeField'] = self.time_field
1197
- if self.time_format is not None:
1198
- result['timeFormat'] = self.time_format
1199
- if self.time_pattern is not None:
1200
- result['timePattern'] = self.time_pattern
1201
- if self.time_zone is not None:
1202
- result['timeZone'] = self.time_zone
1203
- if self.use_meta_index is not None:
1204
- result['useMetaIndex'] = self.use_meta_index
1205
- return result
1206
-
1207
- def from_map(self, m: dict = None):
1208
- m = m or dict()
1209
- if m.get('bucket') is not None:
1210
- self.bucket = m.get('bucket')
1211
- if m.get('compressionCodec') is not None:
1212
- self.compression_codec = m.get('compressionCodec')
1213
- if m.get('encoding') is not None:
1214
- self.encoding = m.get('encoding')
1215
- if m.get('endTime') is not None:
1216
- self.end_time = m.get('endTime')
1217
- if m.get('endpoint') is not None:
1218
- self.endpoint = m.get('endpoint')
1219
- if m.get('format') is not None:
1220
- self.format = m.get('format')
1221
- if m.get('interval') is not None:
1222
- self.interval = m.get('interval')
1223
- if m.get('pattern') is not None:
1224
- self.pattern = m.get('pattern')
1225
- if m.get('prefix') is not None:
1226
- self.prefix = m.get('prefix')
1227
- if m.get('restoreObjectEnabled') is not None:
1228
- self.restore_object_enabled = m.get('restoreObjectEnabled')
1229
- if m.get('roleARN') is not None:
1230
- self.role_arn = m.get('roleARN')
1231
- if m.get('startTime') is not None:
1232
- self.start_time = m.get('startTime')
1233
- if m.get('timeField') is not None:
1234
- self.time_field = m.get('timeField')
1235
- if m.get('timeFormat') is not None:
1236
- self.time_format = m.get('timeFormat')
1237
- if m.get('timePattern') is not None:
1238
- self.time_pattern = m.get('timePattern')
1239
- if m.get('timeZone') is not None:
1240
- self.time_zone = m.get('timeZone')
1241
- if m.get('useMetaIndex') is not None:
1242
- self.use_meta_index = m.get('useMetaIndex')
1243
- return self
1244
-
1245
-
1246
- class OSSIngestionConfiguration(TeaModel):
1247
- def __init__(
1248
- self,
1249
- logstore: str = None,
1250
- source: OSSIngestionConfigurationSource = None,
1251
- ):
1252
- self.logstore = logstore
1253
- self.source = source
1254
-
1255
- def validate(self):
1256
- if self.source:
1257
- self.source.validate()
1258
-
1259
- def to_map(self):
1260
- _map = super().to_map()
1261
- if _map is not None:
1262
- return _map
1263
-
1264
- result = dict()
1265
- if self.logstore is not None:
1266
- result['logstore'] = self.logstore
1267
- if self.source is not None:
1268
- result['source'] = self.source.to_map()
1269
- return result
1270
-
1271
- def from_map(self, m: dict = None):
1272
- m = m or dict()
1273
- if m.get('logstore') is not None:
1274
- self.logstore = m.get('logstore')
1275
- if m.get('source') is not None:
1276
- temp_model = OSSIngestionConfigurationSource()
1277
- self.source = temp_model.from_map(m['source'])
1278
- return self
1279
-
1280
-
1281
- class CreateOSSIngestionReq(TeaModel):
1282
- def __init__(
1283
- self,
1284
- configuration: OSSIngestionConfiguration = None,
1285
- description: str = None,
1286
- display_name: str = None,
1287
- name: str = None,
1288
- schedule: Schedule = None,
1289
- ):
1290
- self.configuration = configuration
1291
- self.description = description
1292
- self.display_name = display_name
1293
- self.name = name
1294
- self.schedule = schedule
1295
-
1296
- def validate(self):
1297
- if self.configuration:
1298
- self.configuration.validate()
1299
- if self.schedule:
1300
- self.schedule.validate()
1301
-
1302
- def to_map(self):
1303
- _map = super().to_map()
1304
- if _map is not None:
1305
- return _map
1306
-
1307
- result = dict()
1308
- if self.configuration is not None:
1309
- result['configuration'] = self.configuration.to_map()
1310
- if self.description is not None:
1311
- result['description'] = self.description
1312
- if self.display_name is not None:
1313
- result['displayName'] = self.display_name
1314
- if self.name is not None:
1315
- result['name'] = self.name
1316
- if self.schedule is not None:
1317
- result['schedule'] = self.schedule.to_map()
1318
- return result
1319
-
1320
- def from_map(self, m: dict = None):
1321
- m = m or dict()
1322
- if m.get('configuration') is not None:
1323
- temp_model = OSSIngestionConfiguration()
1324
- self.configuration = temp_model.from_map(m['configuration'])
1325
- if m.get('description') is not None:
1326
- self.description = m.get('description')
1327
- if m.get('displayName') is not None:
1328
- self.display_name = m.get('displayName')
1329
- if m.get('name') is not None:
1330
- self.name = m.get('name')
1331
- if m.get('schedule') is not None:
1332
- temp_model = Schedule()
1333
- self.schedule = temp_model.from_map(m['schedule'])
1334
- return self
1335
-
1336
-
1337
886
  class ETLConfigurationSink(TeaModel):
1338
887
  def __init__(
1339
888
  self,
@@ -1348,9 +897,13 @@ class ETLConfigurationSink(TeaModel):
1348
897
  self.access_key_id = access_key_id
1349
898
  self.access_key_secret = access_key_secret
1350
899
  self.endpoint = endpoint
900
+ # This parameter is required.
1351
901
  self.logstore = logstore
902
+ # This parameter is required.
1352
903
  self.name = name
904
+ # This parameter is required.
1353
905
  self.project = project
906
+ # This parameter is required.
1354
907
  self.role_arn = role_arn
1355
908
 
1356
909
  def validate(self):
@@ -1412,12 +965,18 @@ class ETLConfiguration(TeaModel):
1412
965
  ):
1413
966
  self.access_key_id = access_key_id
1414
967
  self.access_key_secret = access_key_secret
968
+ # This parameter is required.
1415
969
  self.from_time = from_time
970
+ # This parameter is required.
1416
971
  self.logstore = logstore
1417
972
  self.parameters = parameters
973
+ # This parameter is required.
1418
974
  self.role_arn = role_arn
975
+ # This parameter is required.
1419
976
  self.script = script
977
+ # This parameter is required.
1420
978
  self.sinks = sinks
979
+ # This parameter is required.
1421
980
  self.to_time = to_time
1422
981
 
1423
982
  def validate(self):
@@ -1492,11 +1051,14 @@ class ETL(TeaModel):
1492
1051
  schedule_id: str = None,
1493
1052
  status: str = None,
1494
1053
  ):
1054
+ # This parameter is required.
1495
1055
  self.configuration = configuration
1496
1056
  self.create_time = create_time
1497
1057
  self.description = description
1058
+ # This parameter is required.
1498
1059
  self.display_name = display_name
1499
1060
  self.last_modified_time = last_modified_time
1061
+ # This parameter is required.
1500
1062
  self.name = name
1501
1063
  self.schedule_id = schedule_id
1502
1064
  self.status = status
@@ -1558,8 +1120,11 @@ class EncryptUserCmkConf(TeaModel):
1558
1120
  cmk_key_id: str = None,
1559
1121
  region_id: str = None,
1560
1122
  ):
1123
+ # This parameter is required.
1561
1124
  self.arn = arn
1125
+ # This parameter is required.
1562
1126
  self.cmk_key_id = cmk_key_id
1127
+ # This parameter is required.
1563
1128
  self.region_id = region_id
1564
1129
 
1565
1130
  def validate(self):
@@ -1597,6 +1162,7 @@ class EncryptConf(TeaModel):
1597
1162
  encrypt_type: str = None,
1598
1163
  user_cmk_info: EncryptUserCmkConf = None,
1599
1164
  ):
1165
+ # This parameter is required.
1600
1166
  self.enable = enable
1601
1167
  self.encrypt_type = encrypt_type
1602
1168
  self.user_cmk_info = user_cmk_info
@@ -1682,7 +1248,9 @@ class LogContent(TeaModel):
1682
1248
  key: str = None,
1683
1249
  value: str = None,
1684
1250
  ):
1251
+ # This parameter is required.
1685
1252
  self.key = key
1253
+ # This parameter is required.
1686
1254
  self.value = value
1687
1255
 
1688
1256
  def validate(self):
@@ -1715,7 +1283,9 @@ class LogTag(TeaModel):
1715
1283
  key: str = None,
1716
1284
  value: str = None,
1717
1285
  ):
1286
+ # This parameter is required.
1718
1287
  self.key = key
1288
+ # This parameter is required.
1719
1289
  self.value = value
1720
1290
 
1721
1291
  def validate(self):
@@ -1748,7 +1318,9 @@ class LogItem(TeaModel):
1748
1318
  contents: List[LogContent] = None,
1749
1319
  time: int = None,
1750
1320
  ):
1321
+ # This parameter is required.
1751
1322
  self.contents = contents
1323
+ # This parameter is required.
1752
1324
  self.time = time
1753
1325
 
1754
1326
  def validate(self):
@@ -1791,9 +1363,12 @@ class LogGroup(TeaModel):
1791
1363
  source: str = None,
1792
1364
  topic: str = None,
1793
1365
  ):
1366
+ # This parameter is required.
1794
1367
  self.log_tags = log_tags
1368
+ # This parameter is required.
1795
1369
  self.logs = logs
1796
1370
  self.source = source
1371
+ # This parameter is required.
1797
1372
  self.topic = topic
1798
1373
 
1799
1374
  def validate(self):
@@ -1852,7 +1427,9 @@ class LogtailConfigOutputDetail(TeaModel):
1852
1427
  logstore_name: str = None,
1853
1428
  region: str = None,
1854
1429
  ):
1430
+ # This parameter is required.
1855
1431
  self.endpoint = endpoint
1432
+ # This parameter is required.
1856
1433
  self.logstore_name = logstore_name
1857
1434
  self.region = region
1858
1435
 
@@ -1896,13 +1473,18 @@ class LogtailConfig(TeaModel):
1896
1473
  output_detail: LogtailConfigOutputDetail = None,
1897
1474
  output_type: str = None,
1898
1475
  ):
1476
+ # This parameter is required.
1899
1477
  self.config_name = config_name
1900
1478
  self.create_time = create_time
1479
+ # This parameter is required.
1901
1480
  self.input_detail = input_detail
1481
+ # This parameter is required.
1902
1482
  self.input_type = input_type
1903
1483
  self.last_modify_time = last_modify_time
1904
1484
  self.log_sample = log_sample
1485
+ # This parameter is required.
1905
1486
  self.output_detail = output_detail
1487
+ # This parameter is required.
1906
1488
  self.output_type = output_type
1907
1489
 
1908
1490
  def validate(self):
@@ -1969,10 +1551,13 @@ class LogtailPipelineConfig(TeaModel):
1969
1551
  processors: List[Dict[str, Any]] = None,
1970
1552
  ):
1971
1553
  self.aggregators = aggregators
1554
+ # This parameter is required.
1972
1555
  self.config_name = config_name
1973
1556
  self.create_time = create_time
1557
+ # This parameter is required.
1974
1558
  self.flushers = flushers
1975
1559
  self.global_ = global_
1560
+ # This parameter is required.
1976
1561
  self.inputs = inputs
1977
1562
  self.last_modify_time = last_modify_time
1978
1563
  self.log_sample = log_sample
@@ -2591,16 +2176,250 @@ class MaxComputeExportConfigurationSink(TeaModel):
2591
2176
  partition_time_format: str = None,
2592
2177
  time_zone: str = None,
2593
2178
  ):
2594
- self.fields = fields
2595
- self.odps_access_key_id = odps_access_key_id
2596
- self.odps_access_secret = odps_access_secret
2597
- self.odps_endpoint = odps_endpoint
2598
- self.odps_project = odps_project
2599
- self.odps_rolearn = odps_rolearn
2600
- self.odps_table = odps_table
2601
- self.odps_tunnel_endpoint = odps_tunnel_endpoint
2602
- self.partition_column = partition_column
2603
- self.partition_time_format = partition_time_format
2179
+ # This parameter is required.
2180
+ self.fields = fields
2181
+ self.odps_access_key_id = odps_access_key_id
2182
+ self.odps_access_secret = odps_access_secret
2183
+ # This parameter is required.
2184
+ self.odps_endpoint = odps_endpoint
2185
+ # This parameter is required.
2186
+ self.odps_project = odps_project
2187
+ self.odps_rolearn = odps_rolearn
2188
+ # This parameter is required.
2189
+ self.odps_table = odps_table
2190
+ # This parameter is required.
2191
+ self.odps_tunnel_endpoint = odps_tunnel_endpoint
2192
+ # This parameter is required.
2193
+ self.partition_column = partition_column
2194
+ # This parameter is required.
2195
+ self.partition_time_format = partition_time_format
2196
+ # This parameter is required.
2197
+ self.time_zone = time_zone
2198
+
2199
+ def validate(self):
2200
+ pass
2201
+
2202
+ def to_map(self):
2203
+ _map = super().to_map()
2204
+ if _map is not None:
2205
+ return _map
2206
+
2207
+ result = dict()
2208
+ if self.fields is not None:
2209
+ result['fields'] = self.fields
2210
+ if self.odps_access_key_id is not None:
2211
+ result['odpsAccessKeyId'] = self.odps_access_key_id
2212
+ if self.odps_access_secret is not None:
2213
+ result['odpsAccessSecret'] = self.odps_access_secret
2214
+ if self.odps_endpoint is not None:
2215
+ result['odpsEndpoint'] = self.odps_endpoint
2216
+ if self.odps_project is not None:
2217
+ result['odpsProject'] = self.odps_project
2218
+ if self.odps_rolearn is not None:
2219
+ result['odpsRolearn'] = self.odps_rolearn
2220
+ if self.odps_table is not None:
2221
+ result['odpsTable'] = self.odps_table
2222
+ if self.odps_tunnel_endpoint is not None:
2223
+ result['odpsTunnelEndpoint'] = self.odps_tunnel_endpoint
2224
+ if self.partition_column is not None:
2225
+ result['partitionColumn'] = self.partition_column
2226
+ if self.partition_time_format is not None:
2227
+ result['partitionTimeFormat'] = self.partition_time_format
2228
+ if self.time_zone is not None:
2229
+ result['timeZone'] = self.time_zone
2230
+ return result
2231
+
2232
+ def from_map(self, m: dict = None):
2233
+ m = m or dict()
2234
+ if m.get('fields') is not None:
2235
+ self.fields = m.get('fields')
2236
+ if m.get('odpsAccessKeyId') is not None:
2237
+ self.odps_access_key_id = m.get('odpsAccessKeyId')
2238
+ if m.get('odpsAccessSecret') is not None:
2239
+ self.odps_access_secret = m.get('odpsAccessSecret')
2240
+ if m.get('odpsEndpoint') is not None:
2241
+ self.odps_endpoint = m.get('odpsEndpoint')
2242
+ if m.get('odpsProject') is not None:
2243
+ self.odps_project = m.get('odpsProject')
2244
+ if m.get('odpsRolearn') is not None:
2245
+ self.odps_rolearn = m.get('odpsRolearn')
2246
+ if m.get('odpsTable') is not None:
2247
+ self.odps_table = m.get('odpsTable')
2248
+ if m.get('odpsTunnelEndpoint') is not None:
2249
+ self.odps_tunnel_endpoint = m.get('odpsTunnelEndpoint')
2250
+ if m.get('partitionColumn') is not None:
2251
+ self.partition_column = m.get('partitionColumn')
2252
+ if m.get('partitionTimeFormat') is not None:
2253
+ self.partition_time_format = m.get('partitionTimeFormat')
2254
+ if m.get('timeZone') is not None:
2255
+ self.time_zone = m.get('timeZone')
2256
+ return self
2257
+
2258
+
2259
+ class MaxComputeExportConfiguration(TeaModel):
2260
+ def __init__(
2261
+ self,
2262
+ from_time: int = None,
2263
+ logstore: str = None,
2264
+ role_arn: str = None,
2265
+ sink: MaxComputeExportConfigurationSink = None,
2266
+ to_time: int = None,
2267
+ ):
2268
+ # This parameter is required.
2269
+ self.from_time = from_time
2270
+ # This parameter is required.
2271
+ self.logstore = logstore
2272
+ # This parameter is required.
2273
+ self.role_arn = role_arn
2274
+ # This parameter is required.
2275
+ self.sink = sink
2276
+ # This parameter is required.
2277
+ self.to_time = to_time
2278
+
2279
+ def validate(self):
2280
+ if self.sink:
2281
+ self.sink.validate()
2282
+
2283
+ def to_map(self):
2284
+ _map = super().to_map()
2285
+ if _map is not None:
2286
+ return _map
2287
+
2288
+ result = dict()
2289
+ if self.from_time is not None:
2290
+ result['fromTime'] = self.from_time
2291
+ if self.logstore is not None:
2292
+ result['logstore'] = self.logstore
2293
+ if self.role_arn is not None:
2294
+ result['roleArn'] = self.role_arn
2295
+ if self.sink is not None:
2296
+ result['sink'] = self.sink.to_map()
2297
+ if self.to_time is not None:
2298
+ result['toTime'] = self.to_time
2299
+ return result
2300
+
2301
+ def from_map(self, m: dict = None):
2302
+ m = m or dict()
2303
+ if m.get('fromTime') is not None:
2304
+ self.from_time = m.get('fromTime')
2305
+ if m.get('logstore') is not None:
2306
+ self.logstore = m.get('logstore')
2307
+ if m.get('roleArn') is not None:
2308
+ self.role_arn = m.get('roleArn')
2309
+ if m.get('sink') is not None:
2310
+ temp_model = MaxComputeExportConfigurationSink()
2311
+ self.sink = temp_model.from_map(m['sink'])
2312
+ if m.get('toTime') is not None:
2313
+ self.to_time = m.get('toTime')
2314
+ return self
2315
+
2316
+
2317
+ class MaxComputeExport(TeaModel):
2318
+ def __init__(
2319
+ self,
2320
+ configuration: MaxComputeExportConfiguration = None,
2321
+ create_time: int = None,
2322
+ description: str = None,
2323
+ display_name: str = None,
2324
+ last_modified_time: int = None,
2325
+ name: str = None,
2326
+ status: str = None,
2327
+ ):
2328
+ # This parameter is required.
2329
+ self.configuration = configuration
2330
+ self.create_time = create_time
2331
+ self.description = description
2332
+ # This parameter is required.
2333
+ self.display_name = display_name
2334
+ self.last_modified_time = last_modified_time
2335
+ # This parameter is required.
2336
+ self.name = name
2337
+ self.status = status
2338
+
2339
+ def validate(self):
2340
+ if self.configuration:
2341
+ self.configuration.validate()
2342
+
2343
+ def to_map(self):
2344
+ _map = super().to_map()
2345
+ if _map is not None:
2346
+ return _map
2347
+
2348
+ result = dict()
2349
+ if self.configuration is not None:
2350
+ result['configuration'] = self.configuration.to_map()
2351
+ if self.create_time is not None:
2352
+ result['createTime'] = self.create_time
2353
+ if self.description is not None:
2354
+ result['description'] = self.description
2355
+ if self.display_name is not None:
2356
+ result['displayName'] = self.display_name
2357
+ if self.last_modified_time is not None:
2358
+ result['lastModifiedTime'] = self.last_modified_time
2359
+ if self.name is not None:
2360
+ result['name'] = self.name
2361
+ if self.status is not None:
2362
+ result['status'] = self.status
2363
+ return result
2364
+
2365
+ def from_map(self, m: dict = None):
2366
+ m = m or dict()
2367
+ if m.get('configuration') is not None:
2368
+ temp_model = MaxComputeExportConfiguration()
2369
+ self.configuration = temp_model.from_map(m['configuration'])
2370
+ if m.get('createTime') is not None:
2371
+ self.create_time = m.get('createTime')
2372
+ if m.get('description') is not None:
2373
+ self.description = m.get('description')
2374
+ if m.get('displayName') is not None:
2375
+ self.display_name = m.get('displayName')
2376
+ if m.get('lastModifiedTime') is not None:
2377
+ self.last_modified_time = m.get('lastModifiedTime')
2378
+ if m.get('name') is not None:
2379
+ self.name = m.get('name')
2380
+ if m.get('status') is not None:
2381
+ self.status = m.get('status')
2382
+ return self
2383
+
2384
+
2385
+ class OSSExportConfigurationSink(TeaModel):
2386
+ def __init__(
2387
+ self,
2388
+ bucket: str = None,
2389
+ buffer_interval: int = None,
2390
+ buffer_size: int = None,
2391
+ compression_type: str = None,
2392
+ content_detail: Dict[str, Any] = None,
2393
+ content_type: str = None,
2394
+ delay_sec: int = None,
2395
+ delay_seconds: int = None,
2396
+ endpoint: str = None,
2397
+ path_format: str = None,
2398
+ path_format_type: str = None,
2399
+ prefix: str = None,
2400
+ role_arn: str = None,
2401
+ suffix: str = None,
2402
+ time_zone: str = None,
2403
+ ):
2404
+ # This parameter is required.
2405
+ self.bucket = bucket
2406
+ self.buffer_interval = buffer_interval
2407
+ self.buffer_size = buffer_size
2408
+ self.compression_type = compression_type
2409
+ self.content_detail = content_detail
2410
+ self.content_type = content_type
2411
+ self.delay_sec = delay_sec
2412
+ self.delay_seconds = delay_seconds
2413
+ # This parameter is required.
2414
+ self.endpoint = endpoint
2415
+ # This parameter is required.
2416
+ self.path_format = path_format
2417
+ # This parameter is required.
2418
+ self.path_format_type = path_format_type
2419
+ self.prefix = prefix
2420
+ # This parameter is required.
2421
+ self.role_arn = role_arn
2422
+ self.suffix = suffix
2604
2423
  self.time_zone = time_zone
2605
2424
 
2606
2425
  def validate(self):
@@ -2612,64 +2431,80 @@ class MaxComputeExportConfigurationSink(TeaModel):
2612
2431
  return _map
2613
2432
 
2614
2433
  result = dict()
2615
- if self.fields is not None:
2616
- result['fields'] = self.fields
2617
- if self.odps_access_key_id is not None:
2618
- result['odpsAccessKeyId'] = self.odps_access_key_id
2619
- if self.odps_access_secret is not None:
2620
- result['odpsAccessSecret'] = self.odps_access_secret
2621
- if self.odps_endpoint is not None:
2622
- result['odpsEndpoint'] = self.odps_endpoint
2623
- if self.odps_project is not None:
2624
- result['odpsProject'] = self.odps_project
2625
- if self.odps_rolearn is not None:
2626
- result['odpsRolearn'] = self.odps_rolearn
2627
- if self.odps_table is not None:
2628
- result['odpsTable'] = self.odps_table
2629
- if self.odps_tunnel_endpoint is not None:
2630
- result['odpsTunnelEndpoint'] = self.odps_tunnel_endpoint
2631
- if self.partition_column is not None:
2632
- result['partitionColumn'] = self.partition_column
2633
- if self.partition_time_format is not None:
2634
- result['partitionTimeFormat'] = self.partition_time_format
2434
+ if self.bucket is not None:
2435
+ result['bucket'] = self.bucket
2436
+ if self.buffer_interval is not None:
2437
+ result['bufferInterval'] = self.buffer_interval
2438
+ if self.buffer_size is not None:
2439
+ result['bufferSize'] = self.buffer_size
2440
+ if self.compression_type is not None:
2441
+ result['compressionType'] = self.compression_type
2442
+ if self.content_detail is not None:
2443
+ result['contentDetail'] = self.content_detail
2444
+ if self.content_type is not None:
2445
+ result['contentType'] = self.content_type
2446
+ if self.delay_sec is not None:
2447
+ result['delaySec'] = self.delay_sec
2448
+ if self.delay_seconds is not None:
2449
+ result['delaySeconds'] = self.delay_seconds
2450
+ if self.endpoint is not None:
2451
+ result['endpoint'] = self.endpoint
2452
+ if self.path_format is not None:
2453
+ result['pathFormat'] = self.path_format
2454
+ if self.path_format_type is not None:
2455
+ result['pathFormatType'] = self.path_format_type
2456
+ if self.prefix is not None:
2457
+ result['prefix'] = self.prefix
2458
+ if self.role_arn is not None:
2459
+ result['roleArn'] = self.role_arn
2460
+ if self.suffix is not None:
2461
+ result['suffix'] = self.suffix
2635
2462
  if self.time_zone is not None:
2636
2463
  result['timeZone'] = self.time_zone
2637
2464
  return result
2638
2465
 
2639
2466
  def from_map(self, m: dict = None):
2640
2467
  m = m or dict()
2641
- if m.get('fields') is not None:
2642
- self.fields = m.get('fields')
2643
- if m.get('odpsAccessKeyId') is not None:
2644
- self.odps_access_key_id = m.get('odpsAccessKeyId')
2645
- if m.get('odpsAccessSecret') is not None:
2646
- self.odps_access_secret = m.get('odpsAccessSecret')
2647
- if m.get('odpsEndpoint') is not None:
2648
- self.odps_endpoint = m.get('odpsEndpoint')
2649
- if m.get('odpsProject') is not None:
2650
- self.odps_project = m.get('odpsProject')
2651
- if m.get('odpsRolearn') is not None:
2652
- self.odps_rolearn = m.get('odpsRolearn')
2653
- if m.get('odpsTable') is not None:
2654
- self.odps_table = m.get('odpsTable')
2655
- if m.get('odpsTunnelEndpoint') is not None:
2656
- self.odps_tunnel_endpoint = m.get('odpsTunnelEndpoint')
2657
- if m.get('partitionColumn') is not None:
2658
- self.partition_column = m.get('partitionColumn')
2659
- if m.get('partitionTimeFormat') is not None:
2660
- self.partition_time_format = m.get('partitionTimeFormat')
2468
+ if m.get('bucket') is not None:
2469
+ self.bucket = m.get('bucket')
2470
+ if m.get('bufferInterval') is not None:
2471
+ self.buffer_interval = m.get('bufferInterval')
2472
+ if m.get('bufferSize') is not None:
2473
+ self.buffer_size = m.get('bufferSize')
2474
+ if m.get('compressionType') is not None:
2475
+ self.compression_type = m.get('compressionType')
2476
+ if m.get('contentDetail') is not None:
2477
+ self.content_detail = m.get('contentDetail')
2478
+ if m.get('contentType') is not None:
2479
+ self.content_type = m.get('contentType')
2480
+ if m.get('delaySec') is not None:
2481
+ self.delay_sec = m.get('delaySec')
2482
+ if m.get('delaySeconds') is not None:
2483
+ self.delay_seconds = m.get('delaySeconds')
2484
+ if m.get('endpoint') is not None:
2485
+ self.endpoint = m.get('endpoint')
2486
+ if m.get('pathFormat') is not None:
2487
+ self.path_format = m.get('pathFormat')
2488
+ if m.get('pathFormatType') is not None:
2489
+ self.path_format_type = m.get('pathFormatType')
2490
+ if m.get('prefix') is not None:
2491
+ self.prefix = m.get('prefix')
2492
+ if m.get('roleArn') is not None:
2493
+ self.role_arn = m.get('roleArn')
2494
+ if m.get('suffix') is not None:
2495
+ self.suffix = m.get('suffix')
2661
2496
  if m.get('timeZone') is not None:
2662
2497
  self.time_zone = m.get('timeZone')
2663
2498
  return self
2664
2499
 
2665
2500
 
2666
- class MaxComputeExportConfiguration(TeaModel):
2501
+ class OSSExportConfiguration(TeaModel):
2667
2502
  def __init__(
2668
2503
  self,
2669
2504
  from_time: int = None,
2670
2505
  logstore: str = None,
2671
2506
  role_arn: str = None,
2672
- sink: MaxComputeExportConfigurationSink = None,
2507
+ sink: OSSExportConfigurationSink = None,
2673
2508
  to_time: int = None,
2674
2509
  ):
2675
2510
  self.from_time = from_time
@@ -2709,17 +2544,17 @@ class MaxComputeExportConfiguration(TeaModel):
2709
2544
  if m.get('roleArn') is not None:
2710
2545
  self.role_arn = m.get('roleArn')
2711
2546
  if m.get('sink') is not None:
2712
- temp_model = MaxComputeExportConfigurationSink()
2547
+ temp_model = OSSExportConfigurationSink()
2713
2548
  self.sink = temp_model.from_map(m['sink'])
2714
2549
  if m.get('toTime') is not None:
2715
2550
  self.to_time = m.get('toTime')
2716
2551
  return self
2717
2552
 
2718
2553
 
2719
- class MaxComputeExport(TeaModel):
2554
+ class OSSExport(TeaModel):
2720
2555
  def __init__(
2721
2556
  self,
2722
- configuration: MaxComputeExportConfiguration = None,
2557
+ configuration: OSSExportConfiguration = None,
2723
2558
  create_time: int = None,
2724
2559
  description: str = None,
2725
2560
  display_name: str = None,
@@ -2730,8 +2565,10 @@ class MaxComputeExport(TeaModel):
2730
2565
  self.configuration = configuration
2731
2566
  self.create_time = create_time
2732
2567
  self.description = description
2568
+ # This parameter is required.
2733
2569
  self.display_name = display_name
2734
2570
  self.last_modified_time = last_modified_time
2571
+ # This parameter is required.
2735
2572
  self.name = name
2736
2573
  self.status = status
2737
2574
 
@@ -2764,7 +2601,7 @@ class MaxComputeExport(TeaModel):
2764
2601
  def from_map(self, m: dict = None):
2765
2602
  m = m or dict()
2766
2603
  if m.get('configuration') is not None:
2767
- temp_model = MaxComputeExportConfiguration()
2604
+ temp_model = OSSExportConfiguration()
2768
2605
  self.configuration = temp_model.from_map(m['configuration'])
2769
2606
  if m.get('createTime') is not None:
2770
2607
  self.create_time = m.get('createTime')
@@ -2781,28 +2618,150 @@ class MaxComputeExport(TeaModel):
2781
2618
  return self
2782
2619
 
2783
2620
 
2784
- class OSSExport(TeaModel):
2621
+ class OSSIngestionConfigurationSource(TeaModel):
2622
+ def __init__(
2623
+ self,
2624
+ bucket: str = None,
2625
+ compression_codec: str = None,
2626
+ encoding: str = None,
2627
+ end_time: int = None,
2628
+ endpoint: str = None,
2629
+ format: Dict[str, Any] = None,
2630
+ interval: str = None,
2631
+ pattern: str = None,
2632
+ prefix: str = None,
2633
+ restore_object_enabled: bool = None,
2634
+ role_arn: str = None,
2635
+ start_time: int = None,
2636
+ time_field: str = None,
2637
+ time_format: str = None,
2638
+ time_pattern: str = None,
2639
+ time_zone: str = None,
2640
+ use_meta_index: bool = None,
2641
+ ):
2642
+ # This parameter is required.
2643
+ self.bucket = bucket
2644
+ # This parameter is required.
2645
+ self.compression_codec = compression_codec
2646
+ # This parameter is required.
2647
+ self.encoding = encoding
2648
+ self.end_time = end_time
2649
+ # This parameter is required.
2650
+ self.endpoint = endpoint
2651
+ # This parameter is required.
2652
+ self.format = format
2653
+ # This parameter is required.
2654
+ self.interval = interval
2655
+ self.pattern = pattern
2656
+ self.prefix = prefix
2657
+ self.restore_object_enabled = restore_object_enabled
2658
+ self.role_arn = role_arn
2659
+ self.start_time = start_time
2660
+ self.time_field = time_field
2661
+ self.time_format = time_format
2662
+ self.time_pattern = time_pattern
2663
+ self.time_zone = time_zone
2664
+ # This parameter is required.
2665
+ self.use_meta_index = use_meta_index
2666
+
2667
+ def validate(self):
2668
+ pass
2669
+
2670
+ def to_map(self):
2671
+ _map = super().to_map()
2672
+ if _map is not None:
2673
+ return _map
2674
+
2675
+ result = dict()
2676
+ if self.bucket is not None:
2677
+ result['bucket'] = self.bucket
2678
+ if self.compression_codec is not None:
2679
+ result['compressionCodec'] = self.compression_codec
2680
+ if self.encoding is not None:
2681
+ result['encoding'] = self.encoding
2682
+ if self.end_time is not None:
2683
+ result['endTime'] = self.end_time
2684
+ if self.endpoint is not None:
2685
+ result['endpoint'] = self.endpoint
2686
+ if self.format is not None:
2687
+ result['format'] = self.format
2688
+ if self.interval is not None:
2689
+ result['interval'] = self.interval
2690
+ if self.pattern is not None:
2691
+ result['pattern'] = self.pattern
2692
+ if self.prefix is not None:
2693
+ result['prefix'] = self.prefix
2694
+ if self.restore_object_enabled is not None:
2695
+ result['restoreObjectEnabled'] = self.restore_object_enabled
2696
+ if self.role_arn is not None:
2697
+ result['roleARN'] = self.role_arn
2698
+ if self.start_time is not None:
2699
+ result['startTime'] = self.start_time
2700
+ if self.time_field is not None:
2701
+ result['timeField'] = self.time_field
2702
+ if self.time_format is not None:
2703
+ result['timeFormat'] = self.time_format
2704
+ if self.time_pattern is not None:
2705
+ result['timePattern'] = self.time_pattern
2706
+ if self.time_zone is not None:
2707
+ result['timeZone'] = self.time_zone
2708
+ if self.use_meta_index is not None:
2709
+ result['useMetaIndex'] = self.use_meta_index
2710
+ return result
2711
+
2712
+ def from_map(self, m: dict = None):
2713
+ m = m or dict()
2714
+ if m.get('bucket') is not None:
2715
+ self.bucket = m.get('bucket')
2716
+ if m.get('compressionCodec') is not None:
2717
+ self.compression_codec = m.get('compressionCodec')
2718
+ if m.get('encoding') is not None:
2719
+ self.encoding = m.get('encoding')
2720
+ if m.get('endTime') is not None:
2721
+ self.end_time = m.get('endTime')
2722
+ if m.get('endpoint') is not None:
2723
+ self.endpoint = m.get('endpoint')
2724
+ if m.get('format') is not None:
2725
+ self.format = m.get('format')
2726
+ if m.get('interval') is not None:
2727
+ self.interval = m.get('interval')
2728
+ if m.get('pattern') is not None:
2729
+ self.pattern = m.get('pattern')
2730
+ if m.get('prefix') is not None:
2731
+ self.prefix = m.get('prefix')
2732
+ if m.get('restoreObjectEnabled') is not None:
2733
+ self.restore_object_enabled = m.get('restoreObjectEnabled')
2734
+ if m.get('roleARN') is not None:
2735
+ self.role_arn = m.get('roleARN')
2736
+ if m.get('startTime') is not None:
2737
+ self.start_time = m.get('startTime')
2738
+ if m.get('timeField') is not None:
2739
+ self.time_field = m.get('timeField')
2740
+ if m.get('timeFormat') is not None:
2741
+ self.time_format = m.get('timeFormat')
2742
+ if m.get('timePattern') is not None:
2743
+ self.time_pattern = m.get('timePattern')
2744
+ if m.get('timeZone') is not None:
2745
+ self.time_zone = m.get('timeZone')
2746
+ if m.get('useMetaIndex') is not None:
2747
+ self.use_meta_index = m.get('useMetaIndex')
2748
+ return self
2749
+
2750
+
2751
+ class OSSIngestionConfiguration(TeaModel):
2785
2752
  def __init__(
2786
2753
  self,
2787
- configuration: OSSExportConfiguration = None,
2788
- create_time: int = None,
2789
- description: str = None,
2790
- display_name: str = None,
2791
- last_modified_time: int = None,
2792
- name: str = None,
2793
- status: str = None,
2754
+ logstore: str = None,
2755
+ source: OSSIngestionConfigurationSource = None,
2794
2756
  ):
2795
- self.configuration = configuration
2796
- self.create_time = create_time
2797
- self.description = description
2798
- self.display_name = display_name
2799
- self.last_modified_time = last_modified_time
2800
- self.name = name
2801
- self.status = status
2757
+ # This parameter is required.
2758
+ self.logstore = logstore
2759
+ # This parameter is required.
2760
+ self.source = source
2802
2761
 
2803
2762
  def validate(self):
2804
- if self.configuration:
2805
- self.configuration.validate()
2763
+ if self.source:
2764
+ self.source.validate()
2806
2765
 
2807
2766
  def to_map(self):
2808
2767
  _map = super().to_map()
@@ -2810,39 +2769,19 @@ class OSSExport(TeaModel):
2810
2769
  return _map
2811
2770
 
2812
2771
  result = dict()
2813
- if self.configuration is not None:
2814
- result['configuration'] = self.configuration.to_map()
2815
- if self.create_time is not None:
2816
- result['createTime'] = self.create_time
2817
- if self.description is not None:
2818
- result['description'] = self.description
2819
- if self.display_name is not None:
2820
- result['displayName'] = self.display_name
2821
- if self.last_modified_time is not None:
2822
- result['lastModifiedTime'] = self.last_modified_time
2823
- if self.name is not None:
2824
- result['name'] = self.name
2825
- if self.status is not None:
2826
- result['status'] = self.status
2772
+ if self.logstore is not None:
2773
+ result['logstore'] = self.logstore
2774
+ if self.source is not None:
2775
+ result['source'] = self.source.to_map()
2827
2776
  return result
2828
2777
 
2829
2778
  def from_map(self, m: dict = None):
2830
2779
  m = m or dict()
2831
- if m.get('configuration') is not None:
2832
- temp_model = OSSExportConfiguration()
2833
- self.configuration = temp_model.from_map(m['configuration'])
2834
- if m.get('createTime') is not None:
2835
- self.create_time = m.get('createTime')
2836
- if m.get('description') is not None:
2837
- self.description = m.get('description')
2838
- if m.get('displayName') is not None:
2839
- self.display_name = m.get('displayName')
2840
- if m.get('lastModifiedTime') is not None:
2841
- self.last_modified_time = m.get('lastModifiedTime')
2842
- if m.get('name') is not None:
2843
- self.name = m.get('name')
2844
- if m.get('status') is not None:
2845
- self.status = m.get('status')
2780
+ if m.get('logstore') is not None:
2781
+ self.logstore = m.get('logstore')
2782
+ if m.get('source') is not None:
2783
+ temp_model = OSSIngestionConfigurationSource()
2784
+ self.source = temp_model.from_map(m['source'])
2846
2785
  return self
2847
2786
 
2848
2787
 
@@ -2858,12 +2797,16 @@ class OSSIngestion(TeaModel):
2858
2797
  schedule: Schedule = None,
2859
2798
  status: str = None,
2860
2799
  ):
2800
+ # This parameter is required.
2861
2801
  self.configuration = configuration
2862
2802
  self.create_time = create_time
2863
2803
  self.description = description
2804
+ # This parameter is required.
2864
2805
  self.display_name = display_name
2865
2806
  self.last_modified_time = last_modified_time
2807
+ # This parameter is required.
2866
2808
  self.name = name
2809
+ # This parameter is required.
2867
2810
  self.schedule = schedule
2868
2811
  self.status = status
2869
2812
 
@@ -2929,9 +2872,13 @@ class SavedSearch(TeaModel):
2929
2872
  search_query: str = None,
2930
2873
  topic: str = None,
2931
2874
  ):
2875
+ # This parameter is required.
2932
2876
  self.display_name = display_name
2877
+ # This parameter is required.
2933
2878
  self.logstore = logstore
2879
+ # This parameter is required.
2934
2880
  self.savedsearch_name = savedsearch_name
2881
+ # This parameter is required.
2935
2882
  self.search_query = search_query
2936
2883
  self.topic = topic
2937
2884
 
@@ -2992,22 +2939,39 @@ class ScheduledSQLConfiguration(TeaModel):
2992
2939
  to_time: int = None,
2993
2940
  to_time_expr: str = None,
2994
2941
  ):
2942
+ # This parameter is required.
2995
2943
  self.data_format = data_format
2944
+ # This parameter is required.
2996
2945
  self.dest_endpoint = dest_endpoint
2946
+ # This parameter is required.
2997
2947
  self.dest_logstore = dest_logstore
2948
+ # This parameter is required.
2998
2949
  self.dest_project = dest_project
2950
+ # This parameter is required.
2999
2951
  self.dest_role_arn = dest_role_arn
2952
+ # This parameter is required.
3000
2953
  self.from_time = from_time
2954
+ # This parameter is required.
3001
2955
  self.from_time_expr = from_time_expr
2956
+ # This parameter is required.
3002
2957
  self.max_retries = max_retries
2958
+ # This parameter is required.
3003
2959
  self.max_run_time_in_seconds = max_run_time_in_seconds
2960
+ # This parameter is required.
3004
2961
  self.parameters = parameters
2962
+ # This parameter is required.
3005
2963
  self.resource_pool = resource_pool
2964
+ # This parameter is required.
3006
2965
  self.role_arn = role_arn
2966
+ # This parameter is required.
3007
2967
  self.script = script
2968
+ # This parameter is required.
3008
2969
  self.source_logstore = source_logstore
2970
+ # This parameter is required.
3009
2971
  self.sql_type = sql_type
2972
+ # This parameter is required.
3010
2973
  self.to_time = to_time
2974
+ # This parameter is required.
3011
2975
  self.to_time_expr = to_time_expr
3012
2976
 
3013
2977
  def validate(self):
@@ -3105,15 +3069,21 @@ class ScheduledSQL(TeaModel):
3105
3069
  name: str = None,
3106
3070
  schedule: Schedule = None,
3107
3071
  schedule_id: str = None,
3072
+ status: str = None,
3108
3073
  ):
3074
+ # This parameter is required.
3109
3075
  self.configuration = configuration
3110
3076
  self.create_time = create_time
3111
3077
  self.description = description
3078
+ # This parameter is required.
3112
3079
  self.display_name = display_name
3113
3080
  self.last_modified_time = last_modified_time
3081
+ # This parameter is required.
3114
3082
  self.name = name
3083
+ # This parameter is required.
3115
3084
  self.schedule = schedule
3116
3085
  self.schedule_id = schedule_id
3086
+ self.status = status
3117
3087
 
3118
3088
  def validate(self):
3119
3089
  if self.configuration:
@@ -3143,6 +3113,8 @@ class ScheduledSQL(TeaModel):
3143
3113
  result['schedule'] = self.schedule.to_map()
3144
3114
  if self.schedule_id is not None:
3145
3115
  result['scheduleId'] = self.schedule_id
3116
+ if self.status is not None:
3117
+ result['status'] = self.status
3146
3118
  return result
3147
3119
 
3148
3120
  def from_map(self, m: dict = None):
@@ -3165,6 +3137,8 @@ class ScheduledSQL(TeaModel):
3165
3137
  self.schedule = temp_model.from_map(m['schedule'])
3166
3138
  if m.get('scheduleId') is not None:
3167
3139
  self.schedule_id = m.get('scheduleId')
3140
+ if m.get('status') is not None:
3141
+ self.status = m.get('status')
3168
3142
  return self
3169
3143
 
3170
3144
 
@@ -3175,8 +3149,10 @@ class StoreViewStore(TeaModel):
3175
3149
  query: str = None,
3176
3150
  store_name: str = None,
3177
3151
  ):
3152
+ # This parameter is required.
3178
3153
  self.project = project
3179
3154
  self.query = query
3155
+ # This parameter is required.
3180
3156
  self.store_name = store_name
3181
3157
 
3182
3158
  def validate(self):
@@ -3210,205 +3186,34 @@ class StoreViewStore(TeaModel):
3210
3186
  class Ticket(TeaModel):
3211
3187
  def __init__(
3212
3188
  self,
3213
- caller_uid: int = None,
3214
- create_date: str = None,
3215
- expiration_time: int = None,
3216
- expire_date: str = None,
3217
- extra: str = None,
3218
- name: str = None,
3219
- number: int = None,
3220
- sharing_to: str = None,
3221
- ticket: str = None,
3222
- ticket_id: str = None,
3223
- used_number: int = None,
3224
- valid: bool = None,
3225
- ):
3226
- self.caller_uid = caller_uid
3227
- self.create_date = create_date
3228
- self.expiration_time = expiration_time
3229
- self.expire_date = expire_date
3230
- self.extra = extra
3231
- self.name = name
3232
- self.number = number
3233
- self.sharing_to = sharing_to
3234
- self.ticket = ticket
3235
- self.ticket_id = ticket_id
3236
- self.used_number = used_number
3237
- self.valid = valid
3238
-
3239
- def validate(self):
3240
- pass
3241
-
3242
- def to_map(self):
3243
- _map = super().to_map()
3244
- if _map is not None:
3245
- return _map
3246
-
3247
- result = dict()
3248
- if self.caller_uid is not None:
3249
- result['callerUid'] = self.caller_uid
3250
- if self.create_date is not None:
3251
- result['createDate'] = self.create_date
3252
- if self.expiration_time is not None:
3253
- result['expirationTime'] = self.expiration_time
3254
- if self.expire_date is not None:
3255
- result['expireDate'] = self.expire_date
3256
- if self.extra is not None:
3257
- result['extra'] = self.extra
3258
- if self.name is not None:
3259
- result['name'] = self.name
3260
- if self.number is not None:
3261
- result['number'] = self.number
3262
- if self.sharing_to is not None:
3263
- result['sharingTo'] = self.sharing_to
3264
- if self.ticket is not None:
3265
- result['ticket'] = self.ticket
3266
- if self.ticket_id is not None:
3267
- result['ticketId'] = self.ticket_id
3268
- if self.used_number is not None:
3269
- result['usedNumber'] = self.used_number
3270
- if self.valid is not None:
3271
- result['valid'] = self.valid
3272
- return result
3273
-
3274
- def from_map(self, m: dict = None):
3275
- m = m or dict()
3276
- if m.get('callerUid') is not None:
3277
- self.caller_uid = m.get('callerUid')
3278
- if m.get('createDate') is not None:
3279
- self.create_date = m.get('createDate')
3280
- if m.get('expirationTime') is not None:
3281
- self.expiration_time = m.get('expirationTime')
3282
- if m.get('expireDate') is not None:
3283
- self.expire_date = m.get('expireDate')
3284
- if m.get('extra') is not None:
3285
- self.extra = m.get('extra')
3286
- if m.get('name') is not None:
3287
- self.name = m.get('name')
3288
- if m.get('number') is not None:
3289
- self.number = m.get('number')
3290
- if m.get('sharingTo') is not None:
3291
- self.sharing_to = m.get('sharingTo')
3292
- if m.get('ticket') is not None:
3293
- self.ticket = m.get('ticket')
3294
- if m.get('ticketId') is not None:
3295
- self.ticket_id = m.get('ticketId')
3296
- if m.get('usedNumber') is not None:
3297
- self.used_number = m.get('usedNumber')
3298
- if m.get('valid') is not None:
3299
- self.valid = m.get('valid')
3300
- return self
3301
-
3302
-
3303
- class UpdateAlertReq(TeaModel):
3304
- def __init__(
3305
- self,
3306
- configuration: AlertConfiguration = None,
3307
- description: str = None,
3308
- display_name: str = None,
3309
- schedule: Schedule = None,
3310
- ):
3311
- self.configuration = configuration
3312
- self.description = description
3313
- self.display_name = display_name
3314
- self.schedule = schedule
3315
-
3316
- def validate(self):
3317
- if self.configuration:
3318
- self.configuration.validate()
3319
- if self.schedule:
3320
- self.schedule.validate()
3321
-
3322
- def to_map(self):
3323
- _map = super().to_map()
3324
- if _map is not None:
3325
- return _map
3326
-
3327
- result = dict()
3328
- if self.configuration is not None:
3329
- result['configuration'] = self.configuration.to_map()
3330
- if self.description is not None:
3331
- result['description'] = self.description
3332
- if self.display_name is not None:
3333
- result['displayName'] = self.display_name
3334
- if self.schedule is not None:
3335
- result['schedule'] = self.schedule.to_map()
3336
- return result
3337
-
3338
- def from_map(self, m: dict = None):
3339
- m = m or dict()
3340
- if m.get('configuration') is not None:
3341
- temp_model = AlertConfiguration()
3342
- self.configuration = temp_model.from_map(m['configuration'])
3343
- if m.get('description') is not None:
3344
- self.description = m.get('description')
3345
- if m.get('displayName') is not None:
3346
- self.display_name = m.get('displayName')
3347
- if m.get('schedule') is not None:
3348
- temp_model = Schedule()
3349
- self.schedule = temp_model.from_map(m['schedule'])
3350
- return self
3351
-
3352
-
3353
- class UpdateOSSExportReq(TeaModel):
3354
- def __init__(
3355
- self,
3356
- configuration: OSSExportConfiguration = None,
3357
- description: str = None,
3358
- display_name: str = None,
3359
- ):
3360
- self.configuration = configuration
3361
- self.description = description
3362
- self.display_name = display_name
3363
-
3364
- def validate(self):
3365
- if self.configuration:
3366
- self.configuration.validate()
3367
-
3368
- def to_map(self):
3369
- _map = super().to_map()
3370
- if _map is not None:
3371
- return _map
3372
-
3373
- result = dict()
3374
- if self.configuration is not None:
3375
- result['configuration'] = self.configuration.to_map()
3376
- if self.description is not None:
3377
- result['description'] = self.description
3378
- if self.display_name is not None:
3379
- result['displayName'] = self.display_name
3380
- return result
3381
-
3382
- def from_map(self, m: dict = None):
3383
- m = m or dict()
3384
- if m.get('configuration') is not None:
3385
- temp_model = OSSExportConfiguration()
3386
- self.configuration = temp_model.from_map(m['configuration'])
3387
- if m.get('description') is not None:
3388
- self.description = m.get('description')
3389
- if m.get('displayName') is not None:
3390
- self.display_name = m.get('displayName')
3391
- return self
3392
-
3393
-
3394
- class UpdateOSSIngestionReq(TeaModel):
3395
- def __init__(
3396
- self,
3397
- configuration: OSSIngestionConfiguration = None,
3398
- description: str = None,
3399
- display_name: str = None,
3400
- schedule: Schedule = None,
3189
+ caller_uid: int = None,
3190
+ create_date: str = None,
3191
+ expiration_time: int = None,
3192
+ expire_date: str = None,
3193
+ extra: str = None,
3194
+ name: str = None,
3195
+ number: int = None,
3196
+ sharing_to: str = None,
3197
+ ticket: str = None,
3198
+ ticket_id: str = None,
3199
+ used_number: int = None,
3200
+ valid: bool = None,
3401
3201
  ):
3402
- self.configuration = configuration
3403
- self.description = description
3404
- self.display_name = display_name
3405
- self.schedule = schedule
3202
+ self.caller_uid = caller_uid
3203
+ self.create_date = create_date
3204
+ self.expiration_time = expiration_time
3205
+ self.expire_date = expire_date
3206
+ self.extra = extra
3207
+ self.name = name
3208
+ self.number = number
3209
+ self.sharing_to = sharing_to
3210
+ self.ticket = ticket
3211
+ self.ticket_id = ticket_id
3212
+ self.used_number = used_number
3213
+ self.valid = valid
3406
3214
 
3407
3215
  def validate(self):
3408
- if self.configuration:
3409
- self.configuration.validate()
3410
- if self.schedule:
3411
- self.schedule.validate()
3216
+ pass
3412
3217
 
3413
3218
  def to_map(self):
3414
3219
  _map = super().to_map()
@@ -3416,28 +3221,58 @@ class UpdateOSSIngestionReq(TeaModel):
3416
3221
  return _map
3417
3222
 
3418
3223
  result = dict()
3419
- if self.configuration is not None:
3420
- result['configuration'] = self.configuration.to_map()
3421
- if self.description is not None:
3422
- result['description'] = self.description
3423
- if self.display_name is not None:
3424
- result['displayName'] = self.display_name
3425
- if self.schedule is not None:
3426
- result['schedule'] = self.schedule.to_map()
3224
+ if self.caller_uid is not None:
3225
+ result['callerUid'] = self.caller_uid
3226
+ if self.create_date is not None:
3227
+ result['createDate'] = self.create_date
3228
+ if self.expiration_time is not None:
3229
+ result['expirationTime'] = self.expiration_time
3230
+ if self.expire_date is not None:
3231
+ result['expireDate'] = self.expire_date
3232
+ if self.extra is not None:
3233
+ result['extra'] = self.extra
3234
+ if self.name is not None:
3235
+ result['name'] = self.name
3236
+ if self.number is not None:
3237
+ result['number'] = self.number
3238
+ if self.sharing_to is not None:
3239
+ result['sharingTo'] = self.sharing_to
3240
+ if self.ticket is not None:
3241
+ result['ticket'] = self.ticket
3242
+ if self.ticket_id is not None:
3243
+ result['ticketId'] = self.ticket_id
3244
+ if self.used_number is not None:
3245
+ result['usedNumber'] = self.used_number
3246
+ if self.valid is not None:
3247
+ result['valid'] = self.valid
3427
3248
  return result
3428
3249
 
3429
3250
  def from_map(self, m: dict = None):
3430
3251
  m = m or dict()
3431
- if m.get('configuration') is not None:
3432
- temp_model = OSSIngestionConfiguration()
3433
- self.configuration = temp_model.from_map(m['configuration'])
3434
- if m.get('description') is not None:
3435
- self.description = m.get('description')
3436
- if m.get('displayName') is not None:
3437
- self.display_name = m.get('displayName')
3438
- if m.get('schedule') is not None:
3439
- temp_model = Schedule()
3440
- self.schedule = temp_model.from_map(m['schedule'])
3252
+ if m.get('callerUid') is not None:
3253
+ self.caller_uid = m.get('callerUid')
3254
+ if m.get('createDate') is not None:
3255
+ self.create_date = m.get('createDate')
3256
+ if m.get('expirationTime') is not None:
3257
+ self.expiration_time = m.get('expirationTime')
3258
+ if m.get('expireDate') is not None:
3259
+ self.expire_date = m.get('expireDate')
3260
+ if m.get('extra') is not None:
3261
+ self.extra = m.get('extra')
3262
+ if m.get('name') is not None:
3263
+ self.name = m.get('name')
3264
+ if m.get('number') is not None:
3265
+ self.number = m.get('number')
3266
+ if m.get('sharingTo') is not None:
3267
+ self.sharing_to = m.get('sharingTo')
3268
+ if m.get('ticket') is not None:
3269
+ self.ticket = m.get('ticket')
3270
+ if m.get('ticketId') is not None:
3271
+ self.ticket_id = m.get('ticketId')
3272
+ if m.get('usedNumber') is not None:
3273
+ self.used_number = m.get('usedNumber')
3274
+ if m.get('valid') is not None:
3275
+ self.valid = m.get('valid')
3441
3276
  return self
3442
3277
 
3443
3278
 
@@ -3450,10 +3285,15 @@ class Chart(TeaModel):
3450
3285
  title: str = None,
3451
3286
  type: str = None,
3452
3287
  ):
3288
+ # This parameter is required.
3453
3289
  self.action = action
3290
+ # This parameter is required.
3454
3291
  self.display = display
3292
+ # This parameter is required.
3455
3293
  self.search = search
3294
+ # This parameter is required.
3456
3295
  self.title = title
3296
+ # This parameter is required.
3457
3297
  self.type = type
3458
3298
 
3459
3299
  def validate(self):
@@ -3502,9 +3342,12 @@ class Dashboard(TeaModel):
3502
3342
  display_name: str = None,
3503
3343
  ):
3504
3344
  self.attribute = attribute
3345
+ # This parameter is required.
3505
3346
  self.charts = charts
3347
+ # This parameter is required.
3506
3348
  self.dashboard_name = dashboard_name
3507
3349
  self.description = description
3350
+ # This parameter is required.
3508
3351
  self.display_name = display_name
3509
3352
 
3510
3353
  def validate(self):
@@ -3565,6 +3408,7 @@ class EtlJobFunctionConfig(TeaModel):
3565
3408
  self.account_id = account_id
3566
3409
  self.endpoint = endpoint
3567
3410
  self.function_name = function_name
3411
+ # This parameter is required.
3568
3412
  self.function_provider = function_provider
3569
3413
  self.region_name = region_name
3570
3414
  self.role_arn = role_arn
@@ -3621,8 +3465,11 @@ class EtlJobLogConfig(TeaModel):
3621
3465
  logstore_name: str = None,
3622
3466
  project_name: str = None,
3623
3467
  ):
3468
+ # This parameter is required.
3624
3469
  self.endpoint = endpoint
3470
+ # This parameter is required.
3625
3471
  self.logstore_name = logstore_name
3472
+ # This parameter is required.
3626
3473
  self.project_name = project_name
3627
3474
 
3628
3475
  def validate(self):
@@ -3658,6 +3505,7 @@ class EtlJobSourceConfig(TeaModel):
3658
3505
  self,
3659
3506
  logstore_name: str = None,
3660
3507
  ):
3508
+ # This parameter is required.
3661
3509
  self.logstore_name = logstore_name
3662
3510
 
3663
3511
  def validate(self):
@@ -3689,10 +3537,13 @@ class EtlJobTriggerConfig(TeaModel):
3689
3537
  starting_unixtime: int = None,
3690
3538
  trigger_interval: int = None,
3691
3539
  ):
3540
+ # This parameter is required.
3692
3541
  self.max_retry_time = max_retry_time
3542
+ # This parameter is required.
3693
3543
  self.role_arn = role_arn
3694
3544
  self.starting_position = starting_position
3695
3545
  self.starting_unixtime = starting_unixtime
3546
+ # This parameter is required.
3696
3547
  self.trigger_interval = trigger_interval
3697
3548
 
3698
3549
  def validate(self):
@@ -3742,12 +3593,19 @@ class EtlJob(TeaModel):
3742
3593
  source_config: EtlJobSourceConfig = None,
3743
3594
  trigger_config: EtlJobTriggerConfig = None,
3744
3595
  ):
3596
+ # This parameter is required.
3745
3597
  self.enable = enable
3598
+ # This parameter is required.
3746
3599
  self.etl_job_name = etl_job_name
3600
+ # This parameter is required.
3747
3601
  self.function_config = function_config
3602
+ # This parameter is required.
3748
3603
  self.function_parameter = function_parameter
3604
+ # This parameter is required.
3749
3605
  self.log_config = log_config
3606
+ # This parameter is required.
3750
3607
  self.source_config = source_config
3608
+ # This parameter is required.
3751
3609
  self.trigger_config = trigger_config
3752
3610
 
3753
3611
  def validate(self):
@@ -3814,8 +3672,11 @@ class EtlMeta(TeaModel):
3814
3672
  etl_meta_tag: str = None,
3815
3673
  etl_meta_value: str = None,
3816
3674
  ):
3675
+ # This parameter is required.
3817
3676
  self.enable = enable
3677
+ # This parameter is required.
3818
3678
  self.etl_meta_key = etl_meta_key
3679
+ # This parameter is required.
3819
3680
  self.etl_meta_name = etl_meta_name
3820
3681
  self.etl_meta_tag = etl_meta_tag
3821
3682
  self.etl_meta_value = etl_meta_value
@@ -3863,8 +3724,11 @@ class ExternalStore(TeaModel):
3863
3724
  parameter: Dict[str, Any] = None,
3864
3725
  store_type: str = None,
3865
3726
  ):
3727
+ # This parameter is required.
3866
3728
  self.external_store_name = external_store_name
3729
+ # This parameter is required.
3867
3730
  self.parameter = parameter
3731
+ # This parameter is required.
3868
3732
  self.store_type = store_type
3869
3733
 
3870
3734
  def validate(self):
@@ -3908,6 +3772,7 @@ class IndexLine(TeaModel):
3908
3772
  self.chn = chn
3909
3773
  self.exclude_keys = exclude_keys
3910
3774
  self.include_keys = include_keys
3775
+ # This parameter is required.
3911
3776
  self.token = token
3912
3777
 
3913
3778
  def validate(self):
@@ -3960,6 +3825,7 @@ class IndexKeysValue(TeaModel):
3960
3825
  self.case_sensitive = case_sensitive
3961
3826
  self.token = token
3962
3827
  self.alias = alias
3828
+ # This parameter is required.
3963
3829
  self.type = type
3964
3830
  self.doc_value = doc_value
3965
3831
 
@@ -4022,6 +3888,7 @@ class Index(TeaModel):
4022
3888
  self.log_reduce_black_list = log_reduce_black_list
4023
3889
  self.log_reduce_white_list = log_reduce_white_list
4024
3890
  self.max_text_len = max_text_len
3891
+ # This parameter is required.
4025
3892
  self.ttl = ttl
4026
3893
 
4027
3894
  def validate(self):
@@ -4089,7 +3956,9 @@ class LoggingLoggingDetails(TeaModel):
4089
3956
  logstore: str = None,
4090
3957
  type: str = None,
4091
3958
  ):
3959
+ # This parameter is required.
4092
3960
  self.logstore = logstore
3961
+ # This parameter is required.
4093
3962
  self.type = type
4094
3963
 
4095
3964
  def validate(self):
@@ -4122,7 +3991,9 @@ class Logging(TeaModel):
4122
3991
  logging_details: List[LoggingLoggingDetails] = None,
4123
3992
  logging_project: str = None,
4124
3993
  ):
3994
+ # This parameter is required.
4125
3995
  self.logging_details = logging_details
3996
+ # This parameter is required.
4126
3997
  self.logging_project = logging_project
4127
3998
 
4128
3999
  def validate(self):
@@ -4184,12 +4055,15 @@ class Logstore(TeaModel):
4184
4055
  self.hot_ttl = hot_ttl
4185
4056
  self.infrequent_access_ttl = infrequent_access_ttl
4186
4057
  self.last_modify_time = last_modify_time
4058
+ # This parameter is required.
4187
4059
  self.logstore_name = logstore_name
4188
4060
  self.max_split_shard = max_split_shard
4189
4061
  self.mode = mode
4190
4062
  self.product_type = product_type
4063
+ # This parameter is required.
4191
4064
  self.shard_count = shard_count
4192
4065
  self.telemetry_type = telemetry_type
4066
+ # This parameter is required.
4193
4067
  self.ttl = ttl
4194
4068
 
4195
4069
  def validate(self):
@@ -4358,9 +4232,12 @@ class MachineGroup(TeaModel):
4358
4232
  machine_list: List[str] = None,
4359
4233
  ):
4360
4234
  self.group_attribute = group_attribute
4235
+ # This parameter is required.
4361
4236
  self.group_name = group_name
4362
4237
  self.group_type = group_type
4238
+ # This parameter is required.
4363
4239
  self.machine_identify_type = machine_identify_type
4240
+ # This parameter is required.
4364
4241
  self.machine_list = machine_list
4365
4242
 
4366
4243
  def validate(self):
@@ -4414,9 +4291,11 @@ class Project(TeaModel):
4414
4291
  status: str = None,
4415
4292
  ):
4416
4293
  self.create_time = create_time
4294
+ # This parameter is required.
4417
4295
  self.description = description
4418
4296
  self.last_modify_time = last_modify_time
4419
4297
  self.owner = owner
4298
+ # This parameter is required.
4420
4299
  self.project_name = project_name
4421
4300
  self.region = region
4422
4301
  self.resource_group_id = resource_group_id
@@ -4575,6 +4454,8 @@ class KeysValue(TeaModel):
4575
4454
  # * false (default)
4576
4455
  self.chn = chn
4577
4456
  # The data type of the field value. Valid values: text, json, double, and long.
4457
+ #
4458
+ # This parameter is required.
4578
4459
  self.type = type
4579
4460
  # The alias of the field.
4580
4461
  self.alias = alias
@@ -4664,8 +4545,12 @@ class ChangeResourceGroupRequest(TeaModel):
4664
4545
  resource_type: str = None,
4665
4546
  ):
4666
4547
  # The ID of the resource group.
4548
+ #
4549
+ # This parameter is required.
4667
4550
  self.resource_group_id = resource_group_id
4668
4551
  # The ID of the resource.
4552
+ #
4553
+ # This parameter is required.
4669
4554
  self.resource_id = resource_id
4670
4555
  # The type of the resource. Only PROJECT is supported. Set the value to PROJECT.
4671
4556
  self.resource_type = resource_type
@@ -4738,8 +4623,12 @@ class ConsumerGroupHeartBeatRequest(TeaModel):
4738
4623
  consumer: str = None,
4739
4624
  ):
4740
4625
  # The IDs of shards whose data is being consumed.
4626
+ #
4627
+ # This parameter is required.
4741
4628
  self.body = body
4742
4629
  # The consumer.
4630
+ #
4631
+ # This parameter is required.
4743
4632
  self.consumer = consumer
4744
4633
 
4745
4634
  def validate(self):
@@ -4805,6 +4694,125 @@ class ConsumerGroupHeartBeatResponse(TeaModel):
4805
4694
  return self
4806
4695
 
4807
4696
 
4697
+ class ConsumerGroupUpdateCheckPointRequestBody(TeaModel):
4698
+ def __init__(
4699
+ self,
4700
+ checkpoint: str = None,
4701
+ shard: int = None,
4702
+ ):
4703
+ # This parameter is required.
4704
+ self.checkpoint = checkpoint
4705
+ # Shard ID。
4706
+ #
4707
+ # This parameter is required.
4708
+ self.shard = shard
4709
+
4710
+ def validate(self):
4711
+ pass
4712
+
4713
+ def to_map(self):
4714
+ _map = super().to_map()
4715
+ if _map is not None:
4716
+ return _map
4717
+
4718
+ result = dict()
4719
+ if self.checkpoint is not None:
4720
+ result['checkpoint'] = self.checkpoint
4721
+ if self.shard is not None:
4722
+ result['shard'] = self.shard
4723
+ return result
4724
+
4725
+ def from_map(self, m: dict = None):
4726
+ m = m or dict()
4727
+ if m.get('checkpoint') is not None:
4728
+ self.checkpoint = m.get('checkpoint')
4729
+ if m.get('shard') is not None:
4730
+ self.shard = m.get('shard')
4731
+ return self
4732
+
4733
+
4734
+ class ConsumerGroupUpdateCheckPointRequest(TeaModel):
4735
+ def __init__(
4736
+ self,
4737
+ body: List[ConsumerGroupUpdateCheckPointRequestBody] = None,
4738
+ consumer: str = None,
4739
+ force_success: bool = None,
4740
+ ):
4741
+ # Shard ID。
4742
+ self.body = body
4743
+ # This parameter is required.
4744
+ self.consumer = consumer
4745
+ self.force_success = force_success
4746
+
4747
+ def validate(self):
4748
+ if self.body:
4749
+ for k in self.body:
4750
+ if k:
4751
+ k.validate()
4752
+
4753
+ def to_map(self):
4754
+ _map = super().to_map()
4755
+ if _map is not None:
4756
+ return _map
4757
+
4758
+ result = dict()
4759
+ result['body'] = []
4760
+ if self.body is not None:
4761
+ for k in self.body:
4762
+ result['body'].append(k.to_map() if k else None)
4763
+ if self.consumer is not None:
4764
+ result['consumer'] = self.consumer
4765
+ if self.force_success is not None:
4766
+ result['forceSuccess'] = self.force_success
4767
+ return result
4768
+
4769
+ def from_map(self, m: dict = None):
4770
+ m = m or dict()
4771
+ self.body = []
4772
+ if m.get('body') is not None:
4773
+ for k in m.get('body'):
4774
+ temp_model = ConsumerGroupUpdateCheckPointRequestBody()
4775
+ self.body.append(temp_model.from_map(k))
4776
+ if m.get('consumer') is not None:
4777
+ self.consumer = m.get('consumer')
4778
+ if m.get('forceSuccess') is not None:
4779
+ self.force_success = m.get('forceSuccess')
4780
+ return self
4781
+
4782
+
4783
+ class ConsumerGroupUpdateCheckPointResponse(TeaModel):
4784
+ def __init__(
4785
+ self,
4786
+ headers: Dict[str, str] = None,
4787
+ status_code: int = None,
4788
+ ):
4789
+ self.headers = headers
4790
+ self.status_code = status_code
4791
+
4792
+ def validate(self):
4793
+ pass
4794
+
4795
+ def to_map(self):
4796
+ _map = super().to_map()
4797
+ if _map is not None:
4798
+ return _map
4799
+
4800
+ result = dict()
4801
+ if self.headers is not None:
4802
+ result['headers'] = self.headers
4803
+ if self.status_code is not None:
4804
+ result['statusCode'] = self.status_code
4805
+ return result
4806
+
4807
+ def from_map(self, m: dict = None):
4808
+ m = m or dict()
4809
+ if m.get('headers') is not None:
4810
+ self.headers = m.get('headers')
4811
+ if m.get('statusCode') is not None:
4812
+ self.status_code = m.get('statusCode')
4813
+ return self
4814
+
4815
+
4808
4816
  class CreateAlertRequest(TeaModel):
4809
4817
  def __init__(
4810
4818
  self,
@@ -4814,10 +4822,14 @@ class CreateAlertRequest(TeaModel):
4814
4822
  name: str = None,
4815
4823
  schedule: Schedule = None,
4816
4824
  ):
4825
+ # This parameter is required.
4817
4826
  self.configuration = configuration
4818
4827
  self.description = description
4828
+ # This parameter is required.
4819
4829
  self.display_name = display_name
4830
+ # This parameter is required.
4820
4831
  self.name = name
4832
+ # This parameter is required.
4821
4833
  self.schedule = schedule
4822
4834
 
4823
4835
  def validate(self):
@@ -5098,18 +5110,24 @@ class CreateConsumerGroupRequest(TeaModel):
5098
5110
  timeout: int = None,
5099
5111
  ):
5100
5112
  # The name of the consumer group. The name must be unique in a project.
5113
+ #
5114
+ # This parameter is required.
5101
5115
  self.consumer_group = consumer_group
5102
5116
  # Specifies whether to consume data in sequence. Valid values:
5103
5117
  #
5104
5118
  # * true
5105
5119
  #
5106
- # * In a shard, data is consumed in ascending order based on the value of the \*\*\__tag\_\_:\__receive_time\_\_\*\* field.
5120
+ # * In a shard, data is consumed in ascending order based on the value of the \\*\\*__tag__:__receive_time__\\*\\* field.
5107
5121
  # * If a shard is split, data in the original shard is consumed first. Then, data in the new shards is consumed at the same time.
5108
5122
  # * If shards are merged, data in the original shards is consumed first. Then, data in the new shard is consumed.
5109
5123
  #
5110
5124
  # * false Data in all shards is consumed at the same time. If a new shard is generated after a shard is split or after shards are merged, data in the new shard is immediately consumed.
5125
+ #
5126
+ # This parameter is required.
5111
5127
  self.order = order
5112
5128
  # The timeout period. If the server does not receive heartbeats from a consumer within the timeout period, the server deletes the consumer. Unit: seconds.
5129
+ #
5130
+ # This parameter is required.
5113
5131
  self.timeout = timeout
5114
5132
 
5115
5133
  def validate(self):
@@ -5179,6 +5197,8 @@ class CreateDashboardRequest(TeaModel):
5179
5197
  body: Dashboard = None,
5180
5198
  ):
5181
5199
  # The data structure of the dashboard.
5200
+ #
5201
+ # This parameter is required.
5182
5202
  self.body = body
5183
5203
 
5184
5204
  def validate(self):
@@ -5242,6 +5262,8 @@ class CreateDomainRequest(TeaModel):
5242
5262
  domain_name: str = None,
5243
5263
  ):
5244
5264
  # The domain name.
5265
+ #
5266
+ # This parameter is required.
5245
5267
  self.domain_name = domain_name
5246
5268
 
5247
5269
  def validate(self):
@@ -5305,9 +5327,12 @@ class CreateETLRequest(TeaModel):
5305
5327
  display_name: str = None,
5306
5328
  name: str = None,
5307
5329
  ):
5330
+ # This parameter is required.
5308
5331
  self.configuration = configuration
5309
5332
  self.description = description
5333
+ # This parameter is required.
5310
5334
  self.display_name = display_name
5335
+ # This parameter is required.
5311
5336
  self.name = name
5312
5337
 
5313
5338
  def validate(self):
@@ -5401,6 +5426,8 @@ class CreateIndexRequestLine(TeaModel):
5401
5426
  # The included fields. You cannot specify both include_keys and exclude_keys.
5402
5427
  self.include_keys = include_keys
5403
5428
  # The delimiters. You can specify a delimiter to delimit the content of a field value. For more information about delimiters, see Example.
5429
+ #
5430
+ # This parameter is required.
5404
5431
  self.token = token
5405
5432
 
5406
5433
  def validate(self):
@@ -5588,15 +5615,17 @@ class CreateLogStoreRequest(TeaModel):
5588
5615
  self.encrypt_conf = encrypt_conf
5589
5616
  # The retention period of data in the hot storage tier of the Logstore. Unit: days. You can specify a value that ranges from 30 to the value of ttl.
5590
5617
  #
5591
- # Hot data that is stored for longer than the period specified by hot_ttl is converted to cold data. For more information, see [Enable hot and cold-tiered storage for a Logstore](~~308645~~).
5618
+ # Hot data that is stored for longer than the period specified by hot_ttl is converted to cold data. For more information, see [Enable hot and cold-tiered storage for a Logstore](https://help.aliyun.com/document_detail/308645.html).
5592
5619
  self.hot_ttl = hot_ttl
5593
5620
  self.infrequent_access_ttl = infrequent_access_ttl
5594
5621
  # The name of the Logstore. The name must meet the following requirements:
5595
5622
  #
5596
5623
  # * The name must be unique in a project.
5597
- # * The name can contain only lowercase letters, digits, hyphens (-), and underscores (\_).
5624
+ # * The name can contain only lowercase letters, digits, hyphens (-), and underscores (_).
5598
5625
  # * The name must start and end with a lowercase letter or a digit.
5599
5626
  # * The name must be 3 to 63 characters in length.
5627
+ #
5628
+ # This parameter is required.
5600
5629
  self.logstore_name = logstore_name
5601
5630
  # The maximum number of shards into which existing shards can be automatically split. Valid values: 1 to 64.
5602
5631
  #
@@ -5610,6 +5639,8 @@ class CreateLogStoreRequest(TeaModel):
5610
5639
  # The number of shards.
5611
5640
  #
5612
5641
  # > You cannot call the CreateLogStore operation to change the number of shards. You can call the SplitShard or MergeShards operation to change the number of shards.
5642
+ #
5643
+ # This parameter is required.
5613
5644
  self.shard_count = shard_count
5614
5645
  # The type of the observable data. Valid values:
5615
5646
  #
@@ -5617,6 +5648,8 @@ class CreateLogStoreRequest(TeaModel):
5617
5648
  # * Metrics: metrics
5618
5649
  self.telemetry_type = telemetry_type
5619
5650
  # The retention period of data. Unit: days. Valid values: 1 to 3000. If you set this parameter to 3650, data is permanently stored.
5651
+ #
5652
+ # This parameter is required.
5620
5653
  self.ttl = ttl
5621
5654
 
5622
5655
  def validate(self):
@@ -5725,6 +5758,8 @@ class CreateLoggingRequestLoggingDetails(TeaModel):
5725
5758
  type: str = None,
5726
5759
  ):
5727
5760
  # The name of the Logstore to which service logs of the type are stored.
5761
+ #
5762
+ # This parameter is required.
5728
5763
  self.logstore = logstore
5729
5764
  # The type of service logs. Valid values:
5730
5765
  #
@@ -5736,6 +5771,8 @@ class CreateLoggingRequestLoggingDetails(TeaModel):
5736
5771
  # * logtail_status: the status logs of Logtail.
5737
5772
  # * scheduledsqlalert: the run logs of Scheduled SQL jobs.
5738
5773
  # * etl_alert: the run logs of data transformation jobs.
5774
+ #
5775
+ # This parameter is required.
5739
5776
  self.type = type
5740
5777
 
5741
5778
  def validate(self):
@@ -5769,8 +5806,12 @@ class CreateLoggingRequest(TeaModel):
5769
5806
  logging_project: str = None,
5770
5807
  ):
5771
5808
  # The configurations of service logs.
5809
+ #
5810
+ # This parameter is required.
5772
5811
  self.logging_details = logging_details
5773
5812
  # The name of the project to which service logs are stored.
5813
+ #
5814
+ # This parameter is required.
5774
5815
  self.logging_project = logging_project
5775
5816
 
5776
5817
  def validate(self):
@@ -5852,12 +5893,18 @@ class CreateLogtailPipelineConfigRequest(TeaModel):
5852
5893
  # The aggregation plug-ins.
5853
5894
  self.aggregators = aggregators
5854
5895
  # The name of the configuration.
5896
+ #
5897
+ # This parameter is required.
5855
5898
  self.config_name = config_name
5856
5899
  # The data output plug-ins.
5900
+ #
5901
+ # This parameter is required.
5857
5902
  self.flushers = flushers
5858
5903
  # The global configuration.
5859
5904
  self.global_ = global_
5860
5905
  # The data source plug-ins.
5906
+ #
5907
+ # This parameter is required.
5861
5908
  self.inputs = inputs
5862
5909
  # The sample log.
5863
5910
  self.log_sample = log_sample
@@ -5990,9 +6037,11 @@ class CreateMachineGroupRequest(TeaModel):
5990
6037
  # The name of the machine group. The name must meet the following requirements:
5991
6038
  #
5992
6039
  # * The name of each machine group in a project must be unique.
5993
- # * It can contain only lowercase letters, digits, hyphens (-), and underscores (\_).
6040
+ # * It can contain only lowercase letters, digits, hyphens (-), and underscores (_).
5994
6041
  # * It must start and end with a lowercase letter or a digit.
5995
6042
  # * It must be 3 to 128 characters in length.
6043
+ #
6044
+ # This parameter is required.
5996
6045
  self.group_name = group_name
5997
6046
  # The type of the machine group. The parameter can be left empty.
5998
6047
  self.group_type = group_type
@@ -6000,11 +6049,15 @@ class CreateMachineGroupRequest(TeaModel):
6000
6049
  #
6001
6050
  # * ip: The machine group uses IP addresses as identifiers.
6002
6051
  # * userdefined: The machine group uses custom identifiers.
6052
+ #
6053
+ # This parameter is required.
6003
6054
  self.machine_identify_type = machine_identify_type
6004
6055
  # The identifiers of machine group.
6005
6056
  #
6006
6057
  # * If you set machineIdentifyType to ip, enter the IP address of the machine.
6007
6058
  # * If you set machineIdentifyType to userdefined, enter a custom identifier.
6059
+ #
6060
+ # This parameter is required.
6008
6061
  self.machine_list = machine_list
6009
6062
 
6010
6063
  def validate(self):
@@ -6086,9 +6139,12 @@ class CreateOSSExportRequest(TeaModel):
6086
6139
  display_name: str = None,
6087
6140
  name: str = None,
6088
6141
  ):
6142
+ # This parameter is required.
6089
6143
  self.configuration = configuration
6090
6144
  self.description = description
6145
+ # This parameter is required.
6091
6146
  self.display_name = display_name
6147
+ # This parameter is required.
6092
6148
  self.name = name
6093
6149
 
6094
6150
  def validate(self):
@@ -6166,9 +6222,12 @@ class CreateOSSHDFSExportRequest(TeaModel):
6166
6222
  display_name: str = None,
6167
6223
  name: str = None,
6168
6224
  ):
6225
+ # This parameter is required.
6169
6226
  self.configuration = configuration
6170
6227
  self.description = description
6228
+ # This parameter is required.
6171
6229
  self.display_name = display_name
6230
+ # This parameter is required.
6172
6231
  self.name = name
6173
6232
 
6174
6233
  def validate(self):
@@ -6247,9 +6306,12 @@ class CreateOSSIngestionRequest(TeaModel):
6247
6306
  name: str = None,
6248
6307
  schedule: Schedule = None,
6249
6308
  ):
6309
+ # This parameter is required.
6250
6310
  self.configuration = configuration
6251
6311
  self.description = description
6312
+ # This parameter is required.
6252
6313
  self.display_name = display_name
6314
+ # This parameter is required.
6253
6315
  self.name = name
6254
6316
  self.schedule = schedule
6255
6317
 
@@ -6334,8 +6396,12 @@ class CreateOssExternalStoreRequestParameterColumns(TeaModel):
6334
6396
  type: str = None,
6335
6397
  ):
6336
6398
  # The name of the field.
6399
+ #
6400
+ # This parameter is required.
6337
6401
  self.name = name
6338
6402
  # The type of the field.
6403
+ #
6404
+ # This parameter is required.
6339
6405
  self.type = type
6340
6406
 
6341
6407
  def validate(self):
@@ -6373,16 +6439,28 @@ class CreateOssExternalStoreRequestParameter(TeaModel):
6373
6439
  objects: List[str] = None,
6374
6440
  ):
6375
6441
  # The AccessKey ID of your account.
6442
+ #
6443
+ # This parameter is required.
6376
6444
  self.accessid = accessid
6377
6445
  # The AccessKey secret of your account.
6446
+ #
6447
+ # This parameter is required.
6378
6448
  self.accesskey = accesskey
6379
6449
  # The name of the OSS bucket.
6450
+ #
6451
+ # This parameter is required.
6380
6452
  self.bucket = bucket
6381
6453
  # The fields that are associated to the external store.
6454
+ #
6455
+ # This parameter is required.
6382
6456
  self.columns = columns
6383
6457
  # The Object Storage Service (OSS) endpoint.
6458
+ #
6459
+ # This parameter is required.
6384
6460
  self.endpoint = endpoint
6385
6461
  # The names of the OSS objects that are associated to the external store.
6462
+ #
6463
+ # This parameter is required.
6386
6464
  self.objects = objects
6387
6465
 
6388
6466
  def validate(self):
@@ -6441,10 +6519,16 @@ class CreateOssExternalStoreRequest(TeaModel):
6441
6519
  store_type: str = None,
6442
6520
  ):
6443
6521
  # The name of the external store.
6522
+ #
6523
+ # This parameter is required.
6444
6524
  self.external_store_name = external_store_name
6445
6525
  # The parameters that are configured for the external store.
6526
+ #
6527
+ # This parameter is required.
6446
6528
  self.parameter = parameter
6447
6529
  # The type of the external store. Set the value to oss.
6530
+ #
6531
+ # This parameter is required.
6448
6532
  self.store_type = store_type
6449
6533
 
6450
6534
  def validate(self):
@@ -6521,6 +6605,8 @@ class CreateProjectRequest(TeaModel):
6521
6605
  # Data redundancy type
6522
6606
  self.data_redundancy_type = data_redundancy_type
6523
6607
  # The description of the project.
6608
+ #
6609
+ # This parameter is required.
6524
6610
  self.description = description
6525
6611
  # The name of the project. The name must be unique in a region. You cannot change the name after you create the project. The name must meet the following requirements:
6526
6612
  #
@@ -6528,6 +6614,8 @@ class CreateProjectRequest(TeaModel):
6528
6614
  # * It can contain only lowercase letters, digits, and hyphens (-).
6529
6615
  # * It must start and end with a lowercase letter or a digit.
6530
6616
  # * It must be 3 to 63 characters in length.
6617
+ #
6618
+ # This parameter is required.
6531
6619
  self.project_name = project_name
6532
6620
  # The ID of the resource group.
6533
6621
  self.resource_group_id = resource_group_id
@@ -6611,20 +6699,32 @@ class CreateRdsExternalStoreRequestParameter(TeaModel):
6611
6699
  vpc_id: str = None,
6612
6700
  ):
6613
6701
  # The name of the database in the ApsaraDB RDS for MySQL instance.
6702
+ #
6703
+ # This parameter is required.
6614
6704
  self.db = db
6615
6705
  # The internal or public endpoint of the ApsaraDB RDS for MySQL instance.
6616
6706
  self.host = host
6617
6707
  # The ID of the ApsaraDB RDS for MySQL instance.
6618
6708
  self.instance_id = instance_id
6619
6709
  # The password that is used to log on to the ApsaraDB RDS for MySQL instance.
6710
+ #
6711
+ # This parameter is required.
6620
6712
  self.password = password
6621
6713
  # The internal or public port of the ApsaraDB RDS for MySQL instance.
6714
+ #
6715
+ # This parameter is required.
6622
6716
  self.port = port
6623
6717
  # The region where the ApsaraDB RDS for MySQL instance resides. Valid values: cn-qingdao, cn-beijing, and cn-hangzhou.
6718
+ #
6719
+ # This parameter is required.
6624
6720
  self.region = region
6625
6721
  # The name of the database table in the ApsaraDB RDS for MySQL instance.
6722
+ #
6723
+ # This parameter is required.
6626
6724
  self.table = table
6627
6725
  # The username that is used to log on to the ApsaraDB RDS for MySQL instance.
6726
+ #
6727
+ # This parameter is required.
6628
6728
  self.username = username
6629
6729
  # The ID of the VPC to which the ApsaraDB RDS for MySQL instance belongs.
6630
6730
  self.vpc_id = vpc_id
@@ -6689,10 +6789,16 @@ class CreateRdsExternalStoreRequest(TeaModel):
6689
6789
  store_type: str = None,
6690
6790
  ):
6691
6791
  # The name of the external store. The name must be unique in a project and must be different from Logstore names.
6792
+ #
6793
+ # This parameter is required.
6692
6794
  self.external_store_name = external_store_name
6693
6795
  # The parameter struct.
6796
+ #
6797
+ # This parameter is required.
6694
6798
  self.parameter = parameter
6695
6799
  # The storage type. Set the value to rds-vpc, which indicates an ApsaraDB RDS for MySQL database in a virtual private cloud (VPC).
6800
+ #
6801
+ # This parameter is required.
6696
6802
  self.store_type = store_type
6697
6803
 
6698
6804
  def validate(self):
@@ -6768,12 +6874,20 @@ class CreateSavedSearchRequest(TeaModel):
6768
6874
  topic: str = None,
6769
6875
  ):
6770
6876
  # The display name.
6877
+ #
6878
+ # This parameter is required.
6771
6879
  self.display_name = display_name
6772
6880
  # The name of the Logstore to which the saved search belongs.
6881
+ #
6882
+ # This parameter is required.
6773
6883
  self.logstore = logstore
6774
6884
  # The name of the saved search. The name must be 3 to 63 characters in length.
6885
+ #
6886
+ # This parameter is required.
6775
6887
  self.savedsearch_name = savedsearch_name
6776
- # The query statement of the saved search. A query statement consists of a search statement and an analytic statement in the `Search statement|Analytic statement` format. For more information about search statements and analytic statements, see [Log search overview](~~43772~~) and [Log analysis overview](~~53608~~).
6888
+ # The query statement of the saved search. A query statement consists of a search statement and an analytic statement in the `Search statement|Analytic statement` format. For more information about search statements and analytic statements, see [Log search overview](https://help.aliyun.com/document_detail/43772.html) and [Log analysis overview](https://help.aliyun.com/document_detail/53608.html).
6889
+ #
6890
+ # This parameter is required.
6777
6891
  self.search_query = search_query
6778
6892
  # The topic of the log.
6779
6893
  self.topic = topic
@@ -6856,10 +6970,14 @@ class CreateScheduledSQLRequest(TeaModel):
6856
6970
  name: str = None,
6857
6971
  schedule: Schedule = None,
6858
6972
  ):
6973
+ # This parameter is required.
6859
6974
  self.configuration = configuration
6860
6975
  self.description = description
6976
+ # This parameter is required.
6861
6977
  self.display_name = display_name
6978
+ # This parameter is required.
6862
6979
  self.name = name
6980
+ # This parameter is required.
6863
6981
  self.schedule = schedule
6864
6982
 
6865
6983
  def validate(self):
@@ -6942,7 +7060,9 @@ class CreateSqlInstanceRequest(TeaModel):
6942
7060
  cu: int = None,
6943
7061
  use_as_default: bool = None,
6944
7062
  ):
7063
+ # This parameter is required.
6945
7064
  self.cu = cu
7065
+ # This parameter is required.
6946
7066
  self.use_as_default = use_as_default
6947
7067
 
6948
7068
  def validate(self):
@@ -7002,6 +7122,89 @@ class CreateSqlInstanceResponse(TeaModel):
7002
7122
  return self
7003
7123
 
7004
7124
 
7125
+ class CreateStoreViewRequest(TeaModel):
7126
+ def __init__(
7127
+ self,
7128
+ name: str = None,
7129
+ store_type: str = None,
7130
+ stores: List[StoreViewStore] = None,
7131
+ ):
7132
+ # This parameter is required.
7133
+ self.name = name
7134
+ # This parameter is required.
7135
+ self.store_type = store_type
7136
+ # This parameter is required.
7137
+ self.stores = stores
7138
+
7139
+ def validate(self):
7140
+ if self.stores:
7141
+ for k in self.stores:
7142
+ if k:
7143
+ k.validate()
7144
+
7145
+ def to_map(self):
7146
+ _map = super().to_map()
7147
+ if _map is not None:
7148
+ return _map
7149
+
7150
+ result = dict()
7151
+ if self.name is not None:
7152
+ result['name'] = self.name
7153
+ if self.store_type is not None:
7154
+ result['storeType'] = self.store_type
7155
+ result['stores'] = []
7156
+ if self.stores is not None:
7157
+ for k in self.stores:
7158
+ result['stores'].append(k.to_map() if k else None)
7159
+ return result
7160
+
7161
+ def from_map(self, m: dict = None):
7162
+ m = m or dict()
7163
+ if m.get('name') is not None:
7164
+ self.name = m.get('name')
7165
+ if m.get('storeType') is not None:
7166
+ self.store_type = m.get('storeType')
7167
+ self.stores = []
7168
+ if m.get('stores') is not None:
7169
+ for k in m.get('stores'):
7170
+ temp_model = StoreViewStore()
7171
+ self.stores.append(temp_model.from_map(k))
7172
+ return self
7173
+
7174
+
7175
+ class CreateStoreViewResponse(TeaModel):
7176
+ def __init__(
7177
+ self,
7178
+ headers: Dict[str, str] = None,
7179
+ status_code: int = None,
7180
+ ):
7181
+ self.headers = headers
7182
+ self.status_code = status_code
7183
+
7184
+ def validate(self):
7185
+ pass
7186
+
7187
+ def to_map(self):
7188
+ _map = super().to_map()
7189
+ if _map is not None:
7190
+ return _map
7191
+
7192
+ result = dict()
7193
+ if self.headers is not None:
7194
+ result['headers'] = self.headers
7195
+ if self.status_code is not None:
7196
+ result['statusCode'] = self.status_code
7197
+ return result
7198
+
7199
+ def from_map(self, m: dict = None):
7200
+ m = m or dict()
7201
+ if m.get('headers') is not None:
7202
+ self.headers = m.get('headers')
7203
+ if m.get('statusCode') is not None:
7204
+ self.status_code = m.get('statusCode')
7205
+ return self
7206
+
7207
+
7005
7208
  class CreateTicketRequest(TeaModel):
7006
7209
  def __init__(
7007
7210
  self,
@@ -7963,6 +8166,39 @@ class DeleteShipperResponse(TeaModel):
7963
8166
  return self
7964
8167
 
7965
8168
 
8169
+ class DeleteStoreViewResponse(TeaModel):
8170
+ def __init__(
8171
+ self,
8172
+ headers: Dict[str, str] = None,
8173
+ status_code: int = None,
8174
+ ):
8175
+ self.headers = headers
8176
+ self.status_code = status_code
8177
+
8178
+ def validate(self):
8179
+ pass
8180
+
8181
+ def to_map(self):
8182
+ _map = super().to_map()
8183
+ if _map is not None:
8184
+ return _map
8185
+
8186
+ result = dict()
8187
+ if self.headers is not None:
8188
+ result['headers'] = self.headers
8189
+ if self.status_code is not None:
8190
+ result['statusCode'] = self.status_code
8191
+ return result
8192
+
8193
+ def from_map(self, m: dict = None):
8194
+ m = m or dict()
8195
+ if m.get('headers') is not None:
8196
+ self.headers = m.get('headers')
8197
+ if m.get('statusCode') is not None:
8198
+ self.status_code = m.get('statusCode')
8199
+ return self
8200
+
8201
+
7966
8202
  class DisableAlertResponse(TeaModel):
7967
8203
  def __init__(
7968
8204
  self,
@@ -7996,6 +8232,39 @@ class DisableAlertResponse(TeaModel):
7996
8232
  return self
7997
8233
 
7998
8234
 
8235
+ class DisableScheduledSQLResponse(TeaModel):
8236
+ def __init__(
8237
+ self,
8238
+ headers: Dict[str, str] = None,
8239
+ status_code: int = None,
8240
+ ):
8241
+ self.headers = headers
8242
+ self.status_code = status_code
8243
+
8244
+ def validate(self):
8245
+ pass
8246
+
8247
+ def to_map(self):
8248
+ _map = super().to_map()
8249
+ if _map is not None:
8250
+ return _map
8251
+
8252
+ result = dict()
8253
+ if self.headers is not None:
8254
+ result['headers'] = self.headers
8255
+ if self.status_code is not None:
8256
+ result['statusCode'] = self.status_code
8257
+ return result
8258
+
8259
+ def from_map(self, m: dict = None):
8260
+ m = m or dict()
8261
+ if m.get('headers') is not None:
8262
+ self.headers = m.get('headers')
8263
+ if m.get('statusCode') is not None:
8264
+ self.status_code = m.get('statusCode')
8265
+ return self
8266
+
8267
+
7999
8268
  class EnableAlertResponse(TeaModel):
8000
8269
  def __init__(
8001
8270
  self,
@@ -8029,6 +8298,39 @@ class EnableAlertResponse(TeaModel):
8029
8298
  return self
8030
8299
 
8031
8300
 
8301
+ class EnableScheduledSQLResponse(TeaModel):
8302
+ def __init__(
8303
+ self,
8304
+ headers: Dict[str, str] = None,
8305
+ status_code: int = None,
8306
+ ):
8307
+ self.headers = headers
8308
+ self.status_code = status_code
8309
+
8310
+ def validate(self):
8311
+ pass
8312
+
8313
+ def to_map(self):
8314
+ _map = super().to_map()
8315
+ if _map is not None:
8316
+ return _map
8317
+
8318
+ result = dict()
8319
+ if self.headers is not None:
8320
+ result['headers'] = self.headers
8321
+ if self.status_code is not None:
8322
+ result['statusCode'] = self.status_code
8323
+ return result
8324
+
8325
+ def from_map(self, m: dict = None):
8326
+ m = m or dict()
8327
+ if m.get('headers') is not None:
8328
+ self.headers = m.get('headers')
8329
+ if m.get('statusCode') is not None:
8330
+ self.status_code = m.get('statusCode')
8331
+ return self
8332
+
8333
+
8032
8334
  class GetAlertResponse(TeaModel):
8033
8335
  def __init__(
8034
8336
  self,
@@ -8826,14 +9128,24 @@ class GetContextLogsRequest(TeaModel):
8826
9128
  type: str = None,
8827
9129
  ):
8828
9130
  # The number of logs that you want to obtain and are generated before the generation time of the start log. Valid values: (0,100].
9131
+ #
9132
+ # This parameter is required.
8829
9133
  self.back_lines = back_lines
8830
9134
  # The number of logs that you want to obtain and are generated after the generation time of the start log. Valid values: (0,100].
9135
+ #
9136
+ # This parameter is required.
8831
9137
  self.forward_lines = forward_lines
8832
9138
  # The unique identifier of the log group to which the start log belongs.
9139
+ #
9140
+ # This parameter is required.
8833
9141
  self.pack_id = pack_id
8834
9142
  # The unique context identifier of the start log in the log group.
9143
+ #
9144
+ # This parameter is required.
8835
9145
  self.pack_meta = pack_meta
8836
9146
  # The type of the data in the Logstore. Set the value to context_log.
9147
+ #
9148
+ # This parameter is required.
8837
9149
  self.type = type
8838
9150
 
8839
9151
  def validate(self):
@@ -8978,6 +9290,8 @@ class GetCursorRequest(TeaModel):
8978
9290
  from_: str = None,
8979
9291
  ):
8980
9292
  # The point in time that you want to use to query a cursor. Set the value to a UNIX timestamp or a string such as `begin` and `end`.
9293
+ #
9294
+ # This parameter is required.
8981
9295
  self.from_ = from_
8982
9296
 
8983
9297
  def validate(self):
@@ -9075,6 +9389,8 @@ class GetCursorTimeRequest(TeaModel):
9075
9389
  cursor: str = None,
9076
9390
  ):
9077
9391
  # The cursor.
9392
+ #
9393
+ # This parameter is required.
9078
9394
  self.cursor = cursor
9079
9395
 
9080
9396
  def validate(self):
@@ -9298,10 +9614,14 @@ class GetHistogramsRequest(TeaModel):
9298
9614
  topic: str = None,
9299
9615
  ):
9300
9616
  # The start time of the subinterval. The value is a UNIX timestamp representing the number of seconds that have elapsed since the epoch time January 1, 1970, 00:00:00 UTC.
9617
+ #
9618
+ # This parameter is required.
9301
9619
  self.from_ = from_
9302
- # The search statement. Only search statements are supported. Analytic statements are not supported. For more information about the syntax of search statements, see [Log search overview](~~43772~~).
9620
+ # The search statement. Only search statements are supported. Analytic statements are not supported. For more information about the syntax of search statements, see [Log search overview](https://help.aliyun.com/document_detail/43772.html).
9303
9621
  self.query = query
9304
9622
  # The end time of the subinterval. The value is a UNIX timestamp representing the number of seconds that have elapsed since the epoch time January 1, 1970, 00:00:00 UTC.
9623
+ #
9624
+ # This parameter is required.
9305
9625
  self.to = to
9306
9626
  # The topic of the logs.
9307
9627
  self.topic = topic
@@ -9816,25 +10136,27 @@ class GetLogsRequest(TeaModel):
9816
10136
  #
9817
10137
  # > To ensure that full data can be queried, specify a query time range that is accurate to the minute. If you also specify a time range in an analytic statement, Simple Log Service uses the time range specified in the analytic statement for query and analysis.
9818
10138
  #
9819
- # If you want to specify a time range that is accurate to the second in your analytic statement, you must use the from_unixtime or to_unixtime function to convert the time format. For more information about the functions, see [from_unixtime function](~~63451~~) and [to_unixtime function](~~63451~~). Examples:
10139
+ # If you want to specify a time range that is accurate to the second in your analytic statement, you must use the from_unixtime or to_unixtime function to convert the time format. For more information about the functions, see [from_unixtime function](https://help.aliyun.com/document_detail/63451.html) and [to_unixtime function](https://help.aliyun.com/document_detail/63451.html). Examples:
9820
10140
  #
9821
10141
  # * `* | SELECT * FROM log WHERE from_unixtime(__time__) > from_unixtime(1664186624) AND from_unixtime(__time__) < now()`
9822
- # * `* | SELECT * FROM log WHERE __time__ > to_unixtime(date_parse(\"2022-10-19 15:46:05\", \"%Y-%m-%d %H:%i:%s\")) AND __time__ < to_unixtime(now())`
10142
+ # * `* | SELECT * FROM log WHERE __time__ > to_unixtime(date_parse(\\"2022-10-19 15:46:05\\", \\"%Y-%m-%d %H:%i:%s\\")) AND __time__ < to_unixtime(now())`
10143
+ #
10144
+ # This parameter is required.
9823
10145
  self.from_ = from_
9824
10146
  # The maximum number of logs to return for the request. This parameter takes effect only when the query parameter is set to a search statement. Minimum value: 0. Maximum value: 100. Default value: 100.
9825
10147
  self.line = line
9826
10148
  # The line from which the query starts. This parameter takes effect only when the query parameter is set to a search statement. Default value: 0.
9827
10149
  self.offset = offset
9828
- # Specifies whether to enable the Dedicated SQL feature. For more information, see [Enable Dedicated SQL](~~223777~~). Valid values:
10150
+ # Specifies whether to enable the Dedicated SQL feature. For more information, see [Enable Dedicated SQL](https://help.aliyun.com/document_detail/223777.html). Valid values:
9829
10151
  #
9830
10152
  # * true: enables the Dedicated SQL feature.
9831
10153
  # * false (default): enables the Standard SQL feature.
9832
10154
  #
9833
10155
  # You can use the powerSql or **query** parameter to configure Dedicated SQL.
9834
10156
  self.power_sql = power_sql
9835
- # The search statement or the query statement. For more information, see [Log search overview](~~43772~~) and [Log analysis overview](~~53608~~). If you add `set session parallel_sql=true;` to the analytic statement in the query parameter, Dedicated SQL is used. For example, you can set the query parameter to `* | set session parallel_sql=true; select count(*) as pv`. For more information about common errors that may occur during log query and analysis, see [How do I resolve common errors that occur when I query and analyze logs?](~~61628~~)
10157
+ # The search statement or the query statement. For more information, see [Log search overview](https://help.aliyun.com/document_detail/43772.html) and [Log analysis overview](https://help.aliyun.com/document_detail/53608.html). If you add `set session parallel_sql=true;` to the analytic statement in the query parameter, Dedicated SQL is used. For example, you can set the query parameter to `* | set session parallel_sql=true; select count(*) as pv`. For more information about common errors that may occur during log query and analysis, see [How do I resolve common errors that occur when I query and analyze logs?](https://help.aliyun.com/document_detail/61628.html)
9836
10158
  #
9837
- # > If you specify an analytic statement in the value of the query parameter, the line and offset parameters do not take effect. In this case, we recommend that you set the line and offset parameters to 0 and use the LIMIT clause to limit the number of logs to return on each page. For more information, see [Paged query](~~89994~~).
10159
+ # > If you specify an analytic statement in the value of the query parameter, the line and offset parameters do not take effect. In this case, we recommend that you set the line and offset parameters to 0 and use the LIMIT clause to limit the number of logs to return on each page. For more information, see [Paged query](https://help.aliyun.com/document_detail/89994.html).
9838
10160
  self.query = query
9839
10161
  # Specifies whether to return logs in reverse chronological order of log timestamps. The log timestamps are accurate to the minute. Valid values:
9840
10162
  #
@@ -9853,12 +10175,14 @@ class GetLogsRequest(TeaModel):
9853
10175
  #
9854
10176
  # > To ensure that full data can be queried, specify a query time range that is accurate to the minute. If you also specify a time range in an analytic statement, Simple Log Service uses the time range specified in the analytic statement for query and analysis.
9855
10177
  #
9856
- # If you want to specify a time range that is accurate to the second in your analytic statement, you must use the from_unixtime or to_unixtime function to convert the time format. For more information about the functions, see [from_unixtime function](~~63451~~) and [to_unixtime function](~~63451~~). Examples:
10178
+ # If you want to specify a time range that is accurate to the second in your analytic statement, you must use the from_unixtime or to_unixtime function to convert the time format. For more information about the functions, see [from_unixtime function](https://help.aliyun.com/document_detail/63451.html) and [to_unixtime function](https://help.aliyun.com/document_detail/63451.html). Examples:
9857
10179
  #
9858
10180
  # * `* | SELECT * FROM log WHERE from_unixtime(__time__) > from_unixtime(1664186624) AND from_unixtime(__time__) < now()`
9859
- # * `* | SELECT * FROM log WHERE __time__ > to_unixtime(date_parse(\"2022-10-19 15:46:05\", \"%Y-%m-%d %H:%i:%s\")) AND __time__ < to_unixtime(now())`
10181
+ # * `* | SELECT * FROM log WHERE __time__ > to_unixtime(date_parse(\\"2022-10-19 15:46:05\\", \\"%Y-%m-%d %H:%i:%s\\")) AND __time__ < to_unixtime(now())`
10182
+ #
10183
+ # This parameter is required.
9860
10184
  self.to = to
9861
- # The topic of the logs. The default value is double quotation marks (""). For more information, see [Topic](~~48881~~).
10185
+ # The topic of the logs. The default value is double quotation marks (""). For more information, see [Topic](https://help.aliyun.com/document_detail/48881.html).
9862
10186
  self.topic = topic
9863
10187
 
9864
10188
  def validate(self):
@@ -9956,6 +10280,8 @@ class GetLogsV2Headers(TeaModel):
9956
10280
  ):
9957
10281
  self.common_headers = common_headers
9958
10282
  # The compression method.
10283
+ #
10284
+ # This parameter is required.
9959
10285
  self.accept_encoding = accept_encoding
9960
10286
 
9961
10287
  def validate(self):
@@ -10002,6 +10328,8 @@ class GetLogsV2Request(TeaModel):
10002
10328
  # The beginning of the time range to query. The value is the log time that is specified when log data is written.
10003
10329
  #
10004
10330
  # The time range that is specified in this operation is a left-closed, right-open interval. The interval includes the start time specified by the from parameter, but does not include the end time specified by the to parameter. If you specify the same value for the from and to parameters, the interval is invalid, and an error message is returned. The value is a UNIX timestamp representing the number of seconds that have elapsed since January 1, 1970, 00:00:00 UTC.
10331
+ #
10332
+ # This parameter is required.
10005
10333
  self.from_ = from_
10006
10334
  self.highlight = highlight
10007
10335
  # The maximum number of logs to return for the request. This parameter takes effect only when the query parameter is set to a search statement. Minimum value: 0. Maximum value: 100. Default value: 100.
@@ -10012,7 +10340,7 @@ class GetLogsV2Request(TeaModel):
10012
10340
  self.power_sql = power_sql
10013
10341
  # The search statement or the query statement. For more information, see the "Log search overview" and "Log analysis overview" topics.
10014
10342
  #
10015
- # If you add set session parallel_sql=true; to the analytic statement in the query parameter, Dedicated SQL is used. For example, you can set the query parameter to \* | set session parallel_sql=true; select count(\*) as pv.
10343
+ # If you add set session parallel_sql=true; to the analytic statement in the query parameter, Dedicated SQL is used. For example, you can set the query parameter to \\* | set session parallel_sql=true; select count(\\*) as pv.
10016
10344
  #
10017
10345
  # Note: If you specify an analytic statement in the query parameter, the line and offset parameters do not take effect in this operation. In this case, we recommend that you set the line and offset parameters to 0 and use the LIMIT clause to limit the number of logs to return on each page. For more information, see the "Perform paged queries" topic.
10018
10346
  self.query = query
@@ -10025,6 +10353,8 @@ class GetLogsV2Request(TeaModel):
10025
10353
  # The end of the time range to query. The value is the log time that is specified when log data is written.
10026
10354
  #
10027
10355
  # The time range that is specified in this operation is a left-closed, right-open interval. The interval includes the start time specified by the from parameter, but does not include the end time specified by the to parameter. If you specify the same value for the from and to parameters, the interval is invalid, and an error message is returned. The value is a UNIX timestamp representing the number of seconds that have elapsed since January 1, 1970, 00:00:00 UTC.
10356
+ #
10357
+ # This parameter is required.
10028
10358
  self.to = to
10029
10359
  # The topic of the logs. Default value: double quotation marks ("").
10030
10360
  self.topic = topic
@@ -10432,9 +10762,11 @@ class GetMLServiceResultsRequest(TeaModel):
10432
10762
  self,
10433
10763
  allow_builtin: bool = None,
10434
10764
  body: MLServiceAnalysisParam = None,
10765
+ version: str = None,
10435
10766
  ):
10436
10767
  self.allow_builtin = allow_builtin
10437
10768
  self.body = body
10769
+ self.version = version
10438
10770
 
10439
10771
  def validate(self):
10440
10772
  if self.body:
@@ -10450,6 +10782,8 @@ class GetMLServiceResultsRequest(TeaModel):
10450
10782
  result['allowBuiltin'] = self.allow_builtin
10451
10783
  if self.body is not None:
10452
10784
  result['body'] = self.body.to_map()
10785
+ if self.version is not None:
10786
+ result['version'] = self.version
10453
10787
  return result
10454
10788
 
10455
10789
  def from_map(self, m: dict = None):
@@ -10459,6 +10793,8 @@ class GetMLServiceResultsRequest(TeaModel):
10459
10793
  if m.get('body') is not None:
10460
10794
  temp_model = MLServiceAnalysisParam()
10461
10795
  self.body = temp_model.from_map(m['body'])
10796
+ if m.get('version') is not None:
10797
+ self.version = m.get('version')
10462
10798
  return self
10463
10799
 
10464
10800
 
@@ -10507,8 +10843,85 @@ class GetMLServiceResultsResponse(TeaModel):
10507
10843
  self.body = body
10508
10844
 
10509
10845
  def validate(self):
10510
- if self.body:
10511
- self.body.validate()
10846
+ if self.body:
10847
+ self.body.validate()
10848
+
10849
+ def to_map(self):
10850
+ _map = super().to_map()
10851
+ if _map is not None:
10852
+ return _map
10853
+
10854
+ result = dict()
10855
+ if self.headers is not None:
10856
+ result['headers'] = self.headers
10857
+ if self.status_code is not None:
10858
+ result['statusCode'] = self.status_code
10859
+ if self.body is not None:
10860
+ result['body'] = self.body.to_map()
10861
+ return result
10862
+
10863
+ def from_map(self, m: dict = None):
10864
+ m = m or dict()
10865
+ if m.get('headers') is not None:
10866
+ self.headers = m.get('headers')
10867
+ if m.get('statusCode') is not None:
10868
+ self.status_code = m.get('statusCode')
10869
+ if m.get('body') is not None:
10870
+ temp_model = GetMLServiceResultsResponseBody()
10871
+ self.body = temp_model.from_map(m['body'])
10872
+ return self
10873
+
10874
+
10875
+ class GetMachineGroupResponse(TeaModel):
10876
+ def __init__(
10877
+ self,
10878
+ headers: Dict[str, str] = None,
10879
+ status_code: int = None,
10880
+ body: MachineGroup = None,
10881
+ ):
10882
+ self.headers = headers
10883
+ self.status_code = status_code
10884
+ self.body = body
10885
+
10886
+ def validate(self):
10887
+ if self.body:
10888
+ self.body.validate()
10889
+
10890
+ def to_map(self):
10891
+ _map = super().to_map()
10892
+ if _map is not None:
10893
+ return _map
10894
+
10895
+ result = dict()
10896
+ if self.headers is not None:
10897
+ result['headers'] = self.headers
10898
+ if self.status_code is not None:
10899
+ result['statusCode'] = self.status_code
10900
+ if self.body is not None:
10901
+ result['body'] = self.body.to_map()
10902
+ return result
10903
+
10904
+ def from_map(self, m: dict = None):
10905
+ m = m or dict()
10906
+ if m.get('headers') is not None:
10907
+ self.headers = m.get('headers')
10908
+ if m.get('statusCode') is not None:
10909
+ self.status_code = m.get('statusCode')
10910
+ if m.get('body') is not None:
10911
+ temp_model = MachineGroup()
10912
+ self.body = temp_model.from_map(m['body'])
10913
+ return self
10914
+
10915
+
10916
+ class GetMetricStoreMeteringModeResponseBody(TeaModel):
10917
+ def __init__(
10918
+ self,
10919
+ metering_mode: str = None,
10920
+ ):
10921
+ self.metering_mode = metering_mode
10922
+
10923
+ def validate(self):
10924
+ pass
10512
10925
 
10513
10926
  def to_map(self):
10514
10927
  _map = super().to_map()
@@ -10516,32 +10929,23 @@ class GetMLServiceResultsResponse(TeaModel):
10516
10929
  return _map
10517
10930
 
10518
10931
  result = dict()
10519
- if self.headers is not None:
10520
- result['headers'] = self.headers
10521
- if self.status_code is not None:
10522
- result['statusCode'] = self.status_code
10523
- if self.body is not None:
10524
- result['body'] = self.body.to_map()
10932
+ if self.metering_mode is not None:
10933
+ result['meteringMode'] = self.metering_mode
10525
10934
  return result
10526
10935
 
10527
10936
  def from_map(self, m: dict = None):
10528
10937
  m = m or dict()
10529
- if m.get('headers') is not None:
10530
- self.headers = m.get('headers')
10531
- if m.get('statusCode') is not None:
10532
- self.status_code = m.get('statusCode')
10533
- if m.get('body') is not None:
10534
- temp_model = GetMLServiceResultsResponseBody()
10535
- self.body = temp_model.from_map(m['body'])
10938
+ if m.get('meteringMode') is not None:
10939
+ self.metering_mode = m.get('meteringMode')
10536
10940
  return self
10537
10941
 
10538
10942
 
10539
- class GetMachineGroupResponse(TeaModel):
10943
+ class GetMetricStoreMeteringModeResponse(TeaModel):
10540
10944
  def __init__(
10541
10945
  self,
10542
10946
  headers: Dict[str, str] = None,
10543
10947
  status_code: int = None,
10544
- body: MachineGroup = None,
10948
+ body: GetMetricStoreMeteringModeResponseBody = None,
10545
10949
  ):
10546
10950
  self.headers = headers
10547
10951
  self.status_code = status_code
@@ -10572,7 +10976,7 @@ class GetMachineGroupResponse(TeaModel):
10572
10976
  if m.get('statusCode') is not None:
10573
10977
  self.status_code = m.get('statusCode')
10574
10978
  if m.get('body') is not None:
10575
- temp_model = MachineGroup()
10979
+ temp_model = GetMetricStoreMeteringModeResponseBody()
10576
10980
  self.body = temp_model.from_map(m['body'])
10577
10981
  return self
10578
10982
 
@@ -10747,7 +11151,7 @@ class GetProjectLogsRequest(TeaModel):
10747
11151
  power_sql: bool = None,
10748
11152
  query: str = None,
10749
11153
  ):
10750
- # Specifies whether to enable the Dedicated SQL feature. For more information, see [Enable Dedicated SQL](~~223777~~). Valid values:
11154
+ # Specifies whether to enable the Dedicated SQL feature. For more information, see [Enable Dedicated SQL](https://help.aliyun.com/document_detail/223777.html). Valid values:
10751
11155
  #
10752
11156
  # * true
10753
11157
  # * false (default): enables the Standard SQL feature.
@@ -10755,6 +11159,8 @@ class GetProjectLogsRequest(TeaModel):
10755
11159
  # You can use the powerSql or **query** parameter to configure Dedicated SQL.
10756
11160
  self.power_sql = power_sql
10757
11161
  # The standard SQL statement. In this example, the SQL statement queries the number of page views (PVs) from 2022-03-01 10:41:40 to 2022-03-01 10:56:40 in a Logstore whose name is nginx-moni.
11162
+ #
11163
+ # This parameter is required.
10758
11164
  self.query = query
10759
11165
 
10760
11166
  def validate(self):
@@ -10951,6 +11357,8 @@ class GetShipperStatusRequest(TeaModel):
10951
11357
  to: int = None,
10952
11358
  ):
10953
11359
  # The start time of the log shipping job. The value is a UNIX timestamp representing the number of seconds that have elapsed since the epoch time January 1, 1970, 00:00:00 UTC.
11360
+ #
11361
+ # This parameter is required.
10954
11362
  self.from_ = from_
10955
11363
  # The line from which the query starts. Default value: 0.
10956
11364
  self.offset = offset
@@ -10959,6 +11367,8 @@ class GetShipperStatusRequest(TeaModel):
10959
11367
  # The status of the log shipping job. This parameter is empty by default, which indicates that log shipping jobs in all states are returned. Valid values: success, fail, and running.
10960
11368
  self.status = status
10961
11369
  # The end time of the log shipping job. The value is a UNIX timestamp representing the number of seconds that have elapsed since the epoch time January 1, 1970, 00:00:00 UTC.
11370
+ #
11371
+ # This parameter is required.
10962
11372
  self.to = to
10963
11373
 
10964
11374
  def validate(self):
@@ -11124,20 +11534,246 @@ class GetShipperStatusResponseBody(TeaModel):
11124
11534
  tasks: GetShipperStatusResponseBodyTasks = None,
11125
11535
  total: int = None,
11126
11536
  ):
11127
- # The number of log shipping jobs returned on the current page.
11128
- self.count = count
11129
- # The statistics about log shipping jobs.
11130
- self.statistics = statistics
11131
- # The details of log shipping jobs.
11132
- self.tasks = tasks
11133
- # The total number of log shipping jobs.
11134
- self.total = total
11537
+ # The number of log shipping jobs returned on the current page.
11538
+ self.count = count
11539
+ # The statistics about log shipping jobs.
11540
+ self.statistics = statistics
11541
+ # The details of log shipping jobs.
11542
+ self.tasks = tasks
11543
+ # The total number of log shipping jobs.
11544
+ self.total = total
11545
+
11546
+ def validate(self):
11547
+ if self.statistics:
11548
+ self.statistics.validate()
11549
+ if self.tasks:
11550
+ self.tasks.validate()
11551
+
11552
+ def to_map(self):
11553
+ _map = super().to_map()
11554
+ if _map is not None:
11555
+ return _map
11556
+
11557
+ result = dict()
11558
+ if self.count is not None:
11559
+ result['count'] = self.count
11560
+ if self.statistics is not None:
11561
+ result['statistics'] = self.statistics.to_map()
11562
+ if self.tasks is not None:
11563
+ result['tasks'] = self.tasks.to_map()
11564
+ if self.total is not None:
11565
+ result['total'] = self.total
11566
+ return result
11567
+
11568
+ def from_map(self, m: dict = None):
11569
+ m = m or dict()
11570
+ if m.get('count') is not None:
11571
+ self.count = m.get('count')
11572
+ if m.get('statistics') is not None:
11573
+ temp_model = GetShipperStatusResponseBodyStatistics()
11574
+ self.statistics = temp_model.from_map(m['statistics'])
11575
+ if m.get('tasks') is not None:
11576
+ temp_model = GetShipperStatusResponseBodyTasks()
11577
+ self.tasks = temp_model.from_map(m['tasks'])
11578
+ if m.get('total') is not None:
11579
+ self.total = m.get('total')
11580
+ return self
11581
+
11582
+
11583
+ class GetShipperStatusResponse(TeaModel):
11584
+ def __init__(
11585
+ self,
11586
+ headers: Dict[str, str] = None,
11587
+ status_code: int = None,
11588
+ body: GetShipperStatusResponseBody = None,
11589
+ ):
11590
+ self.headers = headers
11591
+ self.status_code = status_code
11592
+ self.body = body
11593
+
11594
+ def validate(self):
11595
+ if self.body:
11596
+ self.body.validate()
11597
+
11598
+ def to_map(self):
11599
+ _map = super().to_map()
11600
+ if _map is not None:
11601
+ return _map
11602
+
11603
+ result = dict()
11604
+ if self.headers is not None:
11605
+ result['headers'] = self.headers
11606
+ if self.status_code is not None:
11607
+ result['statusCode'] = self.status_code
11608
+ if self.body is not None:
11609
+ result['body'] = self.body.to_map()
11610
+ return result
11611
+
11612
+ def from_map(self, m: dict = None):
11613
+ m = m or dict()
11614
+ if m.get('headers') is not None:
11615
+ self.headers = m.get('headers')
11616
+ if m.get('statusCode') is not None:
11617
+ self.status_code = m.get('statusCode')
11618
+ if m.get('body') is not None:
11619
+ temp_model = GetShipperStatusResponseBody()
11620
+ self.body = temp_model.from_map(m['body'])
11621
+ return self
11622
+
11623
+
11624
+ class GetSlsServiceResponse(TeaModel):
11625
+ def __init__(
11626
+ self,
11627
+ headers: Dict[str, str] = None,
11628
+ status_code: int = None,
11629
+ body: ServiceStatus = None,
11630
+ ):
11631
+ self.headers = headers
11632
+ self.status_code = status_code
11633
+ self.body = body
11634
+
11635
+ def validate(self):
11636
+ if self.body:
11637
+ self.body.validate()
11638
+
11639
+ def to_map(self):
11640
+ _map = super().to_map()
11641
+ if _map is not None:
11642
+ return _map
11643
+
11644
+ result = dict()
11645
+ if self.headers is not None:
11646
+ result['headers'] = self.headers
11647
+ if self.status_code is not None:
11648
+ result['statusCode'] = self.status_code
11649
+ if self.body is not None:
11650
+ result['body'] = self.body.to_map()
11651
+ return result
11652
+
11653
+ def from_map(self, m: dict = None):
11654
+ m = m or dict()
11655
+ if m.get('headers') is not None:
11656
+ self.headers = m.get('headers')
11657
+ if m.get('statusCode') is not None:
11658
+ self.status_code = m.get('statusCode')
11659
+ if m.get('body') is not None:
11660
+ temp_model = ServiceStatus()
11661
+ self.body = temp_model.from_map(m['body'])
11662
+ return self
11663
+
11664
+
11665
+ class GetSqlInstanceResponseBody(TeaModel):
11666
+ def __init__(
11667
+ self,
11668
+ name: str = None,
11669
+ cu: int = None,
11670
+ create_time: int = None,
11671
+ update_time: int = None,
11672
+ use_as_default: bool = None,
11673
+ ):
11674
+ self.name = name
11675
+ self.cu = cu
11676
+ self.create_time = create_time
11677
+ self.update_time = update_time
11678
+ self.use_as_default = use_as_default
11679
+
11680
+ def validate(self):
11681
+ pass
11682
+
11683
+ def to_map(self):
11684
+ _map = super().to_map()
11685
+ if _map is not None:
11686
+ return _map
11687
+
11688
+ result = dict()
11689
+ if self.name is not None:
11690
+ result['name'] = self.name
11691
+ if self.cu is not None:
11692
+ result['cu'] = self.cu
11693
+ if self.create_time is not None:
11694
+ result['createTime'] = self.create_time
11695
+ if self.update_time is not None:
11696
+ result['updateTime'] = self.update_time
11697
+ if self.use_as_default is not None:
11698
+ result['useAsDefault'] = self.use_as_default
11699
+ return result
11700
+
11701
+ def from_map(self, m: dict = None):
11702
+ m = m or dict()
11703
+ if m.get('name') is not None:
11704
+ self.name = m.get('name')
11705
+ if m.get('cu') is not None:
11706
+ self.cu = m.get('cu')
11707
+ if m.get('createTime') is not None:
11708
+ self.create_time = m.get('createTime')
11709
+ if m.get('updateTime') is not None:
11710
+ self.update_time = m.get('updateTime')
11711
+ if m.get('useAsDefault') is not None:
11712
+ self.use_as_default = m.get('useAsDefault')
11713
+ return self
11714
+
11715
+
11716
+ class GetSqlInstanceResponse(TeaModel):
11717
+ def __init__(
11718
+ self,
11719
+ headers: Dict[str, str] = None,
11720
+ status_code: int = None,
11721
+ body: List[GetSqlInstanceResponseBody] = None,
11722
+ ):
11723
+ self.headers = headers
11724
+ self.status_code = status_code
11725
+ self.body = body
11726
+
11727
+ def validate(self):
11728
+ if self.body:
11729
+ for k in self.body:
11730
+ if k:
11731
+ k.validate()
11732
+
11733
+ def to_map(self):
11734
+ _map = super().to_map()
11735
+ if _map is not None:
11736
+ return _map
11737
+
11738
+ result = dict()
11739
+ if self.headers is not None:
11740
+ result['headers'] = self.headers
11741
+ if self.status_code is not None:
11742
+ result['statusCode'] = self.status_code
11743
+ result['body'] = []
11744
+ if self.body is not None:
11745
+ for k in self.body:
11746
+ result['body'].append(k.to_map() if k else None)
11747
+ return result
11748
+
11749
+ def from_map(self, m: dict = None):
11750
+ m = m or dict()
11751
+ if m.get('headers') is not None:
11752
+ self.headers = m.get('headers')
11753
+ if m.get('statusCode') is not None:
11754
+ self.status_code = m.get('statusCode')
11755
+ self.body = []
11756
+ if m.get('body') is not None:
11757
+ for k in m.get('body'):
11758
+ temp_model = GetSqlInstanceResponseBody()
11759
+ self.body.append(temp_model.from_map(k))
11760
+ return self
11761
+
11762
+
11763
+ class GetStoreViewResponseBody(TeaModel):
11764
+ def __init__(
11765
+ self,
11766
+ store_type: str = None,
11767
+ stores: List[StoreViewStore] = None,
11768
+ ):
11769
+ self.store_type = store_type
11770
+ self.stores = stores
11135
11771
 
11136
11772
  def validate(self):
11137
- if self.statistics:
11138
- self.statistics.validate()
11139
- if self.tasks:
11140
- self.tasks.validate()
11773
+ if self.stores:
11774
+ for k in self.stores:
11775
+ if k:
11776
+ k.validate()
11141
11777
 
11142
11778
  def to_map(self):
11143
11779
  _map = super().to_map()
@@ -11145,37 +11781,32 @@ class GetShipperStatusResponseBody(TeaModel):
11145
11781
  return _map
11146
11782
 
11147
11783
  result = dict()
11148
- if self.count is not None:
11149
- result['count'] = self.count
11150
- if self.statistics is not None:
11151
- result['statistics'] = self.statistics.to_map()
11152
- if self.tasks is not None:
11153
- result['tasks'] = self.tasks.to_map()
11154
- if self.total is not None:
11155
- result['total'] = self.total
11784
+ if self.store_type is not None:
11785
+ result['storeType'] = self.store_type
11786
+ result['stores'] = []
11787
+ if self.stores is not None:
11788
+ for k in self.stores:
11789
+ result['stores'].append(k.to_map() if k else None)
11156
11790
  return result
11157
11791
 
11158
11792
  def from_map(self, m: dict = None):
11159
11793
  m = m or dict()
11160
- if m.get('count') is not None:
11161
- self.count = m.get('count')
11162
- if m.get('statistics') is not None:
11163
- temp_model = GetShipperStatusResponseBodyStatistics()
11164
- self.statistics = temp_model.from_map(m['statistics'])
11165
- if m.get('tasks') is not None:
11166
- temp_model = GetShipperStatusResponseBodyTasks()
11167
- self.tasks = temp_model.from_map(m['tasks'])
11168
- if m.get('total') is not None:
11169
- self.total = m.get('total')
11794
+ if m.get('storeType') is not None:
11795
+ self.store_type = m.get('storeType')
11796
+ self.stores = []
11797
+ if m.get('stores') is not None:
11798
+ for k in m.get('stores'):
11799
+ temp_model = StoreViewStore()
11800
+ self.stores.append(temp_model.from_map(k))
11170
11801
  return self
11171
11802
 
11172
11803
 
11173
- class GetShipperStatusResponse(TeaModel):
11804
+ class GetStoreViewResponse(TeaModel):
11174
11805
  def __init__(
11175
11806
  self,
11176
11807
  headers: Dict[str, str] = None,
11177
11808
  status_code: int = None,
11178
- body: GetShipperStatusResponseBody = None,
11809
+ body: GetStoreViewResponseBody = None,
11179
11810
  ):
11180
11811
  self.headers = headers
11181
11812
  self.status_code = status_code
@@ -11206,25 +11837,25 @@ class GetShipperStatusResponse(TeaModel):
11206
11837
  if m.get('statusCode') is not None:
11207
11838
  self.status_code = m.get('statusCode')
11208
11839
  if m.get('body') is not None:
11209
- temp_model = GetShipperStatusResponseBody()
11840
+ temp_model = GetStoreViewResponseBody()
11210
11841
  self.body = temp_model.from_map(m['body'])
11211
11842
  return self
11212
11843
 
11213
11844
 
11214
- class GetSlsServiceResponse(TeaModel):
11845
+ class GetStoreViewIndexResponseBodyIndexes(TeaModel):
11215
11846
  def __init__(
11216
11847
  self,
11217
- headers: Dict[str, str] = None,
11218
- status_code: int = None,
11219
- body: ServiceStatus = None,
11848
+ index: Index = None,
11849
+ logstore: str = None,
11850
+ project: str = None,
11220
11851
  ):
11221
- self.headers = headers
11222
- self.status_code = status_code
11223
- self.body = body
11852
+ self.index = index
11853
+ self.logstore = logstore
11854
+ self.project = project
11224
11855
 
11225
11856
  def validate(self):
11226
- if self.body:
11227
- self.body.validate()
11857
+ if self.index:
11858
+ self.index.validate()
11228
11859
 
11229
11860
  def to_map(self):
11230
11861
  _map = super().to_map()
@@ -11232,43 +11863,38 @@ class GetSlsServiceResponse(TeaModel):
11232
11863
  return _map
11233
11864
 
11234
11865
  result = dict()
11235
- if self.headers is not None:
11236
- result['headers'] = self.headers
11237
- if self.status_code is not None:
11238
- result['statusCode'] = self.status_code
11239
- if self.body is not None:
11240
- result['body'] = self.body.to_map()
11866
+ if self.index is not None:
11867
+ result['index'] = self.index.to_map()
11868
+ if self.logstore is not None:
11869
+ result['logstore'] = self.logstore
11870
+ if self.project is not None:
11871
+ result['project'] = self.project
11241
11872
  return result
11242
11873
 
11243
11874
  def from_map(self, m: dict = None):
11244
11875
  m = m or dict()
11245
- if m.get('headers') is not None:
11246
- self.headers = m.get('headers')
11247
- if m.get('statusCode') is not None:
11248
- self.status_code = m.get('statusCode')
11249
- if m.get('body') is not None:
11250
- temp_model = ServiceStatus()
11251
- self.body = temp_model.from_map(m['body'])
11876
+ if m.get('index') is not None:
11877
+ temp_model = Index()
11878
+ self.index = temp_model.from_map(m['index'])
11879
+ if m.get('logstore') is not None:
11880
+ self.logstore = m.get('logstore')
11881
+ if m.get('project') is not None:
11882
+ self.project = m.get('project')
11252
11883
  return self
11253
11884
 
11254
11885
 
11255
- class GetSqlInstanceResponseBody(TeaModel):
11886
+ class GetStoreViewIndexResponseBody(TeaModel):
11256
11887
  def __init__(
11257
11888
  self,
11258
- name: str = None,
11259
- cu: int = None,
11260
- create_time: int = None,
11261
- update_time: int = None,
11262
- use_as_default: bool = None,
11889
+ indexes: List[GetStoreViewIndexResponseBodyIndexes] = None,
11263
11890
  ):
11264
- self.name = name
11265
- self.cu = cu
11266
- self.create_time = create_time
11267
- self.update_time = update_time
11268
- self.use_as_default = use_as_default
11891
+ self.indexes = indexes
11269
11892
 
11270
11893
  def validate(self):
11271
- pass
11894
+ if self.indexes:
11895
+ for k in self.indexes:
11896
+ if k:
11897
+ k.validate()
11272
11898
 
11273
11899
  def to_map(self):
11274
11900
  _map = super().to_map()
@@ -11276,39 +11902,28 @@ class GetSqlInstanceResponseBody(TeaModel):
11276
11902
  return _map
11277
11903
 
11278
11904
  result = dict()
11279
- if self.name is not None:
11280
- result['name'] = self.name
11281
- if self.cu is not None:
11282
- result['cu'] = self.cu
11283
- if self.create_time is not None:
11284
- result['createTime'] = self.create_time
11285
- if self.update_time is not None:
11286
- result['updateTime'] = self.update_time
11287
- if self.use_as_default is not None:
11288
- result['useAsDefault'] = self.use_as_default
11905
+ result['indexes'] = []
11906
+ if self.indexes is not None:
11907
+ for k in self.indexes:
11908
+ result['indexes'].append(k.to_map() if k else None)
11289
11909
  return result
11290
11910
 
11291
11911
  def from_map(self, m: dict = None):
11292
11912
  m = m or dict()
11293
- if m.get('name') is not None:
11294
- self.name = m.get('name')
11295
- if m.get('cu') is not None:
11296
- self.cu = m.get('cu')
11297
- if m.get('createTime') is not None:
11298
- self.create_time = m.get('createTime')
11299
- if m.get('updateTime') is not None:
11300
- self.update_time = m.get('updateTime')
11301
- if m.get('useAsDefault') is not None:
11302
- self.use_as_default = m.get('useAsDefault')
11913
+ self.indexes = []
11914
+ if m.get('indexes') is not None:
11915
+ for k in m.get('indexes'):
11916
+ temp_model = GetStoreViewIndexResponseBodyIndexes()
11917
+ self.indexes.append(temp_model.from_map(k))
11303
11918
  return self
11304
11919
 
11305
11920
 
11306
- class GetSqlInstanceResponse(TeaModel):
11921
+ class GetStoreViewIndexResponse(TeaModel):
11307
11922
  def __init__(
11308
11923
  self,
11309
11924
  headers: Dict[str, str] = None,
11310
11925
  status_code: int = None,
11311
- body: List[GetSqlInstanceResponseBody] = None,
11926
+ body: GetStoreViewIndexResponseBody = None,
11312
11927
  ):
11313
11928
  self.headers = headers
11314
11929
  self.status_code = status_code
@@ -11316,9 +11931,7 @@ class GetSqlInstanceResponse(TeaModel):
11316
11931
 
11317
11932
  def validate(self):
11318
11933
  if self.body:
11319
- for k in self.body:
11320
- if k:
11321
- k.validate()
11934
+ self.body.validate()
11322
11935
 
11323
11936
  def to_map(self):
11324
11937
  _map = super().to_map()
@@ -11330,10 +11943,8 @@ class GetSqlInstanceResponse(TeaModel):
11330
11943
  result['headers'] = self.headers
11331
11944
  if self.status_code is not None:
11332
11945
  result['statusCode'] = self.status_code
11333
- result['body'] = []
11334
11946
  if self.body is not None:
11335
- for k in self.body:
11336
- result['body'].append(k.to_map() if k else None)
11947
+ result['body'] = self.body.to_map()
11337
11948
  return result
11338
11949
 
11339
11950
  def from_map(self, m: dict = None):
@@ -11342,11 +11953,9 @@ class GetSqlInstanceResponse(TeaModel):
11342
11953
  self.headers = m.get('headers')
11343
11954
  if m.get('statusCode') is not None:
11344
11955
  self.status_code = m.get('statusCode')
11345
- self.body = []
11346
11956
  if m.get('body') is not None:
11347
- for k in m.get('body'):
11348
- temp_model = GetSqlInstanceResponseBody()
11349
- self.body.append(temp_model.from_map(k))
11957
+ temp_model = GetStoreViewIndexResponseBody()
11958
+ self.body = temp_model.from_map(m['body'])
11350
11959
  return self
11351
11960
 
11352
11961
 
@@ -12294,10 +12903,16 @@ class ListConfigRequest(TeaModel):
12294
12903
  # The name of the Logtail configuration.
12295
12904
  self.config_name = config_name
12296
12905
  # The name of the Logstore.
12906
+ #
12907
+ # This parameter is required.
12297
12908
  self.logstore_name = logstore_name
12298
12909
  # The line from which the query starts. Default value: 0.
12910
+ #
12911
+ # This parameter is required.
12299
12912
  self.offset = offset
12300
12913
  # The number of entries per page. Maximum value: 500.
12914
+ #
12915
+ # This parameter is required.
12301
12916
  self.size = size
12302
12917
 
12303
12918
  def validate(self):
@@ -14243,22 +14858,152 @@ class ListScheduledSQLsResponseBody(TeaModel):
14243
14858
  m = m or dict()
14244
14859
  if m.get('count') is not None:
14245
14860
  self.count = m.get('count')
14246
- self.results = []
14247
- if m.get('results') is not None:
14248
- for k in m.get('results'):
14249
- temp_model = ScheduledSQL()
14250
- self.results.append(temp_model.from_map(k))
14861
+ self.results = []
14862
+ if m.get('results') is not None:
14863
+ for k in m.get('results'):
14864
+ temp_model = ScheduledSQL()
14865
+ self.results.append(temp_model.from_map(k))
14866
+ if m.get('total') is not None:
14867
+ self.total = m.get('total')
14868
+ return self
14869
+
14870
+
14871
+ class ListScheduledSQLsResponse(TeaModel):
14872
+ def __init__(
14873
+ self,
14874
+ headers: Dict[str, str] = None,
14875
+ status_code: int = None,
14876
+ body: ListScheduledSQLsResponseBody = None,
14877
+ ):
14878
+ self.headers = headers
14879
+ self.status_code = status_code
14880
+ self.body = body
14881
+
14882
+ def validate(self):
14883
+ if self.body:
14884
+ self.body.validate()
14885
+
14886
+ def to_map(self):
14887
+ _map = super().to_map()
14888
+ if _map is not None:
14889
+ return _map
14890
+
14891
+ result = dict()
14892
+ if self.headers is not None:
14893
+ result['headers'] = self.headers
14894
+ if self.status_code is not None:
14895
+ result['statusCode'] = self.status_code
14896
+ if self.body is not None:
14897
+ result['body'] = self.body.to_map()
14898
+ return result
14899
+
14900
+ def from_map(self, m: dict = None):
14901
+ m = m or dict()
14902
+ if m.get('headers') is not None:
14903
+ self.headers = m.get('headers')
14904
+ if m.get('statusCode') is not None:
14905
+ self.status_code = m.get('statusCode')
14906
+ if m.get('body') is not None:
14907
+ temp_model = ListScheduledSQLsResponseBody()
14908
+ self.body = temp_model.from_map(m['body'])
14909
+ return self
14910
+
14911
+
14912
+ class ListShardsResponse(TeaModel):
14913
+ def __init__(
14914
+ self,
14915
+ headers: Dict[str, str] = None,
14916
+ status_code: int = None,
14917
+ body: List[Shard] = None,
14918
+ ):
14919
+ self.headers = headers
14920
+ self.status_code = status_code
14921
+ self.body = body
14922
+
14923
+ def validate(self):
14924
+ if self.body:
14925
+ for k in self.body:
14926
+ if k:
14927
+ k.validate()
14928
+
14929
+ def to_map(self):
14930
+ _map = super().to_map()
14931
+ if _map is not None:
14932
+ return _map
14933
+
14934
+ result = dict()
14935
+ if self.headers is not None:
14936
+ result['headers'] = self.headers
14937
+ if self.status_code is not None:
14938
+ result['statusCode'] = self.status_code
14939
+ result['body'] = []
14940
+ if self.body is not None:
14941
+ for k in self.body:
14942
+ result['body'].append(k.to_map() if k else None)
14943
+ return result
14944
+
14945
+ def from_map(self, m: dict = None):
14946
+ m = m or dict()
14947
+ if m.get('headers') is not None:
14948
+ self.headers = m.get('headers')
14949
+ if m.get('statusCode') is not None:
14950
+ self.status_code = m.get('statusCode')
14951
+ self.body = []
14952
+ if m.get('body') is not None:
14953
+ for k in m.get('body'):
14954
+ temp_model = Shard()
14955
+ self.body.append(temp_model.from_map(k))
14956
+ return self
14957
+
14958
+
14959
+ class ListShipperResponseBody(TeaModel):
14960
+ def __init__(
14961
+ self,
14962
+ count: int = None,
14963
+ shipper: List[str] = None,
14964
+ total: int = None,
14965
+ ):
14966
+ # The number of log shipping jobs returned.
14967
+ self.count = count
14968
+ # The names of the log shipping jobs.
14969
+ self.shipper = shipper
14970
+ # The total number of log shipping jobs.
14971
+ self.total = total
14972
+
14973
+ def validate(self):
14974
+ pass
14975
+
14976
+ def to_map(self):
14977
+ _map = super().to_map()
14978
+ if _map is not None:
14979
+ return _map
14980
+
14981
+ result = dict()
14982
+ if self.count is not None:
14983
+ result['count'] = self.count
14984
+ if self.shipper is not None:
14985
+ result['shipper'] = self.shipper
14986
+ if self.total is not None:
14987
+ result['total'] = self.total
14988
+ return result
14989
+
14990
+ def from_map(self, m: dict = None):
14991
+ m = m or dict()
14992
+ if m.get('count') is not None:
14993
+ self.count = m.get('count')
14994
+ if m.get('shipper') is not None:
14995
+ self.shipper = m.get('shipper')
14251
14996
  if m.get('total') is not None:
14252
14997
  self.total = m.get('total')
14253
14998
  return self
14254
14999
 
14255
15000
 
14256
- class ListScheduledSQLsResponse(TeaModel):
15001
+ class ListShipperResponse(TeaModel):
14257
15002
  def __init__(
14258
15003
  self,
14259
15004
  headers: Dict[str, str] = None,
14260
15005
  status_code: int = None,
14261
- body: ListScheduledSQLsResponseBody = None,
15006
+ body: ListShipperResponseBody = None,
14262
15007
  ):
14263
15008
  self.headers = headers
14264
15009
  self.status_code = status_code
@@ -14289,27 +15034,26 @@ class ListScheduledSQLsResponse(TeaModel):
14289
15034
  if m.get('statusCode') is not None:
14290
15035
  self.status_code = m.get('statusCode')
14291
15036
  if m.get('body') is not None:
14292
- temp_model = ListScheduledSQLsResponseBody()
15037
+ temp_model = ListShipperResponseBody()
14293
15038
  self.body = temp_model.from_map(m['body'])
14294
15039
  return self
14295
15040
 
14296
15041
 
14297
- class ListShardsResponse(TeaModel):
15042
+ class ListStoreViewsRequest(TeaModel):
14298
15043
  def __init__(
14299
15044
  self,
14300
- headers: Dict[str, str] = None,
14301
- status_code: int = None,
14302
- body: List[Shard] = None,
15045
+ name: str = None,
15046
+ offset: int = None,
15047
+ size: int = None,
15048
+ store_type: str = None,
14303
15049
  ):
14304
- self.headers = headers
14305
- self.status_code = status_code
14306
- self.body = body
15050
+ self.name = name
15051
+ self.offset = offset
15052
+ self.size = size
15053
+ self.store_type = store_type
14307
15054
 
14308
15055
  def validate(self):
14309
- if self.body:
14310
- for k in self.body:
14311
- if k:
14312
- k.validate()
15056
+ pass
14313
15057
 
14314
15058
  def to_map(self):
14315
15059
  _map = super().to_map()
@@ -14317,42 +15061,38 @@ class ListShardsResponse(TeaModel):
14317
15061
  return _map
14318
15062
 
14319
15063
  result = dict()
14320
- if self.headers is not None:
14321
- result['headers'] = self.headers
14322
- if self.status_code is not None:
14323
- result['statusCode'] = self.status_code
14324
- result['body'] = []
14325
- if self.body is not None:
14326
- for k in self.body:
14327
- result['body'].append(k.to_map() if k else None)
15064
+ if self.name is not None:
15065
+ result['name'] = self.name
15066
+ if self.offset is not None:
15067
+ result['offset'] = self.offset
15068
+ if self.size is not None:
15069
+ result['size'] = self.size
15070
+ if self.store_type is not None:
15071
+ result['storeType'] = self.store_type
14328
15072
  return result
14329
15073
 
14330
15074
  def from_map(self, m: dict = None):
14331
15075
  m = m or dict()
14332
- if m.get('headers') is not None:
14333
- self.headers = m.get('headers')
14334
- if m.get('statusCode') is not None:
14335
- self.status_code = m.get('statusCode')
14336
- self.body = []
14337
- if m.get('body') is not None:
14338
- for k in m.get('body'):
14339
- temp_model = Shard()
14340
- self.body.append(temp_model.from_map(k))
15076
+ if m.get('name') is not None:
15077
+ self.name = m.get('name')
15078
+ if m.get('offset') is not None:
15079
+ self.offset = m.get('offset')
15080
+ if m.get('size') is not None:
15081
+ self.size = m.get('size')
15082
+ if m.get('storeType') is not None:
15083
+ self.store_type = m.get('storeType')
14341
15084
  return self
14342
15085
 
14343
15086
 
14344
- class ListShipperResponseBody(TeaModel):
15087
+ class ListStoreViewsResponseBody(TeaModel):
14345
15088
  def __init__(
14346
15089
  self,
14347
15090
  count: int = None,
14348
- shipper: List[str] = None,
15091
+ storeviews: List[str] = None,
14349
15092
  total: int = None,
14350
15093
  ):
14351
- # The number of log shipping jobs returned.
14352
15094
  self.count = count
14353
- # The names of the log shipping jobs.
14354
- self.shipper = shipper
14355
- # The total number of log shipping jobs.
15095
+ self.storeviews = storeviews
14356
15096
  self.total = total
14357
15097
 
14358
15098
  def validate(self):
@@ -14366,8 +15106,8 @@ class ListShipperResponseBody(TeaModel):
14366
15106
  result = dict()
14367
15107
  if self.count is not None:
14368
15108
  result['count'] = self.count
14369
- if self.shipper is not None:
14370
- result['shipper'] = self.shipper
15109
+ if self.storeviews is not None:
15110
+ result['storeviews'] = self.storeviews
14371
15111
  if self.total is not None:
14372
15112
  result['total'] = self.total
14373
15113
  return result
@@ -14376,19 +15116,19 @@ class ListShipperResponseBody(TeaModel):
14376
15116
  m = m or dict()
14377
15117
  if m.get('count') is not None:
14378
15118
  self.count = m.get('count')
14379
- if m.get('shipper') is not None:
14380
- self.shipper = m.get('shipper')
15119
+ if m.get('storeviews') is not None:
15120
+ self.storeviews = m.get('storeviews')
14381
15121
  if m.get('total') is not None:
14382
15122
  self.total = m.get('total')
14383
15123
  return self
14384
15124
 
14385
15125
 
14386
- class ListShipperResponse(TeaModel):
15126
+ class ListStoreViewsResponse(TeaModel):
14387
15127
  def __init__(
14388
15128
  self,
14389
15129
  headers: Dict[str, str] = None,
14390
15130
  status_code: int = None,
14391
- body: ListShipperResponseBody = None,
15131
+ body: ListStoreViewsResponseBody = None,
14392
15132
  ):
14393
15133
  self.headers = headers
14394
15134
  self.status_code = status_code
@@ -14419,7 +15159,7 @@ class ListShipperResponse(TeaModel):
14419
15159
  if m.get('statusCode') is not None:
14420
15160
  self.status_code = m.get('statusCode')
14421
15161
  if m.get('body') is not None:
14422
- temp_model = ListShipperResponseBody()
15162
+ temp_model = ListStoreViewsResponseBody()
14423
15163
  self.body = temp_model.from_map(m['body'])
14424
15164
  return self
14425
15165
 
@@ -14431,6 +15171,8 @@ class ListTagResourcesRequestTags(TeaModel):
14431
15171
  value: str = None,
14432
15172
  ):
14433
15173
  # The key of the tag that you want to use to filter resources. For example, if you set the key to `"test-key"`, only resources to which the key is added are returned.``
15174
+ #
15175
+ # This parameter is required.
14434
15176
  self.key = key
14435
15177
  # The value of the tag that you want to use to filter resources. If you set the value to null, resources are filtered based only on the key of the tag.
14436
15178
  self.value = value
@@ -14469,6 +15211,8 @@ class ListTagResourcesRequest(TeaModel):
14469
15211
  # The IDs of the resources for which you want to query tags. You must specify at least one of resourceId and tags.
14470
15212
  self.resource_id = resource_id
14471
15213
  # The type of the resource. Set the value to project.
15214
+ #
15215
+ # This parameter is required.
14472
15216
  self.resource_type = resource_type
14473
15217
  # The tags that you want to use to filter resources based on exact match. Each tag is a key-value pair. You must specify at least one of resourceId and tags.
14474
15218
  #
@@ -14521,6 +15265,8 @@ class ListTagResourcesShrinkRequest(TeaModel):
14521
15265
  # The IDs of the resources for which you want to query tags. You must specify at least one of resourceId and tags.
14522
15266
  self.resource_id_shrink = resource_id_shrink
14523
15267
  # The type of the resource. Set the value to project.
15268
+ #
15269
+ # This parameter is required.
14524
15270
  self.resource_type = resource_type
14525
15271
  # The tags that you want to use to filter resources based on exact match. Each tag is a key-value pair. You must specify at least one of resourceId and tags.
14526
15272
  #
@@ -14976,9 +15722,13 @@ class PutWebtrackingRequest(TeaModel):
14976
15722
  ):
14977
15723
  # The logs. Each element is a JSON object that indicates a log.
14978
15724
  #
14979
- # > **Note**: The time in a log that is collected by using the web tracking feature is the time at which Simple Log Service receives the log. You do not need to configure the \__time\_\_ field for each log. If this field exists, it is overwritten by the time at which Simple Log Service receives the log.
15725
+ # > **Note**: The time in a log that is collected by using the web tracking feature is the time at which Simple Log Service receives the log. You do not need to configure the __time__ field for each log. If this field exists, it is overwritten by the time at which Simple Log Service receives the log.
15726
+ #
15727
+ # This parameter is required.
14980
15728
  self.logs = logs
14981
15729
  # The source of the logs.
15730
+ #
15731
+ # This parameter is required.
14982
15732
  self.source = source
14983
15733
  # The tags of the logs.
14984
15734
  self.tags = tags
@@ -15650,11 +16400,15 @@ class TagResourcesRequestTags(TeaModel):
15650
16400
  # * The key must be `1 to 128` characters in length.
15651
16401
  # * The key cannot contain `"http://"` or `"https://"`.
15652
16402
  # * The key cannot start with `"acs:"` or `"aliyun"`.
16403
+ #
16404
+ # This parameter is required.
15653
16405
  self.key = key
15654
16406
  # The value of the tag. The value must meet the following requirements:
15655
16407
  #
15656
16408
  # * The value must be `1 to 128` characters in length.
15657
16409
  # * The value cannot contain `"http://"` or `"https://"`.
16410
+ #
16411
+ # This parameter is required.
15658
16412
  self.value = value
15659
16413
 
15660
16414
  def validate(self):
@@ -15689,10 +16443,16 @@ class TagResourcesRequest(TeaModel):
15689
16443
  tags: List[TagResourcesRequestTags] = None,
15690
16444
  ):
15691
16445
  # The resource IDs. You can specify only one resource and add tags to the resource.
16446
+ #
16447
+ # This parameter is required.
15692
16448
  self.resource_id = resource_id
15693
16449
  # The type of the resource. Set the value to project.
16450
+ #
16451
+ # This parameter is required.
15694
16452
  self.resource_type = resource_type
15695
16453
  # The tags that you want to add to the resource. Up to 20 tags are supported at a time. Each tag is a key-value pair.
16454
+ #
16455
+ # This parameter is required.
15696
16456
  self.tags = tags
15697
16457
 
15698
16458
  def validate(self):
@@ -15773,6 +16533,7 @@ class UntagResourcesRequest(TeaModel):
15773
16533
  tags: List[str] = None,
15774
16534
  ):
15775
16535
  self.all = all
16536
+ # This parameter is required.
15776
16537
  self.resource_id = resource_id
15777
16538
  self.resource_type = resource_type
15778
16539
  self.tags = tags
@@ -15850,9 +16611,12 @@ class UpdateAlertRequest(TeaModel):
15850
16611
  display_name: str = None,
15851
16612
  schedule: Schedule = None,
15852
16613
  ):
16614
+ # This parameter is required.
15853
16615
  self.configuration = configuration
15854
16616
  self.description = description
16617
+ # This parameter is required.
15855
16618
  self.display_name = display_name
16619
+ # This parameter is required.
15856
16620
  self.schedule = schedule
15857
16621
 
15858
16622
  def validate(self):
@@ -16197,12 +16961,18 @@ class UpdateDashboardRequest(TeaModel):
16197
16961
  # The attributes of the dashboard.
16198
16962
  self.attribute = attribute
16199
16963
  # The charts on the dashboard.
16964
+ #
16965
+ # This parameter is required.
16200
16966
  self.charts = charts
16201
16967
  # The name of the dashboard.
16968
+ #
16969
+ # This parameter is required.
16202
16970
  self.dashboard_name = dashboard_name
16203
16971
  # The description of the dashboard.
16204
16972
  self.description = description
16205
16973
  # The display name of the dashboard.
16974
+ #
16975
+ # This parameter is required.
16206
16976
  self.display_name = display_name
16207
16977
 
16208
16978
  def validate(self):
@@ -16289,8 +17059,10 @@ class UpdateETLRequest(TeaModel):
16289
17059
  description: str = None,
16290
17060
  display_name: str = None,
16291
17061
  ):
17062
+ # This parameter is required.
16292
17063
  self.configuration = configuration
16293
17064
  self.description = description
17065
+ # This parameter is required.
16294
17066
  self.display_name = display_name
16295
17067
 
16296
17068
  def validate(self):
@@ -16369,17 +17141,23 @@ class UpdateIndexRequestLine(TeaModel):
16369
17141
  #
16370
17142
  # * true
16371
17143
  # * false
17144
+ #
17145
+ # This parameter is required.
16372
17146
  self.case_sensitive = case_sensitive
16373
17147
  # Specifies whether to include Chinese characters. Valid values:
16374
17148
  #
16375
17149
  # * true
16376
17150
  # * false
17151
+ #
17152
+ # This parameter is required.
16377
17153
  self.chn = chn
16378
17154
  # The excluded fields. You cannot specify both include_keys and exclude_keys.
16379
17155
  self.exclude_keys = exclude_keys
16380
17156
  # The included fields. You cannot specify both include_keys and exclude_keys.
16381
17157
  self.include_keys = include_keys
16382
17158
  # The delimiters that are used to split text.
17159
+ #
17160
+ # This parameter is required.
16383
17161
  self.token = token
16384
17162
 
16385
17163
  def validate(self):
@@ -16442,6 +17220,8 @@ class UpdateIndexRequest(TeaModel):
16442
17220
  # The maximum length of a field value that can be retained.
16443
17221
  self.max_text_len = max_text_len
16444
17222
  # The retention period of data. Unit: days. Valid values: 7, 30, and 90.
17223
+ #
17224
+ # This parameter is required.
16445
17225
  self.ttl = ttl
16446
17226
 
16447
17227
  def validate(self):
@@ -16565,10 +17345,12 @@ class UpdateLogStoreRequest(TeaModel):
16565
17345
  self.enable_tracking = enable_tracking
16566
17346
  # The data structure of the encryption configuration.
16567
17347
  self.encrypt_conf = encrypt_conf
16568
- # The retention period of data in the hot storage tier of the Logstore. Minimum value: 30. Unit: day. You can specify a value that ranges from 30 to the value of ttl. Hot data that is stored for longer than the period specified by hot_ttl is converted to cold data. For more information, see [Enable hot and cold-tiered storage for a Logstore](~~308645~~).
17348
+ # The retention period of data in the hot storage tier of the Logstore. Minimum value: 30. Unit: day. You can specify a value that ranges from 30 to the value of ttl. Hot data that is stored for longer than the period specified by hot_ttl is converted to cold data. For more information, see [Enable hot and cold-tiered storage for a Logstore](https://help.aliyun.com/document_detail/308645.html).
16569
17349
  self.hot_ttl = hot_ttl
16570
17350
  self.infrequent_access_ttl = infrequent_access_ttl
16571
17351
  # The name of the Logstore.
17352
+ #
17353
+ # This parameter is required.
16572
17354
  self.logstore_name = logstore_name
16573
17355
  # The maximum number of shards into which existing shards can be automatically split. Valid values: 1 to 64.
16574
17356
  #
@@ -16589,6 +17371,8 @@ class UpdateLogStoreRequest(TeaModel):
16589
17371
  # * Metrics: metrics.
16590
17372
  self.telemetry_type = telemetry_type
16591
17373
  # The retention period of data. Unit: day. Valid values: 1 to 3650. If you set ttl to 3650, data is permanently stored.
17374
+ #
17375
+ # This parameter is required.
16592
17376
  self.ttl = ttl
16593
17377
 
16594
17378
  def validate(self):
@@ -16695,6 +17479,7 @@ class UpdateLogStoreMeteringModeRequest(TeaModel):
16695
17479
  self,
16696
17480
  metering_mode: str = None,
16697
17481
  ):
17482
+ # This parameter is required.
16698
17483
  self.metering_mode = metering_mode
16699
17484
 
16700
17485
  def validate(self):
@@ -16757,6 +17542,8 @@ class UpdateLoggingRequestLoggingDetails(TeaModel):
16757
17542
  type: str = None,
16758
17543
  ):
16759
17544
  # The name of the Logstore to which you want to save service logs.
17545
+ #
17546
+ # This parameter is required.
16760
17547
  self.logstore = logstore
16761
17548
  # The type of service logs. Valid values:
16762
17549
  #
@@ -16768,6 +17555,8 @@ class UpdateLoggingRequestLoggingDetails(TeaModel):
16768
17555
  # * logtail_status: the status logs of Logtail.
16769
17556
  # * scheduledsqlalert: the operational logs of Scheduled SQL jobs.
16770
17557
  # * etl_alert: the operational logs of data transformation jobs.
17558
+ #
17559
+ # This parameter is required.
16771
17560
  self.type = type
16772
17561
 
16773
17562
  def validate(self):
@@ -16801,8 +17590,12 @@ class UpdateLoggingRequest(TeaModel):
16801
17590
  logging_project: str = None,
16802
17591
  ):
16803
17592
  # The configurations of service logs.
17593
+ #
17594
+ # This parameter is required.
16804
17595
  self.logging_details = logging_details
16805
17596
  # The name of the project to which you want to save service logs.
17597
+ #
17598
+ # This parameter is required.
16806
17599
  self.logging_project = logging_project
16807
17600
 
16808
17601
  def validate(self):
@@ -16884,12 +17677,18 @@ class UpdateLogtailPipelineConfigRequest(TeaModel):
16884
17677
  # The aggregation plug-ins.
16885
17678
  self.aggregators = aggregators
16886
17679
  # The name of the configuration.
17680
+ #
17681
+ # This parameter is required.
16887
17682
  self.config_name = config_name
16888
17683
  # The data output plug-ins.
17684
+ #
17685
+ # This parameter is required.
16889
17686
  self.flushers = flushers
16890
17687
  # The global configuration.
16891
17688
  self.global_ = global_
16892
17689
  # The data source plug-ins.
17690
+ #
17691
+ # This parameter is required.
16893
17692
  self.inputs = inputs
16894
17693
  # The sample log.
16895
17694
  self.log_sample = log_sample
@@ -17020,6 +17819,8 @@ class UpdateMachineGroupRequest(TeaModel):
17020
17819
  # The attribute of the machine group. This parameter is empty by default.
17021
17820
  self.group_attribute = group_attribute
17022
17821
  # The name of the machine group.
17822
+ #
17823
+ # This parameter is required.
17023
17824
  self.group_name = group_name
17024
17825
  # The type of the machine group. Set the value to an empty string.
17025
17826
  self.group_type = group_type
@@ -17027,11 +17828,15 @@ class UpdateMachineGroupRequest(TeaModel):
17027
17828
  #
17028
17829
  # * ip: The machine group uses IP addresses as identifiers.
17029
17830
  # * userdefined: The machine group uses custom identifiers.
17831
+ #
17832
+ # This parameter is required.
17030
17833
  self.machine_identify_type = machine_identify_type
17031
17834
  # The identifiers of the machines in the machine group.
17032
17835
  #
17033
17836
  # * If you set machineIdentifyType to ip, enter the IP addresses of the machines.
17034
17837
  # * If you set machineIdentifyType to userdefined, enter a custom identifier.
17838
+ #
17839
+ # This parameter is required.
17035
17840
  self.machine_list = machine_list
17036
17841
 
17037
17842
  def validate(self):
@@ -17114,6 +17919,8 @@ class UpdateMachineGroupMachineRequest(TeaModel):
17114
17919
  # The operation on the machine. Valid values: add and delete. A value of add specifies to add the machine to the machine group. A value of delete specifies to remove the machine from the machine group.
17115
17920
  self.action = action
17116
17921
  # The machines to be added or removed.
17922
+ #
17923
+ # This parameter is required.
17117
17924
  self.body = body
17118
17925
 
17119
17926
  def validate(self):
@@ -17173,6 +17980,67 @@ class UpdateMachineGroupMachineResponse(TeaModel):
17173
17980
  return self
17174
17981
 
17175
17982
 
17983
+ class UpdateMetricStoreMeteringModeRequest(TeaModel):
17984
+ def __init__(
17985
+ self,
17986
+ metering_mode: str = None,
17987
+ ):
17988
+ # This parameter is required.
17989
+ self.metering_mode = metering_mode
17990
+
17991
+ def validate(self):
17992
+ pass
17993
+
17994
+ def to_map(self):
17995
+ _map = super().to_map()
17996
+ if _map is not None:
17997
+ return _map
17998
+
17999
+ result = dict()
18000
+ if self.metering_mode is not None:
18001
+ result['meteringMode'] = self.metering_mode
18002
+ return result
18003
+
18004
+ def from_map(self, m: dict = None):
18005
+ m = m or dict()
18006
+ if m.get('meteringMode') is not None:
18007
+ self.metering_mode = m.get('meteringMode')
18008
+ return self
18009
+
18010
+
18011
+ class UpdateMetricStoreMeteringModeResponse(TeaModel):
18012
+ def __init__(
18013
+ self,
18014
+ headers: Dict[str, str] = None,
18015
+ status_code: int = None,
18016
+ ):
18017
+ self.headers = headers
18018
+ self.status_code = status_code
18019
+
18020
+ def validate(self):
18021
+ pass
18022
+
18023
+ def to_map(self):
18024
+ _map = super().to_map()
18025
+ if _map is not None:
18026
+ return _map
18027
+
18028
+ result = dict()
18029
+ if self.headers is not None:
18030
+ result['headers'] = self.headers
18031
+ if self.status_code is not None:
18032
+ result['statusCode'] = self.status_code
18033
+ return result
18034
+
18035
+ def from_map(self, m: dict = None):
18036
+ m = m or dict()
18037
+ if m.get('headers') is not None:
18038
+ self.headers = m.get('headers')
18039
+ if m.get('statusCode') is not None:
18040
+ self.status_code = m.get('statusCode')
18041
+ return self
18042
+
18043
+
17176
18044
  class UpdateOSSExportRequest(TeaModel):
17177
18045
  def __init__(
17178
18046
  self,
@@ -17329,8 +18197,10 @@ class UpdateOSSIngestionRequest(TeaModel):
17329
18197
  display_name: str = None,
17330
18198
  schedule: Schedule = None,
17331
18199
  ):
18200
+ # This parameter is required.
17332
18201
  self.configuration = configuration
17333
18202
  self.description = description
18203
+ # This parameter is required.
17334
18204
  self.display_name = display_name
17335
18205
  self.schedule = schedule
17336
18206
 
@@ -17411,8 +18281,12 @@ class UpdateOssExternalStoreRequestParameterColumns(TeaModel):
17411
18281
  type: str = None,
17412
18282
  ):
17413
18283
  # The name of the field.
18284
+ #
18285
+ # This parameter is required.
17414
18286
  self.name = name
17415
18287
  # The type of the field.
18288
+ #
18289
+ # This parameter is required.
17416
18290
  self.type = type
17417
18291
 
17418
18292
  def validate(self):
@@ -17450,16 +18324,28 @@ class UpdateOssExternalStoreRequestParameter(TeaModel):
17450
18324
  objects: List[str] = None,
17451
18325
  ):
17452
18326
  # The AccessKey ID of your account.
18327
+ #
18328
+ # This parameter is required.
17453
18329
  self.accessid = accessid
17454
18330
  # The AccessKey secret of your account.
18331
+ #
18332
+ # This parameter is required.
17455
18333
  self.accesskey = accesskey
17456
18334
  # The name of the OSS bucket.
18335
+ #
18336
+ # This parameter is required.
17457
18337
  self.bucket = bucket
17458
18338
  # The fields that are associated to the external store.
18339
+ #
18340
+ # This parameter is required.
17459
18341
  self.columns = columns
17460
18342
  # The Object Storage Service (OSS) endpoint.
18343
+ #
18344
+ # This parameter is required.
17461
18345
  self.endpoint = endpoint
17462
18346
  # The names of the OSS objects that are associated to the external store.
18347
+ #
18348
+ # This parameter is required.
17463
18349
  self.objects = objects
17464
18350
 
17465
18351
  def validate(self):
@@ -17518,10 +18404,16 @@ class UpdateOssExternalStoreRequest(TeaModel):
17518
18404
  store_type: str = None,
17519
18405
  ):
17520
18406
  # The name of the external store.
18407
+ #
18408
+ # This parameter is required.
17521
18409
  self.external_store_name = external_store_name
17522
18410
  # The parameters that are configured for the external store.
18411
+ #
18412
+ # This parameter is required.
17523
18413
  self.parameter = parameter
17524
18414
  # The type of the external store. Set the value to oss.
18415
+ #
18416
+ # This parameter is required.
17525
18417
  self.store_type = store_type
17526
18418
 
17527
18419
  def validate(self):
@@ -17593,6 +18485,8 @@ class UpdateProjectRequest(TeaModel):
17593
18485
  description: str = None,
17594
18486
  ):
17595
18487
  # The description of the project. The default value is an empty string.
18488
+ #
18489
+ # This parameter is required.
17596
18490
  self.description = description
17597
18491
 
17598
18492
  def validate(self):
@@ -17662,20 +18556,32 @@ class UpdateRdsExternalStoreRequestParameter(TeaModel):
17662
18556
  vpc_id: str = None,
17663
18557
  ):
17664
18558
  # The name of the database in the ApsaraDB RDS for MySQL instance.
18559
+ #
18560
+ # This parameter is required.
17665
18561
  self.db = db
17666
18562
  # The internal or public endpoint of the ApsaraDB RDS for MySQL instance.
17667
18563
  self.host = host
17668
18564
  # The ID of the ApsaraDB RDS for MySQL instance.
17669
18565
  self.instance_id = instance_id
17670
18566
  # The password that is used to log on to the ApsaraDB RDS for MySQL instance.
18567
+ #
18568
+ # This parameter is required.
17671
18569
  self.password = password
17672
18570
  # The internal or public port of the ApsaraDB RDS for MySQL instance.
18571
+ #
18572
+ # This parameter is required.
17673
18573
  self.port = port
17674
18574
  # The region where the ApsaraDB RDS for MySQL instance resides. Valid values: cn-qingdao, cn-beijing, and cn-hangzhou.
18575
+ #
18576
+ # This parameter is required.
17675
18577
  self.region = region
17676
18578
  # The name of the database table in the ApsaraDB RDS for MySQL instance.
18579
+ #
18580
+ # This parameter is required.
17677
18581
  self.table = table
17678
18582
  # The username that is used to log on to the ApsaraDB RDS for MySQL instance.
18583
+ #
18584
+ # This parameter is required.
17679
18585
  self.username = username
17680
18586
  # The ID of the VPC to which the ApsaraDB RDS for MySQL instance belongs.
17681
18587
  self.vpc_id = vpc_id
@@ -17740,10 +18646,16 @@ class UpdateRdsExternalStoreRequest(TeaModel):
17740
18646
  store_type: str = None,
17741
18647
  ):
17742
18648
  # The name of the external store.
18649
+ #
18650
+ # This parameter is required.
17743
18651
  self.external_store_name = external_store_name
17744
18652
  # The parameter struct.
18653
+ #
18654
+ # This parameter is required.
17745
18655
  self.parameter = parameter
17746
18656
  # The storage type. Set the value to rds-vpc, which indicates an ApsaraDB RDS for MySQL database in a virtual private cloud (VPC).
18657
+ #
18658
+ # This parameter is required.
17747
18659
  self.store_type = store_type
17748
18660
 
17749
18661
  def validate(self):
@@ -17819,14 +18731,22 @@ class UpdateSavedSearchRequest(TeaModel):
17819
18731
  topic: str = None,
17820
18732
  ):
17821
18733
  # The display name.
18734
+ #
18735
+ # This parameter is required.
17822
18736
  self.display_name = display_name
17823
18737
  # The name of the Logstore to which the saved search belongs.
18738
+ #
18739
+ # This parameter is required.
17824
18740
  self.logstore = logstore
17825
18741
  # The name of the saved search. The name must be 3 to 63 characters in length.
18742
+ #
18743
+ # This parameter is required.
17826
18744
  self.savedsearch_name = savedsearch_name
17827
18745
  # The search statement or the query statement of the saved search. A query statement consists of a search statement and an analytic statement in the Search statement|Analytic statement format.
17828
18746
  #
17829
18747
  # For more information, see Log search overview and Log analysis overview.
18748
+ #
18749
+ # This parameter is required.
17830
18750
  self.search_query = search_query
17831
18751
  # The topic of the logs.
17832
18752
  self.topic = topic
@@ -17908,9 +18828,12 @@ class UpdateScheduledSQLRequest(TeaModel):
17908
18828
  display_name: str = None,
17909
18829
  schedule: Schedule = None,
17910
18830
  ):
18831
+ # This parameter is required.
17911
18832
  self.configuration = configuration
17912
18833
  self.description = description
18834
+ # This parameter is required.
17913
18835
  self.display_name = display_name
18836
+ # This parameter is required.
17914
18837
  self.schedule = schedule
17915
18838
 
17916
18839
  def validate(self):
@@ -17989,7 +18912,9 @@ class UpdateSqlInstanceRequest(TeaModel):
17989
18912
  cu: int = None,
17990
18913
  use_as_default: bool = None,
17991
18914
  ):
18915
+ # This parameter is required.
17992
18916
  self.cu = cu
18917
+ # This parameter is required.
17993
18918
  self.use_as_default = use_as_default
17994
18919
 
17995
18920
  def validate(self):
@@ -18049,6 +18974,82 @@ class UpdateSqlInstanceResponse(TeaModel):
18049
18974
  return self
18050
18975
 
18051
18976
 
18977
+ class UpdateStoreViewRequest(TeaModel):
18978
+ def __init__(
18979
+ self,
18980
+ store_type: str = None,
18981
+ stores: List[StoreViewStore] = None,
18982
+ ):
18983
+ # This parameter is required.
18984
+ self.store_type = store_type
18985
+ # This parameter is required.
18986
+ self.stores = stores
18987
+
18988
+ def validate(self):
18989
+ if self.stores:
18990
+ for k in self.stores:
18991
+ if k:
18992
+ k.validate()
18993
+
18994
+ def to_map(self):
18995
+ _map = super().to_map()
18996
+ if _map is not None:
18997
+ return _map
18998
+
18999
+ result = dict()
19000
+ if self.store_type is not None:
19001
+ result['storeType'] = self.store_type
19002
+ result['stores'] = []
19003
+ if self.stores is not None:
19004
+ for k in self.stores:
19005
+ result['stores'].append(k.to_map() if k else None)
19006
+ return result
19007
+
19008
+ def from_map(self, m: dict = None):
19009
+ m = m or dict()
19010
+ if m.get('storeType') is not None:
19011
+ self.store_type = m.get('storeType')
19012
+ self.stores = []
19013
+ if m.get('stores') is not None:
19014
+ for k in m.get('stores'):
19015
+ temp_model = StoreViewStore()
19016
+ self.stores.append(temp_model.from_map(k))
19017
+ return self
19018
+
19019
+
19020
+ class UpdateStoreViewResponse(TeaModel):
19021
+ def __init__(
19022
+ self,
19023
+ headers: Dict[str, str] = None,
19024
+ status_code: int = None,
19025
+ ):
19026
+ self.headers = headers
19027
+ self.status_code = status_code
19028
+
19029
+ def validate(self):
19030
+ pass
19031
+
19032
+ def to_map(self):
19033
+ _map = super().to_map()
19034
+ if _map is not None:
19035
+ return _map
19036
+
19037
+ result = dict()
19038
+ if self.headers is not None:
19039
+ result['headers'] = self.headers
19040
+ if self.status_code is not None:
19041
+ result['statusCode'] = self.status_code
19042
+ return result
19043
+
19044
+ def from_map(self, m: dict = None):
19045
+ m = m or dict()
19046
+ if m.get('headers') is not None:
19047
+ self.headers = m.get('headers')
19048
+ if m.get('statusCode') is not None:
19049
+ self.status_code = m.get('statusCode')
19050
+ return self
19051
+
19052
+
18052
19053
  class UpsertCollectionPolicyRequestAttribute(TeaModel):
18053
19054
  def __init__(
18054
19055
  self,
@@ -18137,6 +19138,7 @@ class UpsertCollectionPolicyRequestPolicyConfig(TeaModel):
18137
19138
  ):
18138
19139
  self.instance_ids = instance_ids
18139
19140
  self.regions = regions
19141
+ # This parameter is required.
18140
19142
  self.resource_mode = resource_mode
18141
19143
  self.resource_tags = resource_tags
18142
19144
 
@@ -18187,10 +19189,15 @@ class UpsertCollectionPolicyRequest(TeaModel):
18187
19189
  self.attribute = attribute
18188
19190
  self.centralize_config = centralize_config
18189
19191
  self.centralize_enabled = centralize_enabled
19192
+ # This parameter is required.
18190
19193
  self.data_code = data_code
19194
+ # This parameter is required.
18191
19195
  self.enabled = enabled
19196
+ # This parameter is required.
18192
19197
  self.policy_config = policy_config
19198
+ # This parameter is required.
18193
19199
  self.policy_name = policy_name
19200
+ # This parameter is required.
18194
19201
  self.product_code = product_code
18195
19202
 
18196
19203
  def validate(self):