alibabacloud-sls20201230 5.1.0__py3-none-any.whl → 5.2.1__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):
@@ -3212,203 +3188,32 @@ class Ticket(TeaModel):
3212
3188
  self,
3213
3189
  caller_uid: int = None,
3214
3190
  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,
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):
@@ -4405,19 +4282,25 @@ class Project(TeaModel):
4405
4282
  def __init__(
4406
4283
  self,
4407
4284
  create_time: str = None,
4285
+ data_redundancy_type: str = None,
4408
4286
  description: str = None,
4409
4287
  last_modify_time: str = None,
4410
4288
  owner: str = None,
4411
4289
  project_name: str = None,
4290
+ quota: Dict[str, Any] = None,
4412
4291
  region: str = None,
4413
4292
  resource_group_id: str = None,
4414
4293
  status: str = None,
4415
4294
  ):
4416
4295
  self.create_time = create_time
4296
+ self.data_redundancy_type = data_redundancy_type
4297
+ # This parameter is required.
4417
4298
  self.description = description
4418
4299
  self.last_modify_time = last_modify_time
4419
4300
  self.owner = owner
4301
+ # This parameter is required.
4420
4302
  self.project_name = project_name
4303
+ self.quota = quota
4421
4304
  self.region = region
4422
4305
  self.resource_group_id = resource_group_id
4423
4306
  self.status = status
@@ -4433,6 +4316,8 @@ class Project(TeaModel):
4433
4316
  result = dict()
4434
4317
  if self.create_time is not None:
4435
4318
  result['createTime'] = self.create_time
4319
+ if self.data_redundancy_type is not None:
4320
+ result['dataRedundancyType'] = self.data_redundancy_type
4436
4321
  if self.description is not None:
4437
4322
  result['description'] = self.description
4438
4323
  if self.last_modify_time is not None:
@@ -4441,6 +4326,8 @@ class Project(TeaModel):
4441
4326
  result['owner'] = self.owner
4442
4327
  if self.project_name is not None:
4443
4328
  result['projectName'] = self.project_name
4329
+ if self.quota is not None:
4330
+ result['quota'] = self.quota
4444
4331
  if self.region is not None:
4445
4332
  result['region'] = self.region
4446
4333
  if self.resource_group_id is not None:
@@ -4453,6 +4340,8 @@ class Project(TeaModel):
4453
4340
  m = m or dict()
4454
4341
  if m.get('createTime') is not None:
4455
4342
  self.create_time = m.get('createTime')
4343
+ if m.get('dataRedundancyType') is not None:
4344
+ self.data_redundancy_type = m.get('dataRedundancyType')
4456
4345
  if m.get('description') is not None:
4457
4346
  self.description = m.get('description')
4458
4347
  if m.get('lastModifyTime') is not None:
@@ -4461,6 +4350,8 @@ class Project(TeaModel):
4461
4350
  self.owner = m.get('owner')
4462
4351
  if m.get('projectName') is not None:
4463
4352
  self.project_name = m.get('projectName')
4353
+ if m.get('quota') is not None:
4354
+ self.quota = m.get('quota')
4464
4355
  if m.get('region') is not None:
4465
4356
  self.region = m.get('region')
4466
4357
  if m.get('resourceGroupId') is not None:
@@ -4575,6 +4466,8 @@ class KeysValue(TeaModel):
4575
4466
  # * false (default)
4576
4467
  self.chn = chn
4577
4468
  # The data type of the field value. Valid values: text, json, double, and long.
4469
+ #
4470
+ # This parameter is required.
4578
4471
  self.type = type
4579
4472
  # The alias of the field.
4580
4473
  self.alias = alias
@@ -4664,8 +4557,12 @@ class ChangeResourceGroupRequest(TeaModel):
4664
4557
  resource_type: str = None,
4665
4558
  ):
4666
4559
  # The ID of the resource group.
4560
+ #
4561
+ # This parameter is required.
4667
4562
  self.resource_group_id = resource_group_id
4668
4563
  # The ID of the resource.
4564
+ #
4565
+ # This parameter is required.
4669
4566
  self.resource_id = resource_id
4670
4567
  # The type of the resource. Only PROJECT is supported. Set the value to PROJECT.
4671
4568
  self.resource_type = resource_type
@@ -4738,8 +4635,12 @@ class ConsumerGroupHeartBeatRequest(TeaModel):
4738
4635
  consumer: str = None,
4739
4636
  ):
4740
4637
  # The IDs of shards whose data is being consumed.
4638
+ #
4639
+ # This parameter is required.
4741
4640
  self.body = body
4742
4641
  # The consumer.
4642
+ #
4643
+ # This parameter is required.
4743
4644
  self.consumer = consumer
4744
4645
 
4745
4646
  def validate(self):
@@ -4805,6 +4706,125 @@ class ConsumerGroupHeartBeatResponse(TeaModel):
4805
4706
  return self
4806
4707
 
4807
4708
 
4709
+ class ConsumerGroupUpdateCheckPointRequestBody(TeaModel):
4710
+ def __init__(
4711
+ self,
4712
+ checkpoint: str = None,
4713
+ shard: int = None,
4714
+ ):
4715
+ # This parameter is required.
4716
+ self.checkpoint = checkpoint
4717
+ # Shard ID。
4718
+ #
4719
+ # This parameter is required.
4720
+ self.shard = shard
4721
+
4722
+ def validate(self):
4723
+ pass
4724
+
4725
+ def to_map(self):
4726
+ _map = super().to_map()
4727
+ if _map is not None:
4728
+ return _map
4729
+
4730
+ result = dict()
4731
+ if self.checkpoint is not None:
4732
+ result['checkpoint'] = self.checkpoint
4733
+ if self.shard is not None:
4734
+ result['shard'] = self.shard
4735
+ return result
4736
+
4737
+ def from_map(self, m: dict = None):
4738
+ m = m or dict()
4739
+ if m.get('checkpoint') is not None:
4740
+ self.checkpoint = m.get('checkpoint')
4741
+ if m.get('shard') is not None:
4742
+ self.shard = m.get('shard')
4743
+ return self
4744
+
4745
+
4746
+ class ConsumerGroupUpdateCheckPointRequest(TeaModel):
4747
+ def __init__(
4748
+ self,
4749
+ body: List[ConsumerGroupUpdateCheckPointRequestBody] = None,
4750
+ consumer: str = None,
4751
+ force_success: bool = None,
4752
+ ):
4753
+ # Shard ID。
4754
+ self.body = body
4755
+ # This parameter is required.
4756
+ self.consumer = consumer
4757
+ self.force_success = force_success
4758
+
4759
+ def validate(self):
4760
+ if self.body:
4761
+ for k in self.body:
4762
+ if k:
4763
+ k.validate()
4764
+
4765
+ def to_map(self):
4766
+ _map = super().to_map()
4767
+ if _map is not None:
4768
+ return _map
4769
+
4770
+ result = dict()
4771
+ result['body'] = []
4772
+ if self.body is not None:
4773
+ for k in self.body:
4774
+ result['body'].append(k.to_map() if k else None)
4775
+ if self.consumer is not None:
4776
+ result['consumer'] = self.consumer
4777
+ if self.force_success is not None:
4778
+ result['forceSuccess'] = self.force_success
4779
+ return result
4780
+
4781
+ def from_map(self, m: dict = None):
4782
+ m = m or dict()
4783
+ self.body = []
4784
+ if m.get('body') is not None:
4785
+ for k in m.get('body'):
4786
+ temp_model = ConsumerGroupUpdateCheckPointRequestBody()
4787
+ self.body.append(temp_model.from_map(k))
4788
+ if m.get('consumer') is not None:
4789
+ self.consumer = m.get('consumer')
4790
+ if m.get('forceSuccess') is not None:
4791
+ self.force_success = m.get('forceSuccess')
4792
+ return self
4793
+
4794
+
4795
+ class ConsumerGroupUpdateCheckPointResponse(TeaModel):
4796
+ def __init__(
4797
+ self,
4798
+ headers: Dict[str, str] = None,
4799
+ status_code: int = None,
4800
+ ):
4801
+ self.headers = headers
4802
+ self.status_code = status_code
4803
+
4804
+ def validate(self):
4805
+ pass
4806
+
4807
+ def to_map(self):
4808
+ _map = super().to_map()
4809
+ if _map is not None:
4810
+ return _map
4811
+
4812
+ result = dict()
4813
+ if self.headers is not None:
4814
+ result['headers'] = self.headers
4815
+ if self.status_code is not None:
4816
+ result['statusCode'] = self.status_code
4817
+ return result
4818
+
4819
+ def from_map(self, m: dict = None):
4820
+ m = m or dict()
4821
+ if m.get('headers') is not None:
4822
+ self.headers = m.get('headers')
4823
+ if m.get('statusCode') is not None:
4824
+ self.status_code = m.get('statusCode')
4825
+ return self
4826
+
4827
+
4808
4828
  class CreateAlertRequest(TeaModel):
4809
4829
  def __init__(
4810
4830
  self,
@@ -4814,10 +4834,14 @@ class CreateAlertRequest(TeaModel):
4814
4834
  name: str = None,
4815
4835
  schedule: Schedule = None,
4816
4836
  ):
4837
+ # This parameter is required.
4817
4838
  self.configuration = configuration
4818
4839
  self.description = description
4840
+ # This parameter is required.
4819
4841
  self.display_name = display_name
4842
+ # This parameter is required.
4820
4843
  self.name = name
4844
+ # This parameter is required.
4821
4845
  self.schedule = schedule
4822
4846
 
4823
4847
  def validate(self):
@@ -5098,18 +5122,24 @@ class CreateConsumerGroupRequest(TeaModel):
5098
5122
  timeout: int = None,
5099
5123
  ):
5100
5124
  # The name of the consumer group. The name must be unique in a project.
5125
+ #
5126
+ # This parameter is required.
5101
5127
  self.consumer_group = consumer_group
5102
5128
  # Specifies whether to consume data in sequence. Valid values:
5103
5129
  #
5104
5130
  # * true
5105
5131
  #
5106
- # * In a shard, data is consumed in ascending order based on the value of the \*\*\__tag\_\_:\__receive_time\_\_\*\* field.
5132
+ # * In a shard, data is consumed in ascending order based on the value of the \\*\\*__tag__:__receive_time__\\*\\* field.
5107
5133
  # * 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
5134
  # * If shards are merged, data in the original shards is consumed first. Then, data in the new shard is consumed.
5109
5135
  #
5110
5136
  # * 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.
5137
+ #
5138
+ # This parameter is required.
5111
5139
  self.order = order
5112
5140
  # The timeout period. If the server does not receive heartbeats from a consumer within the timeout period, the server deletes the consumer. Unit: seconds.
5141
+ #
5142
+ # This parameter is required.
5113
5143
  self.timeout = timeout
5114
5144
 
5115
5145
  def validate(self):
@@ -5179,6 +5209,8 @@ class CreateDashboardRequest(TeaModel):
5179
5209
  body: Dashboard = None,
5180
5210
  ):
5181
5211
  # The data structure of the dashboard.
5212
+ #
5213
+ # This parameter is required.
5182
5214
  self.body = body
5183
5215
 
5184
5216
  def validate(self):
@@ -5242,6 +5274,8 @@ class CreateDomainRequest(TeaModel):
5242
5274
  domain_name: str = None,
5243
5275
  ):
5244
5276
  # The domain name.
5277
+ #
5278
+ # This parameter is required.
5245
5279
  self.domain_name = domain_name
5246
5280
 
5247
5281
  def validate(self):
@@ -5305,9 +5339,12 @@ class CreateETLRequest(TeaModel):
5305
5339
  display_name: str = None,
5306
5340
  name: str = None,
5307
5341
  ):
5342
+ # This parameter is required.
5308
5343
  self.configuration = configuration
5309
5344
  self.description = description
5345
+ # This parameter is required.
5310
5346
  self.display_name = display_name
5347
+ # This parameter is required.
5311
5348
  self.name = name
5312
5349
 
5313
5350
  def validate(self):
@@ -5401,6 +5438,8 @@ class CreateIndexRequestLine(TeaModel):
5401
5438
  # The included fields. You cannot specify both include_keys and exclude_keys.
5402
5439
  self.include_keys = include_keys
5403
5440
  # The delimiters. You can specify a delimiter to delimit the content of a field value. For more information about delimiters, see Example.
5441
+ #
5442
+ # This parameter is required.
5404
5443
  self.token = token
5405
5444
 
5406
5445
  def validate(self):
@@ -5588,15 +5627,17 @@ class CreateLogStoreRequest(TeaModel):
5588
5627
  self.encrypt_conf = encrypt_conf
