alibabacloud-sls20201230 5.5.1__py3-none-any.whl → 5.7.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -973,6 +973,176 @@ class ConsumerGroup(TeaModel):
973
973
  return self
974
974
 
975
975
 
976
+ class CopilotActionParameters(TeaModel):
977
+ def __init__(
978
+ self,
979
+ name: str = None,
980
+ prompt: str = None,
981
+ required: str = None,
982
+ type: str = None,
983
+ ):
984
+ self.name = name
985
+ self.prompt = prompt
986
+ self.required = required
987
+ self.type = type
988
+
989
+ def validate(self):
990
+ pass
991
+
992
+ def to_map(self):
993
+ _map = super().to_map()
994
+ if _map is not None:
995
+ return _map
996
+
997
+ result = dict()
998
+ if self.name is not None:
999
+ result['name'] = self.name
1000
+ if self.prompt is not None:
1001
+ result['prompt'] = self.prompt
1002
+ if self.required is not None:
1003
+ result['required'] = self.required
1004
+ if self.type is not None:
1005
+ result['type'] = self.type
1006
+ return result
1007
+
1008
+ def from_map(self, m: dict = None):
1009
+ m = m or dict()
1010
+ if m.get('name') is not None:
1011
+ self.name = m.get('name')
1012
+ if m.get('prompt') is not None:
1013
+ self.prompt = m.get('prompt')
1014
+ if m.get('required') is not None:
1015
+ self.required = m.get('required')
1016
+ if m.get('type') is not None:
1017
+ self.type = m.get('type')
1018
+ return self
1019
+
1020
+
1021
+ class CopilotActionQueryTemplateParameters(TeaModel):
1022
+ def __init__(
1023
+ self,
1024
+ name: str = None,
1025
+ prompt: str = None,
1026
+ required: str = None,
1027
+ type: str = None,
1028
+ ):
1029
+ self.name = name
1030
+ self.prompt = prompt
1031
+ self.required = required
1032
+ self.type = type
1033
+
1034
+ def validate(self):
1035
+ pass
1036
+
1037
+ def to_map(self):
1038
+ _map = super().to_map()
1039
+ if _map is not None:
1040
+ return _map
1041
+
1042
+ result = dict()
1043
+ if self.name is not None:
1044
+ result['name'] = self.name
1045
+ if self.prompt is not None:
1046
+ result['prompt'] = self.prompt
1047
+ if self.required is not None:
1048
+ result['required'] = self.required
1049
+ if self.type is not None:
1050
+ result['type'] = self.type
1051
+ return result
1052
+
1053
+ def from_map(self, m: dict = None):
1054
+ m = m or dict()
1055
+ if m.get('name') is not None:
1056
+ self.name = m.get('name')
1057
+ if m.get('prompt') is not None:
1058
+ self.prompt = m.get('prompt')
1059
+ if m.get('required') is not None:
1060
+ self.required = m.get('required')
1061
+ if m.get('type') is not None:
1062
+ self.type = m.get('type')
1063
+ return self
1064
+
1065
+
1066
+ class CopilotAction(TeaModel):
1067
+ def __init__(
1068
+ self,
1069
+ action: str = None,
1070
+ description: str = None,
1071
+ name: str = None,
1072
+ parameters: List[CopilotActionParameters] = None,
1073
+ query_template: str = None,
1074
+ query_template_parameters: List[CopilotActionQueryTemplateParameters] = None,
1075
+ scene: str = None,
1076
+ ):
1077
+ self.action = action
1078
+ self.description = description
1079
+ self.name = name
1080
+ self.parameters = parameters
1081
+ self.query_template = query_template
1082
+ self.query_template_parameters = query_template_parameters
1083
+ self.scene = scene
1084
+
1085
+ def validate(self):
1086
+ if self.parameters:
1087
+ for k in self.parameters:
1088
+ if k:
1089
+ k.validate()
1090
+ if self.query_template_parameters:
1091
+ for k in self.query_template_parameters:
1092
+ if k:
1093
+ k.validate()
1094
+
1095
+ def to_map(self):
1096
+ _map = super().to_map()
1097
+ if _map is not None:
1098
+ return _map
1099
+
1100
+ result = dict()
1101
+ if self.action is not None:
1102
+ result['action'] = self.action
1103
+ if self.description is not None:
1104
+ result['description'] = self.description
1105
+ if self.name is not None:
1106
+ result['name'] = self.name
1107
+ result['parameters'] = []
1108
+ if self.parameters is not None:
1109
+ for k in self.parameters:
1110
+ result['parameters'].append(k.to_map() if k else None)
1111
+ if self.query_template is not None:
1112
+ result['queryTemplate'] = self.query_template
1113
+ result['queryTemplateParameters'] = []
1114
+ if self.query_template_parameters is not None:
1115
+ for k in self.query_template_parameters:
1116
+ result['queryTemplateParameters'].append(k.to_map() if k else None)
1117
+ if self.scene is not None:
1118
+ result['scene'] = self.scene
1119
+ return result
1120
+
1121
+ def from_map(self, m: dict = None):
1122
+ m = m or dict()
1123
+ if m.get('action') is not None:
1124
+ self.action = m.get('action')
1125
+ if m.get('description') is not None:
1126
+ self.description = m.get('description')
1127
+ if m.get('name') is not None:
1128
+ self.name = m.get('name')
1129
+ self.parameters = []
1130
+ if m.get('parameters') is not None:
1131
+ for k in m.get('parameters'):
1132
+ temp_model = CopilotActionParameters()
1133
+ self.parameters.append(temp_model.from_map(k))
1134
+ if m.get('queryTemplate') is not None:
1135
+ self.query_template = m.get('queryTemplate')
1136
+ self.query_template_parameters = []
1137
+ if m.get('queryTemplateParameters') is not None:
1138
+ for k in m.get('queryTemplateParameters'):
1139
+ temp_model = CopilotActionQueryTemplateParameters()
1140
+ self.query_template_parameters.append(temp_model.from_map(k))
1141
+ if m.get('scene') is not None:
1142
+ self.scene = m.get('scene')
1143
+ return self
1144
+
1145
+
976
1146
  class ETLConfigurationSink(TeaModel):
977
1147
  def __init__(
978
1148
  self,
@@ -2544,7 +2714,9 @@ class MLServiceParam(TeaModel):
2544
2714
  class MaxComputeExportConfigurationSink(TeaModel):
2545
2715
  def __init__(
2546
2716
  self,
2717
+ buffer_interval: str = None,
2547
2718
  fields: List[str] = None,
2719
+ filter_invalid: bool = None,
2548
2720
  odps_access_key_id: str = None,
2549
2721
  odps_access_secret: str = None,
2550
2722
  odps_endpoint: str = None,
@@ -2554,25 +2726,29 @@ class MaxComputeExportConfigurationSink(TeaModel):
2554
2726
  odps_tunnel_endpoint: str = None,
2555
2727
  partition_column: List[str] = None,
2556
2728
  partition_time_format: str = None,
2729
+ time_format_type: str = None,
2557
2730
  time_zone: str = None,
2558
2731
  ):
2732
+ self.buffer_interval = buffer_interval
2559
2733
  # This parameter is required.
2560
2734
  self.fields = fields
2735
+ self.filter_invalid = filter_invalid
2561
2736
  self.odps_access_key_id = odps_access_key_id
2562
2737
  self.odps_access_secret = odps_access_secret
2563
2738
  # This parameter is required.
2564
2739
  self.odps_endpoint = odps_endpoint
2565
2740
  # This parameter is required.
2566
2741
  self.odps_project = odps_project
2742
+ # This parameter is required.
2567
2743
  self.odps_rolearn = odps_rolearn
2568
2744
  # This parameter is required.
2569
2745
  self.odps_table = odps_table
2570
- # This parameter is required.
2571
2746
  self.odps_tunnel_endpoint = odps_tunnel_endpoint
2572
2747
  # This parameter is required.
2573
2748
  self.partition_column = partition_column
2574
2749
  # This parameter is required.
2575
2750
  self.partition_time_format = partition_time_format
2751
+ self.time_format_type = time_format_type
2576
2752
  # This parameter is required.
2577
2753
  self.time_zone = time_zone
2578
2754
 
@@ -2585,8 +2761,12 @@ class MaxComputeExportConfigurationSink(TeaModel):
2585
2761
  return _map
2586
2762
 
2587
2763
  result = dict()
2764
+ if self.buffer_interval is not None:
2765
+ result['bufferInterval'] = self.buffer_interval
2588
2766
  if self.fields is not None:
2589
2767
  result['fields'] = self.fields
2768
+ if self.filter_invalid is not None:
2769
+ result['filterInvalid'] = self.filter_invalid
2590
2770
  if self.odps_access_key_id is not None:
2591
2771
  result['odpsAccessKeyId'] = self.odps_access_key_id
2592
2772
  if self.odps_access_secret is not None:
@@ -2605,14 +2785,20 @@ class MaxComputeExportConfigurationSink(TeaModel):
2605
2785
  result['partitionColumn'] = self.partition_column
2606
2786
  if self.partition_time_format is not None:
2607
2787
  result['partitionTimeFormat'] = self.partition_time_format
2788
+ if self.time_format_type is not None:
2789
+ result['timeFormatType'] = self.time_format_type
2608
2790
  if self.time_zone is not None:
2609
2791
  result['timeZone'] = self.time_zone
2610
2792
  return result
2611
2793
 
2612
2794
  def from_map(self, m: dict = None):
2613
2795
  m = m or dict()
2796
+ if m.get('bufferInterval') is not None:
2797
+ self.buffer_interval = m.get('bufferInterval')
2614
2798
  if m.get('fields') is not None:
2615
2799
  self.fields = m.get('fields')
2800
+ if m.get('filterInvalid') is not None:
2801
+ self.filter_invalid = m.get('filterInvalid')
2616
2802
  if m.get('odpsAccessKeyId') is not None:
2617
2803
  self.odps_access_key_id = m.get('odpsAccessKeyId')
2618
2804
  if m.get('odpsAccessSecret') is not None:
@@ -2631,6 +2817,8 @@ class MaxComputeExportConfigurationSink(TeaModel):
2631
2817
  self.partition_column = m.get('partitionColumn')
2632
2818
  if m.get('partitionTimeFormat') is not None:
2633
2819
  self.partition_time_format = m.get('partitionTimeFormat')
2820
+ if m.get('timeFormatType') is not None:
2821
+ self.time_format_type = m.get('timeFormatType')
2634
2822
  if m.get('timeZone') is not None:
2635
2823
  self.time_zone = m.get('timeZone')
2636
2824
  return self
@@ -2703,6 +2891,7 @@ class MaxComputeExport(TeaModel):
2703
2891
  display_name: str = None,
2704
2892
  last_modified_time: int = None,
2705
2893
  name: str = None,
2894
+ schedule_id: str = None,
2706
2895
  status: str = None,
2707
2896
  ):
2708
2897
  # This parameter is required.
@@ -2714,6 +2903,7 @@ class MaxComputeExport(TeaModel):
2714
2903
  self.last_modified_time = last_modified_time
2715
2904
  # This parameter is required.
2716
2905
  self.name = name
2906
+ self.schedule_id = schedule_id
2717
2907
  self.status = status
2718
2908
 
2719
2909
  def validate(self):
@@ -2738,6 +2928,8 @@ class MaxComputeExport(TeaModel):
2738
2928
  result['lastModifiedTime'] = self.last_modified_time
2739
2929
  if self.name is not None:
2740
2930
  result['name'] = self.name
2931
+ if self.schedule_id is not None:
2932
+ result['scheduleId'] = self.schedule_id
2741
2933
  if self.status is not None:
2742
2934
  result['status'] = self.status
2743
2935
  return result
@@ -2757,6 +2949,8 @@ class MaxComputeExport(TeaModel):
2757
2949
  self.last_modified_time = m.get('lastModifiedTime')
2758
2950
  if m.get('name') is not None:
2759
2951
  self.name = m.get('name')
2952
+ if m.get('scheduleId') is not None:
2953
+ self.schedule_id = m.get('scheduleId')
2760
2954
  if m.get('status') is not None:
2761
2955
  self.status = m.get('status')
2762
2956
  return self
@@ -3346,24 +3540,58 @@ class ProjectSummary(TeaModel):
3346
3540
  return self
3347
3541
 
3348
3542
 
3349
- class SavedSearch(TeaModel):
3543
+ class S3IngestionConfigurationSource(TeaModel):
3350
3544
  def __init__(
3351
3545
  self,
3352
- display_name: str = None,
3353
- logstore: str = None,
3354
- savedsearch_name: str = None,
3355
- search_query: str = None,
3356
- topic: str = None,
3546
+ aws_access_key: str = None,
3547
+ aws_access_key_secret: str = None,
3548
+ aws_region: str = None,
3549
+ aws_sqsqueue_url: str = None,
3550
+ aws_use_sqs: bool = None,
3551
+ bucket: str = None,
3552
+ compression_codec: str = None,
3553
+ encoding: str = None,
3554
+ end_time: int = None,
3555
+ format: Dict[str, Any] = None,
3556
+ interval: str = None,
3557
+ pattern: str = None,
3558
+ prefix: str = None,
3559
+ start_time: int = None,
3560
+ tag_pack_id: bool = None,
3561
+ time_field: str = None,
3562
+ time_format: str = None,
3563
+ time_pattern: str = None,
3564
+ time_zone: str = None,
3565
+ use_aws_sqsonly: bool = None,
3357
3566
  ):
3358
3567
  # This parameter is required.
3359
- self.display_name = display_name
3568
+ self.aws_access_key = aws_access_key
3360
3569
  # This parameter is required.
3361
- self.logstore = logstore
3570
+ self.aws_access_key_secret = aws_access_key_secret
3362
3571
  # This parameter is required.
3363
- self.savedsearch_name = savedsearch_name
3572
+ self.aws_region = aws_region
3573
+ self.aws_sqsqueue_url = aws_sqsqueue_url
3574
+ self.aws_use_sqs = aws_use_sqs
3364
3575
  # This parameter is required.
3365
- self.search_query = search_query
3366
- self.topic = topic
3576
+ self.bucket = bucket
3577
+ # This parameter is required.
3578
+ self.compression_codec = compression_codec
3579
+ # This parameter is required.
3580
+ self.encoding = encoding
3581
+ self.end_time = end_time
3582
+ # This parameter is required.
3583
+ self.format = format
3584
+ # This parameter is required.
3585
+ self.interval = interval
3586
+ self.pattern = pattern
3587
+ self.prefix = prefix
3588
+ self.start_time = start_time
3589
+ self.tag_pack_id = tag_pack_id
3590
+ self.time_field = time_field
3591
+ self.time_format = time_format
3592
+ self.time_pattern = time_pattern
3593
+ self.time_zone = time_zone
3594
+ self.use_aws_sqsonly = use_aws_sqsonly
3367
3595
 
3368
3596
  def validate(self):
3369
3597
  pass
@@ -3374,57 +3602,291 @@ class SavedSearch(TeaModel):
3374
3602
  return _map
3375
3603
 
3376
3604
  result = dict()
3377
- if self.display_name is not None:
3378
- result['displayName'] = self.display_name
3379
- if self.logstore is not None:
3380
- result['logstore'] = self.logstore
3381
- if self.savedsearch_name is not None:
3382
- result['savedsearchName'] = self.savedsearch_name
3383
- if self.search_query is not None:
3384
- result['searchQuery'] = self.search_query
3385
- if self.topic is not None:
3386
- result['topic'] = self.topic
3605
+ if self.aws_access_key is not None:
3606
+ result['awsAccessKey'] = self.aws_access_key
3607
+ if self.aws_access_key_secret is not None:
3608
+ result['awsAccessKeySecret'] = self.aws_access_key_secret
3609
+ if self.aws_region is not None:
3610
+ result['awsRegion'] = self.aws_region
3611
+ if self.aws_sqsqueue_url is not None:
3612
+ result['awsSQSQueueUrl'] = self.aws_sqsqueue_url
3613
+ if self.aws_use_sqs is not None:
3614
+ result['awsUseSQS'] = self.aws_use_sqs
3615
+ if self.bucket is not None:
3616
+ result['bucket'] = self.bucket
3617
+ if self.compression_codec is not None:
3618
+ result['compressionCodec'] = self.compression_codec
3619
+ if self.encoding is not None:
3620
+ result['encoding'] = self.encoding
3621
+ if self.end_time is not None:
3622
+ result['endTime'] = self.end_time
3623
+ if self.format is not None:
3624
+ result['format'] = self.format
3625
+ if self.interval is not None:
3626
+ result['interval'] = self.interval
3627
+ if self.pattern is not None:
3628
+ result['pattern'] = self.pattern
3629
+ if self.prefix is not None:
3630
+ result['prefix'] = self.prefix
3631
+ if self.start_time is not None:
3632
+ result['startTime'] = self.start_time
3633
+ if self.tag_pack_id is not None:
3634
+ result['tagPackId'] = self.tag_pack_id
3635
+ if self.time_field is not None:
3636
+ result['timeField'] = self.time_field
3637
+ if self.time_format is not None:
3638
+ result['timeFormat'] = self.time_format
3639
+ if self.time_pattern is not None:
3640
+ result['timePattern'] = self.time_pattern
3641
+ if self.time_zone is not None:
3642
+ result['timeZone'] = self.time_zone
3643
+ if self.use_aws_sqsonly is not None:
3644
+ result['useAwsSQSOnly'] = self.use_aws_sqsonly
3387
3645
  return result