5589
5628
  # 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
5629
  #
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~~).
5630
+ # 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
5631
  self.hot_ttl = hot_ttl
5593
5632
  self.infrequent_access_ttl = infrequent_access_ttl
5594
5633
  # The name of the Logstore. The name must meet the following requirements:
5595
5634
  #
5596
5635
  # * The name must be unique in a project.
5597
- # * The name can contain only lowercase letters, digits, hyphens (-), and underscores (\_).
5636
+ # * The name can contain only lowercase letters, digits, hyphens (-), and underscores (_).
5598
5637
  # * The name must start and end with a lowercase letter or a digit.
5599
5638
  # * The name must be 3 to 63 characters in length.
5639
+ #
5640
+ # This parameter is required.
5600
5641
  self.logstore_name = logstore_name
5601
5642
  # The maximum number of shards into which existing shards can be automatically split. Valid values: 1 to 64.
5602
5643
  #
@@ -5610,6 +5651,8 @@ class CreateLogStoreRequest(TeaModel):
5610
5651
  # The number of shards.
5611
5652
  #
5612
5653
  # > 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.
5654
+ #
5655
+ # This parameter is required.
5613
5656
  self.shard_count = shard_count
5614
5657
  # The type of the observable data. Valid values:
5615
5658
  #
@@ -5617,6 +5660,8 @@ class CreateLogStoreRequest(TeaModel):
5617
5660
  # * Metrics: metrics
5618
5661
  self.telemetry_type = telemetry_type
5619
5662
  # The retention period of data. Unit: days. Valid values: 1 to 3000. If you set this parameter to 3650, data is permanently stored.
5663
+ #
5664
+ # This parameter is required.
5620
5665
  self.ttl = ttl
5621
5666
 
5622
5667
  def validate(self):
@@ -5725,6 +5770,8 @@ class CreateLoggingRequestLoggingDetails(TeaModel):
5725
5770
  type: str = None,
5726
5771
  ):
5727
5772
  # The name of the Logstore to which service logs of the type are stored.
5773
+ #
5774
+ # This parameter is required.
5728
5775
  self.logstore = logstore
5729
5776
  # The type of service logs. Valid values:
5730
5777
  #
@@ -5736,6 +5783,8 @@ class CreateLoggingRequestLoggingDetails(TeaModel):
5736
5783
  # * logtail_status: the status logs of Logtail.
5737
5784
  # * scheduledsqlalert: the run logs of Scheduled SQL jobs.
5738
5785
  # * etl_alert: the run logs of data transformation jobs.
5786
+ #
5787
+ # This parameter is required.
5739
5788
  self.type = type
5740
5789
 
5741
5790
  def validate(self):
@@ -5769,8 +5818,12 @@ class CreateLoggingRequest(TeaModel):
5769
5818
  logging_project: str = None,
5770
5819
  ):
5771
5820
  # The configurations of service logs.
5821
+ #
5822
+ # This parameter is required.
5772
5823
  self.logging_details = logging_details
5773
5824
  # The name of the project to which service logs are stored.
5825
+ #
5826
+ # This parameter is required.
5774
5827
  self.logging_project = logging_project
5775
5828
 
5776
5829
  def validate(self):
@@ -5852,12 +5905,18 @@ class CreateLogtailPipelineConfigRequest(TeaModel):
5852
5905
  # The aggregation plug-ins.
5853
5906
  self.aggregators = aggregators
5854
5907
  # The name of the configuration.
5908
+ #
5909
+ # This parameter is required.
5855
5910
  self.config_name = config_name
5856
5911
  # The data output plug-ins.
5912
+ #
5913
+ # This parameter is required.
5857
5914
  self.flushers = flushers
5858
5915
  # The global configuration.
5859
5916
  self.global_ = global_
5860
5917
  # The data source plug-ins.
5918
+ #
5919
+ # This parameter is required.
5861
5920
  self.inputs = inputs
5862
5921
  # The sample log.
5863
5922
  self.log_sample = log_sample
@@ -5990,9 +6049,11 @@ class CreateMachineGroupRequest(TeaModel):
5990
6049
  # The name of the machine group. The name must meet the following requirements:
5991
6050
  #
5992
6051
  # * The name of each machine group in a project must be unique.
5993
- # * It can contain only lowercase letters, digits, hyphens (-), and underscores (\_).
6052
+ # * It can contain only lowercase letters, digits, hyphens (-), and underscores (_).
5994
6053
  # * It must start and end with a lowercase letter or a digit.
5995
6054
  # * It must be 3 to 128 characters in length.
6055
+ #
6056
+ # This parameter is required.
5996
6057
  self.group_name = group_name
5997
6058
  # The type of the machine group. The parameter can be left empty.
5998
6059
  self.group_type = group_type
@@ -6000,11 +6061,15 @@ class CreateMachineGroupRequest(TeaModel):
6000
6061
  #
6001
6062
  # * ip: The machine group uses IP addresses as identifiers.
6002
6063
  # * userdefined: The machine group uses custom identifiers.
6064
+ #
6065
+ # This parameter is required.
6003
6066
  self.machine_identify_type = machine_identify_type
6004
6067
  # The identifiers of machine group.
6005
6068
  #
6006
6069
  # * If you set machineIdentifyType to ip, enter the IP address of the machine.
6007
6070
  # * If you set machineIdentifyType to userdefined, enter a custom identifier.
6071
+ #
6072
+ # This parameter is required.
6008
6073
  self.machine_list = machine_list
6009
6074
 
6010
6075
  def validate(self):
@@ -6086,9 +6151,12 @@ class CreateOSSExportRequest(TeaModel):
6086
6151
  display_name: str = None,
6087
6152
  name: str = None,
6088
6153
  ):
6154
+ # This parameter is required.
6089
6155
  self.configuration = configuration
6090
6156
  self.description = description
6157
+ # This parameter is required.
6091
6158
  self.display_name = display_name
6159
+ # This parameter is required.
6092
6160
  self.name = name
6093
6161
 
6094
6162
  def validate(self):
@@ -6166,9 +6234,12 @@ class CreateOSSHDFSExportRequest(TeaModel):
6166
6234
  display_name: str = None,
6167
6235
  name: str = None,
6168
6236
  ):
6237
+ # This parameter is required.
6169
6238
  self.configuration = configuration
6170
6239
  self.description = description
6240
+ # This parameter is required.
6171
6241
  self.display_name = display_name
6242
+ # This parameter is required.
6172
6243
  self.name = name
6173
6244
 
6174
6245
  def validate(self):
@@ -6247,9 +6318,12 @@ class CreateOSSIngestionRequest(TeaModel):
6247
6318
  name: str = None,
6248
6319
  schedule: Schedule = None,
6249
6320
  ):
6321
+ # This parameter is required.
6250
6322
  self.configuration = configuration
6251
6323
  self.description = description
6324
+ # This parameter is required.
6252
6325
  self.display_name = display_name
6326
+ # This parameter is required.
6253
6327
  self.name = name
6254
6328
  self.schedule = schedule
6255
6329
 
@@ -6334,8 +6408,12 @@ class CreateOssExternalStoreRequestParameterColumns(TeaModel):
6334
6408
  type: str = None,
6335
6409
  ):
6336
6410
  # The name of the field.
6411
+ #
6412
+ # This parameter is required.
6337
6413
  self.name = name
6338
6414
  # The type of the field.
6415
+ #
6416
+ # This parameter is required.
6339
6417
  self.type = type
6340
6418
 
6341
6419
  def validate(self):
@@ -6373,16 +6451,28 @@ class CreateOssExternalStoreRequestParameter(TeaModel):
6373
6451
  objects: List[str] = None,
6374
6452
  ):
6375
6453
  # The AccessKey ID of your account.
6454
+ #
6455
+ # This parameter is required.
6376
6456
  self.accessid = accessid
6377
6457
  # The AccessKey secret of your account.
6458
+ #
6459
+ # This parameter is required.
6378
6460
  self.accesskey = accesskey
6379
6461
  # The name of the OSS bucket.
6462
+ #
6463
+ # This parameter is required.
6380
6464
  self.bucket = bucket
6381
6465
  # The fields that are associated to the external store.
6466
+ #
6467
+ # This parameter is required.
6382
6468
  self.columns = columns
6383
6469
  # The Object Storage Service (OSS) endpoint.
6470
+ #
6471
+ # This parameter is required.
6384
6472
  self.endpoint = endpoint
6385
6473
  # The names of the OSS objects that are associated to the external store.
6474
+ #
6475
+ # This parameter is required.
6386
6476
  self.objects = objects
6387
6477
 
6388
6478
  def validate(self):
@@ -6441,10 +6531,16 @@ class CreateOssExternalStoreRequest(TeaModel):
6441
6531
  store_type: str = None,
6442
6532
  ):
6443
6533
  # The name of the external store.
6534
+ #
6535
+ # This parameter is required.
6444
6536
  self.external_store_name = external_store_name
6445
6537
  # The parameters that are configured for the external store.
6538
+ #
6539
+ # This parameter is required.
6446
6540
  self.parameter = parameter
6447
6541
  # The type of the external store. Set the value to oss.
6542
+ #
6543
+ # This parameter is required.
6448
6544
  self.store_type = store_type
6449
6545
 
6450
6546
  def validate(self):
@@ -6521,6 +6617,8 @@ class CreateProjectRequest(TeaModel):
6521
6617
  # Data redundancy type
6522
6618
  self.data_redundancy_type = data_redundancy_type
6523
6619
  # The description of the project.
6620
+ #
6621
+ # This parameter is required.
6524
6622
  self.description = description
6525
6623
  # 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
6624
  #
@@ -6528,6 +6626,8 @@ class CreateProjectRequest(TeaModel):
6528
6626
  # * It can contain only lowercase letters, digits, and hyphens (-).
6529
6627
  # * It must start and end with a lowercase letter or a digit.
6530
6628
  # * It must be 3 to 63 characters in length.
6629
+ #
6630
+ # This parameter is required.
6531
6631
  self.project_name = project_name
6532
6632
  # The ID of the resource group.
6533
6633
  self.resource_group_id = resource_group_id
@@ -6611,20 +6711,32 @@ class CreateRdsExternalStoreRequestParameter(TeaModel):
6611
6711
  vpc_id: str = None,
6612
6712
  ):
6613
6713
  # The name of the database in the ApsaraDB RDS for MySQL instance.
6714
+ #
6715
+ # This parameter is required.
6614
6716
  self.db = db
6615
6717
  # The internal or public endpoint of the ApsaraDB RDS for MySQL instance.
6616
6718
  self.host = host
6617
6719
  # The ID of the ApsaraDB RDS for MySQL instance.
6618
6720
  self.instance_id = instance_id
6619
6721
  # The password that is used to log on to the ApsaraDB RDS for MySQL instance.
6722
+ #
6723
+ # This parameter is required.
6620
6724
  self.password = password
6621
6725
  # The internal or public port of the ApsaraDB RDS for MySQL instance.
6726
+ #
6727
+ # This parameter is required.
6622
6728
  self.port = port
6623
6729
  # The region where the ApsaraDB RDS for MySQL instance resides. Valid values: cn-qingdao, cn-beijing, and cn-hangzhou.
6730
+ #
6731
+ # This parameter is required.
6624
6732
  self.region = region
6625
6733
  # The name of the database table in the ApsaraDB RDS for MySQL instance.
6734
+ #
6735
+ # This parameter is required.
6626
6736
  self.table = table
6627
6737
  # The username that is used to log on to the ApsaraDB RDS for MySQL instance.
6738
+ #
6739
+ # This parameter is required.
6628
6740
  self.username = username
6629
6741
  # The ID of the VPC to which the ApsaraDB RDS for MySQL instance belongs.
6630
6742
  self.vpc_id = vpc_id
@@ -6689,10 +6801,16 @@ class CreateRdsExternalStoreRequest(TeaModel):
6689
6801
  store_type: str = None,
6690
6802
  ):
6691
6803
  # The name of the external store. The name must be unique in a project and must be different from Logstore names.
6804
+ #
6805
+ # This parameter is required.
6692
6806
  self.external_store_name = external_store_name
6693
6807
  # The parameter struct.
6808
+ #
6809
+ # This parameter is required.
6694
6810
  self.parameter = parameter
6695
6811
  # The storage type. Set the value to rds-vpc, which indicates an ApsaraDB RDS for MySQL database in a virtual private cloud (VPC).
6812
+ #
6813
+ # This parameter is required.
6696
6814
  self.store_type = store_type
6697
6815
 
6698
6816
  def validate(self):