3388
3646
 
3389
3647
  def from_map(self, m: dict = None):
3390
3648
  m = m or dict()
3391
- if m.get('displayName') is not None:
3392
- self.display_name = m.get('displayName')
3393
- if m.get('logstore') is not None:
3394
- self.logstore = m.get('logstore')
3395
- if m.get('savedsearchName') is not None:
3396
- self.savedsearch_name = m.get('savedsearchName')
3397
- if m.get('searchQuery') is not None:
3398
- self.search_query = m.get('searchQuery')
3399
- if m.get('topic') is not None:
3400
- self.topic = m.get('topic')
3649
+ if m.get('awsAccessKey') is not None:
3650
+ self.aws_access_key = m.get('awsAccessKey')
3651
+ if m.get('awsAccessKeySecret') is not None:
3652
+ self.aws_access_key_secret = m.get('awsAccessKeySecret')
3653
+ if m.get('awsRegion') is not None:
3654
+ self.aws_region = m.get('awsRegion')
3655
+ if m.get('awsSQSQueueUrl') is not None:
3656
+ self.aws_sqsqueue_url = m.get('awsSQSQueueUrl')
3657
+ if m.get('awsUseSQS') is not None:
3658
+ self.aws_use_sqs = m.get('awsUseSQS')
3659
+ if m.get('bucket') is not None:
3660
+ self.bucket = m.get('bucket')
3661
+ if m.get('compressionCodec') is not None:
3662
+ self.compression_codec = m.get('compressionCodec')
3663
+ if m.get('encoding') is not None:
3664
+ self.encoding = m.get('encoding')
3665
+ if m.get('endTime') is not None:
3666
+ self.end_time = m.get('endTime')
3667
+ if m.get('format') is not None:
3668
+ self.format = m.get('format')
3669
+ if m.get('interval') is not None:
3670
+ self.interval = m.get('interval')
3671
+ if m.get('pattern') is not None:
3672
+ self.pattern = m.get('pattern')
3673
+ if m.get('prefix') is not None:
3674
+ self.prefix = m.get('prefix')
3675
+ if m.get('startTime') is not None:
3676
+ self.start_time = m.get('startTime')
3677
+ if m.get('tagPackId') is not None:
3678
+ self.tag_pack_id = m.get('tagPackId')
3679
+ if m.get('timeField') is not None:
3680
+ self.time_field = m.get('timeField')
3681
+ if m.get('timeFormat') is not None:
3682
+ self.time_format = m.get('timeFormat')
3683
+ if m.get('timePattern') is not None:
3684
+ self.time_pattern = m.get('timePattern')
3685
+ if m.get('timeZone') is not None:
3686
+ self.time_zone = m.get('timeZone')
3687
+ if m.get('useAwsSQSOnly') is not None:
3688
+ self.use_aws_sqsonly = m.get('useAwsSQSOnly')
3401
3689
  return self
3402
3690
 
3403
3691
 
3404
- class ScheduledSQLConfiguration(TeaModel):
3692
+ class S3Ingestion(TeaModel):
3405
3693
  def __init__(
3406
3694
  self,
3407
- data_format: str = None,
3408
- dest_endpoint: str = None,
3409
- dest_logstore: str = None,
3410
- dest_project: str = None,
3411
- dest_role_arn: str = None,
3412
- from_time: int = None,
3413
- from_time_expr: str = None,
3414
- max_retries: int = None,
3415
- max_run_time_in_seconds: int = None,
3416
- parameters: Dict[str, Any] = None,
3417
- resource_pool: str = None,
3418
- role_arn: str = None,
3419
- script: str = None,
3420
- source_logstore: str = None,
3421
- sql_type: str = None,
3422
- to_time: int = None,
3423
- to_time_expr: str = None,
3424
- ):
3425
- # This parameter is required.
3426
- self.data_format = data_format
3427
- # This parameter is required.
3695
+ configuration: S3IngestionConfigurationSource = None,
3696
+ create_time: int = None,
3697
+ description: str = None,
3698
+ display_name: str = None,
3699
+ last_modified_time: int = None,
3700
+ name: str = None,
3701
+ schedule: Schedule = None,
3702
+ schedule_id: str = None,
3703
+ status: str = None,
3704
+ ):
3705
+ # This parameter is required.
3706
+ self.configuration = configuration
3707
+ self.create_time = create_time
3708
+ self.description = description
3709
+ # This parameter is required.
3710
+ self.display_name = display_name
3711
+ self.last_modified_time = last_modified_time
3712
+ # This parameter is required.
3713
+ self.name = name
3714
+ # This parameter is required.
3715
+ self.schedule = schedule
3716
+ self.schedule_id = schedule_id
3717
+ self.status = status
3718
+
3719
+ def validate(self):
3720
+ if self.configuration:
3721
+ self.configuration.validate()
3722
+ if self.schedule:
3723
+ self.schedule.validate()
3724
+
3725
+ def to_map(self):
3726
+ _map = super().to_map()
3727
+ if _map is not None:
3728
+ return _map
3729
+
3730
+ result = dict()
3731
+ if self.configuration is not None:
3732
+ result['configuration'] = self.configuration.to_map()
3733
+ if self.create_time is not None:
3734
+ result['createTime'] = self.create_time
3735
+ if self.description is not None:
3736
+ result['description'] = self.description
3737
+ if self.display_name is not None:
3738
+ result['displayName'] = self.display_name
3739
+ if self.last_modified_time is not None:
3740
+ result['lastModifiedTime'] = self.last_modified_time
3741
+ if self.name is not None:
3742
+ result['name'] = self.name
3743
+ if self.schedule is not None:
3744
+ result['schedule'] = self.schedule.to_map()
3745
+ if self.schedule_id is not None:
3746
+ result['scheduleId'] = self.schedule_id
3747
+ if self.status is not None:
3748
+ result['status'] = self.status
3749
+ return result
3750
+
3751
+ def from_map(self, m: dict = None):
3752
+ m = m or dict()
3753
+ if m.get('configuration') is not None:
3754
+ temp_model = S3IngestionConfigurationSource()
3755
+ self.configuration = temp_model.from_map(m['configuration'])
3756
+ if m.get('createTime') is not None:
3757
+ self.create_time = m.get('createTime')
3758
+ if m.get('description') is not None:
3759
+ self.description = m.get('description')
3760
+ if m.get('displayName') is not None:
3761
+ self.display_name = m.get('displayName')
3762
+ if m.get('lastModifiedTime') is not None:
3763
+ self.last_modified_time = m.get('lastModifiedTime')
3764
+ if m.get('name') is not None:
3765
+ self.name = m.get('name')
3766
+ if m.get('schedule') is not None:
3767
+ temp_model = Schedule()
3768
+ self.schedule = temp_model.from_map(m['schedule'])
3769
+ if m.get('scheduleId') is not None:
3770
+ self.schedule_id = m.get('scheduleId')
3771
+ if m.get('status') is not None:
3772
+ self.status = m.get('status')
3773
+ return self
3774
+
3775
+
3776
+ class S3IngestionConfiguration(TeaModel):
3777
+ def __init__(
3778
+ self,
3779
+ logstore: str = None,
3780
+ source: S3IngestionConfigurationSource = None,
3781
+ ):
3782
+ self.logstore = logstore
3783
+ self.source = source
3784
+
3785
+ def validate(self):
3786
+ if self.source:
3787
+ self.source.validate()
3788
+
3789
+ def to_map(self):
3790
+ _map = super().to_map()
3791
+ if _map is not None:
3792
+ return _map
3793
+
3794
+ result = dict()
3795
+ if self.logstore is not None:
3796
+ result['logstore'] = self.logstore
3797
+ if self.source is not None:
3798
+ result['source'] = self.source.to_map()
3799
+ return result
3800
+
3801
+ def from_map(self, m: dict = None):
3802
+ m = m or dict()
3803
+ if m.get('logstore') is not None:
3804
+ self.logstore = m.get('logstore')
3805
+ if m.get('source') is not None:
3806
+ temp_model = S3IngestionConfigurationSource()
3807
+ self.source = temp_model.from_map(m['source'])
3808
+ return self
3809
+
3810
+
3811
+ class SavedSearch(TeaModel):
3812
+ def __init__(
3813
+ self,
3814
+ display_name: str = None,
3815
+ logstore: str = None,
3816
+ savedsearch_name: str = None,
3817
+ search_query: str = None,
3818
+ topic: str = None,
3819
+ ):
3820
+ # This parameter is required.
3821
+ self.display_name = display_name
3822
+ # This parameter is required.
3823
+ self.logstore = logstore
3824
+ # This parameter is required.
3825
+ self.savedsearch_name = savedsearch_name
3826
+ # This parameter is required.
3827
+ self.search_query = search_query
3828
+ self.topic = topic
3829
+
3830
+ def validate(self):
3831
+ pass
3832
+
3833
+ def to_map(self):
3834
+ _map = super().to_map()
3835
+ if _map is not None:
3836
+ return _map
3837
+
3838
+ result = dict()
3839
+ if self.display_name is not None:
3840
+ result['displayName'] = self.display_name
3841
+ if self.logstore is not None:
3842
+ result['logstore'] = self.logstore
3843
+ if self.savedsearch_name is not None:
3844
+ result['savedsearchName'] = self.savedsearch_name
3845
+ if self.search_query is not None:
3846
+ result['searchQuery'] = self.search_query
3847
+ if self.topic is not None:
3848
+ result['topic'] = self.topic
3849
+ return result
3850
+
3851
+ def from_map(self, m: dict = None):
3852
+ m = m or dict()
3853
+ if m.get('displayName') is not None:
3854
+ self.display_name = m.get('displayName')
3855
+ if m.get('logstore') is not None:
3856
+ self.logstore = m.get('logstore')
3857
+ if m.get('savedsearchName') is not None:
3858
+ self.savedsearch_name = m.get('savedsearchName')
3859
+ if m.get('searchQuery') is not None:
3860
+ self.search_query = m.get('searchQuery')
3861
+ if m.get('topic') is not None:
3862
+ self.topic = m.get('topic')
3863
+ return self
3864
+
3865
+
3866
+ class ScheduledSQLConfiguration(TeaModel):
3867
+ def __init__(
3868
+ self,
3869
+ data_format: str = None,
3870
+ dest_endpoint: str = None,
3871
+ dest_logstore: str = None,
3872
+ dest_project: str = None,
3873
+ dest_role_arn: str = None,
3874
+ from_time: int = None,
3875
+ from_time_expr: str = None,
3876
+ max_retries: int = None,
3877
+ max_run_time_in_seconds: int = None,
3878
+ parameters: Dict[str, Any] = None,
3879
+ resource_pool: str = None,
3880
+ role_arn: str = None,
3881
+ script: str = None,
3882
+ source_logstore: str = None,
3883
+ sql_type: str = None,
3884
+ to_time: int = None,
3885
+ to_time_expr: str = None,
3886
+ ):
3887
+ # This parameter is required.
3888
+ self.data_format = data_format
3889
+ # This parameter is required.
3428
3890
  self.dest_endpoint = dest_endpoint
3429
3891
  # This parameter is required.
3430
3892
  self.dest_logstore = dest_logstore
@@ -4386,9 +4848,11 @@ class Project(TeaModel):
4386
4848
  data_redundancy_type: str = None,
4387
4849
  description: str = None,
4388
4850
  last_modify_time: str = None,
4851
+ location: str = None,
4389
4852
  owner: str = None,
4390
4853
  project_name: str = None,
4391
4854
  quota: Dict[str, Any] = None,
4855
+ recycle_bin_enabled: bool = None,
4392
4856
  region: str = None,
4393
4857
  resource_group_id: str = None,
4394
4858
  status: str = None,
@@ -4398,10 +4862,12 @@ class Project(TeaModel):
4398
4862
  # This parameter is required.
4399
4863
  self.description = description
4400
4864
  self.last_modify_time = last_modify_time
4865
+ self.location = location
4401
4866
  self.owner = owner
4402
4867
  # This parameter is required.
4403
4868
  self.project_name = project_name
4404
4869
  self.quota = quota
4870
+ self.recycle_bin_enabled = recycle_bin_enabled
4405
4871
  self.region = region
4406
4872
  self.resource_group_id = resource_group_id
4407
4873
  self.status = status
@@ -4423,12 +4889,16 @@ class Project(TeaModel):
4423
4889
  result['description'] = self.description
4424
4890
  if self.last_modify_time is not None:
4425
4891
  result['lastModifyTime'] = self.last_modify_time
4892
+ if self.location is not None:
4893
+ result['location'] = self.location
4426
4894
  if self.owner is not None:
4427
4895
  result['owner'] = self.owner
4428
4896
  if self.project_name is not None:
4429
4897
  result['projectName'] = self.project_name
4430
4898
  if self.quota is not None:
4431
4899
  result['quota'] = self.quota
4900
+ if self.recycle_bin_enabled is not None:
4901
+ result['recycleBinEnabled'] = self.recycle_bin_enabled
4432
4902
  if self.region is not None:
4433
4903
  result['region'] = self.region
4434
4904
  if self.resource_group_id is not None:
@@ -4447,12 +4917,16 @@ class Project(TeaModel):
4447
4917
  self.description = m.get('description')
4448
4918
  if m.get('lastModifyTime') is not None:
4449
4919
  self.last_modify_time = m.get('lastModifyTime')
4920
+ if m.get('location') is not None:
4921
+ self.location = m.get('location')
4450
4922
  if m.get('owner') is not None:
4451
4923
  self.owner = m.get('owner')
4452
4924
  if m.get('projectName') is not None:
4453
4925
  self.project_name = m.get('projectName')
4454
4926
  if m.get('quota') is not None:
4455
4927
  self.quota = m.get('quota')
4928
+ if m.get('recycleBinEnabled') is not None:
4929
+ self.recycle_bin_enabled = m.get('recycleBinEnabled')
4456
4930
  if m.get('region') is not None:
4457
4931
  self.region = m.get('region')
4458
4932
  if m.get('resourceGroupId') is not None:
@@ -4579,6 +5053,85 @@ class ApplyConfigToMachineGroupResponse(TeaModel):
4579
5053
  return self
4580
5054
 
4581
5055
 
5056
+ class CallAiToolsRequest(TeaModel):
5057
+ def __init__(
5058
+ self,
5059
+ params: Dict[str, str] = None,
5060
+ region_id: str = None,
5061
+ tool_name: str = None,
5062
+ ):
5063
+ self.params = params
5064
+ self.region_id = region_id
5065
+ # This parameter is required.
5066
+ self.tool_name = tool_name
5067
+
5068
+ def validate(self):
5069
+ pass
5070
+
5071
+ def to_map(self):
5072
+ _map = super().to_map()
5073
+ if _map is not None:
5074
+ return _map
5075
+
5076
+ result = dict()
5077
+ if self.params is not None:
5078
+ result['params'] = self.params
5079
+ if self.region_id is not None:
5080
+ result['regionId'] = self.region_id
5081
+ if self.tool_name is not None:
5082
+ result['toolName'] = self.tool_name
5083
+ return result
5084
+
5085
+ def from_map(self, m: dict = None):
5086
+ m = m or dict()
5087
+ if m.get('params') is not None:
5088
+ self.params = m.get('params')
5089
+ if m.get('regionId') is not None:
5090
+ self.region_id = m.get('regionId')
5091
+ if m.get('toolName') is not None:
5092
+ self.tool_name = m.get('toolName')
5093
+ return self
5094
+
5095
+
5096
+ class CallAiToolsResponse(TeaModel):
5097
+ def __init__(
5098
+ self,
5099
+ headers: Dict[str, str] = None,
5100
+ status_code: int = None,
5101
+ body: str = None,
5102
+ ):
5103
+ self.headers = headers
5104
+ self.status_code = status_code
5105
+ self.body = body
5106
+
5107
+ def validate(self):
5108
+ pass
5109
+
5110
+ def to_map(self):
5111
+ _map = super().to_map()
5112
+ if _map is not None:
5113
+ return _map
5114
+
5115
+ result = dict()
5116
+ if self.headers is not None:
5117
+ result['headers'] = self.headers
5118
+ if self.status_code is not None:
5119
+ result['statusCode'] = self.status_code
5120
+ if self.body is not None:
5121
+ result['body'] = self.body
5122
+ return result
5123
+
5124
+ def from_map(self, m: dict = None):
5125
+ m = m or dict()
5126
+ if m.get('headers') is not None:
5127
+ self.headers = m.get('headers')
5128
+ if m.get('statusCode') is not None:
5129
+ self.status_code = m.get('statusCode')
5130
+ if m.get('body') is not None:
5131
+ self.body = m.get('body')
5132
+ return self
5133
+
5134
+
4582
5135
  class ChangeResourceGroupRequest(TeaModel):