@@ -6768,12 +6886,20 @@ class CreateSavedSearchRequest(TeaModel):
6768
6886
  topic: str = None,
6769
6887
  ):
6770
6888
  # The display name.
6889
+ #
6890
+ # This parameter is required.
6771
6891
  self.display_name = display_name
6772
6892
  # The name of the Logstore to which the saved search belongs.
6893
+ #
6894
+ # This parameter is required.
6773
6895
  self.logstore = logstore
6774
6896
  # The name of the saved search. The name must be 3 to 63 characters in length.
6897
+ #
6898
+ # This parameter is required.
6775
6899
  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~~).
6900
+ # 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).
6901
+ #
6902
+ # This parameter is required.
6777
6903
  self.search_query = search_query
6778
6904
  # The topic of the log.
6779
6905
  self.topic = topic
@@ -6856,10 +6982,14 @@ class CreateScheduledSQLRequest(TeaModel):
6856
6982
  name: str = None,
6857
6983
  schedule: Schedule = None,
6858
6984
  ):
6985
+ # This parameter is required.
6859
6986
  self.configuration = configuration
6860
6987
  self.description = description
6988
+ # This parameter is required.
6861
6989
  self.display_name = display_name
6990
+ # This parameter is required.
6862
6991
  self.name = name
6992
+ # This parameter is required.
6863
6993
  self.schedule = schedule
6864
6994
 
6865
6995
  def validate(self):
@@ -6942,7 +7072,9 @@ class CreateSqlInstanceRequest(TeaModel):
6942
7072
  cu: int = None,
6943
7073
  use_as_default: bool = None,
6944
7074
  ):
7075
+ # This parameter is required.
6945
7076
  self.cu = cu
7077
+ # This parameter is required.
6946
7078
  self.use_as_default = use_as_default
6947
7079
 
6948
7080
  def validate(self):
@@ -7002,6 +7134,89 @@ class CreateSqlInstanceResponse(TeaModel):
7002
7134
  return self
7003
7135
 
7004
7136
 
7137
+ class CreateStoreViewRequest(TeaModel):
7138
+ def __init__(
7139
+ self,
7140
+ name: str = None,
7141
+ store_type: str = None,
7142
+ stores: List[StoreViewStore] = None,
7143
+ ):
7144
+ # This parameter is required.
7145
+ self.name = name
7146
+ # This parameter is required.
7147
+ self.store_type = store_type
7148
+ # This parameter is required.
7149
+ self.stores = stores
7150
+
7151
+ def validate(self):
7152
+ if self.stores:
7153
+ for k in self.stores:
7154
+ if k:
7155
+ k.validate()
7156
+
7157
+ def to_map(self):
7158
+ _map = super().to_map()
7159
+ if _map is not None:
7160
+ return _map
7161
+
7162
+ result = dict()
7163
+ if self.name is not None:
7164
+ result['name'] = self.name
7165
+ if self.store_type is not None:
7166
+ result['storeType'] = self.store_type
7167
+ result['stores'] = []
7168
+ if self.stores is not None:
7169
+ for k in self.stores:
7170
+ result['stores'].append(k.to_map() if k else None)
7171
+ return result
7172
+
7173
+ def from_map(self, m: dict = None):
7174
+ m = m or dict()
7175
+ if m.get('name') is not None:
7176
+ self.name = m.get('name')
7177
+ if m.get('storeType') is not None:
7178
+ self.store_type = m.get('storeType')
7179
+ self.stores = []
7180
+ if m.get('stores') is not None:
7181
+ for k in m.get('stores'):
7182
+ temp_model = StoreViewStore()
7183
+ self.stores.append(temp_model.from_map(k))
7184
+ return self
7185
+
7186
+
7187
+ class CreateStoreViewResponse(TeaModel):
7188
+ def __init__(
7189
+ self,
7190
+ headers: Dict[str, str] = None,
7191
+ status_code: int = None,
7192
+ ):
7193
+ self.headers = headers
7194
+ self.status_code = status_code
7195
+
7196
+ def validate(self):
7197
+ pass
7198
+
7199
+ def to_map(self):
7200
+ _map = super().to_map()
7201
+ if _map is not None:
7202
+ return _map
7203
+
7204
+ result = dict()
7205
+ if self.headers is not None:
7206
+ result['headers'] = self.headers
7207
+ if self.status_code is not None:
7208
+ result['statusCode'] = self.status_code
7209
+ return result
7210
+
7211
+ def from_map(self, m: dict = None):
7212
+ m = m or dict()
7213
+ if m.get('headers') is not None:
7214
+ self.headers = m.get('headers')
7215
+ if m.get('statusCode') is not None:
7216
+ self.status_code = m.get('statusCode')
7217
+ return self
7218
+
7219
+
7005
7220
  class CreateTicketRequest(TeaModel):
7006
7221
  def __init__(
7007
7222
  self,
@@ -7963,6 +8178,39 @@ class DeleteShipperResponse(TeaModel):
7963
8178
  return self
7964
8179
 
7965
8180
 
8181
+ class DeleteStoreViewResponse(TeaModel):
8182
+ def __init__(
8183
+ self,
8184
+ headers: Dict[str, str] = None,
8185
+ status_code: int = None,
8186
+ ):
8187
+ self.headers = headers
8188
+ self.status_code = status_code
8189
+
8190
+ def validate(self):
8191
+ pass
8192
+
8193
+ def to_map(self):
8194
+ _map = super().to_map()
8195
+ if _map is not None:
8196
+ return _map
8197
+
8198
+ result = dict()
8199
+ if self.headers is not None:
8200
+ result['headers'] = self.headers
8201
+ if self.status_code is not None:
8202
+ result['statusCode'] = self.status_code
8203
+ return result
8204
+
8205
+ def from_map(self, m: dict = None):
8206
+ m = m or dict()
8207
+ if m.get('headers') is not None:
8208
+ self.headers = m.get('headers')
8209
+ if m.get('statusCode') is not None:
8210
+ self.status_code = m.get('statusCode')
8211
+ return self
8212
+
8213
+
7966
8214
  class DisableAlertResponse(TeaModel):
7967
8215
  def __init__(
7968
8216
  self,
@@ -7996,6 +8244,39 @@ class DisableAlertResponse(TeaModel):
7996
8244
  return self
7997
8245
 
7998
8246
 
8247
+ class DisableScheduledSQLResponse(TeaModel):
8248
+ def __init__(
8249
+ self,
8250
+ headers: Dict[str, str] = None,
8251
+ status_code: int = None,
8252
+ ):
8253
+ self.headers = headers
8254
+ self.status_code = status_code
8255
+
8256
+ def validate(self):
8257
+ pass
8258
+
8259
+ def to_map(self):
8260
+ _map = super().to_map()
8261
+ if _map is not None:
8262
+ return _map
8263
+
8264
+ result = dict()
8265
+ if self.headers is not None:
8266
+ result['headers'] = self.headers
8267
+ if self.status_code is not None:
8268
+ result['statusCode'] = self.status_code
8269
+ return result
8270
+
8271
+ def from_map(self, m: dict = None):
8272
+ m = m or dict()
8273
+ if m.get('headers') is not None:
8274
+ self.headers = m.get('headers')
8275
+ if m.get('statusCode') is not None:
8276
+ self.status_code = m.get('statusCode')
8277
+ return self
8278
+
8279
+
7999
8280
  class EnableAlertResponse(TeaModel):
8000
8281
  def __init__(
8001
8282
  self,
@@ -8029,6 +8310,39 @@ class EnableAlertResponse(TeaModel):
8029
8310
  return self
8030
8311
 
8031
8312
 
8313
+ class EnableScheduledSQLResponse(TeaModel):
8314
+ def __init__(
8315
+ self,
8316
+ headers: Dict[str, str] = None,
8317
+ status_code: int = None,
8318
+ ):
8319
+ self.headers = headers
8320
+ self.status_code = status_code
8321
+
8322
+ def validate(self):
8323
+ pass
8324
+
8325
+ def to_map(self):
8326
+ _map = super().to_map()
8327
+ if _map is not None:
8328
+ return _map
8329
+
8330
+ result = dict()
8331
+ if self.headers is not None:
8332
+ result['headers'] = self.headers
8333
+ if self.status_code is not None:
8334
+ result['statusCode'] = self.status_code
8335
+ return result
8336
+
8337
+ def from_map(self, m: dict = None):
8338
+ m = m or dict()
8339
+ if m.get('headers') is not None:
8340
+ self.headers = m.get('headers')
8341
+ if m.get('statusCode') is not None:
8342
+ self.status_code = m.get('statusCode')
8343
+ return self
8344
+
8345
+
8032
8346
  class GetAlertResponse(TeaModel):
8033
8347
  def __init__(
8034
8348
  self,
@@ -8826,14 +9140,24 @@ class GetContextLogsRequest(TeaModel):
8826
9140
  type: str = None,
8827
9141
  ):
8828
9142
  # The number of logs that you want to obtain and are generated before the generation time of the start log. Valid values: (0,100].
9143
+ #
9144
+ # This parameter is required.
8829
9145
  self.back_lines = back_lines
8830
9146
  # The number of logs that you want to obtain and are generated after the generation time of the start log. Valid values: (0,100].
9147
+ #
9148
+ # This parameter is required.
8831
9149
  self.forward_lines = forward_lines
8832
9150
  # The unique identifier of the log group to which the start log belongs.
9151
+ #
9152
+ # This parameter is required.
8833
9153
  self.pack_id = pack_id
8834
9154
  # The unique context identifier of the start log in the log group.
9155
+ #
9156
+ # This parameter is required.
8835
9157
  self.pack_meta = pack_meta
8836
9158
  # The type of the data in the Logstore. Set the value to context_log.
9159
+ #
9160
+ # This parameter is required.
8837
9161
  self.type = type
8838
9162
 
8839
9163
  def validate(self):
@@ -8978,6 +9302,8 @@ class GetCursorRequest(TeaModel):
8978
9302
  from_: str = None,
8979
9303
  ):
8980
9304
  # 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`.
9305
+ #
9306
+ # This parameter is required.
8981
9307
  self.from_ = from_
8982
9308
 
8983
9309
  def validate(self):
@@ -9075,6 +9401,8 @@ class GetCursorTimeRequest(TeaModel):
9075
9401
  cursor: str = None,
9076
9402
  ):
9077
9403
  # The cursor.
9404
+ #
9405
+ # This parameter is required.
9078
9406
  self.cursor = cursor
9079
9407
 
9080
9408
  def validate(self):
@@ -9298,10 +9626,14 @@ class GetHistogramsRequest(TeaModel):
9298
9626
  topic: str = None,
9299
9627
  ):
9300
9628
  # 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.
9629
+ #
9630
+ # This parameter is required.
9301
9631
  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~~).
9632
+ # 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
9633
  self.query = query
9304
9634
  # 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.
9635
+ #
9636
+ # This parameter is required.
9305
9637
  self.to = to
9306
9638
  # The topic of the logs.
9307
9639
  self.topic = topic
@@ -9816,25 +10148,27 @@ class GetLogsRequest(TeaModel):
9816
10148
  #
9817
10149
  # > 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
10150
  #
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:
10151
+ # 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
10152
  #
9821
10153
  # * `* | 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())`
10154
+ # * `* | 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())`
10155
+ #
10156
+ # This parameter is required.
9823
10157
  self.from_ = from_
9824
10158
  # 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
10159
  self.line = line
9826
10160
  # 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
10161
  self.offset = offset
9828
- # Specifies whether to enable the Dedicated SQL feature. For more information, see [Enable Dedicated SQL](~~223777~~). Valid values:
10162
+ # 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
10163
  #
9830
10164
  # * true: enables the Dedicated SQL feature.
9831
10165
  # * false (default): enables the Standard SQL feature.
9832
10166
  #
9833
10167
  # You can use the powerSql or **query** parameter to configure Dedicated SQL.
9834
10168
  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~~)
10169
+ # 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
10170
  #
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~~).
10171
+ # > 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
10172
  self.query = query
9839
10173
  # Specifies whether to return logs in reverse chronological order of log timestamps. The log timestamps are accurate to the minute. Valid values:
9840
10174
  #
@@ -9853,12 +10187,14 @@ class GetLogsRequest(TeaModel):
9853
10187
  #
9854
10188
  # > 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
10189
  #
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:
10190
+ # 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
10191
  #
9858
10192
  # * `* | 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())`
10193
+ # * `* | 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())`
10194
+ #
10195
+ # This parameter is required.
9860
10196
  self.to = to
9861
- # The topic of the logs. The default value is double quotation marks (""). For more information, see [Topic](~~48881~~).
10197
+ # 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
10198
  self.topic = topic