4583
5136
  def __init__(
4584
5137
  self,
@@ -4827,7 +5380,88 @@ class ConsumerGroupUpdateCheckPointResponse(TeaModel):
4827
5380
  return self
4828
5381
 
4829
5382
 
4830
- class CreateAlertRequest(TeaModel):
5383
+ class CreateAgentInstanceConfigRequest(TeaModel):
5384
+ def __init__(
5385
+ self,
5386
+ config: str = None,
5387
+ config_matcher: str = None,
5388
+ config_name: str = None,
5389
+ is_gray: bool = None,
5390
+ ):
5391
+ # This parameter is required.
5392
+ self.config = config
5393
+ # This parameter is required.
5394
+ self.config_matcher = config_matcher
5395
+ # This parameter is required.
5396
+ self.config_name = config_name
5397
+ self.is_gray = is_gray
5398
+
5399
+ def validate(self):
5400
+ pass
5401
+
5402
+ def to_map(self):
5403
+ _map = super().to_map()
5404
+ if _map is not None:
5405
+ return _map
5406
+
5407
+ result = dict()
5408
+ if self.config is not None:
5409
+ result['config'] = self.config
5410
+ if self.config_matcher is not None:
5411
+ result['configMatcher'] = self.config_matcher
5412
+ if self.config_name is not None:
5413
+ result['configName'] = self.config_name
5414
+ if self.is_gray is not None:
5415
+ result['isGray'] = self.is_gray
5416
+ return result
5417
+
5418
+ def from_map(self, m: dict = None):
5419
+ m = m or dict()
5420
+ if m.get('config') is not None:
5421
+ self.config = m.get('config')
5422
+ if m.get('configMatcher') is not None:
5423
+ self.config_matcher = m.get('configMatcher')
5424
+ if m.get('configName') is not None:
5425
+ self.config_name = m.get('configName')
5426
+ if m.get('isGray') is not None:
5427
+ self.is_gray = m.get('isGray')
5428
+ return self
5429
+
5430
+
5431
+ class CreateAgentInstanceConfigResponse(TeaModel):
5432
+ def __init__(
5433
+ self,
5434
+ headers: Dict[str, str] = None,
5435
+ status_code: int = None,
5436
+ ):
5437
+ self.headers = headers
5438
+ self.status_code = status_code
5439
+
5440
+ def validate(self):
5441
+ pass
5442
+
5443
+ def to_map(self):
5444
+ _map = super().to_map()
5445
+ if _map is not None:
5446
+ return _map
5447
+
5448
+ result = dict()
5449
+ if self.headers is not None:
5450
+ result['headers'] = self.headers
5451
+ if self.status_code is not None:
5452
+ result['statusCode'] = self.status_code
5453
+ return result
5454
+
5455
+ def from_map(self, m: dict = None):
5456
+ m = m or dict()
5457
+ if m.get('headers') is not None:
5458
+ self.headers = m.get('headers')
5459
+ if m.get('statusCode') is not None:
5460
+ self.status_code = m.get('statusCode')
5461
+ return self
5462
+
5463
+
5464
+ class CreateAlertRequest(TeaModel):
4831
5465
  def __init__(
4832
5466
  self,
4833
5467
  configuration: AlertConfiguration = None,
@@ -5771,7 +6405,7 @@ class CreateLogStoreRequest(TeaModel):
5771
6405
  # * The name must be unique in a project.
5772
6406
  # * The name can contain only lowercase letters, digits, hyphens (-), and underscores (_).
5773
6407
  # * The name must start and end with a lowercase letter or a digit.
5774
- # * The name must be 3 to 63 characters in length.
6408
+ # * The name must be 2 to 63 characters in length.
5775
6409
  #
5776
6410
  # This parameter is required.
5777
6411
  self.logstore_name = logstore_name
@@ -5784,6 +6418,7 @@ class CreateLogStoreRequest(TeaModel):
5784
6418
  # * **standard**: Standard Logstore. This type of Logstore supports the log analysis feature and is suitable for scenarios such as real-time monitoring and interactive analysis. You can also use this type of Logstore to build a comprehensive observability system.
5785
6419
  # * **query**: Query Logstore. This type of Logstore supports high-performance queries. The index traffic fee of a Query Logstore is approximately half that of a Standard Logstore. Query Logstores do not support SQL analysis. Query Logstores are suitable for scenarios in which the amount of data is large, the log retention period is long, or log analysis is not required. If logs are stored for weeks or months, the log retention period is considered long.
5786
6420
  self.mode = mode
6421
+ # IngestProcessor ID
5787
6422
  self.processor_id = processor_id
5788
6423
  # The number of shards.
5789
6424
  #
@@ -6044,24 +6679,51 @@ class CreateLogtailPipelineConfigRequest(TeaModel):
6044
6679
  processors: List[Dict[str, Any]] = None,
6045
6680
  ):
6046
6681
  # The aggregation plug-ins.
6682
+ #
6683
+ # > This parameter takes effect only when extended plug-ins are used. You can use only one aggregation plug-in.
6047
6684
  self.aggregators = aggregators
6048
6685
  # The name of the configuration.
6049
6686
  #
6687
+ # > The name of the configuration must be unique in the project to which the configuration belongs. After the configuration is created, you cannot change the name of the configuration. The name must meet the following requirements:
6688
+ #
6689
+ # * The name can contain only lowercase letters, digits, hyphens (-), and underscores (_).
6690
+ #
6691
+ # * The name must start and end with a lowercase letter or a digit.
6692
+ #
6693
+ # * The name must be 2 to 128 characters in length.
6694
+ #
6050
6695
  # This parameter is required.
6051
6696
  self.config_name = config_name
6052
- # The data output plug-ins.
6697
+ # The output plug-ins.
6698
+ #
6699
+ # > You can configure only one output plug-in.
6053
6700
  #
6054
6701
  # This parameter is required.
6055
6702
  self.flushers = flushers
6056
- # The global configuration.
6703
+ # The global settings.
6057
6704
  self.global_ = global_
6058
- # The data source plug-ins.
6705
+ # The input plug-ins.
6706
+ #
6707
+ # > You can configure only one input plug-in.
6059
6708
  #
6060
6709
  # This parameter is required.
6061
6710
  self.inputs = inputs
6062
- # The sample log.
6711
+ # The sample log. You can specify multiple sample logs.
6063
6712
  self.log_sample = log_sample
6064
6713
  # The processing plug-ins.
6714
+ #
6715
+ # > Logtail plug-ins for data processing are classified into native plug-ins and extended plug-ins. For more information, see [Overview of Logtail plug-ins for data processing](https://help.aliyun.com/document_detail/64957.html).
6716
+ #
6717
+ # >
6718
+ #
6719
+ # * You can use native plug-ins only to collect text logs.
6720
+ #
6721
+ # * You cannot add native plug-ins and extended plug-ins at a time.
6722
+ #
6723
+ # * When you add native plug-ins, take note of the following items:
6724
+ #
6725
+ # * You must add one of the following Logtail plug-ins for data processing as the first plug-in: Data Parsing (Regex Mode), Data Parsing (Delimiter Mode), Data Parsing (JSON Mode), Data Parsing (NGINX Mode), Data Parsing (Apache Mode), and Data Parsing (IIS Mode).
6726
+ # * After you add the first plug-in, you can add one Time Parsing plug-in, one Data Filtering plug-in, and multiple Data Masking plug-ins.
6065
6727
  self.processors = processors
6066
6728
 
6067
6729
  def validate(self):
@@ -6284,10 +6946,102 @@ class CreateMachineGroupResponse(TeaModel):
6284
6946
  return self
6285
6947
 
6286
6948
 
6949
+ class CreateMaxComputeExportRequest(TeaModel):
6950
+ def __init__(
6951
+ self,
6952
+ configuration: MaxComputeExportConfiguration = None,
6953
+ description: str = None,
6954
+ display_name: str = None,
6955
+ name: str = None,
6956
+ ):
6957
+ # The setting of the MaxCompute data shipping job.
6958
+ #
6959
+ # This parameter is required.
6960
+ self.configuration = configuration
6961
+ # The description of the MaxCompute data shipping job.
6962
+ self.description = description
6963
+ # The display name of the MaxCompute data shipping job.
6964
+ #
6965
+ # This parameter is required.
6966
+ self.display_name = display_name
6967
+ # The unique identifier of the MaxCompute data shipping job.
6968
+ #
6969
+ # This parameter is required.
6970
+ self.name = name
6971
+
6972
+ def validate(self):
6973
+ if self.configuration:
6974
+ self.configuration.validate()
6975
+
6976
+ def to_map(self):
6977
+ _map = super().to_map()
6978
+ if _map is not None:
6979
+ return _map
6980
+
6981
+ result = dict()
6982
+ if self.configuration is not None:
6983
+ result['configuration'] = self.configuration.to_map()
6984
+ if self.description is not None:
6985
+ result['description'] = self.description
6986
+ if self.display_name is not None:
6987
+ result['displayName'] = self.display_name
6988
+ if self.name is not None:
6989
+ result['name'] = self.name
6990
+ return result
6991
+
6992
+ def from_map(self, m: dict = None):
6993
+ m = m or dict()
6994
+ if m.get('configuration') is not None:
6995
+ temp_model = MaxComputeExportConfiguration()
6996
+ self.configuration = temp_model.from_map(m['configuration'])
6997
+ if m.get('description') is not None:
6998
+ self.description = m.get('description')
6999
+ if m.get('displayName') is not None:
7000
+ self.display_name = m.get('displayName')
7001
+ if m.get('name') is not None:
7002
+ self.name = m.get('name')
7003
+ return self
7004
+
7005
+
7006
+ class CreateMaxComputeExportResponse(TeaModel):
7007
+ def __init__(
7008
+ self,
7009
+ headers: Dict[str, str] = None,
7010
+ status_code: int = None,
7011
+ ):
7012
+ self.headers = headers
7013
+ self.status_code = status_code
7014
+
7015
+ def validate(self):
7016
+ pass
7017
+
7018
+ def to_map(self):
7019
+ _map = super().to_map()
7020
+ if _map is not None:
7021
+ return _map
7022
+
7023
+ result = dict()
7024
+ if self.headers is not None:
7025
+ result['headers'] = self.headers
7026
+ if self.status_code is not None:
7027
+ result['statusCode'] = self.status_code
7028
+ return result
7029
+
7030
+ def from_map(self, m: dict = None):
7031
+ m = m or dict()
7032
+ if m.get('headers') is not None:
7033
+ self.headers = m.get('headers')
7034
+ if m.get('statusCode') is not None:
7035
+ self.status_code = m.get('statusCode')
7036
+ return self
7037
+
7038
+
6287
7039
  class CreateMetricStoreRequest(TeaModel):
6288
7040
  def __init__(
6289
7041
  self,
6290
7042
  auto_split: bool = None,
7043
+ hot_ttl: int = None,
7044
+ infrequent_access_ttl: int = None,
6291
7045
  max_split_shard: int = None,
6292
7046
  metric_type: str = None,
6293
7047
  mode: str = None,
@@ -6297,6 +7051,8 @@ class CreateMetricStoreRequest(TeaModel):
6297
7051
  ):
6298
7052
  # Specifies whether to enable automatic sharding.
6299
7053
  self.auto_split = auto_split
7054
+ self.hot_ttl = hot_ttl
7055
+ self.infrequent_access_ttl = infrequent_access_ttl
6300
7056
  # The maximum number of shards into which existing shards can be automatically split. This parameter is valid only when you set the autoSplit parameter to true.
6301
7057
  self.max_split_shard = max_split_shard
6302
7058
  # The type of the metric data. Example: prometheus.
@@ -6327,6 +7083,10 @@ class CreateMetricStoreRequest(TeaModel):
6327
7083
  result = dict()
6328
7084
  if self.auto_split is not None:
6329
7085
  result['autoSplit'] = self.auto_split
7086
+ if self.hot_ttl is not None:
7087
+ result['hot_ttl'] = self.hot_ttl
7088
+ if self.infrequent_access_ttl is not None:
7089
+ result['infrequentAccessTTL'] = self.infrequent_access_ttl
6330
7090
  if self.max_split_shard is not None:
6331
7091
  result['maxSplitShard'] = self.max_split_shard
6332
7092
  if self.metric_type is not None:
@@ -6345,6 +7105,10 @@ class CreateMetricStoreRequest(TeaModel):
6345
7105
  m = m or dict()
6346
7106
  if m.get('autoSplit') is not None:
6347
7107
  self.auto_split = m.get('autoSplit')
7108
+ if m.get('hot_ttl') is not None:
7109
+ self.hot_ttl = m.get('hot_ttl')
7110
+ if m.get('infrequentAccessTTL') is not None:
7111
+ self.infrequent_access_ttl = m.get('infrequentAccessTTL')
6348
7112
  if m.get('maxSplitShard') is not None:
6349
7113
  self.max_split_shard = m.get('maxSplitShard')
6350
7114
  if m.get('metricType') is not None:
@@ -6582,13 +7346,21 @@ class CreateOSSIngestionRequest(TeaModel):
6582
7346
  name: str = None,
6583
7347
  schedule: Schedule = None,
6584
7348
  ):
7349
+ # The configurations of the OSS data import job.
7350
+ #
6585
7351
  # This parameter is required.
6586
7352
  self.configuration = configuration
7353
+ # The description of the job.
6587
7354
  self.description = description
7355
+ # The display name.
7356
+ #
6588
7357
  # This parameter is required.
6589
7358
  self.display_name = display_name
7359
+ # The name of the OSS data import job.
7360
+ #
6590
7361
  # This parameter is required.
6591
7362
  self.name = name
7363
+ # The scheduling type. By default, you do not need to specify this parameter. If you want to import data at regular intervals, such as importing data every Monday at 08: 00., you can specify a cron expression.
6592
7364
  self.schedule = schedule
6593
7365
 
6594
7366
  def validate(self):
@@ -6876,23 +7648,34 @@ class CreateProjectRequest(TeaModel):
6876
7648
  data_redundancy_type: str = None,
6877
7649
  description: str = None,
6878
7650
  project_name: str = None,
7651
+ recycle_bin_enabled: bool = None,
6879
7652
  resource_group_id: str = None,
6880
7653
  ):
6881
- # Data redundancy type
7654
+ # The disaster recovery type. Valid values:
7655
+ #
7656
+ # * LRS: locally redundant storage
7657
+ # * ZRS: zone-redundant storage
6882
7658
  self.data_redundancy_type = data_redundancy_type
6883
7659
  # The description of the project.
6884
7660
  #
6885
7661
  # This parameter is required.
6886
7662
  self.description = description
6887
- # 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:
7663
+ # The project name must be unique in a region. You cannot change the name after you create the project. The name must meet the following requirements:
6888
7664
  #
6889
- # * The name must be unique.
6890
- # * It can contain only lowercase letters, digits, and hyphens (-).
6891
- # * It must start and end with a lowercase letter or a digit.
6892
- # * It must be 3 to 63 characters in length.
7665
+ # * The name must be globally unique.
7666
+ # * The name can contain only lowercase letters, digits, and hyphens (-).
7667
+ # * The name must start and end with a lowercase letter or a digit.
7668
+ # * The name must be 3 to 63 characters in length.
6893
7669
  #
6894
7670
  # This parameter is required.
6895
7671
  self.project_name = project_name
7672
+ # Specifies whether to enable the recycle bin feature.
7673
+ #
7674
+ # Valid values:
7675
+ #
7676
+ # * true
7677
+ # * false
7678
+ self.recycle_bin_enabled = recycle_bin_enabled
6896
7679
  # The ID of the resource group.
6897
7680
  self.resource_group_id = resource_group_id
6898
7681
 
@@ -6911,6 +7694,8 @@ class CreateProjectRequest(TeaModel):
6911
7694
  result['description'] = self.description
6912
7695
  if self.project_name is not None:
6913
7696
  result['projectName'] = self.project_name
7697
+ if self.recycle_bin_enabled is not None:
7698
+ result['recycleBinEnabled'] = self.recycle_bin_enabled
6914
7699
  if self.resource_group_id is not None:
6915
7700
  result['resourceGroupId'] = self.resource_group_id
6916
7701
  return result
@@ -6923,6 +7708,8 @@ class CreateProjectRequest(TeaModel):
6923
7708
  self.description = m.get('description')
6924
7709
  if m.get('projectName') is not None:
6925
7710
  self.project_name = m.get('projectName')
7711
+ if m.get('recycleBinEnabled') is not None:
7712
+ self.recycle_bin_enabled = m.get('recycleBinEnabled')
6926
7713
  if m.get('resourceGroupId') is not None:
6927
7714
  self.resource_group_id = m.get('resourceGroupId')
6928
7715
  return self
@@ -7503,8 +8290,12 @@ class CreateTicketRequest(TeaModel):
7503
8290
  access_token_expiration_time: int = None,
7504
8291
  expiration_time: int = None,
7505
8292
  ):
8293
+ # * The validity period of the access token. Unit: seconds. Default value: 86400, which specifies one day. Valid values: 0 to 86400.
8294
+ # * The validity period of the access token is the smaller value between accessTokenExpirationTime and expirationTime.
8295
+ # * If you use a Security Token Service (STS) token to call this operation, the validity period of the access token is the smallest value among accessTokenExpirationTime, expirationTime, and the validity period of the STS token.
7506
8296
  self.access_token_expiration_time = access_token_expiration_time
7507
- # The validity period of the ticket that is used for logon-free access. Unit: seconds. Default value: 86400. Maximum value: 2592000. The value 86400 specifies one day.
8297
+ # * You must use the Simple Log Service endpoint for the China (Shanghai) or Singapore region to call the CreateTicket operation. After you obtain the ticket, you can use the ticket regardless of the region.
8298
+ # * The validity period for the URL of the console page that you want to embed. Unit: seconds. Default value: 86400, which specifies one day. Valid values: 0 to 2592000. The value 2592000 specifies 30 days.
7508
8299
  self.expiration_time = expiration_time
7509
8300
 
7510
8301
  def validate(self):
@@ -7600,14 +8391,12 @@ class CreateTicketResponse(TeaModel):
7600
8391
  return self
7601
8392
 
7602
8393
 
7603
- class DeleteAlertResponse(TeaModel):
8394
+ class DeleteAgentInstanceConfigRequest(TeaModel):
7604
8395
  def __init__(
7605
8396
  self,
7606
- headers: Dict[str, str] = None,
7607
- status_code: int = None,
8397
+ is_gray: bool = None,
7608
8398
  ):
7609
- self.headers = headers
7610
- self.status_code = status_code
8399
+ self.is_gray = is_gray
7611
8400
 
7612
8401
  def validate(self):
7613
8402
  pass
@@ -7618,22 +8407,18 @@ class DeleteAlertResponse(TeaModel):
7618
8407
  return _map
7619
8408
 
7620
8409
  result = dict()
7621
- if self.headers is not None:
7622
- result['headers'] = self.headers
7623
- if self.status_code is not None:
7624
- result['statusCode'] = self.status_code
8410
+ if self.is_gray is not None:
8411
+ result['isGray'] = self.is_gray
7625
8412
  return result
7626
8413
 
7627
8414
  def from_map(self, m: dict = None):
7628
8415
  m = m or dict()
7629
- if m.get('headers') is not None:
7630
- self.headers = m.get('headers')
7631
- if m.get('statusCode') is not None:
7632
- self.status_code = m.get('statusCode')
8416
+ if m.get('isGray') is not None:
8417
+ self.is_gray = m.get('isGray')
7633
8418
  return self
7634
8419
 
7635
8420
 