9863
10199
 
9864
10200
  def validate(self):
@@ -9956,6 +10292,8 @@ class GetLogsV2Headers(TeaModel):
9956
10292
  ):
9957
10293
  self.common_headers = common_headers
9958
10294
  # The compression method.
10295
+ #
10296
+ # This parameter is required.
9959
10297
  self.accept_encoding = accept_encoding
9960
10298
 
9961
10299
  def validate(self):
@@ -10002,6 +10340,8 @@ class GetLogsV2Request(TeaModel):
10002
10340
  # The beginning of the time range to query. The value is the log time that is specified when log data is written.
10003
10341
  #
10004
10342
  # 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.
10343
+ #
10344
+ # This parameter is required.
10005
10345
  self.from_ = from_
10006
10346
  self.highlight = highlight
10007
10347
  # 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 +10352,7 @@ class GetLogsV2Request(TeaModel):
10012
10352
  self.power_sql = power_sql
10013
10353
  # The search statement or the query statement. For more information, see the "Log search overview" and "Log analysis overview" topics.
10014
10354
  #
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.
10355
+ # 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
10356
  #
10017
10357
  # 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
10358
  self.query = query
@@ -10025,6 +10365,8 @@ class GetLogsV2Request(TeaModel):
10025
10365
  # The end of the time range to query. The value is the log time that is specified when log data is written.
10026
10366
  #
10027
10367
  # 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.
10368
+ #
10369
+ # This parameter is required.
10028
10370
  self.to = to
10029
10371
  # The topic of the logs. Default value: double quotation marks ("").
10030
10372
  self.topic = topic
@@ -10432,9 +10774,11 @@ class GetMLServiceResultsRequest(TeaModel):
10432
10774
  self,
10433
10775
  allow_builtin: bool = None,
10434
10776
  body: MLServiceAnalysisParam = None,
10777
+ version: str = None,
10435
10778
  ):
10436
10779
  self.allow_builtin = allow_builtin
10437
10780
  self.body = body
10781
+ self.version = version
10438
10782
 
10439
10783
  def validate(self):
10440
10784
  if self.body:
@@ -10450,6 +10794,8 @@ class GetMLServiceResultsRequest(TeaModel):
10450
10794
  result['allowBuiltin'] = self.allow_builtin
10451
10795
  if self.body is not None:
10452
10796
  result['body'] = self.body.to_map()
10797
+ if self.version is not None:
10798
+ result['version'] = self.version
10453
10799
  return result
10454
10800
 
10455
10801
  def from_map(self, m: dict = None):
@@ -10459,6 +10805,8 @@ class GetMLServiceResultsRequest(TeaModel):
10459
10805
  if m.get('body') is not None:
10460
10806
  temp_model = MLServiceAnalysisParam()
10461
10807
  self.body = temp_model.from_map(m['body'])
10808
+ if m.get('version') is not None:
10809
+ self.version = m.get('version')
10462
10810
  return self
10463
10811
 
10464
10812
 
@@ -10507,8 +10855,85 @@ class GetMLServiceResultsResponse(TeaModel):
10507
10855
  self.body = body
10508
10856
 
10509
10857
  def validate(self):
10510
- if self.body:
10511
- self.body.validate()
10858
+ if self.body:
10859
+ self.body.validate()
10860
+
10861
+ def to_map(self):
10862
+ _map = super().to_map()
10863
+ if _map is not None:
10864
+ return _map
10865
+
10866
+ result = dict()
10867
+ if self.headers is not None:
10868
+ result['headers'] = self.headers
10869
+ if self.status_code is not None:
10870
+ result['statusCode'] = self.status_code
10871
+ if self.body is not None:
10872
+ result['body'] = self.body.to_map()
10873
+ return result
10874
+
10875
+ def from_map(self, m: dict = None):
10876
+ m = m or dict()
10877
+ if m.get('headers') is not None:
10878
+ self.headers = m.get('headers')
10879
+ if m.get('statusCode') is not None:
10880
+ self.status_code = m.get('statusCode')
10881
+ if m.get('body') is not None:
10882
+ temp_model = GetMLServiceResultsResponseBody()
10883
+ self.body = temp_model.from_map(m['body'])
10884
+ return self
10885
+
10886
+
10887
+ class GetMachineGroupResponse(TeaModel):
10888
+ def __init__(
10889
+ self,
10890
+ headers: Dict[str, str] = None,
10891
+ status_code: int = None,
10892
+ body: MachineGroup = None,
10893
+ ):
10894
+ self.headers = headers
10895
+ self.status_code = status_code
10896
+ self.body = body
10897
+
10898
+ def validate(self):
10899
+ if self.body:
10900
+ self.body.validate()
10901
+
10902
+ def to_map(self):
10903
+ _map = super().to_map()
10904
+ if _map is not None:
10905
+ return _map
10906
+
10907
+ result = dict()
10908
+ if self.headers is not None:
10909
+ result['headers'] = self.headers
10910
+ if self.status_code is not None:
10911
+ result['statusCode'] = self.status_code
10912
+ if self.body is not None:
10913
+ result['body'] = self.body.to_map()
10914
+ return result
10915
+
10916
+ def from_map(self, m: dict = None):
10917
+ m = m or dict()
10918
+ if m.get('headers') is not None:
10919
+ self.headers = m.get('headers')
10920
+ if m.get('statusCode') is not None:
10921
+ self.status_code = m.get('statusCode')
10922
+ if m.get('body') is not None:
10923
+ temp_model = MachineGroup()
10924
+ self.body = temp_model.from_map(m['body'])
10925
+ return self
10926
+
10927
+
10928
+ class GetMetricStoreMeteringModeResponseBody(TeaModel):
10929
+ def __init__(
10930
+ self,
10931
+ metering_mode: str = None,
10932
+ ):
10933
+ self.metering_mode = metering_mode
10934
+
10935
+ def validate(self):
10936
+ pass
10512
10937
 
10513
10938
  def to_map(self):
10514
10939
  _map = super().to_map()
@@ -10516,32 +10941,23 @@ class GetMLServiceResultsResponse(TeaModel):
10516
10941
  return _map
10517
10942
 
10518
10943
  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()
10944
+ if self.metering_mode is not None:
10945
+ result['meteringMode'] = self.metering_mode
10525
10946
  return result
10526
10947
 
10527
10948
  def from_map(self, m: dict = None):
10528
10949
  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'])
10950
+ if m.get('meteringMode') is not None:
10951
+ self.metering_mode = m.get('meteringMode')
10536
10952
  return self
10537
10953
 
10538
10954
 
10539
- class GetMachineGroupResponse(TeaModel):
10955
+ class GetMetricStoreMeteringModeResponse(TeaModel):
10540
10956
  def __init__(
10541
10957
  self,
10542
10958
  headers: Dict[str, str] = None,
10543
10959
  status_code: int = None,
10544
- body: MachineGroup = None,
10960
+ body: GetMetricStoreMeteringModeResponseBody = None,
10545
10961
  ):
10546
10962
  self.headers = headers
10547
10963
  self.status_code = status_code
@@ -10572,7 +10988,7 @@ class GetMachineGroupResponse(TeaModel):
10572
10988
  if m.get('statusCode') is not None:
10573
10989
  self.status_code = m.get('statusCode')
10574
10990
  if m.get('body') is not None:
10575
- temp_model = MachineGroup()
10991
+ temp_model = GetMetricStoreMeteringModeResponseBody()
10576
10992
  self.body = temp_model.from_map(m['body'])
10577
10993
  return self
10578
10994
 
@@ -10747,7 +11163,7 @@ class GetProjectLogsRequest(TeaModel):
10747
11163
  power_sql: bool = None,
10748
11164
  query: str = None,
10749
11165
  ):
10750
- # Specifies whether to enable the Dedicated SQL feature. For more information, see [Enable Dedicated SQL](~~223777~~). Valid values:
11166
+ # 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
11167
  #
10752
11168
  # * true
10753
11169
  # * false (default): enables the Standard SQL feature.
@@ -10755,6 +11171,8 @@ class GetProjectLogsRequest(TeaModel):
10755
11171
  # You can use the powerSql or **query** parameter to configure Dedicated SQL.
10756
11172
  self.power_sql = power_sql
10757
11173
  # 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.
11174
+ #
11175
+ # This parameter is required.
10758
11176
  self.query = query
10759
11177
 
10760
11178
  def validate(self):
@@ -10951,6 +11369,8 @@ class GetShipperStatusRequest(TeaModel):
10951
11369
  to: int = None,
10952
11370
  ):
10953
11371
  # 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.
11372
+ #
11373
+ # This parameter is required.
10954
11374
  self.from_ = from_
10955
11375
  # The line from which the query starts. Default value: 0.
10956
11376
  self.offset = offset
@@ -10959,6 +11379,8 @@ class GetShipperStatusRequest(TeaModel):
10959
11379
  # 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
11380
  self.status = status
10961
11381
  # 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.
11382
+ #
11383
+ # This parameter is required.
10962
11384
  self.to = to
10963
11385
 
10964
11386
  def validate(self):
@@ -11124,20 +11546,246 @@ class GetShipperStatusResponseBody(TeaModel):
11124
11546
  tasks: GetShipperStatusResponseBodyTasks = None,
11125
11547
  total: int = None,
11126
11548
  ):
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
11549
+ # The number of log shipping jobs returned on the current page.
11550
+ self.count = count
11551
+ # The statistics about log shipping jobs.
11552
+ self.statistics = statistics
11553
+ # The details of log shipping jobs.
11554
+ self.tasks = tasks
11555
+ # The total number of log shipping jobs.
11556
+ self.total = total
11557
+
11558
+ def validate(self):
11559
+ if self.statistics:
11560
+ self.statistics.validate()
11561
+ if self.tasks:
11562
+ self.tasks.validate()
11563
+
11564
+ def to_map(self):
11565
+ _map = super().to_map()
11566
+ if _map is not None:
11567
+ return _map
11568
+
11569
+ result = dict()
11570
+ if self.count is not None:
11571
+ result['count'] = self.count
11572
+ if self.statistics is not None:
11573
+ result['statistics'] = self.statistics.to_map()
11574
+ if self.tasks is not None:
11575
+ result['tasks'] = self.tasks.to_map()
11576
+ if self.total is not None:
11577
+ result['total'] = self.total
11578
+ return result
11579
+
11580
+ def from_map(self, m: dict = None):
11581
+ m = m or dict()
11582
+ if m.get('count') is not None:
11583
+ self.count = m.get('count')
11584
+ if m.get('statistics') is not None:
11585
+ temp_model = GetShipperStatusResponseBodyStatistics()
11586
+ self.statistics = temp_model.from_map(m['statistics'])
11587
+ if m.get('tasks') is not None:
11588
+ temp_model = GetShipperStatusResponseBodyTasks()
11589
+ self.tasks = temp_model.from_map(m['tasks'])
11590
+ if m.get('total') is not None:
11591
+ self.total = m.get('total')
11592
+ return self
11593
+
11594
+
11595
+ class GetShipperStatusResponse(TeaModel):
11596
+ def __init__(
11597
+ self,
11598
+ headers: Dict[str, str] = None,
11599
+ status_code: int = None,
11600
+ body: GetShipperStatusResponseBody = None,
11601
+ ):
11602
+ self.headers = headers
11603
+ self.status_code = status_code
11604
+ self.body = body
11605
+
11606
+ def validate(self):
11607
+ if self.body:
11608
+ self.body.validate()
11609
+
11610
+ def to_map(self):
11611
+ _map = super().to_map()
11612
+ if _map is not None:
11613
+ return _map
11614
+
11615
+ result = dict()
11616
+ if self.headers is not None:
11617
+ result['headers'] = self.headers
11618
+ if self.status_code is not None:
11619
+ result['statusCode'] = self.status_code
11620
+ if self.body is not None:
11621
+ result['body'] = self.body.to_map()
11622
+ return result
11623
+
11624
+ def from_map(self, m: dict = None):
11625
+ m = m or dict()
11626
+ if m.get('headers') is not None:
11627
+ self.headers = m.get('headers')
11628
+ if m.get('statusCode') is not None:
11629
+ self.status_code = m.get('statusCode')
11630
+ if m.get('body') is not None:
11631
+ temp_model = GetShipperStatusResponseBody()
11632
+ self.body = temp_model.from_map(m['body'])
11633
+ return self
11634
+
11635
+
11636
+ class GetSlsServiceResponse(TeaModel):
11637
+ def __init__(
11638
+ self,
11639
+ headers: Dict[str, str] = None,
11640
+ status_code: int = None,
11641
+ body: ServiceStatus = None,
11642
+ ):
11643
+ self.headers = headers
11644
+ self.status_code = status_code
11645
+ self.body = body
11646
+
11647
+ def validate(self):
11648
+ if self.body:
11649
+ self.body.validate()
11650
+
11651
+ def to_map(self):
11652
+ _map = super().to_map()
11653
+ if _map is not None:
11654
+ return _map
11655
+
11656
+ result = dict()
11657
+ if self.headers is not None:
11658
+ result['headers'] = self.headers
11659
+ if self.status_code is not None:
11660
+ result['statusCode'] = self.status_code
11661
+ if self.body is not None:
11662
+ result['body'] = self.body.to_map()
11663
+ return result
11664
+
11665
+ def from_map(self, m: dict = None):
11666
+ m = m or dict()
11667
+ if m.get('headers') is not None:
11668
+ self.headers = m.get('headers')
11669
+ if m.get('statusCode') is not None:
11670
+ self.status_code = m.get('statusCode')
11671
+ if m.get('body') is not None:
11672
+ temp_model = ServiceStatus()
11673
+ self.body = temp_model.from_map(m['body'])
11674
+ return self
11675
+
11676
+
11677
+ class GetSqlInstanceResponseBody(TeaModel):
11678
+ def __init__(
11679
+ self,
11680
+ name: str = None,
11681
+ cu: int = None,
11682
+ create_time: int = None,
11683
+ update_time: int = None,
11684
+ use_as_default: bool = None,
11685
+ ):
11686
+ self.name = name
11687
+ self.cu = cu
11688
+ self.create_time = create_time
11689
+ self.update_time = update_time
11690
+ self.use_as_default = use_as_default
11691
+
11692
+ def validate(self):
11693
+ pass
11694
+
11695
+ def to_map(self):
11696
+ _map = super().to_map()
11697
+ if _map is not None:
11698
+ return _map
11699
+
11700
+ result = dict()
11701
+ if self.name is not None:
11702
+ result['name'] = self.name
11703
+ if self.cu is not None:
11704
+ result['cu'] = self.cu
11705
+ if self.create_time is not None:
11706
+ result['createTime'] = self.create_time
11707
+ if self.update_time is not None:
11708
+ result['updateTime'] = self.update_time
11709
+ if self.use_as_default is not None:
11710
+ result['useAsDefault'] = self.use_as_default
11711
+ return result
11712
+
11713
+ def from_map(self, m: dict = None):
11714
+ m = m or dict()
11715
+ if m.get('name') is not None:
11716
+ self.name = m.get('name')
11717
+ if m.get('cu') is not None:
11718
+ self.cu = m.get('cu')
11719
+ if m.get('createTime') is not None:
11720
+ self.create_time = m.get('createTime')
11721
+ if m.get('updateTime') is not None:
11722
+ self.update_time = m.get('updateTime')
11723
+ if m.get('useAsDefault') is not None:
11724
+ self.use_as_default = m.get('useAsDefault')
11725
+ return self
11726
+
11727
+
11728
+ class GetSqlInstanceResponse(TeaModel):
11729
+ def __init__(
11730
+ self,
11731
+ headers: Dict[str, str] = None,
11732
+ status_code: int = None,
11733
+ body: List[GetSqlInstanceResponseBody] = None,
11734
+ ):
11735
+ self.headers = headers
11736
+ self.status_code = status_code
11737
+ self.body = body
11738
+
11739
+ def validate(self):
11740
+ if self.body:
11741
+ for k in self.body:
11742
+ if k:
11743
+ k.validate()
11744
+
11745
+ def to_map(self):
11746
+ _map = super().to_map()
11747
+ if _map is not None:
11748
+ return _map
11749
+
11750
+ result = dict()
11751
+ if self.headers is not None:
11752
+ result['headers'] = self.headers
11753
+ if self.status_code is not None:
11754
+ result['statusCode'] = self.status_code
11755
+ result['body'] = []
11756
+ if self.body is not None:
11757
+ for k in self.body:
11758
+ result['body'].append(k.to_map() if k else None)
11759
+ return result
11760
+
11761
+ def from_map(self, m: dict = None):
11762
+ m = m or dict()
11763
+ if m.get('headers') is not None:
11764
+ self.headers = m.get('headers')
11765
+ if m.get('statusCode') is not None:
11766
+ self.status_code = m.get('statusCode')
11767
+ self.body = []
11768
+ if m.get('body') is not None:
11769
+ for k in m.get('body'):
11770
+ temp_model = GetSqlInstanceResponseBody()
11771
+ self.body.append(temp_model.from_map(k))
11772
+ return self
11773
+
11774
+
11775
+ class GetStoreViewResponseBody(TeaModel):
11776
+ def __init__(
11777
+ self,
11778
+ store_type: str = None,
11779
+ stores: List[StoreViewStore] = None,
11780
+ ):
11781
+ self.store_type = store_type
11782
+ self.stores = stores
11135
11783
 
11136
11784
  def validate(self):
11137
- if self.statistics:
11138
- self.statistics.validate()
11139
- if self.tasks:
11140
- self.tasks.validate()
11785
+ if self.stores:
11786
+ for k in self.stores:
11787
+ if k:
11788
+ k.validate()
11141
11789
 
11142
11790
  def to_map(self):
11143
11791
  _map = super().to_map()
@@ -11145,37 +11793,32 @@ class GetShipperStatusResponseBody(TeaModel):
11145
11793
  return _map
11146
11794
 
11147
11795
  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
11796
+ if self.store_type is not None:
11797
+ result['storeType'] = self.store_type
11798
+ result['stores'] = []
11799
+ if self.stores is not None:
11800
+ for k in self.stores:
11801
+ result['stores'].append(k.to_map() if k else None)
11156
11802
  return result
11157
11803
 
11158
11804
  def from_map(self, m: dict = None):
11159
11805
  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')
11806
+ if m.get('storeType') is not None:
11807
+ self.store_type = m.get('storeType')
11808
+ self.stores = []
11809
+ if m.get('stores') is not None:
11810
+ for k in m.get('stores'):
11811
+ temp_model = StoreViewStore()
11812
+ self.stores.append(temp_model.from_map(k))
11170
11813
  return self
11171
11814
 
11172
11815
 
11173
- class GetShipperStatusResponse(TeaModel):
11816
+ class GetStoreViewResponse(TeaModel):
11174
11817
  def __init__(
11175
11818
  self,
11176
11819
  headers: Dict[str, str] = None,
11177
11820
  status_code: int = None,
11178
- body: GetShipperStatusResponseBody = None,
11821
+ body: GetStoreViewResponseBody = None,
11179
11822
  ):
11180
11823
  self.headers = headers
11181
11824
  self.status_code = status_code
@@ -11206,25 +11849,25 @@ class GetShipperStatusResponse(TeaModel):
11206
11849
  if m.get('statusCode') is not None:
11207
11850
  self.status_code = m.get('statusCode')
11208
11851
  if m.get('body') is not None:
11209
- temp_model = GetShipperStatusResponseBody()
11852
+ temp_model = GetStoreViewResponseBody()
11210
11853
  self.body = temp_model.from_map(m['body'])
11211
11854
  return self
11212
11855
 
11213
11856
 
11214
- class GetSlsServiceResponse(TeaModel):
11857
+ class GetStoreViewIndexResponseBodyIndexes(TeaModel):
11215
11858
  def __init__(
11216
11859
  self,
11217
- headers: Dict[str, str] = None,
11218
- status_code: int = None,
11219
- body: ServiceStatus = None,
11860
+ index: Index = None,
11861
+ logstore: str = None,
11862
+ project: str = None,
11220
11863
  ):
11221
- self.headers = headers
11222
- self.status_code = status_code
11223
- self.body = body
11864
+ self.index = index
11865
+ self.logstore = logstore
11866
+ self.project = project
11224
11867
 
11225
11868
  def validate(self):
11226
- if self.body:
11227
- self.body.validate()
11869
+ if self.index:
11870
+ self.index.validate()
11228
11871
 
11229
11872
  def to_map(self):
11230
11873
  _map = super().to_map()
@@ -11232,43 +11875,38 @@ class GetSlsServiceResponse(TeaModel):
11232
11875
  return _map
11233
11876
 
11234
11877
  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()
11878
+ if self.index is not None:
11879
+ result['index'] = self.index.to_map()
11880
+ if self.logstore is not None:
11881
+ result['logstore'] = self.logstore
11882
+ if self.project is not None:
11883
+ result['project'] = self.project
11241
11884
  return result
11242
11885
 
11243
11886
  def from_map(self, m: dict = None):
11244
11887
  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'])
11888
+ if m.get('index') is not None:
11889
+ temp_model = Index()
11890
+ self.index = temp_model.from_map(m['index'])
11891
+ if m.get('logstore') is not None:
11892
+ self.logstore = m.get('logstore')
11893
+ if m.get('project') is not None:
11894
+ self.project = m.get('project')
11252
11895
  return self
11253
11896
 
11254
11897
 
11255
- class GetSqlInstanceResponseBody(TeaModel):
11898
+ class GetStoreViewIndexResponseBody(TeaModel):
11256
11899
  def __init__(
11257
11900
  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,
11901
+ indexes: List[GetStoreViewIndexResponseBodyIndexes] = None,
11263
11902
  ):
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
11903
+ self.indexes = indexes
11269
11904
 
11270
11905
  def validate(self):
11271
- pass
11906
+ if self.indexes:
11907
+ for k in self.indexes:
11908
+ if k:
11909
+ k.validate()
11272
11910
 
11273
11911
  def to_map(self):
11274
11912
  _map = super().to_map()
@@ -11276,39 +11914,28 @@ class GetSqlInstanceResponseBody(TeaModel):
11276
11914
  return _map
11277
11915
 
11278
11916
  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
11917
+ result['indexes'] = []
11918
+ if self.indexes is not None:
11919
+ for k in self.indexes:
11920
+ result['indexes'].append(k.to_map() if k else None)
11289
11921
  return result
11290
11922
 
11291
11923
  def from_map(self, m: dict = None):
11292
11924
  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')
11925
+ self.indexes = []
11926
+ if m.get('indexes') is not None:
11927
+ for k in m.get('indexes'):
11928
+ temp_model = GetStoreViewIndexResponseBodyIndexes()
11929
+ self.indexes.append(temp_model.from_map(k))
11303
11930
  return self
11304
11931
 
11305
11932
 
11306
- class GetSqlInstanceResponse(TeaModel):
11933
+ class GetStoreViewIndexResponse(TeaModel):
11307
11934
  def __init__(
11308
11935
  self,
11309
11936
  headers: Dict[str, str] = None,
11310
11937
  status_code: int = None,
11311
- body: List[GetSqlInstanceResponseBody] = None,
11938
+ body: GetStoreViewIndexResponseBody = None,
11312
11939
  ):
11313
11940
  self.headers = headers
11314
11941
  self.status_code = status_code
@@ -11316,9 +11943,7 @@ class GetSqlInstanceResponse(TeaModel):
11316
11943
 
11317
11944
  def validate(self):
11318
11945
  if self.body:
11319
- for k in self.body:
11320
- if k:
11321
- k.validate()
11946
+ self.body.validate()
11322
11947
 
11323
11948
  def to_map(self):
11324
11949
  _map = super().to_map()
@@ -11330,10 +11955,8 @@ class GetSqlInstanceResponse(TeaModel):
11330
11955
  result['headers'] = self.headers
11331
11956
  if self.status_code is not None:
11332
11957
  result['statusCode'] = self.status_code
11333
- result['body'] = []
11334
11958
  if self.body is not None:
11335
- for k in self.body:
11336
- result['body'].append(k.to_map() if k else None)
11959
+ result['body'] = self.body.to_map()
11337
11960
  return result
11338
11961
 
11339
11962
  def from_map(self, m: dict = None):
@@ -11342,11 +11965,9 @@ class GetSqlInstanceResponse(TeaModel):
11342
11965
  self.headers = m.get('headers')
11343
11966
  if m.get('statusCode') is not None:
11344
11967
  self.status_code = m.get('statusCode')
11345
- self.body = []
11346
11968
  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))
11969
+ temp_model = GetStoreViewIndexResponseBody()
11970
+ self.body = temp_model.from_map(m['body'])
11350
11971
  return self
11351
11972
 
11352
11973
 
@@ -12294,10 +12915,16 @@ class ListConfigRequest(TeaModel):
12294
12915
  # The name of the Logtail configuration.
12295
12916
  self.config_name = config_name
12296
12917
  # The name of the Logstore.