7636
- class DeleteAnnotationDataResponse(TeaModel):
8421
+ class DeleteAgentInstanceConfigResponse(TeaModel):
7637
8422
  def __init__(
7638
8423
  self,
7639
8424
  headers: Dict[str, str] = None,
@@ -7666,7 +8451,7 @@ class DeleteAnnotationDataResponse(TeaModel):
7666
8451
  return self
7667
8452
 
7668
8453
 
7669
- class DeleteAnnotationDataSetResponse(TeaModel):
8454
+ class DeleteAlertResponse(TeaModel):
7670
8455
  def __init__(
7671
8456
  self,
7672
8457
  headers: Dict[str, str] = None,
@@ -7699,7 +8484,7 @@ class DeleteAnnotationDataSetResponse(TeaModel):
7699
8484
  return self
7700
8485
 
7701
8486
 
7702
- class DeleteAnnotationLabelResponse(TeaModel):
8487
+ class DeleteAnnotationDataResponse(TeaModel):
7703
8488
  def __init__(
7704
8489
  self,
7705
8490
  headers: Dict[str, str] = None,
@@ -7732,14 +8517,14 @@ class DeleteAnnotationLabelResponse(TeaModel):
7732
8517
  return self
7733
8518
 
7734
8519
 
7735
- class DeleteCollectionPolicyRequest(TeaModel):
8520
+ class DeleteAnnotationDataSetResponse(TeaModel):
7736
8521
  def __init__(
7737
8522
  self,
7738
- data_code: str = None,
7739
- product_code: str = None,
8523
+ headers: Dict[str, str] = None,
8524
+ status_code: int = None,
7740
8525
  ):
7741
- self.data_code = data_code
7742
- self.product_code = product_code
8526
+ self.headers = headers
8527
+ self.status_code = status_code
7743
8528
 
7744
8529
  def validate(self):
7745
8530
  pass
@@ -7750,22 +8535,22 @@ class DeleteCollectionPolicyRequest(TeaModel):
7750
8535
  return _map
7751
8536
 
7752
8537
  result = dict()
7753
- if self.data_code is not None:
7754
- result['dataCode'] = self.data_code
7755
- if self.product_code is not None:
7756
- result['productCode'] = self.product_code
8538
+ if self.headers is not None:
8539
+ result['headers'] = self.headers
8540
+ if self.status_code is not None:
8541
+ result['statusCode'] = self.status_code
7757
8542
  return result
7758
8543
 
7759
8544
  def from_map(self, m: dict = None):
7760
8545
  m = m or dict()
7761
- if m.get('dataCode') is not None:
7762
- self.data_code = m.get('dataCode')
7763
- if m.get('productCode') is not None:
7764
- self.product_code = m.get('productCode')
8546
+ if m.get('headers') is not None:
8547
+ self.headers = m.get('headers')
8548
+ if m.get('statusCode') is not None:
8549
+ self.status_code = m.get('statusCode')
7765
8550
  return self
7766
8551
 
7767
8552
 
7768
- class DeleteCollectionPolicyResponse(TeaModel):
8553
+ class DeleteAnnotationLabelResponse(TeaModel):
7769
8554
  def __init__(
7770
8555
  self,
7771
8556
  headers: Dict[str, str] = None,
@@ -7798,10 +8583,76 @@ class DeleteCollectionPolicyResponse(TeaModel):
7798
8583
  return self
7799
8584
 
7800
8585
 
7801
- class DeleteConfigResponse(TeaModel):
8586
+ class DeleteCollectionPolicyRequest(TeaModel):
7802
8587
  def __init__(
7803
8588
  self,
7804
- headers: Dict[str, str] = None,
8589
+ data_code: str = None,
8590
+ product_code: str = None,
8591
+ ):
8592
+ self.data_code = data_code
8593
+ self.product_code = product_code
8594
+
8595
+ def validate(self):
8596
+ pass
8597
+
8598
+ def to_map(self):
8599
+ _map = super().to_map()
8600
+ if _map is not None:
8601
+ return _map
8602
+
8603
+ result = dict()
8604
+ if self.data_code is not None:
8605
+ result['dataCode'] = self.data_code
8606
+ if self.product_code is not None:
8607
+ result['productCode'] = self.product_code
8608
+ return result
8609
+
8610
+ def from_map(self, m: dict = None):
8611
+ m = m or dict()
8612
+ if m.get('dataCode') is not None:
8613
+ self.data_code = m.get('dataCode')
8614
+ if m.get('productCode') is not None:
8615
+ self.product_code = m.get('productCode')
8616
+ return self
8617
+
8618
+
8619
+ class DeleteCollectionPolicyResponse(TeaModel):
8620
+ def __init__(
8621
+ self,
8622
+ headers: Dict[str, str] = None,
8623
+ status_code: int = None,
8624
+ ):
8625
+ self.headers = headers
8626
+ self.status_code = status_code
8627
+
8628
+ def validate(self):
8629
+ pass
8630
+
8631
+ def to_map(self):
8632
+ _map = super().to_map()
8633
+ if _map is not None:
8634
+ return _map
8635
+
8636
+ result = dict()
8637
+ if self.headers is not None:
8638
+ result['headers'] = self.headers
8639
+ if self.status_code is not None:
8640
+ result['statusCode'] = self.status_code
8641
+ return result
8642
+
8643
+ def from_map(self, m: dict = None):
8644
+ m = m or dict()
8645
+ if m.get('headers') is not None:
8646
+ self.headers = m.get('headers')
8647
+ if m.get('statusCode') is not None:
8648
+ self.status_code = m.get('statusCode')
8649
+ return self
8650
+
8651
+
8652
+ class DeleteConfigResponse(TeaModel):
8653
+ def __init__(
8654
+ self,
8655
+ headers: Dict[str, str] = None,
7805
8656
  status_code: int = None,
7806
8657
  ):
7807
8658
  self.headers = headers
@@ -8062,6 +8913,39 @@ class DeleteIndexResponse(TeaModel):
8062
8913
  return self
8063
8914
 
8064
8915
 
8916
+ class DeleteIngestProcessorResponse(TeaModel):
8917
+ def __init__(
8918
+ self,
8919
+ headers: Dict[str, str] = None,
8920
+ status_code: int = None,
8921
+ ):
8922
+ self.headers = headers
8923
+ self.status_code = status_code
8924
+
8925
+ def validate(self):
8926
+ pass
8927
+
8928
+ def to_map(self):
8929
+ _map = super().to_map()
8930
+ if _map is not None:
8931
+ return _map
8932
+
8933
+ result = dict()
8934
+ if self.headers is not None:
8935
+ result['headers'] = self.headers
8936
+ if self.status_code is not None:
8937
+ result['statusCode'] = self.status_code
8938
+ return result
8939
+
8940
+ def from_map(self, m: dict = None):
8941
+ m = m or dict()
8942
+ if m.get('headers') is not None:
8943
+ self.headers = m.get('headers')
8944
+ if m.get('statusCode') is not None:
8945
+ self.status_code = m.get('statusCode')
8946
+ return self
8947
+
8948
+
8065
8949
  class DeleteLogStoreResponse(TeaModel):
8066
8950
  def __init__(
8067
8951
  self,
@@ -8194,6 +9078,39 @@ class DeleteMachineGroupResponse(TeaModel):
8194
9078
  return self
8195
9079
 
8196
9080
 
9081
+ class DeleteMaxComputeExportResponse(TeaModel):
9082
+ def __init__(
9083
+ self,
9084
+ headers: Dict[str, str] = None,
9085
+ status_code: int = None,
9086
+ ):
9087
+ self.headers = headers
9088
+ self.status_code = status_code
9089
+
9090
+ def validate(self):
9091
+ pass
9092
+
9093
+ def to_map(self):
9094
+ _map = super().to_map()
9095
+ if _map is not None:
9096
+ return _map
9097
+
9098
+ result = dict()
9099
+ if self.headers is not None:
9100
+ result['headers'] = self.headers
9101
+ if self.status_code is not None:
9102
+ result['statusCode'] = self.status_code
9103
+ return result
9104
+
9105
+ def from_map(self, m: dict = None):
9106
+ m = m or dict()
9107
+ if m.get('headers') is not None:
9108
+ self.headers = m.get('headers')
9109
+ if m.get('statusCode') is not None:
9110
+ self.status_code = m.get('statusCode')
9111
+ return self
9112
+
9113
+
8197
9114
  class DeleteMetricStoreResponse(TeaModel):
8198
9115
  def __init__(
8199
9116
  self,
@@ -8326,6 +9243,33 @@ class DeleteOSSIngestionResponse(TeaModel):
8326
9243
  return self
8327
9244
 
8328
9245
 
9246
+ class DeleteProjectRequest(TeaModel):
9247
+ def __init__(
9248
+ self,
9249
+ force_delete: bool = None,
9250
+ ):
9251
+ self.force_delete = force_delete
9252
+
9253
+ def validate(self):
9254
+ pass
9255
+
9256
+ def to_map(self):
9257
+ _map = super().to_map()
9258
+ if _map is not None:
9259
+ return _map
9260
+
9261
+ result = dict()
9262
+ if self.force_delete is not None:
9263
+ result['forceDelete'] = self.force_delete
9264
+ return result
9265
+
9266
+ def from_map(self, m: dict = None):
9267
+ m = m or dict()
9268
+ if m.get('forceDelete') is not None:
9269
+ self.force_delete = m.get('forceDelete')
9270
+ return self
9271
+
9272
+
8329
9273
  class DeleteProjectResponse(TeaModel):
8330
9274
  def __init__(
8331
9275
  self,
@@ -8496,6 +9440,13 @@ class DescribeRegionsRequest(TeaModel):
8496
9440
  self,
8497
9441
  language: str = None,
8498
9442
  ):
9443
+ # The language of the localName parameter that is returned.
9444
+ #
9445
+ # Valid values:
9446
+ #
9447
+ # * ja
9448
+ # * en
9449
+ # * zh
8499
9450
  self.language = language
8500
9451
 
8501
9452
  def validate(self):
@@ -8526,9 +9477,13 @@ class DescribeRegionsResponseBodyRegions(TeaModel):
8526
9477
  local_name: str = None,
8527
9478
  region: str = None,
8528
9479
  ):
9480
+ # The public endpoint of Simple Log Service.
8529
9481
  self.internet_endpoint = internet_endpoint
9482
+ # The internal endpoint of Simple Log Service.
8530
9483
  self.intranet_endpoint = intranet_endpoint
9484
+ # The name of the Simple Log Service region.
8531
9485
  self.local_name = local_name
9486
+ # SLS region
8532
9487
  self.region = region
8533
9488
 
8534
9489
  def validate(self):
@@ -8771,6 +9726,104 @@ class EnableScheduledSQLResponse(TeaModel):
8771
9726
  return self
8772
9727
 
8773
9728
 
9729
+ class GetAgentInstanceConfigResponseBody(TeaModel):
9730
+ def __init__(
9731
+ self,
9732
+ config: str = None,
9733
+ config_matcher: str = None,
9734
+ config_name: str = None,
9735
+ create_time: int = None,
9736
+ is_gray: bool = None,
9737
+ last_modify_time: int = None,
9738
+ ):
9739
+ self.config = config
9740
+ self.config_matcher = config_matcher
9741
+ self.config_name = config_name
9742
+ self.create_time = create_time
9743
+ self.is_gray = is_gray
9744
+ self.last_modify_time = last_modify_time
9745
+
9746
+ def validate(self):
9747
+ pass
9748
+
9749
+ def to_map(self):
9750
+ _map = super().to_map()
9751
+ if _map is not None:
9752
+ return _map
9753
+
9754
+ result = dict()
9755
+ if self.config is not None:
9756
+ result['config'] = self.config
9757
+ if self.config_matcher is not None:
9758
+ result['configMatcher'] = self.config_matcher
9759
+ if self.config_name is not None:
9760
+ result['configName'] = self.config_name
9761
+ if self.create_time is not None:
9762
+ result['createTime'] = self.create_time
9763
+ if self.is_gray is not None:
9764
+ result['isGray'] = self.is_gray
9765
+ if self.last_modify_time is not None:
9766
+ result['lastModifyTime'] = self.last_modify_time
9767
+ return result
9768
+
9769
+ def from_map(self, m: dict = None):
9770
+ m = m or dict()
9771
+ if m.get('config') is not None:
9772
+ self.config = m.get('config')
9773
+ if m.get('configMatcher') is not None:
9774
+ self.config_matcher = m.get('configMatcher')
9775
+ if m.get('configName') is not None:
9776
+ self.config_name = m.get('configName')
9777
+ if m.get('createTime') is not None:
9778
+ self.create_time = m.get('createTime')
9779
+ if m.get('isGray') is not None:
9780
+ self.is_gray = m.get('isGray')
9781
+ if m.get('lastModifyTime') is not None:
9782
+ self.last_modify_time = m.get('lastModifyTime')
9783
+ return self
9784
+
9785
+
9786
+ class GetAgentInstanceConfigResponse(TeaModel):
9787
+ def __init__(
9788
+ self,
9789
+ headers: Dict[str, str] = None,
9790
+ status_code: int = None,
9791
+ body: GetAgentInstanceConfigResponseBody = None,
9792
+ ):
9793
+ self.headers = headers
9794
+ self.status_code = status_code
9795
+ self.body = body
9796
+
9797
+ def validate(self):
9798
+ if self.body:
9799
+ self.body.validate()
9800
+
9801
+ def to_map(self):
9802
+ _map = super().to_map()
9803
+ if _map is not None:
9804
+ return _map
9805
+
9806
+ result = dict()
9807
+ if self.headers is not None:
9808
+ result['headers'] = self.headers
9809
+ if self.status_code is not None:
9810
+ result['statusCode'] = self.status_code
9811
+ if self.body is not None:
9812
+ result['body'] = self.body.to_map()
9813
+ return result
9814
+
9815
+ def from_map(self, m: dict = None):
9816
+ m = m or dict()
9817
+ if m.get('headers') is not None:
9818
+ self.headers = m.get('headers')
9819
+ if m.get('statusCode') is not None:
9820
+ self.status_code = m.get('statusCode')
9821
+ if m.get('body') is not None:
9822
+ temp_model = GetAgentInstanceConfigResponseBody()
9823
+ self.body = temp_model.from_map(m['body'])
9824
+ return self
9825
+
9826
+
8774
9827
  class GetAlertResponse(TeaModel):
8775
9828
  def __init__(
8776
9829
  self,
@@ -10238,7 +11291,7 @@ class GetDownloadJobResponseBody(TeaModel):
10238
11291
  self.execution_details = execution_details
10239
11292
  # 代表资源名称的资源属性字段
10240
11293
  self.name = name
10241
- # 代表资源状态的资源属性字段
11294
+ # The status of the log download task.
10242
11295
  self.status = status
10243
11296
 
10244
11297
  def validate(self):
@@ -10779,12 +11832,12 @@ class GetIndexResponse(TeaModel):
10779
11832
  return self
10780
11833
 
10781
11834
 
10782
- class GetLogStoreResponse(TeaModel):
11835
+ class GetIngestProcessorResponse(TeaModel):
10783
11836
  def __init__(
10784
11837
  self,
10785
11838
  headers: Dict[str, str] = None,
10786
11839
  status_code: int = None,
10787
- body: Logstore = None,
11840
+ body: IngestProcessor = None,
10788
11841
  ):
10789
11842
  self.headers = headers
10790
11843
  self.status_code = status_code
@@ -10815,21 +11868,25 @@ class GetLogStoreResponse(TeaModel):
10815
11868
  if m.get('statusCode') is not None:
10816
11869
  self.status_code = m.get('statusCode')
10817
11870
  if m.get('body') is not None:
10818
- temp_model = Logstore()
11871
+ temp_model = IngestProcessor()
10819
11872
  self.body = temp_model.from_map(m['body'])
10820
11873
  return self
10821
11874
 
10822
11875
 
10823
- class GetLogStoreMeteringModeResponseBody(TeaModel):
11876
+ class GetLogStoreResponse(TeaModel):
10824
11877
  def __init__(
10825
11878
  self,
10826
- metering_mode: str = None,
11879
+ headers: Dict[str, str] = None,
11880
+ status_code: int = None,
11881
+ body: Logstore = None,
10827
11882
  ):
10828
- # The billing mode. Default value: ChargeByFunction. Valid values: ChargeByFunction and ChargeByDataIngest.
10829
- self.metering_mode = metering_mode
11883
+ self.headers = headers
11884
+ self.status_code = status_code
11885
+ self.body = body
10830
11886
 
10831
11887
  def validate(self):
10832
- pass
11888
+ if self.body:
11889
+ self.body.validate()
10833
11890
 
10834
11891
  def to_map(self):
10835
11892
  _map = super().to_map()
@@ -10837,9 +11894,46 @@ class GetLogStoreMeteringModeResponseBody(TeaModel):
10837
11894
  return _map
10838
11895
 
10839
11896
  result = dict()
10840
- if self.metering_mode is not None:
10841
- result['meteringMode'] = self.metering_mode
10842
- return result
11897
+ if self.headers is not None:
11898
+ result['headers'] = self.headers
11899
+ if self.status_code is not None:
11900
+ result['statusCode'] = self.status_code
11901
+ if self.body is not None:
11902
+ result['body'] = self.body.to_map()
11903
+ return result
11904
+
11905
+ def from_map(self, m: dict = None):
11906
+ m = m or dict()
11907
+ if m.get('headers') is not None:
11908
+ self.headers = m.get('headers')
11909
+ if m.get('statusCode') is not None:
11910
+ self.status_code = m.get('statusCode')
11911
+ if m.get('body') is not None:
11912
+ temp_model = Logstore()
11913
+ self.body = temp_model.from_map(m['body'])
11914
+ return self
11915
+
11916
+
11917
+ class GetLogStoreMeteringModeResponseBody(TeaModel):
11918
+ def __init__(
11919
+ self,
11920
+ metering_mode: str = None,
11921
+ ):
11922
+ # The billing mode. Default value: ChargeByFunction. Valid values: ChargeByFunction and ChargeByDataIngest.
11923
+ self.metering_mode = metering_mode
11924
+
11925
+ def validate(self):
11926
+ pass
11927
+
11928
+ def to_map(self):
11929
+ _map = super().to_map()
11930
+ if _map is not None:
11931
+ return _map
11932
+
11933
+ result = dict()
11934
+ if self.metering_mode is not None:
11935
+ result['meteringMode'] = self.metering_mode
11936
+ return result
10843
11937
 
10844
11938
  def from_map(self, m: dict = None):
10845
11939
  m = m or dict()
@@ -11583,6 +12677,7 @@ class GetMLServiceResultsRequest(TeaModel):
11583
12677
  ):
11584
12678
  self.allow_builtin = allow_builtin
11585
12679
  self.body = body
12680
+ # The version of the algorithm. The algorithm varies based on the version.
11586
12681
  self.version = version
11587
12682
 
11588
12683
  def validate(self):
@@ -11730,11 +12825,54 @@ class GetMachineGroupResponse(TeaModel):
11730
12825
  return self
11731
12826
 
11732
12827
 
12828
+ class GetMaxComputeExportResponse(TeaModel):
12829
+ def __init__(
12830
+ self,
12831
+ headers: Dict[str, str] = None,
12832
+ status_code: int = None,
12833
+ body: MaxComputeExport = None,
12834
+ ):
12835
+ self.headers = headers
12836
+ self.status_code = status_code
12837
+ self.body = body
12838
+
12839
+ def validate(self):
12840
+ if self.body:
12841
+ self.body.validate()
12842
+
12843
+ def to_map(self):
12844
+ _map = super().to_map()
12845
+ if _map is not None:
12846
+ return _map
12847
+
12848
+ result = dict()
12849
+ if self.headers is not None:
12850
+ result['headers'] = self.headers
12851
+ if self.status_code is not None:
12852
+ result['statusCode'] = self.status_code
12853
+ if self.body is not None:
12854
+ result['body'] = self.body.to_map()
12855
+ return result
12856
+
12857
+ def from_map(self, m: dict = None):
12858
+ m = m or dict()
12859
+ if m.get('headers') is not None:
12860
+ self.headers = m.get('headers')
12861
+ if m.get('statusCode') is not None:
12862
+ self.status_code = m.get('statusCode')
12863
+ if m.get('body') is not None:
12864
+ temp_model = MaxComputeExport()
12865
+ self.body = temp_model.from_map(m['body'])
12866
+ return self
12867
+
12868
+
11733
12869
  class GetMetricStoreResponseBody(TeaModel):
11734
12870
  def __init__(
11735
12871
  self,
11736
12872
  auto_split: bool = None,
11737
12873
  create_time: int = None,
12874
+ hot_ttl: int = None,
12875
+ infrequent_access_ttl: int = None,
11738
12876
  last_modify_time: int = None,
11739
12877
  max_split_shard: int = None,
11740
12878
  metric_type: str = None,
@@ -11747,6 +12885,8 @@ class GetMetricStoreResponseBody(TeaModel):
11747
12885
  self.auto_split = auto_split
11748
12886
  # The creation time. The value is a UNIX timestamp.
11749
12887
  self.create_time = create_time
12888
+ self.hot_ttl = hot_ttl
12889
+ self.infrequent_access_ttl = infrequent_access_ttl
11750
12890
  # The last update time. The value is a UNIX timestamp.
11751
12891
  self.last_modify_time = last_modify_time
11752
12892
  # The maximum number of shards into which existing shards can be automatically split.
@@ -11775,6 +12915,10 @@ class GetMetricStoreResponseBody(TeaModel):
11775
12915
  result['autoSplit'] = self.auto_split
11776
12916
  if self.create_time is not None:
11777
12917
  result['createTime'] = self.create_time
12918
+ if self.hot_ttl is not None:
12919
+ result['hot_ttl'] = self.hot_ttl
12920
+ if self.infrequent_access_ttl is not None:
12921
+ result['infrequentAccessTTL'] = self.infrequent_access_ttl
11778
12922
  if self.last_modify_time is not None:
11779
12923
  result['lastModifyTime'] = self.last_modify_time
11780
12924
  if self.max_split_shard is not None:
@@ -11797,6 +12941,10 @@ class GetMetricStoreResponseBody(TeaModel):
11797
12941
  self.auto_split = m.get('autoSplit')
11798
12942
  if m.get('createTime') is not None:
11799
12943
  self.create_time = m.get('createTime')
12944
+ if m.get('hot_ttl') is not None:
12945
+ self.hot_ttl = m.get('hot_ttl')
12946
+ if m.get('infrequentAccessTTL') is not None:
12947
+ self.infrequent_access_ttl = m.get('infrequentAccessTTL')
11800
12948
  if m.get('lastModifyTime') is not None:
11801
12949
  self.last_modify_time = m.get('lastModifyTime')
11802
12950
  if m.get('maxSplitShard') is not None:
@@ -12637,7 +13785,269 @@ class GetStoreViewIndexResponse(TeaModel):
12637
13785
  if self.status_code is not None:
12638
13786
  result['statusCode'] = self.status_code
12639
13787
  if self.body is not None:
12640
- result['body'] = self.body.to_map()
13788
+ result['body'] = self.body.to_map()
13789
+ return result
13790
+
13791
+ def from_map(self, m: dict = None):
13792
+ m = m or dict()
13793
+ if m.get('headers') is not None:
13794
+ self.headers = m.get('headers')
13795
+ if m.get('statusCode') is not None:
13796
+ self.status_code = m.get('statusCode')
13797
+ if m.get('body') is not None:
13798
+ temp_model = GetStoreViewIndexResponseBody()
13799
+ self.body = temp_model.from_map(m['body'])
13800
+ return self
13801
+
13802
+
13803
+ class ListAgentInstanceConfigsRequest(TeaModel):
13804
+ def __init__(
13805
+ self,
13806
+ offset: int = None,
13807
+ size: int = None,
13808
+ ):
13809
+ self.offset = offset
13810
+ self.size = size
13811
+
13812
+ def validate(self):
13813
+ pass
13814
+
13815
+ def to_map(self):
13816
+ _map = super().to_map()
13817
+ if _map is not None:
13818
+ return _map
13819
+
13820
+ result = dict()
13821
+ if self.offset is not None:
13822
+ result['offset'] = self.offset
13823
+ if self.size is not None:
13824
+ result['size'] = self.size
13825
+ return result
13826
+
13827
+ def from_map(self, m: dict = None):
13828
+ m = m or dict()
13829
+ if m.get('offset') is not None:
13830
+ self.offset = m.get('offset')
13831
+ if m.get('size') is not None:
13832
+ self.size = m.get('size')
13833
+ return self
13834
+
13835
+
13836
+ class ListAgentInstanceConfigsResponseBody(TeaModel):
13837
+ def __init__(
13838
+ self,
13839
+ configs: List[str] = None,
13840
+ size: int = None,
13841
+ total: int = None,
13842
+ ):
13843
+ self.configs = configs
13844
+ self.size = size
13845
+ self.total = total
13846
+
13847
+ def validate(self):
13848
+ pass
13849
+
13850
+ def to_map(self):
13851
+ _map = super().to_map()
13852
+ if _map is not None:
13853
+ return _map
13854
+
13855
+ result = dict()
13856
+ if self.configs is not None:
13857
+ result['configs'] = self.configs
13858
+ if self.size is not None:
13859
+ result['size'] = self.size
13860
+ if self.total is not None:
13861
+ result['total'] = self.total
13862
+ return result
13863
+
13864
+ def from_map(self, m: dict = None):
13865
+ m = m or dict()
13866
+ if m.get('configs') is not None:
13867
+ self.configs = m.get('configs')
13868
+ if m.get('size') is not None:
13869
+ self.size = m.get('size')
13870
+ if m.get('total') is not None:
13871
+ self.total = m.get('total')
13872
+ return self
13873
+
13874
+
13875
+ class ListAgentInstanceConfigsResponse(TeaModel):
13876
+ def __init__(
13877
+ self,
13878
+ headers: Dict[str, str] = None,
13879
+ status_code: int = None,
13880
+ body: ListAgentInstanceConfigsResponseBody = None,
13881
+ ):
13882
+ self.headers = headers
13883
+ self.status_code = status_code
13884
+ self.body = body
13885
+
13886
+ def validate(self):
13887
+ if self.body:
13888
+ self.body.validate()
13889
+
13890
+ def to_map(self):
13891
+ _map = super().to_map()
13892
+ if _map is not None:
13893
+ return _map
13894
+
13895
+ result = dict()
13896
+ if self.headers is not None:
13897
+ result['headers'] = self.headers
13898
+ if self.status_code is not None:
13899
+ result['statusCode'] = self.status_code
13900
+ if self.body is not None:
13901
+ result['body'] = self.body.to_map()
13902
+ return result
13903
+
13904
+ def from_map(self, m: dict = None):
13905
+ m = m or dict()
13906
+ if m.get('headers') is not None:
13907
+ self.headers = m.get('headers')
13908
+ if m.get('statusCode') is not None:
13909
+ self.status_code = m.get('statusCode')
13910
+ if m.get('body') is not None:
13911
+ temp_model = ListAgentInstanceConfigsResponseBody()
13912
+ self.body = temp_model.from_map(m['body'])
13913
+ return self
13914
+
13915
+
13916
+ class ListAiToolsResponseBodyFields(TeaModel):
13917
+ def __init__(
13918
+ self,
13919
+ name: str = None,
13920
+ option: List[str] = None,
13921
+ required: bool = None,
13922
+ type: str = None,
13923
+ example: str = None,
13924
+ description: str = None,
13925
+ ):
13926
+ self.name = name
13927
+ self.option = option
13928
+ self.required = required
13929
+ self.type = type
13930
+ self.example = example
13931
+ self.description = description
13932
+
13933
+ def validate(self):
13934
+ pass
13935
+
13936
+ def to_map(self):
13937
+ _map = super().to_map()
13938
+ if _map is not None:
13939
+ return _map
13940
+
13941
+ result = dict()
13942
+ if self.name is not None:
13943
+ result['name'] = self.name
13944
+ if self.option is not None:
13945
+ result['option'] = self.option
13946
+ if self.required is not None:
13947
+ result['required'] = self.required
13948
+ if self.type is not None:
13949
+ result['type'] = self.type
13950
+ if self.example is not None:
13951
+ result['example'] = self.example
13952
+ if self.description is not None:
13953
+ result['description'] = self.description
13954
+ return result
13955
+
13956
+ def from_map(self, m: dict = None):
13957
+ m = m or dict()
13958
+ if m.get('name') is not None:
13959
+ self.name = m.get('name')
13960
+ if m.get('option') is not None:
13961
+ self.option = m.get('option')
13962
+ if m.get('required') is not None:
13963
+ self.required = m.get('required')
13964
+ if m.get('type') is not None:
13965
+ self.type = m.get('type')
13966
+ if m.get('example') is not None:
13967
+ self.example = m.get('example')
13968
+ if m.get('description') is not None:
13969
+ self.description = m.get('description')
13970
+ return self
13971
+
13972
+
13973
+ class ListAiToolsResponseBody(TeaModel):
13974
+ def __init__(
13975
+ self,
13976
+ fields: List[ListAiToolsResponseBodyFields] = None,
13977
+ name: str = None,
13978
+ description: str = None,
13979
+ ):
13980
+ self.fields = fields
13981
+ self.name = name
13982
+ self.description = description
13983
+
13984
+ def validate(self):
13985
+ if self.fields:
13986
+ for k in self.fields:
13987
+ if k:
13988
+ k.validate()
13989
+
13990
+ def to_map(self):
13991
+ _map = super().to_map()
13992
+ if _map is not None:
13993
+ return _map
13994
+
13995
+ result = dict()
13996
+ result['fields'] = []
13997
+ if self.fields is not None:
13998
+ for k in self.fields:
13999
+ result['fields'].append(k.to_map() if k else None)
14000
+ if self.name is not None:
14001
+ result['name'] = self.name
14002
+ if self.description is not None:
14003
+ result['description'] = self.description
14004
+ return result
14005
+
14006
+ def from_map(self, m: dict = None):
14007
+ m = m or dict()
14008
+ self.fields = []
14009
+ if m.get('fields') is not None:
14010
+ for k in m.get('fields'):
14011
+ temp_model = ListAiToolsResponseBodyFields()
14012
+ self.fields.append(temp_model.from_map(k))
14013
+ if m.get('name') is not None:
14014
+ self.name = m.get('name')
14015
+ if m.get('description') is not None:
14016
+ self.description = m.get('description')
14017
+ return self
14018
+
14019
+
14020
+ class ListAiToolsResponse(TeaModel):
14021
+ def __init__(
14022
+ self,
14023
+ headers: Dict[str, str] = None,
14024
+ status_code: int = None,
14025
+ body: List[ListAiToolsResponseBody] = None,
14026
+ ):
14027
+ self.headers = headers
14028
+ self.status_code = status_code
14029
+ self.body = body
14030
+
14031
+ def validate(self):
14032
+ if self.body:
14033
+ for k in self.body:
14034
+ if k:
14035
+ k.validate()
14036
+
14037
+ def to_map(self):
14038
+ _map = super().to_map()
14039
+ if _map is not None:
14040
+ return _map
14041
+
14042
+ result = dict()
14043
+ if self.headers is not None:
14044
+ result['headers'] = self.headers
14045
+ if self.status_code is not None:
14046
+ result['statusCode'] = self.status_code
14047
+ result['body'] = []
14048
+ if self.body is not None:
14049
+ for k in self.body:
14050
+ result['body'].append(k.to_map() if k else None)
12641
14051
  return result
12642
14052
 
12643
14053
  def from_map(self, m: dict = None):
@@ -12646,9 +14056,11 @@ class GetStoreViewIndexResponse(TeaModel):
12646
14056
  self.headers = m.get('headers')
12647
14057
  if m.get('statusCode') is not None:
12648
14058
  self.status_code = m.get('statusCode')
14059
+ self.body = []
12649
14060
  if m.get('body') is not None:
12650
- temp_model = GetStoreViewIndexResponseBody()
12651
- self.body = temp_model.from_map(m['body'])
14061
+ for k in m.get('body'):
14062
+ temp_model = ListAiToolsResponseBody()
14063
+ self.body.append(temp_model.from_map(k))
12652
14064
  return self
12653
14065
 
12654
14066
 
@@ -12661,6 +14073,7 @@ class ListAlertsRequest(TeaModel):
12661
14073
  ):
12662
14074
  self.logstore = logstore
12663
14075
  self.offset = offset
14076
+ # The number of entries per page. Maximum value: 200. Default value: 10.
12664
14077
  self.size = size
12665
14078
 
12666
14079
  def validate(self):
@@ -13155,6 +14568,7 @@ class ListCollectionPoliciesRequest(TeaModel):
13155
14568
  self.instance_id = instance_id
13156
14569
  self.offset = offset
13157
14570
  self.policy_name = policy_name
14571
+ # The code of the service.
13158
14572
  self.product_code = product_code
13159
14573
  self.size = size
13160
14574
 
@@ -14368,6 +15782,7 @@ class ListDownloadJobsResponseBodyResults(TeaModel):
14368
15782
  self.execution_details = execution_details
14369
15783
  # 代表资源名称的资源属性字段
14370
15784
  self.name = name
15785
+ # The task status.
14371
15786
  self.status = status
14372
15787
 
14373
15788
  def validate(self):
@@ -14427,6 +15842,7 @@ class ListDownloadJobsResponseBody(TeaModel):
14427
15842
  total: int = None,
14428
15843
  ):
14429
15844
  self.count = count
15845
+ # The log download tasks.
14430
15846
  self.results = results
14431
15847
  self.total = total
14432
15848
 
@@ -14634,6 +16050,146 @@ class ListETLsResponse(TeaModel):
14634
16050
  return self
14635
16051
 
14636
16052
 
16053
+ class ListIngestProcessorsRequest(TeaModel):
16054
+ def __init__(
16055
+ self,
16056
+ display_name: str = None,
16057
+ offset: int = None,
16058
+ processor_name: str = None,
16059
+ size: int = None,
16060
+ ):
16061
+ # The display name of the ingest processor.
16062
+ self.display_name = display_name
16063
+ # The offset. Default value: 0.
16064
+ self.offset = offset
16065
+ # The identifier of the ingest processor.
16066
+ self.processor_name = processor_name
16067
+ # The number of entries. Default value: 200.
16068
+ self.size = size
16069
+
16070
+ def validate(self):
16071
+ pass
16072
+
16073
+ def to_map(self):
16074
+ _map = super().to_map()
16075
+ if _map is not None:
16076
+ return _map
16077
+
16078
+ result = dict()
16079
+ if self.display_name is not None:
16080
+ result['displayName'] = self.display_name
16081
+ if self.offset is not None:
16082
+ result['offset'] = self.offset
16083
+ if self.processor_name is not None:
16084
+ result['processorName'] = self.processor_name
16085
+ if self.size is not None:
16086
+ result['size'] = self.size
16087
+ return result
16088
+
16089
+ def from_map(self, m: dict = None):
16090
+ m = m or dict()
16091
+ if m.get('displayName') is not None:
16092
+ self.display_name = m.get('displayName')
16093
+ if m.get('offset') is not None:
16094
+ self.offset = m.get('offset')
16095
+ if m.get('processorName') is not None:
16096
+ self.processor_name = m.get('processorName')
16097
+ if m.get('size') is not None:
16098
+ self.size = m.get('size')
16099
+ return self
16100
+
16101
+
16102
+ class ListIngestProcessorsResponseBody(TeaModel):
16103
+ def __init__(
16104
+ self,
16105
+ count: int = None,
16106
+ processors: List[IngestProcessor] = None,
16107
+ total: int = None,
16108
+ ):
16109
+ # The number of entries returned.
16110
+ self.count = count
16111
+ # The ingest processors that are returned.
16112
+ self.processors = processors
16113
+ # The total number of entries returned.
16114
+ self.total = total
16115
+
16116
+ def validate(self):
16117
+ if self.processors:
16118
+ for k in self.processors:
16119
+ if k:
16120
+ k.validate()
16121
+
16122
+ def to_map(self):
16123
+ _map = super().to_map()
16124
+ if _map is not None:
16125
+ return _map
16126
+
16127
+ result = dict()
16128
+ if self.count is not None:
16129
+ result['count'] = self.count
16130
+ result['processors'] = []
16131
+ if self.processors is not None:
16132
+ for k in self.processors:
16133
+ result['processors'].append(k.to_map() if k else None)
16134
+ if self.total is not None:
16135
+ result['total'] = self.total
16136
+ return result
16137
+
16138
+ def from_map(self, m: dict = None):
16139
+ m = m or dict()
16140
+ if m.get('count') is not None:
16141
+ self.count = m.get('count')
16142
+ self.processors = []
16143
+ if m.get('processors') is not None:
16144
+ for k in m.get('processors'):
16145
+ temp_model = IngestProcessor()
16146
+ self.processors.append(temp_model.from_map(k))
16147
+ if m.get('total') is not None:
16148
+ self.total = m.get('total')
16149
+ return self
16150
+
16151
+
16152
+ class ListIngestProcessorsResponse(TeaModel):
16153
+ def __init__(
16154
+ self,
16155
+ headers: Dict[str, str] = None,
16156
+ status_code: int = None,
16157
+ body: ListIngestProcessorsResponseBody = None,
16158
+ ):
16159
+ self.headers = headers
16160
+ self.status_code = status_code
16161
+ self.body = body
16162
+
16163
+ def validate(self):
16164
+ if self.body:
16165
+ self.body.validate()
16166
+
16167
+ def to_map(self):
16168
+ _map = super().to_map()
16169
+ if _map is not None:
16170
+ return _map
16171
+
16172
+ result = dict()
16173
+ if self.headers is not None:
16174
+ result['headers'] = self.headers
16175
+ if self.status_code is not None:
16176
+ result['statusCode'] = self.status_code
16177
+ if self.body is not None:
16178
+ result['body'] = self.body.to_map()
16179
+ return result
16180
+
16181
+ def from_map(self, m: dict = None):
16182
+ m = m or dict()
16183
+ if m.get('headers') is not None:
16184
+ self.headers = m.get('headers')
16185
+ if m.get('statusCode') is not None:
16186
+ self.status_code = m.get('statusCode')
16187
+ if m.get('body') is not None:
16188
+ temp_model = ListIngestProcessorsResponseBody()
16189
+ self.body = temp_model.from_map(m['body'])
16190
+ return self
16191
+
16192
+
14637
16193
  class ListLogStoresRequest(TeaModel):
14638
16194
  def __init__(
14639
16195
  self,
@@ -14652,7 +16208,7 @@ class ListLogStoresRequest(TeaModel):
14652
16208
  self.mode = mode
14653
16209
  # The line from which the query starts. Default value: 0.
14654
16210
  self.offset = offset
14655
- # The number of entries per page. Maximum value: 500. Default value: 500.
16211
+ # The number of entries per page. Maximum value: 500. Default value: 200.
14656
16212
  self.size = size
14657
16213
  # The type of the data that you want to query. Valid values:
14658
16214
  #
@@ -15080,14 +16636,142 @@ class ListMachinesResponseBody(TeaModel):
15080
16636
  ):
15081
16637
  # The number of machines that are returned on the current page.
15082
16638
  self.count = count
15083
- # The machines that are returned.
15084
- self.machines = machines
15085
- # The total number of machines.
16639
+ # The machines that are returned.
16640
+ self.machines = machines
16641
+ # The total number of machines.
16642
+ self.total = total
16643
+
16644
+ def validate(self):
16645
+ if self.machines:
16646
+ for k in self.machines:
16647
+ if k:
16648
+ k.validate()
16649
+
16650
+ def to_map(self):
16651
+ _map = super().to_map()
16652
+ if _map is not None:
16653
+ return _map
16654
+
16655
+ result = dict()
16656
+ if self.count is not None:
16657
+ result['count'] = self.count
16658
+ result['machines'] = []
16659
+ if self.machines is not None:
16660
+ for k in self.machines:
16661
+ result['machines'].append(k.to_map() if k else None)
16662
+ if self.total is not None:
16663
+ result['total'] = self.total
16664
+ return result
16665
+
16666
+ def from_map(self, m: dict = None):
16667
+ m = m or dict()
16668
+ if m.get('count') is not None:
16669
+ self.count = m.get('count')
16670
+ self.machines = []
16671
+ if m.get('machines') is not None:
16672
+ for k in m.get('machines'):
16673
+ temp_model = Machine()
16674
+ self.machines.append(temp_model.from_map(k))
16675
+ if m.get('total') is not None:
16676
+ self.total = m.get('total')
16677
+ return self
16678
+
16679
+
16680
+ class ListMachinesResponse(TeaModel):
16681
+ def __init__(
16682
+ self,
16683
+ headers: Dict[str, str] = None,
16684
+ status_code: int = None,
16685
+ body: ListMachinesResponseBody = None,
16686
+ ):
16687
+ self.headers = headers
16688
+ self.status_code = status_code
16689
+ self.body = body
16690
+
16691
+ def validate(self):
16692
+ if self.body:
16693
+ self.body.validate()
16694
+
16695
+ def to_map(self):
16696
+ _map = super().to_map()
16697
+ if _map is not None:
16698
+ return _map
16699
+
16700
+ result = dict()
16701
+ if self.headers is not None:
16702
+ result['headers'] = self.headers
16703
+ if self.status_code is not None:
16704
+ result['statusCode'] = self.status_code
16705
+ if self.body is not None:
16706
+ result['body'] = self.body.to_map()
16707
+ return result
16708
+
16709
+ def from_map(self, m: dict = None):
16710
+ m = m or dict()
16711
+ if m.get('headers') is not None:
16712
+ self.headers = m.get('headers')
16713
+ if m.get('statusCode') is not None:
16714
+ self.status_code = m.get('statusCode')
16715
+ if m.get('body') is not None:
16716
+ temp_model = ListMachinesResponseBody()
16717
+ self.body = temp_model.from_map(m['body'])
16718
+ return self
16719
+
16720
+
16721
+ class ListMaxComputeExportsRequest(TeaModel):
16722
+ def __init__(
16723
+ self,
16724
+ logstore: str = None,
16725
+ offset: int = None,
16726
+ size: int = None,
16727
+ ):
16728
+ self.logstore = logstore
16729
+ self.offset = offset
16730
+ # The number of entries to return. Default value: 10.
16731
+ self.size = size
16732
+
16733
+ def validate(self):
16734
+ pass
16735
+
16736
+ def to_map(self):
16737
+ _map = super().to_map()
16738
+ if _map is not None:
16739
+ return _map
16740
+
16741
+ result = dict()
16742
+ if self.logstore is not None:
16743
+ result['logstore'] = self.logstore
16744
+ if self.offset is not None:
16745
+ result['offset'] = self.offset
16746
+ if self.size is not None:
16747
+ result['size'] = self.size
16748
+ return result
16749
+
16750
+ def from_map(self, m: dict = None):
16751
+ m = m or dict()
16752
+ if m.get('logstore') is not None:
16753
+ self.logstore = m.get('logstore')
16754
+ if m.get('offset') is not None:
16755
+ self.offset = m.get('offset')
16756
+ if m.get('size') is not None:
16757
+ self.size = m.get('size')
16758
+ return self
16759
+
16760
+
16761
+ class ListMaxComputeExportsResponseBody(TeaModel):
16762
+ def __init__(
16763
+ self,
16764
+ count: int = None,
16765
+ results: List[MaxComputeExport] = None,
16766
+ total: int = None,
16767
+ ):
16768
+ self.count = count
16769
+ self.results = results
15086
16770
  self.total = total
15087
16771
 
15088
16772
  def validate(self):
15089
- if self.machines:
15090
- for k in self.machines:
16773
+ if self.results:
16774
+ for k in self.results:
15091
16775
  if k:
15092
16776
  k.validate()
15093
16777
 
@@ -15099,10 +16783,10 @@ class ListMachinesResponseBody(TeaModel):
15099
16783
  result = dict()
15100
16784
  if self.count is not None:
15101
16785
  result['count'] = self.count
15102
- result['machines'] = []
15103
- if self.machines is not None:
15104
- for k in self.machines:
15105
- result['machines'].append(k.to_map() if k else None)
16786
+ result['results'] = []
16787
+ if self.results is not None:
16788
+ for k in self.results:
16789
+ result['results'].append(k.to_map() if k else None)
15106
16790
  if self.total is not None:
15107
16791
  result['total'] = self.total
15108
16792
  return result
@@ -15111,22 +16795,22 @@ class ListMachinesResponseBody(TeaModel):
15111
16795
  m = m or dict()
15112
16796
  if m.get('count') is not None:
15113
16797
  self.count = m.get('count')
15114
- self.machines = []
15115
- if m.get('machines') is not None:
15116
- for k in m.get('machines'):
15117
- temp_model = Machine()
15118
- self.machines.append(temp_model.from_map(k))
16798
+ self.results = []
16799
+ if m.get('results') is not None:
16800
+ for k in m.get('results'):
16801
+ temp_model = MaxComputeExport()
16802
+ self.results.append(temp_model.from_map(k))
15119
16803
  if m.get('total') is not None:
15120
16804
  self.total = m.get('total')
15121
16805
  return self
15122
16806
 
15123
16807
 
15124
- class ListMachinesResponse(TeaModel):
16808
+ class ListMaxComputeExportsResponse(TeaModel):
15125
16809
  def __init__(
15126
16810
  self,
15127
16811
  headers: Dict[str, str] = None,
15128
16812
  status_code: int = None,
15129
- body: ListMachinesResponseBody = None,
16813
+ body: ListMaxComputeExportsResponseBody = None,
15130
16814
  ):
15131
16815
  self.headers = headers
15132
16816
  self.status_code = status_code
@@ -15157,7 +16841,7 @@ class ListMachinesResponse(TeaModel):
15157
16841
  if m.get('statusCode') is not None:
15158
16842
  self.status_code = m.get('statusCode')
15159
16843
  if m.get('body') is not None:
15160
- temp_model = ListMachinesResponseBody()
16844
+ temp_model = ListMaxComputeExportsResponseBody()
15161
16845
  self.body = temp_model.from_map(m['body'])
15162
16846
  return self
15163
16847
 
@@ -15303,6 +16987,7 @@ class ListOSSExportsRequest(TeaModel):
15303
16987
  ):
15304
16988
  self.logstore = logstore
15305
16989
  self.offset = offset
16990
+ # The number of entries to return. Default value: 10.
15306
16991
  self.size = size
15307
16992
 
15308
16993
  def validate(self):
@@ -15430,6 +17115,7 @@ class ListOSSHDFSExportsRequest(TeaModel):
15430
17115
  ):
15431
17116
  self.logstore = logstore
15432
17117
  self.offset = offset
17118
+ # The number of entries to return. Default value: 10.
15433
17119
  self.size = size
15434
17120
 
15435
17121
  def validate(self):
@@ -15959,6 +17645,7 @@ class ListScheduledSQLsRequest(TeaModel):
15959
17645
  # The name of the Logstore.
15960
17646
  self.logstore = logstore
15961
17647
  self.offset = offset
17648
+ # The number of entries to return. Default value: 10.
15962
17649
  self.size = size
15963
17650
 
15964
17651
  def validate(self):
@@ -16325,8 +18012,8 @@ class ListTagResourcesRequest(TeaModel):
16325
18012
  # * project
16326
18013
  # * logstore
16327
18014
  # * dashboard
16328
- # * MachineGroup
16329
- # * LogtailConfig
18015
+ # * machinegroup
18016
+ # * logtailconfig
16330
18017
  #
16331
18018
  # This parameter is required.
16332
18019
  self.resource_type = resource_type
@@ -16385,8 +18072,8 @@ class ListTagResourcesShrinkRequest(TeaModel):
16385
18072
  # * project
16386
18073
  # * logstore
16387
18074
  # * dashboard
16388
- # * MachineGroup
16389
- # * LogtailConfig
18075
+ # * machinegroup
18076
+ # * logtailconfig
16390
18077
  #
16391
18078
  # This parameter is required.
16392
18079
  self.resource_type = resource_type
@@ -16835,6 +18522,87 @@ class PutAnnotationDataResponse(TeaModel):
16835
18522
  return self
16836
18523
 
16837
18524
 
18525
+ class PutIngestProcessorRequest(TeaModel):
18526
+ def __init__(
18527
+ self,
18528
+ configuration: IngestProcessorConfiguration = None,
18529
+ description: str = None,
18530
+ display_name: str = None,
18531
+ ):
18532
+ # The configuration of the ingest processor.
18533
+ #
18534
+ # This parameter is required.
18535
+ self.configuration = configuration
18536
+ # The description of the ingest processor.
18537
+ self.description = description
18538
+ # The display name of the ingest processor.
18539
+ #
18540
+ # This parameter is required.
18541
+ self.display_name = display_name
18542
+
18543
+ def validate(self):
18544
+ if self.configuration:
18545
+ self.configuration.validate()
18546
+
18547
+ def to_map(self):
18548
+ _map = super().to_map()
18549
+ if _map is not None:
18550
+ return _map
18551
+
18552
+ result = dict()
18553
+ if self.configuration is not None:
18554
+ result['configuration'] = self.configuration.to_map()
18555
+ if self.description is not None:
18556
+ result['description'] = self.description
18557
+ if self.display_name is not None:
18558
+ result['displayName'] = self.display_name
18559
+ return result
18560
+
18561
+ def from_map(self, m: dict = None):
18562
+ m = m or dict()
18563
+ if m.get('configuration') is not None:
18564
+ temp_model = IngestProcessorConfiguration()
18565
+ self.configuration = temp_model.from_map(m['configuration'])
18566
+ if m.get('description') is not None:
18567
+ self.description = m.get('description')
18568
+ if m.get('displayName') is not None:
18569
+ self.display_name = m.get('displayName')
18570
+ return self
18571
+
18572
+
18573
+ class PutIngestProcessorResponse(TeaModel):
18574
+ def __init__(
18575
+ self,
18576
+ headers: Dict[str, str] = None,
18577
+ status_code: int = None,
18578
+ ):
18579
+ self.headers = headers
18580
+ self.status_code = status_code
18581
+
18582
+ def validate(self):
18583
+ pass
18584
+
18585
+ def to_map(self):
18586
+ _map = super().to_map()
18587
+ if _map is not None:
18588
+ return _map
18589
+
18590
+ result = dict()
18591
+ if self.headers is not None:
18592
+ result['headers'] = self.headers
18593
+ if self.status_code is not None:
18594
+ result['statusCode'] = self.status_code
18595
+ return result
18596
+
18597
+ def from_map(self, m: dict = None):
18598
+ m = m or dict()
18599
+ if m.get('headers') is not None:
18600
+ self.headers = m.get('headers')
18601
+ if m.get('statusCode') is not None:
18602
+ self.status_code = m.get('statusCode')
18603
+ return self
18604
+
18605
+
16838
18606
  class PutLogsHeaders(TeaModel):
16839
18607
  def __init__(
16840
18608
  self,
@@ -17150,6 +18918,9 @@ class RefreshTokenRequest(TeaModel):
17150
18918
  access_token_expiration_time: int = None,
17151
18919
  ticket: str = None,
17152
18920
  ):
18921
+ # * The validity period of the access token. Unit: seconds. Default value: 86400, which specifies one day. Valid values: 0 to 86400.
18922
+ # * The validity period of the access token is the smaller value between accessTokenExpirationTime and expirationTime.
18923
+ # * If you use a Security Token Service (STS) token to call this operation, the validity period of the access token is the smallest value among accessTokenExpirationTime, expirationTime, and the validity period of the STS token.
17153
18924
  self.access_token_expiration_time = access_token_expiration_time
17154
18925
  # The ticket that is used for logon-free access.
17155
18926
  self.ticket = ticket
@@ -17394,6 +19165,39 @@ class StartETLResponse(TeaModel):
17394
19165
  return self
17395
19166
 
17396
19167
 
19168
+ class StartMaxComputeExportResponse(TeaModel):
19169
+ def __init__(
19170
+ self,
19171
+ headers: Dict[str, str] = None,
19172
+ status_code: int = None,
19173
+ ):
19174
+ self.headers = headers
19175
+ self.status_code = status_code
19176
+
19177
+ def validate(self):
19178
+ pass
19179
+
19180
+ def to_map(self):
19181
+ _map = super().to_map()
19182
+ if _map is not None:
19183
+ return _map
19184
+
19185
+ result = dict()
19186
+ if self.headers is not None:
19187
+ result['headers'] = self.headers
19188
+ if self.status_code is not None:
19189
+ result['statusCode'] = self.status_code
19190
+ return result
19191
+
19192
+ def from_map(self, m: dict = None):
19193
+ m = m or dict()
19194
+ if m.get('headers') is not None:
19195
+ self.headers = m.get('headers')
19196
+ if m.get('statusCode') is not None:
19197
+ self.status_code = m.get('statusCode')
19198
+ return self
19199
+
19200
+
17397
19201
  class StartOSSExportResponse(TeaModel):
17398
19202
  def __init__(
17399
19203
  self,
@@ -17526,6 +19330,39 @@ class StopETLResponse(TeaModel):
17526
19330
  return self
17527
19331
 
17528
19332
 
19333
+ class StopMaxComputeExportResponse(TeaModel):
19334
+ def __init__(
19335
+ self,
19336
+ headers: Dict[str, str] = None,
19337
+ status_code: int = None,
19338
+ ):
19339
+ self.headers = headers
19340
+ self.status_code = status_code
19341
+
19342
+ def validate(self):
19343
+ pass
19344
+
19345
+ def to_map(self):
19346
+ _map = super().to_map()
19347
+ if _map is not None:
19348
+ return _map
19349
+
19350
+ result = dict()
19351
+ if self.headers is not None:
19352
+ result['headers'] = self.headers
19353
+ if self.status_code is not None:
19354
+ result['statusCode'] = self.status_code
19355
+ return result
19356
+
19357
+ def from_map(self, m: dict = None):
19358
+ m = m or dict()
19359
+ if m.get('headers') is not None:
19360
+ self.headers = m.get('headers')
19361
+ if m.get('statusCode') is not None:
19362
+ self.status_code = m.get('statusCode')
19363
+ return self
19364
+
19365
+
17529
19366
  class StopOSSExportResponse(TeaModel):
17530
19367
  def __init__(
17531
19368
  self,
@@ -17782,17 +19619,95 @@ class UntagResourcesRequest(TeaModel):
17782
19619
  # The resource IDs. Each time you call this operation, you can unbind tags only from a single resource. Therefore, you can enter only one resource ID.
17783
19620
  #
17784
19621
  # This parameter is required.
17785
- self.resource_id = resource_id
17786
- # The type of the resource. Valid values:
17787
- #
17788
- # * project
17789
- # * logstore
17790
- # * dashboard
17791
- # * machinegroup
17792
- # * logtailconfig
17793
- self.resource_type = resource_type
17794
- # The tag keys. If you set all to false, only the tags that match the value of this parameter are unbound.
17795
- self.tags = tags
19622
+ self.resource_id = resource_id
19623
+ # The type of the resource. Valid values:
19624
+ #
19625
+ # * project
19626
+ # * logstore
19627
+ # * dashboard
19628
+ # * machinegroup
19629
+ # * logtailconfig
19630
+ self.resource_type = resource_type
19631
+ # The tag keys. If you set all to false, only the tags that match the value of this parameter are unbound.
19632
+ self.tags = tags
19633
+
19634
+ def validate(self):
19635
+ pass
19636
+
19637
+ def to_map(self):
19638
+ _map = super().to_map()
19639
+ if _map is not None:
19640
+ return _map
19641
+
19642
+ result = dict()
19643
+ if self.all is not None:
19644
+ result['all'] = self.all
19645
+ if self.resource_id is not None:
19646
+ result['resourceId'] = self.resource_id
19647
+ if self.resource_type is not None:
19648
+ result['resourceType'] = self.resource_type
19649
+ if self.tags is not None:
19650
+ result['tags'] = self.tags
19651
+ return result
19652
+
19653
+ def from_map(self, m: dict = None):
19654
+ m = m or dict()
19655
+ if m.get('all') is not None:
19656
+ self.all = m.get('all')
19657
+ if m.get('resourceId') is not None:
19658
+ self.resource_id = m.get('resourceId')
19659
+ if m.get('resourceType') is not None:
19660
+ self.resource_type = m.get('resourceType')
19661
+ if m.get('tags') is not None:
19662
+ self.tags = m.get('tags')
19663
+ return self
19664
+
19665
+
19666
+ class UntagResourcesResponse(TeaModel):
19667
+ def __init__(
19668
+ self,
19669
+ headers: Dict[str, str] = None,
19670
+ status_code: int = None,
19671
+ ):
19672
+ self.headers = headers
19673
+ self.status_code = status_code
19674
+
19675
+ def validate(self):
19676
+ pass
19677
+
19678
+ def to_map(self):
19679
+ _map = super().to_map()
19680
+ if _map is not None:
19681
+ return _map
19682
+
19683
+ result = dict()
19684
+ if self.headers is not None:
19685
+ result['headers'] = self.headers
19686
+ if self.status_code is not None:
19687
+ result['statusCode'] = self.status_code
19688
+ return result
19689
+
19690
+ def from_map(self, m: dict = None):
19691
+ m = m or dict()
19692
+ if m.get('headers') is not None:
19693
+ self.headers = m.get('headers')
19694
+ if m.get('statusCode') is not None:
19695
+ self.status_code = m.get('statusCode')
19696
+ return self
19697
+
19698
+
19699
+ class UpdateAgentInstanceConfigRequest(TeaModel):
19700
+ def __init__(
19701
+ self,
19702
+ config: str = None,
19703
+ config_matcher: str = None,
19704
+ is_gray: bool = None,
19705
+ ):
19706
+ # This parameter is required.
19707
+ self.config = config
19708
+ # This parameter is required.
19709
+ self.config_matcher = config_matcher
19710
+ self.is_gray = is_gray
17796
19711
 
17797
19712
  def validate(self):
17798
19713
  pass
@@ -17803,30 +19718,26 @@ class UntagResourcesRequest(TeaModel):
17803
19718
  return _map
17804
19719
 
17805
19720
  result = dict()
17806
- if self.all is not None:
17807
- result['all'] = self.all
17808
- if self.resource_id is not None:
17809
- result['resourceId'] = self.resource_id
17810
- if self.resource_type is not None:
17811
- result['resourceType'] = self.resource_type
17812
- if self.tags is not None:
17813
- result['tags'] = self.tags
19721
+ if self.config is not None:
19722
+ result['config'] = self.config
19723
+ if self.config_matcher is not None:
19724
+ result['configMatcher'] = self.config_matcher
19725
+ if self.is_gray is not None:
19726
+ result['isGray'] = self.is_gray
17814
19727
  return result
17815
19728
 
17816
19729
  def from_map(self, m: dict = None):
17817
19730
  m = m or dict()
17818
- if m.get('all') is not None:
17819
- self.all = m.get('all')
17820
- if m.get('resourceId') is not None:
17821
- self.resource_id = m.get('resourceId')
17822
- if m.get('resourceType') is not None:
17823
- self.resource_type = m.get('resourceType')
17824
- if m.get('tags') is not None:
17825
- self.tags = m.get('tags')
19731
+ if m.get('config') is not None:
19732
+ self.config = m.get('config')
19733
+ if m.get('configMatcher') is not None:
19734
+ self.config_matcher = m.get('configMatcher')
19735
+ if m.get('isGray') is not None:
19736
+ self.is_gray = m.get('isGray')
17826
19737
  return self
17827
19738
 
17828
19739
 
17829
- class UntagResourcesResponse(TeaModel):
19740
+ class UpdateAgentInstanceConfigResponse(TeaModel):
17830
19741
  def __init__(
17831
19742
  self,
17832
19743
  headers: Dict[str, str] = None,
@@ -18152,7 +20063,7 @@ class UpdateConsumerGroupRequest(TeaModel):
18152
20063
  # * true: If a shard is split, the data in the original shard is consumed first. Then, the data in the new shards is consumed at the same time. If shards are merged, the data in the original shards is consumed first. Then, the data in the new shard is consumed.
18153
20064
  # * false: The data in all shards is consumed at the same time. If a new shard is generated after a shard is split or shards are merged, the data in the new shard is immediately consumed.
18154
20065
  self.order = order
18155
- # The timeout period. If Simple Log Service does not receive heartbeats from a consumer within the timeout period, Simple Log Service deletes the consumer. Unit: seconds.
20066
+ # The timeout period. If Simple Log Service does not receive heartbeats from a consumer within the timeout period, Simple Log Service deletes the consumer. Unit: seconds
18156
20067
  self.timeout = timeout
18157
20068
 
18158
20069
  def validate(self):
@@ -18624,8 +20535,11 @@ class UpdateLogStoreEncryptionRequestUserCmkInfo(TeaModel):
18624
20535
  region_id: str = None,
18625
20536
  role_arn: str = None,
18626
20537
  ):
20538
+ # The ID of the CMK to which the BYOK key belongs. You can create a CMK in KMS. The CMK must be in the same region as the endpoint of Simple Log Service.
18627
20539
  self.key_id = key_id
20540
+ # The region ID. Example: cn-hangzhou.
18628
20541
  self.region_id = region_id
20542
+ # The Alibaba Cloud Resource Name (ARN) of the Resource Access Management (RAM) role.The value is in the acs:ram::12344\\*\\*\\*:role/xxxxx format. To use a BYOK key to encrypt logs, you must create a RAM role and grant the AliyunKMSReadOnlyAccess and AliyunKMSCryptoUserAccess permissions to the RAM role. You must grant the API caller the PassRole permission on the RAM role.
18629
20543
  self.role_arn = role_arn
18630
20544
 
18631
20545
  def validate(self):
@@ -18663,9 +20577,13 @@ class UpdateLogStoreEncryptionRequest(TeaModel):
18663
20577
  encrypt_type: str = None,
18664
20578
  user_cmk_info: UpdateLogStoreEncryptionRequestUserCmkInfo = None,
18665
20579
  ):
20580
+ # Specifies whether to enable the encryption feature. After you update the encryption configuration of the Logstore, you can modify only the enable parameter in subsequent update requests. You cannot modify the encryptType or userCmkInfo parameters.
20581
+ #
18666
20582
  # This parameter is required.
18667
20583
  self.enable = enable
20584
+ # The encryption algorithm. Valid values: default, m4, sm4_ecb, sm4_cbc, sm4_gcm, aes_ecb, aes_cbc, aes_cfb, aes_ofb, and aes_gcm.
18668
20585
  self.encrypt_type = encrypt_type
20586
+ # Optional. If you use a BYOK key to encrypt logs, you must specify this parameter. If you use the service key of Simple Log Service to encrypt logs, you do not need to specify this parameter.
18669
20587
  self.user_cmk_info = user_cmk_info
18670
20588
 
18671
20589
  def validate(self):
@@ -18794,6 +20712,69 @@ class UpdateLogStoreMeteringModeResponse(TeaModel):
18794
20712
  return self
18795
20713
 
18796
20714
 
20715
+ class UpdateLogStoreProcessorRequest(TeaModel):
20716
+ def __init__(
20717
+ self,
20718
+ processor_name: str = None,
20719
+ ):
20720
+ # The identifier of the ingest processor.
20721
+ #
20722
+ # This parameter is required.
20723
+ self.processor_name = processor_name
20724
+
20725
+ def validate(self):
20726
+ pass
20727
+
20728
+ def to_map(self):
20729
+ _map = super().to_map()
20730
+ if _map is not None:
20731
+ return _map
20732
+
20733
+ result = dict()
20734
+ if self.processor_name is not None:
20735
+ result['processorName'] = self.processor_name
20736
+ return result
20737
+
20738
+ def from_map(self, m: dict = None):
20739
+ m = m or dict()
20740
+ if m.get('processorName') is not None:
20741
+ self.processor_name = m.get('processorName')
20742
+ return self
20743
+
20744
+
20745
+ class UpdateLogStoreProcessorResponse(TeaModel):
20746
+ def __init__(
20747
+ self,
20748
+ headers: Dict[str, str] = None,
20749
+ status_code: int = None,
20750
+ ):
20751
+ self.headers = headers
20752
+ self.status_code = status_code
20753
+
20754
+ def validate(self):
20755
+ pass
20756
+
20757
+ def to_map(self):
20758
+ _map = super().to_map()
20759
+ if _map is not None:
20760
+ return _map
20761
+
20762
+ result = dict()
20763
+ if self.headers is not None:
20764
+ result['headers'] = self.headers
20765
+ if self.status_code is not None:
20766
+ result['statusCode'] = self.status_code
20767
+ return result
20768
+
20769
+ def from_map(self, m: dict = None):
20770
+ m = m or dict()
20771
+ if m.get('headers') is not None:
20772
+ self.headers = m.get('headers')
20773
+ if m.get('statusCode') is not None:
20774
+ self.status_code = m.get('statusCode')
20775
+ return self
20776
+
20777
+
18797
20778
  class UpdateLoggingRequestLoggingDetails(TeaModel):
18798
20779
  def __init__(
18799
20780
  self,
@@ -18945,15 +20926,11 @@ class UpdateLogtailPipelineConfigRequest(TeaModel):
18945
20926
  self.config_name = config_name
18946
20927
  # The output plug-ins.
18947
20928
  #
18948
- # > You can use only one Simple Log Service output plug-in.
20929
+ # > You can configure only one output plug-in.
18949
20930
  #
18950
20931
  # This parameter is required.
18951
20932
  self.flushers = flushers
18952
20933
  # The global settings.
18953
- #
18954
- # **\
18955
- #
18956
- # ****\
18957
20934
  self.global_ = global_
18958
20935
  # The input plug-ins.
18959
20936
  #
@@ -18965,13 +20942,13 @@ class UpdateLogtailPipelineConfigRequest(TeaModel):
18965
20942
  self.log_sample = log_sample
18966
20943
  # The processing plug-ins.
18967
20944
  #
18968
- # > Logtail supports native plug-ins and extended plug-ins for data processing. For more information, see [Logtail plug-ins overview](https://help.aliyun.com/document_detail/64957.html).
20945
+ # > Logtail plug-ins for data processing are classified into native plug-ins and extended plug-ins. For more information, see [Overview of Logtail plug-ins for data processing](https://help.aliyun.com/document_detail/64957.html).
18969
20946
  #
18970
20947
  # >
18971
20948
  #
18972
20949
  # * You can use native plug-ins only to collect text logs.
18973
20950
  #
18974
- # * You cannot add native plug-ins and extended plug-ins at the same time.
20951
+ # * You cannot add native plug-ins and extended plug-ins at a time.
18975
20952
  #
18976
20953
  # * When you add native plug-ins, take note of the following items:
18977
20954
  #
@@ -19264,16 +21241,101 @@ class UpdateMachineGroupMachineResponse(TeaModel):
19264
21241
  return self
19265
21242
 
19266
21243
 
21244
+ class UpdateMaxComputeExportRequest(TeaModel):
21245
+ def __init__(
21246
+ self,
21247
+ configuration: MaxComputeExportConfiguration = None,
21248
+ description: str = None,
21249
+ display_name: str = None,
21250
+ ):
21251
+ # The setting of the MaxCompute data shipping job.
21252
+ #
21253
+ # This parameter is required.
21254
+ self.configuration = configuration
21255
+ # The description of the MaxCompute data shipping job.
21256
+ self.description = description
21257
+ # The display name of the MaxCompute data shipping job.
21258
+ #
21259
+ # This parameter is required.
21260
+ self.display_name = display_name
21261
+
21262
+ def validate(self):
21263
+ if self.configuration:
21264
+ self.configuration.validate()
21265
+
21266
+ def to_map(self):
21267
+ _map = super().to_map()
21268
+ if _map is not None:
21269
+ return _map
21270
+
21271
+ result = dict()
21272
+ if self.configuration is not None:
21273
+ result['configuration'] = self.configuration.to_map()
21274
+ if self.description is not None:
21275
+ result['description'] = self.description
21276
+ if self.display_name is not None:
21277
+ result['displayName'] = self.display_name
21278
+ return result
21279
+
21280
+ def from_map(self, m: dict = None):
21281
+ m = m or dict()
21282
+ if m.get('configuration') is not None:
21283
+ temp_model = MaxComputeExportConfiguration()
21284
+ self.configuration = temp_model.from_map(m['configuration'])
21285
+ if m.get('description') is not None:
21286
+ self.description = m.get('description')
21287
+ if m.get('displayName') is not None:
21288
+ self.display_name = m.get('displayName')
21289
+ return self
21290
+
21291
+
21292
+ class UpdateMaxComputeExportResponse(TeaModel):
21293
+ def __init__(
21294
+ self,
21295
+ headers: Dict[str, str] = None,
21296
+ status_code: int = None,
21297
+ ):
21298
+ self.headers = headers
21299
+ self.status_code = status_code
21300
+
21301
+ def validate(self):
21302
+ pass
21303
+
21304
+ def to_map(self):
21305
+ _map = super().to_map()
21306
+ if _map is not None:
21307
+ return _map
21308
+
21309
+ result = dict()
21310
+ if self.headers is not None:
21311
+ result['headers'] = self.headers
21312
+ if self.status_code is not None:
21313
+ result['statusCode'] = self.status_code
21314
+ return result
21315
+
21316
+ def from_map(self, m: dict = None):
21317
+ m = m or dict()
21318
+ if m.get('headers') is not None:
21319
+ self.headers = m.get('headers')
21320
+ if m.get('statusCode') is not None:
21321
+ self.status_code = m.get('statusCode')
21322
+ return self
21323
+
21324
+
19267
21325
  class UpdateMetricStoreRequest(TeaModel):
19268
21326
  def __init__(
19269
21327
  self,
19270
21328
  auto_split: bool = None,
21329
+ hot_ttl: int = None,
21330
+ infrequent_access_ttl: int = None,
19271
21331
  max_split_shard: int = None,
19272
21332
  mode: str = None,
19273
21333
  ttl: int = None,
19274
21334
  ):
19275
21335
  # Specifies whether to enable automatic sharding.
19276
21336
  self.auto_split = auto_split
21337
+ self.hot_ttl = hot_ttl
21338
+ self.infrequent_access_ttl = infrequent_access_ttl
19277
21339
  # The maximum number of shards into which existing shards can be automatically split. This parameter is valid only when you set the autoSplit parameter to true.
19278
21340
  self.max_split_shard = max_split_shard
19279
21341
  # The type of the Metricstore.
@@ -19292,6 +21354,10 @@ class UpdateMetricStoreRequest(TeaModel):
19292
21354
  result = dict()
19293
21355
  if self.auto_split is not None:
19294
21356
  result['autoSplit'] = self.auto_split
21357
+ if self.hot_ttl is not None:
21358
+ result['hot_ttl'] = self.hot_ttl
21359
+ if self.infrequent_access_ttl is not None:
21360
+ result['infrequentAccessTTL'] = self.infrequent_access_ttl
19295
21361
  if self.max_split_shard is not None:
19296
21362
  result['maxSplitShard'] = self.max_split_shard
19297
21363
  if self.mode is not None:
@@ -19304,6 +21370,10 @@ class UpdateMetricStoreRequest(TeaModel):
19304
21370
  m = m or dict()
19305
21371
  if m.get('autoSplit') is not None:
19306
21372
  self.auto_split = m.get('autoSplit')
21373
+ if m.get('hot_ttl') is not None:
21374
+ self.hot_ttl = m.get('hot_ttl')
21375
+ if m.get('infrequentAccessTTL') is not None:
21376
+ self.infrequent_access_ttl = m.get('infrequentAccessTTL')
19307
21377
  if m.get('maxSplitShard') is not None:
19308
21378
  self.max_split_shard = m.get('maxSplitShard')
19309
21379
  if m.get('mode') is not None:
@@ -19407,6 +21477,69 @@ class UpdateMetricStoreMeteringModeResponse(TeaModel):
19407
21477
  return self
19408
21478
 
19409
21479
 
21480
+ class UpdateMetricStoreProcessorRequest(TeaModel):
21481
+ def __init__(
21482
+ self,
21483
+ processor_name: str = None,
21484
+ ):
21485
+ # The identifier of the ingest processor.
21486
+ #
21487
+ # This parameter is required.
21488
+ self.processor_name = processor_name
21489
+
21490
+ def validate(self):
21491
+ pass
21492
+
21493
+ def to_map(self):
21494
+ _map = super().to_map()
21495
+ if _map is not None:
21496
+ return _map
21497
+
21498
+ result = dict()
21499
+ if self.processor_name is not None:
21500
+ result['processorName'] = self.processor_name
21501
+ return result
21502
+
21503
+ def from_map(self, m: dict = None):
21504
+ m = m or dict()
21505
+ if m.get('processorName') is not None:
21506
+ self.processor_name = m.get('processorName')
21507
+ return self
21508
+
21509
+
21510
+ class UpdateMetricStoreProcessorResponse(TeaModel):
21511
+ def __init__(
21512
+ self,
21513
+ headers: Dict[str, str] = None,
21514
+ status_code: int = None,
21515
+ ):
21516
+ self.headers = headers
21517
+ self.status_code = status_code
21518
+
21519
+ def validate(self):
21520
+ pass
21521
+
21522
+ def to_map(self):
21523
+ _map = super().to_map()
21524
+ if _map is not None:
21525
+ return _map
21526
+
21527
+ result = dict()
21528
+ if self.headers is not None:
21529
+ result['headers'] = self.headers
21530
+ if self.status_code is not None:
21531
+ result['statusCode'] = self.status_code
21532
+ return result
21533
+
21534
+ def from_map(self, m: dict = None):
21535
+ m = m or dict()
21536
+ if m.get('headers') is not None:
21537
+ self.headers = m.get('headers')
21538
+ if m.get('statusCode') is not None:
21539
+ self.status_code = m.get('statusCode')
21540
+ return self
21541
+
21542
+
19410
21543
  class UpdateOSSExportRequest(TeaModel):
19411
21544
  def __init__(
19412
21545
  self,
@@ -19492,10 +21625,14 @@ class UpdateOSSHDFSExportRequest(TeaModel):
19492
21625
  display_name: str = None,
19493
21626
  ):
19494
21627
  # The configuration details of the job.
21628
+ #
21629
+ # This parameter is required.
19495
21630
  self.configuration = configuration
19496
21631
  # The description of the job.
19497
21632
  self.description = description
19498
21633
  # The display name of the job.
21634
+ #
21635
+ # This parameter is required.
19499
21636
  self.display_name = display_name
19500
21637
 
19501
21638
  def validate(self):
@@ -19861,11 +21998,13 @@ class UpdateProjectRequest(TeaModel):
19861
21998
  def __init__(
19862
21999
  self,
19863
22000
  description: str = None,
22001
+ recycle_bin_enabled: bool = None,
19864
22002
  ):
19865
22003
  # The description of the project. The default value is an empty string.
19866
22004
  #
19867
22005
  # This parameter is required.
19868
22006
  self.description = description
22007
+ self.recycle_bin_enabled = recycle_bin_enabled
19869
22008
 
19870
22009
  def validate(self):
19871
22010
  pass
@@ -19878,12 +22017,16 @@ class UpdateProjectRequest(TeaModel):
19878
22017
  result = dict()
19879
22018
  if self.description is not None:
19880
22019
  result['description'] = self.description
22020
+ if self.recycle_bin_enabled is not None:
22021
+ result['recycleBinEnabled'] = self.recycle_bin_enabled
19881
22022
  return result
19882
22023
 
19883
22024
  def from_map(self, m: dict = None):
19884
22025
  m = m or dict()
19885
22026
  if m.get('description') is not None:
19886
22027
  self.description = m.get('description')
22028
+ if m.get('recycleBinEnabled') is not None:
22029
+ self.recycle_bin_enabled = m.get('recycleBinEnabled')
19887
22030
  return self
19888
22031
 
19889
22032
 
@@ -20456,9 +22599,13 @@ class UpsertCollectionPolicyRequestCentralizeConfig(TeaModel):
20456
22599
  dest_region: str = None,
20457
22600
  dest_ttl: int = None,
20458
22601
  ):
22602
+ # The destination logstore for centralized storage. Make sure that the region of the destination logstore is consistent with the region specified by destRegion and the destination logstore belongs to the destination project specified by destProject.
20459
22603
  self.dest_logstore = dest_logstore
22604
+ # The destination project for centralized storage. Make sure that the region of the destination project is consistent with the region specified by destRegion.
20460
22605
  self.dest_project = dest_project
22606
+ # The destination region for centralized storage.
20461
22607
  self.dest_region = dest_region
22608
+ # The data retention period for centralized storage. Unit: days. This parameter takes effect only when you use an existing logstore for centralized storage.
20462
22609
  self.dest_ttl = dest_ttl
20463
22610
 
20464
22611
  def validate(self):
@@ -20498,6 +22645,7 @@ class UpsertCollectionPolicyRequestDataConfig(TeaModel):
20498
22645
  self,
20499
22646
  data_region: str = None,
20500
22647
  ):
22648
+ # The region for storing the global logs that are collected for the first time.
20501
22649
  self.data_region = data_region
20502
22650
 
20503
22651
  def validate(self):
@@ -20528,10 +22676,15 @@ class UpsertCollectionPolicyRequestPolicyConfig(TeaModel):
20528
22676
  resource_mode: str = None,
20529
22677
  resource_tags: Dict[str, Any] = None,
20530
22678
  ):
22679
+ # The IDs of the instances. This parameter takes effect only when resourceMode is set to instanceMode. Logs are collected only from instances that use the specified IDs.
20531
22680
  self.instance_ids = instance_ids
22681
+ # The regions of the instances. This parameter takes effect only when resourceMode is set to attributeMode. Wildcard characters are supported. If you leave this parameter empty, region-based filtering is not performed. The system considers that all instances are matched. If you specify a value for this parameter, logs of instances that reside in the specified regions are collected. Logs are collected from an instance only if the resource tags and region of the instance match the specified conditions.
20532
22682
  self.regions = regions
22683
+ # The resource collection mode. Valid values: all, attributeMode, and instanceMode. The value all specifies that logs of all instances within your account are collected to the default logstore. The value attributeMode specifies that logs are collected based on the regions of instances and resource tags. The value instanceMode specifies that logs are collected based on instance IDs.
22684
+ #
20533
22685
  # This parameter is required.
20534
22686
  self.resource_mode = resource_mode
22687
+ # The resource tags. This parameter takes effect only when resourceMode is set to attributeMode. If you leave this parameter empty, resource tag-based filtering is not performed. The system considers that all instances are matched. If you specify a value for this parameter, logs of instances that use the specified resource tags are collected. Logs are collected from an instance only if the resource tags and region of the instance match the specified conditions.
20535
22688
  self.resource_tags = resource_tags
20536
22689
 
20537
22690
  def validate(self):
@@ -20572,7 +22725,9 @@ class UpsertCollectionPolicyRequestResourceDirectory(TeaModel):
20572
22725
  account_group_type: str = None,
20573
22726
  members: List[str] = None,
20574
22727
  ):
22728
+ # The mode of the resource directory. Valid values: all and custom.
20575
22729
  self.account_group_type = account_group_type
22730
+ # The members. If accountGroupType is set to custom, the members are returned.
20576
22731
  self.members = members
20577
22732
 
20578
22733
  def validate(self):
@@ -20612,19 +22767,37 @@ class UpsertCollectionPolicyRequest(TeaModel):
20612
22767
  product_code: str = None,
20613
22768
  resource_directory: UpsertCollectionPolicyRequestResourceDirectory = None,
20614
22769
  ):
22770
+ # The configurations of centralized storage.
20615
22771
  self.centralize_config = centralize_config
22772
+ # Specifies whether to enable centralized storage. Default value: false.
20616
22773
  self.centralize_enabled = centralize_enabled
22774
+ # The code of the log type.
22775
+ #
20617
22776
  # This parameter is required.
20618
22777
  self.data_code = data_code
22778
+ # The data configurations. The configuration is returned only for global logs. For example, if productCode is set to sls, the configuration is returned.
20619
22779
  self.data_config = data_config
22780
+ # Specifies whether to enable the policy.
22781
+ #
20620
22782
  # This parameter is required.
20621
22783
  self.enabled = enabled
22784
+ # The configurations of the policy.
22785
+ #
20622
22786
  # This parameter is required.
20623
22787
  self.policy_config = policy_config
22788
+ # The name must meet the following requirements:
22789
+ #
22790
+ # * The name can contain only lowercase letters, digits, hyphens (-), and underscores (_).
22791
+ # * The name must start with a letter.
22792
+ # * The name must be 3 to 63 characters in length.
22793
+ #
20624
22794
  # This parameter is required.
20625
22795
  self.policy_name = policy_name
22796
+ # The code of the service.
22797
+ #
20626
22798
  # This parameter is required.
20627
22799
  self.product_code = product_code
22800
+ # The configurations of the resource directory. The account must have activated the resource directory and be a management account or a delegated administrator of the resource directory.
20628
22801
  self.resource_directory = resource_directory
20629
22802
 
20630
22803
  def validate(self):