12918
+ #
12919
+ # This parameter is required.
12297
12920
  self.logstore_name = logstore_name
12298
12921
  # The line from which the query starts. Default value: 0.
12922
+ #
12923
+ # This parameter is required.
12299
12924
  self.offset = offset
12300
12925
  # The number of entries per page. Maximum value: 500.
12926
+ #
12927
+ # This parameter is required.
12301
12928
  self.size = size
12302
12929
 
12303
12930
  def validate(self):
@@ -13905,11 +14532,13 @@ class ListOSSIngestionsResponse(TeaModel):
13905
14532
  class ListProjectRequest(TeaModel):
13906
14533
  def __init__(
13907
14534
  self,
14535
+ fetch_quota: bool = None,
13908
14536
  offset: int = None,
13909
14537
  project_name: str = None,
13910
14538
  resource_group_id: str = None,
13911
14539
  size: int = None,
13912
14540
  ):
14541
+ self.fetch_quota = fetch_quota
13913
14542
  # The line from which the query starts. Default value: 0.
13914
14543
  self.offset = offset
13915
14544
  # The name of the project.
@@ -13927,6 +14556,8 @@ class ListProjectRequest(TeaModel):
13927
14556
  return _map
13928
14557
 
13929
14558
  result = dict()
14559
+ if self.fetch_quota is not None:
14560
+ result['fetchQuota'] = self.fetch_quota
13930
14561
  if self.offset is not None:
13931
14562
  result['offset'] = self.offset
13932
14563
  if self.project_name is not None:
@@ -13939,6 +14570,8 @@ class ListProjectRequest(TeaModel):
13939
14570
 
13940
14571
  def from_map(self, m: dict = None):
13941
14572
  m = m or dict()
14573
+ if m.get('fetchQuota') is not None:
14574
+ self.fetch_quota = m.get('fetchQuota')
13942
14575
  if m.get('offset') is not None:
13943
14576
  self.offset = m.get('offset')
13944
14577
  if m.get('projectName') is not None:
@@ -14243,22 +14876,152 @@ class ListScheduledSQLsResponseBody(TeaModel):
14243
14876
  m = m or dict()
14244
14877
  if m.get('count') is not None:
14245
14878
  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))
14879
+ self.results = []
14880
+ if m.get('results') is not None:
14881
+ for k in m.get('results'):
14882
+ temp_model = ScheduledSQL()
14883
+ self.results.append(temp_model.from_map(k))
14884
+ if m.get('total') is not None:
14885
+ self.total = m.get('total')
14886
+ return self
14887
+
14888
+
14889
+ class ListScheduledSQLsResponse(TeaModel):
14890
+ def __init__(
14891
+ self,
14892
+ headers: Dict[str, str] = None,
14893
+ status_code: int = None,
14894
+ body: ListScheduledSQLsResponseBody = None,
14895
+ ):
14896
+ self.headers = headers
14897
+ self.status_code = status_code
14898
+ self.body = body
14899
+
14900
+ def validate(self):
14901
+ if self.body:
14902
+ self.body.validate()
14903
+
14904
+ def to_map(self):
14905
+ _map = super().to_map()
14906
+ if _map is not None:
14907
+ return _map
14908
+
14909
+ result = dict()
14910
+ if self.headers is not None:
14911
+ result['headers'] = self.headers
14912
+ if self.status_code is not None:
14913
+ result['statusCode'] = self.status_code
14914
+ if self.body is not None:
14915
+ result['body'] = self.body.to_map()
14916
+ return result
14917
+
14918
+ def from_map(self, m: dict = None):
14919
+ m = m or dict()
14920
+ if m.get('headers') is not None:
14921
+ self.headers = m.get('headers')
14922
+ if m.get('statusCode') is not None:
14923
+ self.status_code = m.get('statusCode')
14924
+ if m.get('body') is not None:
14925
+ temp_model = ListScheduledSQLsResponseBody()
14926
+ self.body = temp_model.from_map(m['body'])
14927
+ return self
14928
+
14929
+
14930
+ class ListShardsResponse(TeaModel):
14931
+ def __init__(
14932
+ self,
14933
+ headers: Dict[str, str] = None,
14934
+ status_code: int = None,
14935
+ body: List[Shard] = None,
14936
+ ):
14937
+ self.headers = headers
14938
+ self.status_code = status_code
14939
+ self.body = body
14940
+
14941
+ def validate(self):
14942
+ if self.body:
14943
+ for k in self.body:
14944
+ if k:
14945
+ k.validate()
14946
+
14947
+ def to_map(self):
14948
+ _map = super().to_map()
14949
+ if _map is not None:
14950
+ return _map
14951
+
14952
+ result = dict()
14953
+ if self.headers is not None:
14954
+ result['headers'] = self.headers
14955
+ if self.status_code is not None:
14956
+ result['statusCode'] = self.status_code
14957
+ result['body'] = []
14958
+ if self.body is not None:
14959
+ for k in self.body:
14960
+ result['body'].append(k.to_map() if k else None)
14961
+ return result
14962
+
14963
+ def from_map(self, m: dict = None):
14964
+ m = m or dict()
14965
+ if m.get('headers') is not None:
14966
+ self.headers = m.get('headers')
14967
+ if m.get('statusCode') is not None:
14968
+ self.status_code = m.get('statusCode')
14969
+ self.body = []
14970
+ if m.get('body') is not None:
14971
+ for k in m.get('body'):
14972
+ temp_model = Shard()
14973
+ self.body.append(temp_model.from_map(k))
14974
+ return self
14975
+
14976
+
14977
+ class ListShipperResponseBody(TeaModel):
14978
+ def __init__(
14979
+ self,
14980
+ count: int = None,
14981
+ shipper: List[str] = None,
14982
+ total: int = None,
14983
+ ):
14984
+ # The number of log shipping jobs returned.
14985
+ self.count = count
14986
+ # The names of the log shipping jobs.
14987
+ self.shipper = shipper
14988
+ # The total number of log shipping jobs.
14989
+ self.total = total
14990
+
14991
+ def validate(self):
14992
+ pass
14993
+
14994
+ def to_map(self):
14995
+ _map = super().to_map()
14996
+ if _map is not None:
14997
+ return _map
14998
+
14999
+ result = dict()
15000
+ if self.count is not None:
15001
+ result['count'] = self.count
15002
+ if self.shipper is not None:
15003
+ result['shipper'] = self.shipper
15004
+ if self.total is not None:
15005
+ result['total'] = self.total
15006
+ return result
15007
+
15008
+ def from_map(self, m: dict = None):
15009
+ m = m or dict()
15010
+ if m.get('count') is not None:
15011
+ self.count = m.get('count')
15012
+ if m.get('shipper') is not None:
15013
+ self.shipper = m.get('shipper')
14251
15014
  if m.get('total') is not None:
14252
15015
  self.total = m.get('total')
14253
15016
  return self
14254
15017
 
14255
15018
 
14256
- class ListScheduledSQLsResponse(TeaModel):
15019
+ class ListShipperResponse(TeaModel):
14257
15020
  def __init__(
14258
15021
  self,
14259
15022
  headers: Dict[str, str] = None,
14260
15023
  status_code: int = None,
14261
- body: ListScheduledSQLsResponseBody = None,
15024
+ body: ListShipperResponseBody = None,
14262
15025
  ):
14263
15026
  self.headers = headers
14264
15027
  self.status_code = status_code
@@ -14289,27 +15052,26 @@ class ListScheduledSQLsResponse(TeaModel):
14289
15052
  if m.get('statusCode') is not None:
14290
15053
  self.status_code = m.get('statusCode')
14291
15054
  if m.get('body') is not None:
14292
- temp_model = ListScheduledSQLsResponseBody()
15055
+ temp_model = ListShipperResponseBody()
14293
15056
  self.body = temp_model.from_map(m['body'])
14294
15057
  return self
14295
15058
 
14296
15059
 
14297
- class ListShardsResponse(TeaModel):
15060
+ class ListStoreViewsRequest(TeaModel):
14298
15061
  def __init__(
14299
15062
  self,
14300
- headers: Dict[str, str] = None,
14301
- status_code: int = None,
14302
- body: List[Shard] = None,
15063
+ name: str = None,
15064
+ offset: int = None,
15065
+ size: int = None,
15066
+ store_type: str = None,
14303
15067
  ):
14304
- self.headers = headers
14305
- self.status_code = status_code
14306
- self.body = body
15068
+ self.name = name
15069
+ self.offset = offset
15070
+ self.size = size
15071
+ self.store_type = store_type
14307
15072
 
14308
15073
  def validate(self):
14309
- if self.body:
14310
- for k in self.body:
14311
- if k:
14312
- k.validate()
15074
+ pass
14313
15075
 
14314
15076
  def to_map(self):
14315
15077
  _map = super().to_map()
@@ -14317,42 +15079,38 @@ class ListShardsResponse(TeaModel):
14317
15079
  return _map
14318
15080
 
14319
15081
  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)
15082
+ if self.name is not None:
15083
+ result['name'] = self.name
15084
+ if self.offset is not None:
15085
+ result['offset'] = self.offset
15086
+ if self.size is not None:
15087
+ result['size'] = self.size
15088
+ if self.store_type is not None:
15089
+ result['storeType'] = self.store_type
14328
15090
  return result
14329
15091
 
14330
15092
  def from_map(self, m: dict = None):
14331
15093
  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))
15094
+ if m.get('name') is not None:
15095
+ self.name = m.get('name')
15096
+ if m.get('offset') is not None:
15097
+ self.offset = m.get('offset')
15098
+ if m.get('size') is not None:
15099
+ self.size = m.get('size')
15100
+ if m.get('storeType') is not None:
15101
+ self.store_type = m.get('storeType')
14341
15102
  return self
14342
15103
 
14343
15104
 
14344
- class ListShipperResponseBody(TeaModel):
15105
+ class ListStoreViewsResponseBody(TeaModel):
14345
15106
  def __init__(
14346
15107
  self,
14347
15108
  count: int = None,
14348
- shipper: List[str] = None,
15109
+ storeviews: List[str] = None,
14349
15110
  total: int = None,
14350
15111
  ):
14351
- # The number of log shipping jobs returned.
14352
15112
  self.count = count
14353
- # The names of the log shipping jobs.
14354
- self.shipper = shipper
14355
- # The total number of log shipping jobs.
15113
+ self.storeviews = storeviews
14356
15114
  self.total = total
14357
15115
 
14358
15116
  def validate(self):
@@ -14366,8 +15124,8 @@ class ListShipperResponseBody(TeaModel):
14366
15124
  result = dict()
14367
15125
  if self.count is not None:
14368
15126
  result['count'] = self.count
14369
- if self.shipper is not None:
14370
- result['shipper'] = self.shipper
15127
+ if self.storeviews is not None:
15128
+ result['storeviews'] = self.storeviews
14371
15129
  if self.total is not None:
14372
15130
  result['total'] = self.total
14373
15131
  return result
@@ -14376,19 +15134,19 @@ class ListShipperResponseBody(TeaModel):
14376
15134
  m = m or dict()
14377
15135
  if m.get('count') is not None:
14378
15136
  self.count = m.get('count')
14379
- if m.get('shipper') is not None:
14380
- self.shipper = m.get('shipper')
15137
+ if m.get('storeviews') is not None:
15138
+ self.storeviews = m.get('storeviews')
14381
15139
  if m.get('total') is not None:
14382
15140
  self.total = m.get('total')
14383
15141
  return self
14384
15142
 
14385
15143
 
14386
- class ListShipperResponse(TeaModel):
15144
+ class ListStoreViewsResponse(TeaModel):
14387
15145
  def __init__(
14388
15146
  self,
14389
15147
  headers: Dict[str, str] = None,
14390
15148
  status_code: int = None,
14391
- body: ListShipperResponseBody = None,
15149
+ body: ListStoreViewsResponseBody = None,
14392
15150
  ):
14393
15151
  self.headers = headers
14394
15152
  self.status_code = status_code
@@ -14419,7 +15177,7 @@ class ListShipperResponse(TeaModel):
14419
15177
  if m.get('statusCode') is not None:
14420
15178
  self.status_code = m.get('statusCode')
14421
15179
  if m.get('body') is not None:
14422
- temp_model = ListShipperResponseBody()
15180
+ temp_model = ListStoreViewsResponseBody()
14423
15181
  self.body = temp_model.from_map(m['body'])
14424
15182
  return self
14425
15183
 
@@ -14431,6 +15189,8 @@ class ListTagResourcesRequestTags(TeaModel):
14431
15189
  value: str = None,
14432
15190
  ):
14433
15191
  # 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.``
15192
+ #
15193
+ # This parameter is required.
14434
15194
  self.key = key
14435
15195
  # 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
15196
  self.value = value
@@ -14469,6 +15229,8 @@ class ListTagResourcesRequest(TeaModel):
14469
15229
  # The IDs of the resources for which you want to query tags. You must specify at least one of resourceId and tags.
14470
15230
  self.resource_id = resource_id
14471
15231
  # The type of the resource. Set the value to project.
15232
+ #
15233
+ # This parameter is required.
14472
15234
  self.resource_type = resource_type
14473
15235
  # 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
15236
  #
@@ -14521,6 +15283,8 @@ class ListTagResourcesShrinkRequest(TeaModel):
14521
15283
  # The IDs of the resources for which you want to query tags. You must specify at least one of resourceId and tags.
14522
15284
  self.resource_id_shrink = resource_id_shrink
14523
15285
  # The type of the resource. Set the value to project.
15286
+ #
15287
+ # This parameter is required.
14524
15288
  self.resource_type = resource_type
14525
15289
  # 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
15290
  #
@@ -14976,9 +15740,13 @@ class PutWebtrackingRequest(TeaModel):
14976
15740
  ):
14977
15741
  # The logs. Each element is a JSON object that indicates a log.
14978
15742
  #
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.
15743
+ # > **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.
15744
+ #
15745
+ # This parameter is required.
14980
15746
  self.logs = logs
14981
15747
  # The source of the logs.
15748
+ #
15749
+ # This parameter is required.
14982
15750
  self.source = source
14983
15751
  # The tags of the logs.
14984
15752
  self.tags = tags
@@ -15650,11 +16418,15 @@ class TagResourcesRequestTags(TeaModel):
15650
16418
  # * The key must be `1 to 128` characters in length.
15651
16419
  # * The key cannot contain `"http://"` or `"https://"`.
15652
16420
  # * The key cannot start with `"acs:"` or `"aliyun"`.
16421
+ #
16422
+ # This parameter is required.
15653
16423
  self.key = key
15654
16424
  # The value of the tag. The value must meet the following requirements:
15655
16425
  #
15656
16426
  # * The value must be `1 to 128` characters in length.
15657
16427
  # * The value cannot contain `"http://"` or `"https://"`.
16428
+ #
16429
+ # This parameter is required.
15658
16430
  self.value = value
15659
16431
 
15660
16432
  def validate(self):
@@ -15689,10 +16461,16 @@ class TagResourcesRequest(TeaModel):
15689
16461
  tags: List[TagResourcesRequestTags] = None,
15690
16462
  ):
15691
16463
  # The resource IDs. You can specify only one resource and add tags to the resource.
16464
+ #
16465
+ # This parameter is required.
15692
16466
  self.resource_id = resource_id
15693
16467
  # The type of the resource. Set the value to project.
16468
+ #
16469
+ # This parameter is required.
15694
16470
  self.resource_type = resource_type
15695
16471
  # 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.
16472
+ #
16473
+ # This parameter is required.
15696
16474
  self.tags = tags
15697
16475
 
15698
16476
  def validate(self):
@@ -15773,6 +16551,7 @@ class UntagResourcesRequest(TeaModel):
15773
16551
  tags: List[str] = None,
15774
16552
  ):
15775
16553
  self.all = all
16554
+ # This parameter is required.
15776
16555
  self.resource_id = resource_id
15777
16556
  self.resource_type = resource_type
15778
16557
  self.tags = tags
@@ -15850,9 +16629,12 @@ class UpdateAlertRequest(TeaModel):
15850
16629
  display_name: str = None,
15851
16630
  schedule: Schedule = None,
15852
16631
  ):
16632
+ # This parameter is required.
15853
16633
  self.configuration = configuration
15854
16634
  self.description = description
16635
+ # This parameter is required.
15855
16636
  self.display_name = display_name
16637
+ # This parameter is required.
15856
16638
  self.schedule = schedule
15857
16639
 
15858
16640
  def validate(self):
@@ -16197,12 +16979,18 @@ class UpdateDashboardRequest(TeaModel):
16197
16979
  # The attributes of the dashboard.
16198
16980
  self.attribute = attribute
16199
16981
  # The charts on the dashboard.
16982
+ #
16983
+ # This parameter is required.
16200
16984
  self.charts = charts
16201
16985
  # The name of the dashboard.
16986
+ #
16987
+ # This parameter is required.
16202
16988
  self.dashboard_name = dashboard_name
16203
16989
  # The description of the dashboard.
16204
16990
  self.description = description
16205
16991
  # The display name of the dashboard.
16992
+ #
16993
+ # This parameter is required.
16206
16994
  self.display_name = display_name
16207
16995
 
16208
16996
  def validate(self):
@@ -16289,8 +17077,10 @@ class UpdateETLRequest(TeaModel):
16289
17077
  description: str = None,
16290
17078
  display_name: str = None,
16291
17079
  ):
17080
+ # This parameter is required.
16292
17081
  self.configuration = configuration
16293
17082
  self.description = description
17083
+ # This parameter is required.
16294
17084
  self.display_name = display_name
16295
17085
 
16296
17086
  def validate(self):
@@ -16369,17 +17159,23 @@ class UpdateIndexRequestLine(TeaModel):
16369
17159
  #
16370
17160
  # * true
16371
17161
  # * false
17162
+ #
17163
+ # This parameter is required.
16372
17164
  self.case_sensitive = case_sensitive
16373
17165
  # Specifies whether to include Chinese characters. Valid values:
16374
17166
  #
16375
17167
  # * true
16376
17168
  # * false
17169
+ #
17170
+ # This parameter is required.
16377
17171
  self.chn = chn
16378
17172
  # The excluded fields. You cannot specify both include_keys and exclude_keys.
16379
17173
  self.exclude_keys = exclude_keys
16380
17174
  # The included fields. You cannot specify both include_keys and exclude_keys.
16381
17175
  self.include_keys = include_keys
16382
17176
  # The delimiters that are used to split text.
17177
+ #
17178
+ # This parameter is required.
16383
17179
  self.token = token
16384
17180
 
16385
17181
  def validate(self):
@@ -16442,6 +17238,8 @@ class UpdateIndexRequest(TeaModel):
16442
17238
  # The maximum length of a field value that can be retained.
16443
17239
  self.max_text_len = max_text_len
16444
17240
  # The retention period of data. Unit: days. Valid values: 7, 30, and 90.
17241
+ #
17242
+ # This parameter is required.
16445
17243
  self.ttl = ttl
16446
17244
 
16447
17245
  def validate(self):
@@ -16565,10 +17363,12 @@ class UpdateLogStoreRequest(TeaModel):
16565
17363
  self.enable_tracking = enable_tracking
16566
17364
  # The data structure of the encryption configuration.
16567
17365
  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~~).
17366
+ # 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
17367
  self.hot_ttl = hot_ttl
16570
17368
  self.infrequent_access_ttl = infrequent_access_ttl
16571
17369
  # The name of the Logstore.
17370
+ #
17371
+ # This parameter is required.
16572
17372
  self.logstore_name = logstore_name
16573
17373
  # The maximum number of shards into which existing shards can be automatically split. Valid values: 1 to 64.
16574
17374
  #
@@ -16589,6 +17389,8 @@ class UpdateLogStoreRequest(TeaModel):
16589
17389
  # * Metrics: metrics.
16590
17390
  self.telemetry_type = telemetry_type
16591
17391
  # The retention period of data. Unit: day. Valid values: 1 to 3650. If you set ttl to 3650, data is permanently stored.
17392
+ #
17393
+ # This parameter is required.
16592
17394
  self.ttl = ttl
16593
17395
 
16594
17396
  def validate(self):
@@ -16695,6 +17497,7 @@ class UpdateLogStoreMeteringModeRequest(TeaModel):
16695
17497
  self,
16696
17498
  metering_mode: str = None,
16697
17499
  ):
17500
+ # This parameter is required.
16698
17501
  self.metering_mode = metering_mode
16699
17502
 
16700
17503
  def validate(self):
@@ -16757,6 +17560,8 @@ class UpdateLoggingRequestLoggingDetails(TeaModel):
16757
17560
  type: str = None,
16758
17561
  ):
16759
17562
  # The name of the Logstore to which you want to save service logs.
17563
+ #
17564
+ # This parameter is required.
16760
17565
  self.logstore = logstore
16761
17566
  # The type of service logs. Valid values:
16762
17567
  #
@@ -16768,6 +17573,8 @@ class UpdateLoggingRequestLoggingDetails(TeaModel):
16768
17573
  # * logtail_status: the status logs of Logtail.
16769
17574
  # * scheduledsqlalert: the operational logs of Scheduled SQL jobs.
16770
17575
  # * etl_alert: the operational logs of data transformation jobs.
17576
+ #
17577
+ # This parameter is required.
16771
17578
  self.type = type
16772
17579
 
16773
17580
  def validate(self):
@@ -16801,8 +17608,12 @@ class UpdateLoggingRequest(TeaModel):
16801
17608
  logging_project: str = None,
16802
17609
  ):
16803
17610
  # The configurations of service logs.
17611
+ #
17612
+ # This parameter is required.
16804
17613
  self.logging_details = logging_details
16805
17614
  # The name of the project to which you want to save service logs.
17615
+ #
17616
+ # This parameter is required.
16806
17617
  self.logging_project = logging_project
16807
17618
 
16808
17619
  def validate(self):
@@ -16884,12 +17695,18 @@ class UpdateLogtailPipelineConfigRequest(TeaModel):
16884
17695
  # The aggregation plug-ins.
16885
17696
  self.aggregators = aggregators
16886
17697
  # The name of the configuration.
17698
+ #
17699
+ # This parameter is required.
16887
17700
  self.config_name = config_name
16888
17701
  # The data output plug-ins.
17702
+ #
17703
+ # This parameter is required.
16889
17704
  self.flushers = flushers
16890
17705
  # The global configuration.
16891
17706
  self.global_ = global_
16892
17707
  # The data source plug-ins.
17708
+ #
17709
+ # This parameter is required.
16893
17710
  self.inputs = inputs
16894
17711
  # The sample log.
16895
17712
  self.log_sample = log_sample
@@ -17020,6 +17837,8 @@ class UpdateMachineGroupRequest(TeaModel):
17020
17837
  # The attribute of the machine group. This parameter is empty by default.
17021
17838
  self.group_attribute = group_attribute
17022
17839
  # The name of the machine group.
17840
+ #
17841
+ # This parameter is required.
17023
17842
  self.group_name = group_name
17024
17843
  # The type of the machine group. Set the value to an empty string.
17025
17844
  self.group_type = group_type
@@ -17027,11 +17846,15 @@ class UpdateMachineGroupRequest(TeaModel):
17027
17846
  #
17028
17847
  # * ip: The machine group uses IP addresses as identifiers.
17029
17848
  # * userdefined: The machine group uses custom identifiers.
17849
+ #
17850
+ # This parameter is required.
17030
17851
  self.machine_identify_type = machine_identify_type
17031
17852
  # The identifiers of the machines in the machine group.
17032
17853
  #
17033
17854
  # * If you set machineIdentifyType to ip, enter the IP addresses of the machines.
17034
17855
  # * If you set machineIdentifyType to userdefined, enter a custom identifier.
17856
+ #
17857
+ # This parameter is required.
17035
17858
  self.machine_list = machine_list
17036
17859
 
17037
17860
  def validate(self):
@@ -17114,6 +17937,8 @@ class UpdateMachineGroupMachineRequest(TeaModel):
17114
17937
  # 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
17938
  self.action = action
17116
17939
  # The machines to be added or removed.
17940
+ #
17941
+ # This parameter is required.
17117
17942
  self.body = body
17118
17943
 
17119
17944
  def validate(self):
@@ -17173,6 +17998,67 @@ class UpdateMachineGroupMachineResponse(TeaModel):
17173
17998
  return self
17174
17999
 
17175
18000
 
18001
+ class UpdateMetricStoreMeteringModeRequest(TeaModel):
18002
+ def __init__(
18003
+ self,
18004
+ metering_mode: str = None,
18005
+ ):
18006
+ # This parameter is required.
18007
+ self.metering_mode = metering_mode
18008
+
18009
+ def validate(self):
18010
+ pass
18011
+
18012
+ def to_map(self):
18013
+ _map = super().to_map()
18014
+ if _map is not None:
18015
+ return _map
18016
+
18017
+ result = dict()
18018
+ if self.metering_mode is not None:
18019
+ result['meteringMode'] = self.metering_mode
18020
+ return result
18021
+
18022
+ def from_map(self, m: dict = None):
18023
+ m = m or dict()
18024
+ if m.get('meteringMode') is not None:
18025
+ self.metering_mode = m.get('meteringMode')
18026
+ return self
18027
+
18028
+
18029
+ class UpdateMetricStoreMeteringModeResponse(TeaModel):
18030
+ def __init__(
18031
+ self,
18032
+ headers: Dict[str, str] = None,
18033
+ status_code: int = None,
18034
+ ):
18035
+ self.headers = headers
18036
+ self.status_code = status_code
18037
+
18038
+ def validate(self):
18039
+ pass
18040
+
18041
+ def to_map(self):
18042
+ _map = super().to_map()
18043
+ if _map is not None:
18044
+ return _map
18045
+
18046
+ result = dict()
18047
+ if self.headers is not None:
18048
+ result['headers'] = self.headers
18049
+ if self.status_code is not None:
18050
+ result['statusCode'] = self.status_code
18051
+ return result
18052
+
18053
+ def from_map(self, m: dict = None):
18054
+ m = m or dict()
18055
+ if m.get('headers') is not None:
18056
+ self.headers = m.get('headers')
18057
+ if m.get('statusCode') is not None:
18058
+ self.status_code = m.get('statusCode')
18059
+ return self
18060
+
18061
+
17176
18062
  class UpdateOSSExportRequest(TeaModel):
17177
18063
  def __init__(
17178
18064
  self,
@@ -17329,8 +18215,10 @@ class UpdateOSSIngestionRequest(TeaModel):
17329
18215
  display_name: str = None,
17330
18216
  schedule: Schedule = None,
17331
18217
  ):
18218
+ # This parameter is required.
17332
18219
  self.configuration = configuration
17333
18220
  self.description = description
18221
+ # This parameter is required.
17334
18222
  self.display_name = display_name
17335
18223
  self.schedule = schedule
17336
18224
 
@@ -17411,8 +18299,12 @@ class UpdateOssExternalStoreRequestParameterColumns(TeaModel):
17411
18299
  type: str = None,
17412
18300
  ):
17413
18301
  # The name of the field.
18302
+ #
18303
+ # This parameter is required.
17414
18304
  self.name = name
17415
18305
  # The type of the field.
18306
+ #
18307
+ # This parameter is required.
17416
18308
  self.type = type
17417
18309
 
17418
18310
  def validate(self):
@@ -17450,16 +18342,28 @@ class UpdateOssExternalStoreRequestParameter(TeaModel):
17450
18342
  objects: List[str] = None,
17451
18343
  ):
17452
18344
  # The AccessKey ID of your account.
18345
+ #
18346
+ # This parameter is required.
17453
18347
  self.accessid = accessid
17454
18348
  # The AccessKey secret of your account.
18349
+ #
18350
+ # This parameter is required.
17455
18351
  self.accesskey = accesskey
17456
18352
  # The name of the OSS bucket.
18353
+ #
18354
+ # This parameter is required.
17457
18355
  self.bucket = bucket
17458
18356
  # The fields that are associated to the external store.
18357
+ #
18358
+ # This parameter is required.
17459
18359
  self.columns = columns
17460
18360
  # The Object Storage Service (OSS) endpoint.
18361
+ #
18362
+ # This parameter is required.
17461
18363
  self.endpoint = endpoint
17462
18364
  # The names of the OSS objects that are associated to the external store.
18365
+ #
18366
+ # This parameter is required.
17463
18367
  self.objects = objects
17464
18368
 
17465
18369
  def validate(self):
@@ -17518,10 +18422,16 @@ class UpdateOssExternalStoreRequest(TeaModel):
17518
18422
  store_type: str = None,
17519
18423
  ):
17520
18424
  # The name of the external store.
18425
+ #
18426
+ # This parameter is required.
17521
18427
  self.external_store_name = external_store_name
17522
18428
  # The parameters that are configured for the external store.
18429
+ #
18430
+ # This parameter is required.
17523
18431
  self.parameter = parameter
17524
18432
  # The type of the external store. Set the value to oss.
18433
+ #
18434
+ # This parameter is required.
17525
18435
  self.store_type = store_type
17526
18436
 
17527
18437
  def validate(self):
@@ -17593,6 +18503,8 @@ class UpdateProjectRequest(TeaModel):
17593
18503
  description: str = None,
17594
18504
  ):
17595
18505
  # The description of the project. The default value is an empty string.
18506
+ #
18507
+ # This parameter is required.
17596
18508
  self.description = description
17597
18509
 
17598
18510
  def validate(self):
@@ -17662,20 +18574,32 @@ class UpdateRdsExternalStoreRequestParameter(TeaModel):
17662
18574
  vpc_id: str = None,
17663
18575
  ):
17664
18576
  # The name of the database in the ApsaraDB RDS for MySQL instance.
18577
+ #
18578
+ # This parameter is required.
17665
18579
  self.db = db
17666
18580
  # The internal or public endpoint of the ApsaraDB RDS for MySQL instance.
17667
18581
  self.host = host
17668
18582
  # The ID of the ApsaraDB RDS for MySQL instance.
17669
18583
  self.instance_id = instance_id
17670
18584
  # The password that is used to log on to the ApsaraDB RDS for MySQL instance.
18585
+ #
18586
+ # This parameter is required.
17671
18587
  self.password = password
17672
18588
  # The internal or public port of the ApsaraDB RDS for MySQL instance.
18589
+ #
18590
+ # This parameter is required.
17673
18591
  self.port = port
17674
18592
  # The region where the ApsaraDB RDS for MySQL instance resides. Valid values: cn-qingdao, cn-beijing, and cn-hangzhou.
18593
+ #
18594
+ # This parameter is required.
17675
18595
  self.region = region
17676
18596
  # The name of the database table in the ApsaraDB RDS for MySQL instance.
18597
+ #
18598
+ # This parameter is required.
17677
18599
  self.table = table
17678
18600
  # The username that is used to log on to the ApsaraDB RDS for MySQL instance.
18601
+ #
18602
+ # This parameter is required.
17679
18603
  self.username = username
17680
18604
  # The ID of the VPC to which the ApsaraDB RDS for MySQL instance belongs.
17681
18605
  self.vpc_id = vpc_id
@@ -17740,10 +18664,16 @@ class UpdateRdsExternalStoreRequest(TeaModel):
17740
18664
  store_type: str = None,
17741
18665
  ):
17742
18666
  # The name of the external store.
18667
+ #
18668
+ # This parameter is required.
17743
18669
  self.external_store_name = external_store_name
17744
18670
  # The parameter struct.
18671
+ #
18672
+ # This parameter is required.
17745
18673
  self.parameter = parameter
17746
18674
  # The storage type. Set the value to rds-vpc, which indicates an ApsaraDB RDS for MySQL database in a virtual private cloud (VPC).
18675
+ #
18676
+ # This parameter is required.
17747
18677
  self.store_type = store_type
17748
18678
 
17749
18679
  def validate(self):
@@ -17819,14 +18749,22 @@ class UpdateSavedSearchRequest(TeaModel):
17819
18749
  topic: str = None,
17820
18750
  ):
17821
18751
  # The display name.
18752
+ #
18753
+ # This parameter is required.
17822
18754
  self.display_name = display_name
17823
18755
  # The name of the Logstore to which the saved search belongs.
18756
+ #
18757
+ # This parameter is required.
17824
18758
  self.logstore = logstore
17825
18759
  # The name of the saved search. The name must be 3 to 63 characters in length.
18760
+ #
18761
+ # This parameter is required.
17826
18762
  self.savedsearch_name = savedsearch_name
17827
18763
  # 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
18764
  #
17829
18765
  # For more information, see Log search overview and Log analysis overview.
18766
+ #
18767
+ # This parameter is required.
17830
18768
  self.search_query = search_query
17831
18769
  # The topic of the logs.
17832
18770
  self.topic = topic
@@ -17908,9 +18846,12 @@ class UpdateScheduledSQLRequest(TeaModel):
17908
18846
  display_name: str = None,
17909
18847
  schedule: Schedule = None,
17910
18848
  ):
18849
+ # This parameter is required.
17911
18850
  self.configuration = configuration
17912
18851
  self.description = description
18852
+ # This parameter is required.
17913
18853
  self.display_name = display_name
18854
+ # This parameter is required.
17914
18855
  self.schedule = schedule
17915
18856
 
17916
18857
  def validate(self):
@@ -17989,7 +18930,9 @@ class UpdateSqlInstanceRequest(TeaModel):
17989
18930
  cu: int = None,
17990
18931
  use_as_default: bool = None,
17991
18932
  ):
18933
+ # This parameter is required.
17992
18934
  self.cu = cu
18935
+ # This parameter is required.
17993
18936
  self.use_as_default = use_as_default
17994
18937
 
17995
18938
  def validate(self):
@@ -18049,6 +18992,82 @@ class UpdateSqlInstanceResponse(TeaModel):
18049
18992
  return self
18050
18993
 
18051
18994
 
18995
+ class UpdateStoreViewRequest(TeaModel):
18996
+ def __init__(
18997
+ self,
18998
+ store_type: str = None,
18999
+ stores: List[StoreViewStore] = None,
19000
+ ):
19001
+ # This parameter is required.
19002
+ self.store_type = store_type
19003
+ # This parameter is required.
19004
+ self.stores = stores
19005
+
19006
+ def validate(self):
19007
+ if self.stores:
19008
+ for k in self.stores:
19009
+ if k:
19010
+ k.validate()
19011
+
19012
+ def to_map(self):
19013
+ _map = super().to_map()
19014
+ if _map is not None:
19015
+ return _map
19016
+
19017
+ result = dict()
19018
+ if self.store_type is not None:
19019
+ result['storeType'] = self.store_type
19020
+ result['stores'] = []
19021
+ if self.stores is not None:
19022
+ for k in self.stores:
19023
+ result['stores'].append(k.to_map() if k else None)
19024
+ return result
19025
+
19026
+ def from_map(self, m: dict = None):
19027
+ m = m or dict()
19028
+ if m.get('storeType') is not None:
19029
+ self.store_type = m.get('storeType')
19030
+ self.stores = []
19031
+ if m.get('stores') is not None:
19032
+ for k in m.get('stores'):
19033
+ temp_model = StoreViewStore()
19034
+ self.stores.append(temp_model.from_map(k))
19035
+ return self
19036
+
19037
+
19038
+ class UpdateStoreViewResponse(TeaModel):
19039
+ def __init__(
19040
+ self,
19041
+ headers: Dict[str, str] = None,
19042
+ status_code: int = None,
19043
+ ):
19044
+ self.headers = headers
19045
+ self.status_code = status_code
19046
+
19047
+ def validate(self):
19048
+ pass
19049
+
19050
+ def to_map(self):
19051
+ _map = super().to_map()
19052
+ if _map is not None:
19053
+ return _map
19054
+
19055
+ result = dict()
19056
+ if self.headers is not None:
19057
+ result['headers'] = self.headers
19058
+ if self.status_code is not None:
19059
+ result['statusCode'] = self.status_code
19060
+ return result
19061
+
19062
+ def from_map(self, m: dict = None):
19063
+ m = m or dict()
19064
+ if m.get('headers') is not None:
19065
+ self.headers = m.get('headers')
19066
+ if m.get('statusCode') is not None:
19067
+ self.status_code = m.get('statusCode')
19068
+ return self
19069
+
19070
+
18052
19071
  class UpsertCollectionPolicyRequestAttribute(TeaModel):
18053
19072
  def __init__(
18054
19073
  self,
@@ -18137,6 +19156,7 @@ class UpsertCollectionPolicyRequestPolicyConfig(TeaModel):
18137
19156
  ):
18138
19157
  self.instance_ids = instance_ids
18139
19158
  self.regions = regions
19159
+ # This parameter is required.
18140
19160
  self.resource_mode = resource_mode
18141
19161
  self.resource_tags = resource_tags
18142
19162
 
@@ -18187,10 +19207,15 @@ class UpsertCollectionPolicyRequest(TeaModel):
18187
19207
  self.attribute = attribute
18188
19208
  self.centralize_config = centralize_config
18189
19209
  self.centralize_enabled = centralize_enabled
19210
+ # This parameter is required.
18190
19211
  self.data_code = data_code
19212
+ # This parameter is required.
18191
19213
  self.enabled = enabled
19214
+ # This parameter is required.
18192
19215
  self.policy_config = policy_config
19216
+ # This parameter is required.
18193
19217
  self.policy_name = policy_name
19218
+ # This parameter is required.
18194
19219
  self.product_code = product_code
18195
19220
 
18196
19221
  def validate(self):