diff options
Diffstat (limited to 'data/en_us/das/2020-01-16')
| -rw-r--r-- | data/en_us/das/2020-01-16/api-docs.php | 29655 |
1 files changed, 29655 insertions, 0 deletions
diff --git a/data/en_us/das/2020-01-16/api-docs.php b/data/en_us/das/2020-01-16/api-docs.php new file mode 100644 index 0000000..a6dfccc --- /dev/null +++ b/data/en_us/das/2020-01-16/api-docs.php @@ -0,0 +1,29655 @@ +<?php return [ + 'version' => '1.0', + 'info' => [ + 'style' => 'RPC', + 'product' => 'DAS', + 'version' => '2020-01-16', + ], + 'directories' => [ + [ + 'id' => 400976, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'AddHDMInstance', + ], + ], + [ + 'id' => 400978, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'GetInstanceInspections', + ], + ], + [ + 'id' => 400980, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'SetEventSubscription', + 'GetEventSubscription', + 'GetAutonomousNotifyEventContent', + 'GetAutonomousNotifyEventsInRange', + ], + ], + [ + 'id' => 400985, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'CreateDiagnosticReport', + 'DescribeDiagnosticReportList', + 'GetDBInstanceConnectivityDiagnosis', + ], + ], + [ + 'id' => 400989, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'CreateCacheAnalysisJob', + 'DescribeCacheAnalysisJob', + 'DescribeCacheAnalysisJobs', + ], + ], + [ + 'id' => 400993, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'EnableSqlConcurrencyControl', + 'DisableSqlConcurrencyControl', + 'DisableAllSqlConcurrencyControlRules', + 'GetRunningSqlConcurrencyControlRules', + 'GetSqlConcurrencyControlRulesHistory', + 'GetSqlConcurrencyControlKeywordsFromSqlText', + ], + ], + [ + 'id' => 401000, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'CreateRequestDiagnosis', + 'GetRequestDiagnosisResult', + 'GetRequestDiagnosisPage', + 'DescribeQueryExplain', + ], + ], + [ + 'id' => 401005, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'DescribeHotBigKeys', + 'DescribeTopHotKeys', + 'DescribeTopBigKeys', + 'DescribeHotKeys', + ], + ], + [ + 'id' => 401010, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'CreateQueryOptimizeTag', + 'GetQueryOptimizeExecErrorStats', + 'GetQueryOptimizeExecErrorSample', + 'GetQueryOptimizeSolution', + 'GetQueryOptimizeRuleList', + 'GetQueryOptimizeDataTrend', + 'GetQueryOptimizeDataTop', + 'GetQueryOptimizeDataStats', + 'GetQueryOptimizeTag', + 'GetQueryOptimizeShareUrl', + ], + ], + [ + 'id' => 401021, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'GetErrorRequestSample', + 'GetAsyncErrorRequestStatResult', + 'GetAsyncErrorRequestListByCode', + 'GetAsyncErrorRequestStatByCode', + 'GetFullRequestOriginStatByInstanceId', + 'GetFullRequestStatResultByInstanceId', + 'GetFullRequestSampleByInstanceId', + ], + ], + [ + 'id' => 401029, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'DescribeSqlLogConfig', + 'ModifySqlLogConfig', + 'DescribeSqlLogStatistic', + 'GetDasSQLLogHotData', + 'CreateSqlLogTask', + 'DescribeSqlLogTask', + 'DescribeSqlLogTasks', + ], + ], + [ + 'id' => 401037, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'GetRedisAllSession', + 'GetMongoDBCurrentOp', + 'KillInstanceAllSession', + 'CreateKillInstanceSessionTask', + 'GetKillInstanceSessionTaskResult', + 'GetMySQLAllSessionAsync', + ], + ], + [ + 'id' => 401044, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'CreateStorageAnalysisTask', + 'GetStorageAnalysisResult', + 'GetAutoIncrementUsageStatistic', + ], + ], + [ + 'id' => 401048, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'GetDeadLockDetailList', + 'GetBlockingDetailList', + 'CreateLatestDeadLockAnalysis', + 'GetDeadLockHistory', + 'GetDeadLockDetail', + 'GetDeadlockHistogram', + ], + ], + [ + 'id' => 401055, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'GetInstanceMissingIndexList', + ], + ], + [ + 'id' => 401057, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'DescribeSlowLogHistogramAsync', + 'DescribeSlowLogStatistic', + 'DescribeSlowLogRecords', + ], + ], + [ + 'id' => 401061, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'UpdateAutoThrottleRulesAsync', + 'DisableAutoThrottleRules', + 'GetAutoThrottleRules', + ], + ], + [ + 'id' => 401065, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'UpdateAutoSqlOptimizeStatus', + 'GetSqlOptimizeAdvice', + 'GetInstanceSqlOptimizeStatistic', + ], + ], + [ + 'id' => 401069, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'UpdateAutoResourceOptimizeRulesAsync', + 'DisableAutoResourceOptimizeRules', + 'GetAutoResourceOptimizeRules', + ], + ], + [ + 'id' => 401073, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'ModifyAutoScalingConfig', + 'DescribeAutoScalingConfig', + 'DescribeAutoScalingHistory', + 'DisableInstanceDasConfig', + ], + ], + [ + 'id' => 401078, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'GetPartitionsHeatmap', + ], + ], + [ + 'id' => 401080, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'GetPfsSqlSample', + 'GetPfsMetricTrends', + 'GetPfsSqlSummaries', + ], + ], + [ + 'id' => 401084, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'DescribeErrorLogRecords', + ], + ], + [ + 'id' => 401086, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'GetDasAgentSSE', + 'GetInstanceGroupInspectReportList', + 'GetInstanceGroupInspectReportDetail', + ], + ], + [ + 'id' => 401090, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'CreateSecurityIPGroup', + 'DescribeSecurityIPGroup', + 'DescribeSecurityIPGroupRelation', + 'ModifySecurityIPGroup', + 'ModifySecurityIPGroupRelation', + 'DeleteSecurityIPGroup', + ], + ], + [ + 'id' => 401097, + 'title' => null, + 'type' => 'directory', + 'children' => [ + 'GetHDMAliyunResourceSyncResult', + 'GetEndpointSwitchTask', + 'GetHDMLastAliyunResourceSyncResult', + 'DescribeSqlLogRecords', + 'EnableDasPro', + 'DisableDasPro', + 'DescribeInstanceDasPro', + 'GetDasProServiceUsage', + 'RunCloudBenchTask', + 'DescribeCloudbenchTask', + 'DescribeCloudBenchTasks', + 'CreateCloudBenchTasks', + 'DescribeCloudbenchTaskConfig', + 'DeleteCloudBenchTask', + 'DeleteStopGateway', + ], + ], + ], + 'components' => [ + 'schemas' => [], + ], + 'apis' => [ + 'AddHDMInstance' => [ + 'summary' => 'Adds a database instance to Database Autonomy Service (DAS).', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => '__context', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'InstanceArea', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the instance on which the database is deployed. Valid values:'."\n" + ."\n" + .'* **RDS**: an Alibaba Cloud database instance.'."\n" + .'* **ECS**: an Elastic Compute Service (ECS) instance on which a self-managed database is deployed.'."\n" + .'* **IDC**: a self-managed database instance that is not deployed on Alibaba Cloud.'."\n" + ."\n" + .'> IDC refers to your data center.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'ECS', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rm-2ze1jdv45i7l6****', + ], + ], + [ + 'name' => 'Ip', + 'in' => 'query', + 'schema' => [ + 'description' => 'The endpoint that is used to access the instance over internal networks.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rm-2ze1jdv45i7l6****.mysql.rds.aliyuncs.com', + ], + ], + [ + 'name' => 'Port', + 'in' => 'query', + 'schema' => [ + 'description' => 'The port that is used to access the instance over internal networks.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '3306', + ], + ], + [ + 'name' => 'Engine', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database engine. Valid values:'."\n" + ."\n" + .'* **MySQL**'."\n" + .'* **PostgreSQL**'."\n" + .'* **SQLServer**'."\n" + .'* **PolarDBMySQL**'."\n" + .'* **PolarDBPostgreSQL**'."\n" + .'* **Redis**'."\n" + .'* **MongoDB**'."\n" + .'* **PolarDBOracle**'."\n" + .'* **PolarDBX**'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'MySQL', + ], + ], + [ + 'name' => 'Username', + 'in' => 'query', + 'schema' => [ + 'description' => 'The username that is used to log on to the database.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test****', + ], + ], + [ + 'name' => 'Password', + 'in' => 'query', + 'schema' => [ + 'description' => 'The password for the username.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '122****', + ], + ], + [ + 'name' => 'InstanceAlias', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the instance.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'yuecq--test****', + ], + ], + [ + 'name' => 'NetworkType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The network type of the instance.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'VPC', + ], + ], + [ + 'name' => 'VpcId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The virtual private cloud (VPC) ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'vpc-m5e666n89m2bx8jar****', + ], + ], + [ + 'name' => 'Region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region in which the instance resides.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'FlushAccount', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Synchro' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'example' => 'None', + ], + 'Data' => [ + 'description' => 'The detailed information, including the error codes and the number of entries that are returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'VpcId' => [ + 'description' => 'The VPC ID.'."\n", + 'type' => 'string', + 'example' => 'vpc-m5e666n89m2bx8jar****', + ], + 'Token' => [ + 'description' => 'The client token that is used to ensure the idempotence of the request.'."\n", + 'type' => 'string', + 'example' => 'tokenID', + ], + 'Ip' => [ + 'description' => 'The endpoint of the instance.'."\n", + 'type' => 'string', + 'example' => 'rm-de21209****.mysql.rds.aliyuncs.com', + ], + 'CallerUid' => [ + 'description' => 'The user ID of the caller.'."\n", + 'type' => 'string', + 'example' => '31063db679****', + ], + 'InstanceId' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'example' => 'rm-2ze1jdv45i7l6****', + ], + 'Port' => [ + 'description' => 'The port number of the instance that you want to access.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '3306', + ], + 'OwnerId' => [ + 'description' => 'The ID of the instance owner.'."\n", + 'type' => 'string', + 'example' => '325352345', + ], + 'Uuid' => [ + 'description' => 'The unique identifier of the instance.'."\n", + 'type' => 'string', + 'example' => 'hdm_3063db6792965c080a4bcb6e6304****', + ], + 'Error' => [ + 'description' => 'The error message returned if the request failed.'."\n", + 'type' => 'string', + 'example' => 'InvalidRequestURL', + ], + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Role' => [ + 'description' => 'The role of the current API caller.'."\n", + 'type' => 'string', + 'example' => 'master', + ], + 'TenantId' => [ + 'description' => 'The tenant ID.'."\n", + 'type' => 'string', + 'example' => 'L0EPfLS****=SCE00000*****', + ], + ], + ], + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**: The request was successful.'."\n" + .'* **false**: The request failed.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Synchro\\": \\"None\\",\\n \\"Data\\": {\\n \\"VpcId\\": \\"vpc-m5e666n89m2bx8jar****\\",\\n \\"Token\\": \\"tokenID\\",\\n \\"Ip\\": \\"rm-de21209****.mysql.rds.aliyuncs.com\\",\\n \\"CallerUid\\": \\"31063db679****\\",\\n \\"InstanceId\\": \\"rm-2ze1jdv45i7l6****\\",\\n \\"Port\\": 3306,\\n \\"OwnerId\\": \\"325352345\\",\\n \\"Uuid\\": \\"hdm_3063db6792965c080a4bcb6e6304****\\",\\n \\"Error\\": \\"InvalidRequestURL\\",\\n \\"Code\\": 200,\\n \\"Role\\": \\"master\\",\\n \\"TenantId\\": \\"L0EPfLS****=SCE00000*****\\"\\n },\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<AddHDMInstanceResponse>\\n <Message>Successful</Message>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Synchro>None</Synchro>\\n <Data>\\n <VpcId>vpc-m5e666n89m2bx8jar****</VpcId>\\n <Token>tokenID</Token>\\n <Ip>rm-de21209****.mysql.rds.aliyuncs.com</Ip>\\n <CallerUid>31063db679****</CallerUid>\\n <InstanceId>rm-2ze1jdv45i7l6****</InstanceId>\\n <Port>3306</Port>\\n <OwnerId>325352345</OwnerId>\\n <Uuid>hdm_3063db6792965c080a4bcb6e6304****</Uuid>\\n <Error>InvalidRequestURL</Error>\\n <Code>200</Code>\\n <Role>master</Role>\\n <TenantId>L0EPfLS****=SCE00000*****</TenantId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</AddHDMInstanceResponse>","errorExample":""}]', + 'title' => 'AddHDMInstance', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an Alibaba Cloud SDK or a DAS SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call DAS, you must set the region to cn-shanghai.'."\n", + ], + 'GetInstanceInspections' => [ + 'summary' => 'Queries the result of an inspection that is performed on a database instance by using the inspection and scoring feature.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '24190', + 'abilityTreeNodes' => [ + 'FEATUREhdmB8MM4L', + ], + ], + 'parameters' => [ + [ + 'name' => 'Engine', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database engine. Valid values:'."\n" + ."\n" + .'* **MySQL**'."\n" + .'* **Redis**'."\n" + .'* **PolarDBMySQL**'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'MySQL', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '1655416825000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The end time must be later than the start time.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '1655427625000', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. The value must be a positive integer. Default value: 1.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 10.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => '10', + ], + ], + [ + 'name' => 'InstanceArea', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the instance on which the database is deployed. Valid values:'."\n" + ."\n" + .'* **RDS**: an Alibaba Cloud database instance.'."\n" + .'* **ECS**: an ECS instance on which a self-managed database is deployed.'."\n" + .'* **IDC**: a self-managed database instance that is not deployed on Alibaba Cloud.'."\n" + ."\n" + .'> The value IDC specifies that the instance is deployed in a data center.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'RDS', + ], + ], + [ + 'name' => 'SearchMap', + 'in' => 'query', + 'schema' => [ + 'description' => 'The filter condition, which can be specified in one of the following formats:'."\n" + ."\n" + .'* Specify the ID of a single instance in the {"InstanceId":"Instance ID"} format.'."\n" + .'* Specify the IDs of multiple instances in the {"InstanceIds":\\["Instance ID1","Instance ID2"]} format. Separate the instance IDs with commas (,).'."\n" + .'* Specify the region in which the instance resides in the {"region":"Region of the instance"} format.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"InstanceId":"rm-bp10usoc1erj7****"}', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The resource group ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rg-aek2eil6npi****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, Successful is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Data' => [ + 'description' => 'The details.'."\n", + 'type' => 'object', + 'properties' => [ + 'List' => [ + 'description' => 'The detailed information.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => 'The end time of the inspection and scoring task. The value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The end time must be later than the start time.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1608888296001', + ], + 'StartTime' => [ + 'description' => 'The start time of the inspection and scoring task. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1608888296000', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'example' => '"data": { "hasDeadLock": false, "exceptionTableMap": {}, "bigTransactionCount": 0, "cpu": 4, "isRds": true, "rdsEnable": true, "enable": false, "activeSessions": [], "bigTransactionList": [], "bigSessionList": [ { "blockDuration": 0, "active": false, "Time": 0, "db": "" },', + ], + 'Instance' => [ + 'description' => 'The information about the instance.'."\n", + 'type' => 'object', + 'properties' => [ + 'VpcId' => [ + 'description' => 'The ID of the virtual private cloud (VPC) in which the instance is deployed.'."\n", + 'type' => 'string', + 'example' => 'vpc-bp1knt7m55z9exoo7****', + ], + 'Uuid' => [ + 'description' => 'The unique identifier of the instance.'."\n", + 'type' => 'string', + 'example' => 'hdm_3063db6792965c080a4bcb6e6304****', + ], + 'InstanceArea' => [ + 'description' => 'The type of the instance on which the database is deployed. Valid values:'."\n" + ."\n" + .'* **RDS**: an Alibaba Cloud database instance.'."\n" + .'* **ECS**: an Elastic Compute Service (ECS) instance on which a self-managed database is deployed.'."\n" + .'* **IDC**: a self-managed database instance that is not deployed on Alibaba Cloud.'."\n" + ."\n" + .'> The value IDC indicates that the instance is deployed in a data center.'."\n", + 'type' => 'string', + 'example' => 'RDS', + ], + 'InstanceClass' => [ + 'description' => 'The instance type.'."\n", + 'type' => 'string', + 'example' => 'rds.mysql.s2.xlarge', + ], + 'Region' => [ + 'description' => 'The region ID of the instance.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'AccountId' => [ + 'description' => 'The account ID. You can view the ID of the logon account by moving the pointer over the profile in the Alibaba Cloud management console.'."\n", + 'type' => 'string', + 'example' => '108398049688****', + ], + 'NetworkType' => [ + 'description' => 'The network type of the instance.'."\n", + 'type' => 'string', + 'example' => 'VPC', + ], + 'Engine' => [ + 'description' => 'The database engine. Valid values:'."\n" + ."\n" + .'* **MySQL**'."\n" + .'* **Redis**'."\n" + .'* **PolarDBMySQL**'."\n", + 'type' => 'string', + 'example' => 'MySQL', + ], + 'InstanceId' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'example' => 'rm-bp10usoc1erj7****', + ], + 'NodeId' => [ + 'description' => 'The ID of the node on the instance.'."\n", + 'type' => 'string', + 'example' => 'rm-bp10usoc1erj7****', + ], + 'EngineVersion' => [ + 'description' => 'The version number of the database engine.'."\n", + 'type' => 'string', + 'example' => '8.0', + ], + 'InstanceAlias' => [ + 'description' => 'The instance name.'."\n", + 'type' => 'string', + 'example' => 'test-01', + ], + 'Cpu' => [ + 'description' => 'The CPU specification of the instance. For example, if a value of 8 is returned, the instance has eight CPU cores.'."\n", + 'type' => 'string', + 'example' => '8', + ], + 'Memory' => [ + 'description' => 'The memory capacity of the database that is deployed on the instance. Unit: MB.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '32768', + ], + 'Storage' => [ + 'description' => 'The storage space of the instance. Unit: GB.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '150', + ], + 'Category' => [ + 'description' => 'The connection mode of the instance. Valid values:'."\n" + ."\n" + .'* **standard**: standard mode.'."\n" + .'* **safe**: database proxy mode.'."\n", + 'type' => 'string', + 'example' => 'standard', + ], + ], + ], + 'ScoreMap' => [ + 'description' => 'The scores that are deducted for the instance.'."\n", + 'type' => 'object', + ], + 'GmtCreate' => [ + 'description' => 'The time when the task was created. The value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1603247192000', + ], + 'Score' => [ + 'description' => 'The inspection score of the instance.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + 'AutoFunction' => [ + 'description' => 'Indicates whether the autonomy service is enabled.'."\n", + 'type' => 'object', + 'properties' => [ + 'EventSubscription' => [ + 'description' => 'Indicates whether the event subscription feature is enabled. Valid values:'."\n" + ."\n" + .'* **0**: disabled.'."\n" + .'* **1**: enabled.'."\n" + .'* **2**: not supported.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'AutoIndex' => [ + 'description' => 'Indicates whether the feature of automatically creating and deleting indexes is enabled. Valid values:'."\n" + ."\n" + .'* **0**: disabled.'."\n" + .'* **1**: enabled.'."\n" + .'* **2**: not supported.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'AutoLimitedSql' => [ + 'description' => 'Indicates whether the automatic throttling feature is enabled. Valid values:'."\n" + ."\n" + .'* **0**: disabled.'."\n" + .'* **1**: enabled.'."\n" + .'* **2**: not supported.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'AutoResourceOptimize' => [ + 'description' => 'Indicates whether the automatic fragment recycling feature is enabled. Valid values:'."\n" + ."\n" + .'* **0**: disabled.'."\n" + .'* **1**: enabled.'."\n" + .'* **2**: not supported.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'AutoScale' => [ + 'description' => 'Indicates whether the auto scaling feature is enabled. Valid values:'."\n" + ."\n" + .'* **0**: disabled.'."\n" + .'* **1**: enabled.'."\n" + .'* **2**: not supported.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + ], + ], + 'EnableDasPro' => [ + 'description' => 'Indicates whether DAS Enterprise Edition is enabled. Valid values:'."\n" + ."\n" + .'* **0**: disabled.'."\n" + .'* **1**: enabled.'."\n" + .'* **2**: not supported.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'State' => [ + 'description' => 'The state of the inspection and scoring task. Valid values:'."\n" + ."\n" + .'* **0**: The task is waiting for execution.'."\n" + .'* **1**: The task is in progress.'."\n" + .'* **2**: The task is complete.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'TaskType' => [ + 'description' => 'The mode in which the inspection and scoring task was initiated. Valid values:'."\n" + ."\n" + .'* **0**: automatic mode.'."\n" + .'* **1**: manual mode.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + ], + ], + ], + 'PageNo' => [ + 'description' => 'The page number. The value returned is a positive integer. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'Total' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '4', + ], + ], + ], + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Data\\": {\\n \\"List\\": [\\n {\\n \\"EndTime\\": 1608888296001,\\n \\"StartTime\\": 1608888296000,\\n \\"Data\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"Instance\\": {\\n \\"VpcId\\": \\"vpc-bp1knt7m55z9exoo7****\\",\\n \\"Uuid\\": \\"hdm_3063db6792965c080a4bcb6e6304****\\",\\n \\"InstanceArea\\": \\"RDS\\",\\n \\"InstanceClass\\": \\"rds.mysql.s2.xlarge\\",\\n \\"Region\\": \\"cn-hangzhou\\",\\n \\"AccountId\\": \\"108398049688****\\",\\n \\"NetworkType\\": \\"VPC\\",\\n \\"Engine\\": \\"MySQL\\",\\n \\"InstanceId\\": \\"rm-bp10usoc1erj7****\\",\\n \\"NodeId\\": \\"rm-bp10usoc1erj7****\\",\\n \\"EngineVersion\\": \\"8.0\\",\\n \\"InstanceAlias\\": \\"test-01\\",\\n \\"Cpu\\": \\"8\\",\\n \\"Memory\\": 32768,\\n \\"Storage\\": 150,\\n \\"Category\\": \\"standard\\"\\n },\\n \\"ScoreMap\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"GmtCreate\\": 1603247192000,\\n \\"Score\\": 100,\\n \\"AutoFunction\\": {\\n \\"EventSubscription\\": 0,\\n \\"AutoIndex\\": 2,\\n \\"AutoLimitedSql\\": 2,\\n \\"AutoResourceOptimize\\": 0,\\n \\"AutoScale\\": 0\\n },\\n \\"EnableDasPro\\": 0,\\n \\"State\\": 2,\\n \\"TaskType\\": 0\\n }\\n ],\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 10,\\n \\"Total\\": 4\\n },\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<GetInstanceInspectionsResponse>\\n <Message>Successful</Message>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Data>\\n <List>\\n <EndTime>1608888296001</EndTime>\\n <StartTime>1608888296000</StartTime>\\n <Instance>\\n <VpcId>vpc-bp1knt7m55z9exoo7****</VpcId>\\n <Uuid>hdm_3063db6792965c080a4bcb6e6304****</Uuid>\\n <InstanceArea>RDS</InstanceArea>\\n <InstanceClass>rds.mysql.s2.xlarge</InstanceClass>\\n <Region>cn-hangzhou</Region>\\n <AccountId>108398049688****</AccountId>\\n <NetworkType>VPC</NetworkType>\\n <Engine>MySQL</Engine>\\n <InstanceId>rm-bp10usoc1erj7****</InstanceId>\\n <NodeId>rm-bp10usoc1erj7****</NodeId>\\n <EngineVersion>8.0</EngineVersion>\\n <InstanceAlias>test-01</InstanceAlias>\\n <Cpu>8</Cpu>\\n <Memory>32768</Memory>\\n <Storage>150</Storage>\\n <Category>standard</Category>\\n </Instance>\\n <GmtCreate>1603247192000</GmtCreate>\\n <Score>100</Score>\\n <AutoFunction>\\n <EventSubscription>0</EventSubscription>\\n <AutoIndex>2</AutoIndex>\\n <AutoLimitedSql>2</AutoLimitedSql>\\n <AutoResourceOptimize>0</AutoResourceOptimize>\\n <AutoScale>0</AutoScale>\\n </AutoFunction>\\n <EnableDasPro>0</EnableDasPro>\\n <State>2</State>\\n <TaskType>0</TaskType>\\n </List>\\n <PageNo>1</PageNo>\\n <PageSize>10</PageSize>\\n <Total>4</Total>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</GetInstanceInspectionsResponse>","errorExample":""}]', + 'title' => 'GetInstanceInspections', + 'description' => 'Database Autonomy Service (DAS) provides the inspection and scoring feature. This feature allows you to inspect and score the health status of your instance on a regular basis. This helps you obtain information about the status of your databases. For more information, see [Inspection and scoring](~~205659~~).'."\n" + ."\n" + .'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* This operation is applicable only to ApsaraDB RDS for MySQL databases, self-managed MySQL databases hosted on Elastic Compute Service (ECS) instances, self-managed MySQL databases in data centers, ApsaraDB for Redis databases, and PolarDB for MySQL databases.'."\n" + .'* If you use an Alibaba Cloud SDK, make sure that the aliyun-sdk-core version is later than V4.3.3. We recommend that you use the latest version.'."\n" + .'* The version of DAS SDK must be V1.0.3 or later.'."\n" + .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n", + ], + 'SetEventSubscription' => [ + 'summary' => 'Configures the event subscription settings for a database instance.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREhdmETIPZF', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'title' => '实例ID', + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze8g2am97624****', + ], + ], + [ + 'name' => 'EventContext', + 'in' => 'query', + 'schema' => [ + 'title' => '事件场景', + 'description' => 'The supported event scenarios. You can set the value to **AllContext**, which indicates that all scenarios are supported.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [], + 'example' => 'AllContext', + ], + ], + [ + 'name' => 'Lang', + 'in' => 'query', + 'schema' => [ + 'title' => '语言', + 'description' => 'The language of event notifications. You can set the value to **zh-CN**, which indicates that event notifications are sent in Chinese.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [], + 'example' => 'zh-CN', + ], + ], + [ + 'name' => 'MinInterval', + 'in' => 'query', + 'schema' => [ + 'title' => '通知最小间隔', + 'description' => 'The minimum interval between consecutive event notifications. Unit: seconds.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '60', + ], + ], + [ + 'name' => 'ContactName', + 'in' => 'query', + 'schema' => [ + 'title' => '告警订阅人', + 'description' => 'The name of the contact who receives alert notifications. Separate multiple names with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Default contact', + ], + ], + [ + 'name' => 'ChannelType', + 'in' => 'query', + 'schema' => [ + 'title' => '通知方式', + 'description' => 'The notification method. Valid values:'."\n" + ."\n" + .'* **hdm_alarm_sms**: text message.'."\n" + .'* **dingtalk**: DingTalk chatbot.'."\n" + .'* **hdm_alarm_sms_and_email**: text message and email.'."\n" + .'* **hdm_alarm_sms,dingtalk**: text message and DingTalk chatbot.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [], + 'example' => 'hdm_alarm_sms,dingtalk', + ], + ], + [ + 'name' => 'ContactGroupName', + 'in' => 'query', + 'schema' => [ + 'title' => '告警订阅组', + 'description' => 'The name of the contact group that receives alert notifications. Separate multiple names with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Default contact group', + ], + ], + [ + 'name' => 'Level', + 'in' => 'query', + 'schema' => [ + 'title' => '事件风险级别', + 'description' => 'The risk level of the events. Valid values:'."\n" + ."\n" + .'* **Notice**: events that trigger notifications, including events at the **Notice**, **Optimization**, **Warn**, and **Critical** levels.'."\n" + .'* **Optimization**: events that trigger optimizations, including events at the **Optimization**, **Warn**, and **Critical** levels.'."\n" + .'* **Warn**: events that trigger warnings, including events at the **Warn** and **Critical** levels.'."\n" + .'* **Critical**: events that trigger critical warnings.'."\n" + ."\n" + .'The following content describes the events at each level in detail:'."\n" + ."\n" + .'* Notice: events that are related to database exceptions for which no suggestions are generated.'."\n" + .'* Optimization: events for which optimization suggestions are generated based on the status of the database.'."\n" + .'* Warn: events that may affect the running of the database.'."\n" + .'* Critical: events that affect the running of the database.', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [], + 'example' => 'Optimization', + ], + ], + [ + 'name' => 'Active', + 'in' => 'query', + 'schema' => [ + 'title' => '是否启用', + 'description' => 'Specifies whether to enable the event subscription feature. Valid values:'."\n" + ."\n" + .'* **0**: disables the event subscription feature.'."\n" + .'* **1**: enables the event subscription feature.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [], + 'example' => '1', + ], + ], + [ + 'name' => 'Severity', + 'in' => 'query', + 'schema' => [ + 'description' => 'The alert severity based on the event type.'."\n" + ."\n" + .'Specify this parameter in the following format: `{"Event type 1":"Alert severity", "Event type 2":"Alert severity"}`.'."\n" + ."\n" + .'Valid values of event types:'."\n" + ."\n" + .'* **AutoScale**: auto scaling event.'."\n" + .'* **SQLThrottle**: throttling event.'."\n" + .'* **TimeSeriesAbnormal**: event for detecting time series anomalies.'."\n" + .'* **SQLOptimize**: SQL optimization event.'."\n" + .'* **ResourceOptimize**: storage optimization event.'."\n" + ."\n" + .'Valid values of alert severities:'."\n" + ."\n" + .'* **info**'."\n" + .'* **noticed**'."\n" + .'* **warning**'."\n" + .'* **critical**'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"AutoScale":"critical","SQLThrottle":"info","TimeSeriesAbnormal":"warning"}', + ], + ], + [ + 'name' => 'DispatchRule', + 'in' => 'query', + 'schema' => [ + 'description' => 'The notification rules based on the event type. If you leave this parameter empty, the values of **MinInterval** and **ChannelType** prevail.'."\n" + ."\n" + .'Specify this parameter in the following format: `{"silenced": {"Event type 1":Specifies whether to enable adaptive silence, "Event type 2":Specify whether to enable adaptive silence},"min_interval": {"Event type 1":Minimum interval between event notifications, "Event type 2":Minimum interval between event notifications},"alert_type": {"Event type 1":"Notification method", "Event type 2":"Notification method"}}`.'."\n" + ."\n" + .'* **silenced**: specifies whether to enable adaptive silence. After you enable adaptive silence, the interval between consecutive alert notifications for an event is the greater one of the minimum interval specified by **min_interval** and one third of the event duration. Valid values:'."\n" + ."\n" + .' * 1: enables adaptive silence.'."\n" + .' * 2: disables adaptive silence.'."\n" + ."\n" + .'* **min_interval**: the minimum interval between event notifications. Unit: seconds.'."\n" + ."\n" + .'* **alert_type**: the notification method. Valid values:'."\n" + ."\n" + .' * **hdm_alarm_sms**: text message.'."\n" + .' * **dingtalk**: DingTalk chatbot.'."\n" + .' * **hdm_alarm_sms_and_email**: text message and email.'."\n" + .' * **hdm_alarm_sms,dingtalk**: text message and DingTalk chatbot.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"silenced": {"AutoScale":1, "SQLThrottle":0, "TimeSeriesAbnormal": 1}, "min_interval": {"AutoScale":300, "SQLThrottle":360, "TimeSeriesAbnormal": 120}, "alert_type": {"AutoScale":"hdm_alarm_sms", "SQLThrottle":"hdm_alarm_sms_and_email", "TimeSeriesAbnormal": "hdm_alarm_sms,dingtalk"}}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '097F0C56-B252-515A-B602-FC56EF93EF8A', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The detailed information.'."\n", + 'type' => 'object', + 'properties' => [ + 'userId' => [ + 'title' => '用户ID ', + 'description' => 'The user ID.'."\n", + 'type' => 'string', + 'example' => '1088760496****', + ], + 'instanceId' => [ + 'title' => '实例ID', + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'example' => 'rm-2ze8g2am97624****', + ], + 'eventContext' => [ + 'title' => '事件场景', + 'description' => 'The supported event scenarios. Only **AllContext** is returned for this parameter, which indicates that all scenarios are supported.'."\n", + 'type' => 'string', + 'example' => 'AllContext', + ], + 'lang' => [ + 'title' => '语言', + 'description' => 'The language of event notifications. Only **zh-CN** is returned for this parameter, which indicates that event notifications are sent in Chinese.'."\n", + 'type' => 'string', + 'example' => 'zh_CN', + ], + 'active' => [ + 'title' => '是否启用', + 'description' => 'Indicates whether the event subscription feature is enabled. Valid values:'."\n" + ."\n" + .'* **0**: The event subscription feature is disabled.'."\n" + .'* **1**: The event subscription feature is enabled.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'minInterval' => [ + 'title' => '通知最小间隔', + 'description' => 'The minimum interval between consecutive event notifications. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '60', + ], + 'contactName' => [ + 'title' => '告警订阅人', + 'description' => 'The name of the contact who receives alert notifications. Multiple names are separated by commas (,).'."\n", + 'type' => 'string', + 'example' => 'Default contact', + ], + 'contactGroupName' => [ + 'title' => '告警订阅组', + 'description' => 'The name of the contact group that receives alert notifications. Multiple names are separated by commas (,).'."\n", + 'type' => 'string', + 'example' => 'Default contact group', + ], + 'channelType' => [ + 'title' => '通知方式', + 'description' => 'The notification method. Valid values:'."\n" + ."\n" + .'* **hdm_alarm_sms**: text message.'."\n" + .'* **dingtalk**: DingTalk chatbot.'."\n" + .'* **hdm_alarm_sms_and_email**: text message and email.'."\n" + .'* **hdm_alarm_sms,dingtalk**: text message and DingTalk chatbot.'."\n", + 'type' => 'string', + 'example' => 'hdm_alarm_sms,dingtalk', + ], + 'level' => [ + 'title' => '事件风险级别', + 'description' => 'The risk level of the events. Valid values:'."\n" + ."\n" + .'* **Notice**'."\n" + .'* **Optimization**'."\n" + .'* **Warn**'."\n" + .'* **Critical**'."\n", + 'type' => 'string', + 'example' => 'Optimization', + ], + ], + ], + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"097F0C56-B252-515A-B602-FC56EF93EF8A\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"userId\\": \\"1088760496****\\",\\n \\"instanceId\\": \\"rm-2ze8g2am97624****\\",\\n \\"eventContext\\": \\"AllContext\\",\\n \\"lang\\": \\"zh_CN\\",\\n \\"active\\": 1,\\n \\"minInterval\\": 60,\\n \\"contactName\\": \\"默认联系人\\",\\n \\"contactGroupName\\": \\"默认联系组\\",\\n \\"channelType\\": \\"hdm_alarm_sms,dingtalk\\",\\n \\"level\\": \\"Optimization\\"\\n },\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<SetEventSubscriptionResponse>\\n <RequestId>097F0C56-B252-515A-B602-FC56EF93EF8A</RequestId>\\n <Message>Successful</Message>\\n <Data>\\n <userId>1088760496****</userId>\\n <instanceId>rm-2ze8g2am97624****</instanceId>\\n <eventContext>AllContext</eventContext>\\n <lang>zh_CN</lang>\\n <active>1</active>\\n <minInterval>60</minInterval>\\n <contactName>默认联系人</contactName>\\n <contactGroupName>默认联系组</contactGroupName>\\n <channelType>hdm_alarm_sms,dingtalk</channelType>\\n <level>Optimization</level>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</SetEventSubscriptionResponse>","errorExample":""}]', + 'title' => 'SetEventSubscription', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an Alibaba Cloud SDK or a Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call the API operations of DAS, you must set the region ID to cn-shanghai.'."\n" + .'* Make sure that the database instance that you want to manage is connected to DAS.'."\n", + ], + 'GetEventSubscription' => [ + 'summary' => 'Queries the event subscription settings of a database instance.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'title' => '实例ID。', + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze8g2am97624****'."\n", + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'userId' => [ + 'title' => '用户ID。', + 'description' => 'The user ID.'."\n", + 'type' => 'string', + 'example' => '1088760496****', + ], + 'instanceId' => [ + 'title' => '实例ID。', + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'example' => 'rm-2ze8g2am97624****', + ], + 'eventContext' => [ + 'title' => '事件场景。', + 'description' => 'The supported event scenarios. Only **AllContext** may be returned, which indicates that all scenarios are supported.'."\n", + 'type' => 'string', + 'example' => 'AllContext', + ], + 'lang' => [ + 'title' => '语言', + 'description' => 'The language of event notifications. Only **zh-CN** may be returned, which indicates that event notifications are sent in Chinese.'."\n", + 'type' => 'string', + 'example' => 'zh_CN', + ], + 'active' => [ + 'title' => '是否开启。', + 'description' => 'Indicates whether the event subscription feature is enabled. Valid values:'."\n" + ."\n" + .'* **0**: The event subscription feature is disabled.'."\n" + .'* **1**: The event subscription feature is enabled.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'minInterval' => [ + 'title' => '通知最小间隔。', + 'description' => 'The minimum interval between event notifications. Unit: seconds.'."\n", + 'type' => 'string', + 'example' => '60', + ], + 'contactName' => [ + 'title' => '告警订阅人。', + 'description' => 'The name of the subscriber who receives alert notifications. Multiple names are separated by commas (,).'."\n", + 'type' => 'string', + 'example' => 'Default contact', + ], + 'contactGroupName' => [ + 'title' => '告警订阅组', + 'description' => 'The name of the contact group that receives alert notifications. Multiple names are separated by commas (,).'."\n", + 'type' => 'string', + 'example' => 'Default contact group', + ], + 'channelType' => [ + 'title' => '通知方式。', + 'description' => 'The notification method. Valid values:'."\n" + ."\n" + .'* **hdm_alarm_sms**: text message.'."\n" + .'* **dingtalk**: DingTalk chatbot.'."\n" + .'* **hdm_alarm_sms_and_email**: text message and email.'."\n" + .'* **hdm_alarm_sms,dingtalk**: text message and DingTalk chatbot.'."\n", + 'type' => 'string', + 'example' => 'hdm_alarm_sms,dingtalk', + ], + 'level' => [ + 'title' => '事件风险级别。', + 'description' => 'The risk level of the events that trigger notifications. Valid values:'."\n" + ."\n" + .'* **Notice**'."\n" + .'* **Optimization**'."\n" + .'* **Warn**'."\n" + .'* **Critical**'."\n", + 'type' => 'string', + 'example' => 'Optimization', + ], + 'contacts' => [ + 'title' => '告警联系人信息。', + 'description' => 'The user ID.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'title' => '告警联系人名称。', + 'description' => 'The name of the alert contact.', + 'type' => 'string', + 'example' => 'Mr. Zhang', + ], + 'phone' => [ + 'title' => '告警联系人电话', + 'description' => 'The mobile number of the alert contact.', + 'type' => 'string', + 'example' => '1390000****', + ], + 'email' => [ + 'title' => '告警联系人邮箱。', + 'description' => 'The email address of the alert contact.', + 'type' => 'string', + 'example' => 'a***@example.net', + ], + 'dingtalkHook' => [ + 'title' => '告警联系人钉钉机器人webhook。', + 'description' => 'The webhook URL of the DingTalk chatbot.', + 'type' => 'string', + 'example' => 'https://oapi.dingtalk.com/robot/send?access_token=68fa29a9eaf3ba9994f54fxxxc1aa9879700308f90e9c23ebfb3663642c9****', + ], + 'groups' => [ + 'title' => '告警联系人所属联系组列表。', + 'description' => 'The contact groups to which the alert contact belongs.', + 'type' => 'array', + 'items' => [ + 'description' => 'The name of the alert contact.', + 'type' => 'string', + 'example' => 'Mr. Zhang', + ], + ], + 'isCmsReduplicated' => [ + 'title' => '是否和云监控上的联系人重名。', + 'description' => 'Indicates whether the alert contact name is the same as the contact name on CloudMonitor.'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**', + 'type' => 'boolean', + 'example' => 'true', + ], + 'userId' => [ + 'title' => '用户ID。', + 'description' => 'The user ID.', + 'type' => 'string', + 'example' => '1088760496****', + ], + ], + 'description' => '', + ], + ], + 'contactGroups' => [ + 'description' => 'The alert contact groups.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'name' => [ + 'title' => '告警联系人组姓名。', + 'description' => 'The name of the alert contact group.', + 'type' => 'string', + 'example' => 'Mr. Zhang', + ], + 'description' => [ + 'title' => '告警联系人组描述。', + 'description' => 'The description of the alert contact group.', + 'type' => 'string', + 'example' => 'Default contact', + ], + 'contacts' => [ + 'title' => '告警联系人组内成员。', + 'description' => 'The members of the alert contact group.', + 'type' => 'string', + 'example' => '"[\\"Mr. Zhang\\",\\"Ms. Wang\\",\\"Mr. Li\\"]"', + ], + 'userId' => [ + 'title' => '用户ID。', + 'description' => 'The user ID.', + 'type' => 'string', + 'example' => '1088760496****', + ], + ], + ], + ], + 'eventSendGroup' => [ + 'title' => '对应事件订阅的场景。', + 'description' => 'The supported event scenarios in which event subscription can be sent.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The supported event scenario in which event notifications can be sent. Only **AllContext** may be returned, which indicates that all scenarios are supported.'."\n", + 'type' => 'string', + 'example' => 'AllContext', + ], + ], + 'id' => [ + 'title' => '订阅关系序号。', + 'description' => 'The primary key ID of the database.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'gmtCreate' => [ + 'title' => '创建时间。', + 'description' => 'The time when event subscription was enabled. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1633071840000', + ], + 'gmtModified' => [ + 'title' => '最后修改时间。', + 'description' => 'The time when the event subscription settings were most recently modified. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1633071850000', + ], + ], + ], + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"userId\\": \\"1088760496****\\",\\n \\"instanceId\\": \\"rm-2ze8g2am97624****\\",\\n \\"eventContext\\": \\"AllContext\\",\\n \\"lang\\": \\"zh_CN\\",\\n \\"active\\": 1,\\n \\"minInterval\\": \\"60\\",\\n \\"contactName\\": \\"默认联系人\\",\\n \\"contactGroupName\\": \\"默认联系组\\",\\n \\"channelType\\": \\"hdm_alarm_sms,dingtalk\\",\\n \\"level\\": \\"Optimization\\",\\n \\"contacts\\": [\\n {\\n \\"name\\": \\"张先生\\",\\n \\"phone\\": \\"1390000****\\",\\n \\"email\\": \\"a***@example.net\\",\\n \\"dingtalkHook\\": \\"https://oapi.dingtalk.com/robot/send?access_token=68fa29a9eaf3ba9994f54fxxxc1aa9879700308f90e9c23ebfb3663642c9****\\",\\n \\"groups\\": [\\n \\"张先生\\"\\n ],\\n \\"isCmsReduplicated\\": true,\\n \\"userId\\": \\"1088760496****\\"\\n }\\n ],\\n \\"contactGroups\\": [\\n {\\n \\"name\\": \\"张先生\\",\\n \\"description\\": \\"默认联系人\\",\\n \\"contacts\\": \\"\\\\\\"[\\\\\\\\\\\\\\"张先生\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"王女士\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"李先生\\\\\\\\\\\\\\"]\\\\\\"\\",\\n \\"userId\\": \\"1088760496****\\"\\n }\\n ],\\n \\"eventSendGroup\\": [\\n \\"AllContext\\"\\n ],\\n \\"id\\": 1,\\n \\"gmtCreate\\": 1633071840000,\\n \\"gmtModified\\": 1633071850000\\n },\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<GetEventSubscriptionResponse>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Message>Successful</Message>\\n <Data>\\n <userId>1088760496****</userId>\\n <instanceId>rm-2ze8g2am97624****</instanceId>\\n <eventContext>AllContext</eventContext>\\n <lang>zh_CN</lang>\\n <active>1</active>\\n <minInterval>60</minInterval>\\n <contactName>默认联系人</contactName>\\n <contactGroupName>默认联系组</contactGroupName>\\n <channelType>hdm_alarm_sms,dingtalk</channelType>\\n <level>Optimization</level>\\n <contacts>\\n <name>张先生</name>\\n <phone>1390000****</phone>\\n <email>a***@example.net</email>\\n <dingtalkHook>https://oapi.dingtalk.com/robot/send?access_token=68fa29a9eaf3ba9994f54fxxxc1aa9879700308f90e9c23ebfb3663642c9****</dingtalkHook>\\n <groups>张先生</groups>\\n <isCmsReduplicated>true</isCmsReduplicated>\\n <userId>1088760496****</userId>\\n </contacts>\\n <contactGroups>\\n <name>张先生</name>\\n <description>默认联系人</description>\\n <contacts>\\"[\\\\\\"张先生\\\\\\",\\\\\\"王女士\\\\\\",\\\\\\"李先生\\\\\\"]\\"</contacts>\\n <userId>1088760496****</userId>\\n </contactGroups>\\n <eventSendGroup>AllContext</eventSendGroup>\\n <id>1</id>\\n <gmtCreate>1633071840000</gmtCreate>\\n <gmtModified>1633071850000</gmtModified>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</GetEventSubscriptionResponse>","errorExample":""}]', + 'title' => 'GetEventSubscription', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an Alibaba Cloud SDK or a Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n" + .'* The database instance that you want to manage is connected to DAS.'."\n", + ], + 'GetAutonomousNotifyEventContent' => [ + 'summary' => 'Queries the details of notification events of a database instance.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '23868', + 'abilityTreeNodes' => [ + 'FEATUREhdmETIPZF', + ], + ], + 'parameters' => [ + [ + 'name' => '__context', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-18ff4a195d****', + ], + ], + [ + 'name' => 'SpanId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The unique identifier of the event. You can call the [GetAutonomousNotifyEventsInRange](~~288371~~) operation to query the unique identifier returned by the SpanId response parameter.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '7e7b2774-95b8-4fa3-bd9c-0ab47cb7****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Data' => [ + 'description' => 'The details of the notification events.'."\n", + 'type' => 'string', + 'example' => '{\\"taskId\\":\\"7e1ba595-0889-48ff-a6ff-010f54991d****\\",\\"taskType\\":\\"SQL_OPTIMIZE\\",\\"advisorId\\":\\"636dc5f34664dd56ff0****\\",\\"sqlId\\":\\"e2b1d6c1ee1bb29555a828b59f16****\\",\\"indexAdviceCount\\":1,\\"indexAdvices\\":[{\\"schemaName\\":\\"das\\",\\"tableName\\":\\"students\\",\\"indexName\\":\\"idx_name\\",\\"columns\\":[\\"name\\"],\\"unique\\":false,\\"ddlAddIndex\\":\\"ALTER TABLE `das`.`students` ADD INDEX `idx_name` (`name`)\\",\\"priority\\":0,\\"optimizeId\\":\\"96232794517277511\\"}],\\"tuningAdvices\\":[],\\"improvement\\":8127.25,\\"supportLevel\\":3,\\"priority\\":\\"HIGH\\"}', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, Successful is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Data\\": \\"{\\\\\\\\\\\\\\"taskId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"7e1ba595-0889-48ff-a6ff-010f54991d****\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"taskType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"SQL_OPTIMIZE\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"advisorId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"636dc5f34664dd56ff0****\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"sqlId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"e2b1d6c1ee1bb29555a828b59f16****\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"indexAdviceCount\\\\\\\\\\\\\\":1,\\\\\\\\\\\\\\"indexAdvices\\\\\\\\\\\\\\":[{\\\\\\\\\\\\\\"schemaName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"das\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"tableName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"students\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"indexName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"idx_name\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"columns\\\\\\\\\\\\\\":[\\\\\\\\\\\\\\"name\\\\\\\\\\\\\\"],\\\\\\\\\\\\\\"unique\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"ddlAddIndex\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"ALTER TABLE `das`.`students` ADD INDEX `idx_name` (`name`)\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"priority\\\\\\\\\\\\\\":0,\\\\\\\\\\\\\\"optimizeId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"96232794517277511\\\\\\\\\\\\\\"}],\\\\\\\\\\\\\\"tuningAdvices\\\\\\\\\\\\\\":[],\\\\\\\\\\\\\\"improvement\\\\\\\\\\\\\\":8127.25,\\\\\\\\\\\\\\"supportLevel\\\\\\\\\\\\\\":3,\\\\\\\\\\\\\\"priority\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"HIGH\\\\\\\\\\\\\\"}\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<GetAutonomousNotifyEventContentResponse>\\n <Message>Successful</Message>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Data>{\\"taskId\\":\\"7e1ba595-0889-48ff-a6ff-010f54991d****\\",\\"taskType\\":\\"SQL_OPTIMIZE\\",\\"advisorId\\":\\"636dc5f34664dd56ff0****\\",\\"sqlId\\":\\"e2b1d6c1ee1bb29555a828b59f16****\\",\\"indexAdviceCount\\":1,\\"indexAdvices\\":[{\\"schemaName\\":\\"das\\",\\"tableName\\":\\"students\\",\\"indexName\\":\\"idx_name\\",\\"columns\\":[\\"name\\"],\\"unique\\":false,\\"ddlAddIndex\\":\\"ALTER TABLE `das`.`students` ADD INDEX `idx_name` (`name`)\\",\\"priority\\":0,\\"optimizeId\\":\\"96232794517277511\\"}],\\"tuningAdvices\\":[],\\"improvement\\":8127.25,\\"supportLevel\\":3,\\"priority\\":\\"HIGH\\"}</Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</GetAutonomousNotifyEventContentResponse>","errorExample":""}]', + 'title' => 'GetAutonomousNotifyEventContent', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use Alibaba Cloud SDK or Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n" + .'* After your instance is connected to DAS, notification events such as snapshot capture are triggered if DAS detects changes to database monitoring metrics during anomaly detection.'."\n" + ."\n" + .'> You can query the details of notification events only if the autonomy center is enabled. For more information, see [Autonomy center](~~152139~~).'."\n", + ], + 'GetAutonomousNotifyEventsInRange' => [ + 'summary' => 'Queries the notification events of one or more urgency levels within a period.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '23871', + 'abilityTreeNodes' => [ + 'FEATUREhdm56JBRC', + ], + ], + 'parameters' => [ + [ + 'name' => '__context', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rm-18ff4a195d****', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1568269711000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The end time must be later than the start time.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1568265711221', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the node in a PolarDB for MySQL cluster. You can call the [DescribeDBClusters](~~98094~~) operation to query the node ID returned by the DBNodeId response parameter.'."\n" + ."\n" + .'> You must specify the node ID if your database instance is a PolarDB for MySQL cluster.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'r-x****-db-0', + ], + ], + [ + 'name' => 'EventContext', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'Level', + 'in' => 'query', + 'schema' => [ + 'description' => 'The urgency level of the events. If you specify this parameter, the MinLevel parameter does not take effect. Valid values:'."\n" + ."\n" + .'* **Notice**: events for which the system sends notifications.'."\n" + .'* **Optimization**: events that need to be optimized.'."\n" + .'* **Warn**: events for which the system sends warnings.'."\n" + .'* **Critical**: critical events.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Warn', + ], + ], + [ + 'name' => 'MinLevel', + 'in' => 'query', + 'schema' => [ + 'description' => 'The minimum urgency level of the events. Valid values:'."\n" + ."\n" + .'* **Notice**: events for which the system sends notifications.'."\n" + .'* **Optimization**: events that need to be optimized.'."\n" + .'* **Warn**: events for which the system sends warnings.'."\n" + .'* **Critical**: critical events.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Notice', + ], + ], + [ + 'name' => 'PageOffset', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. The value must be a positive integer. Default value: 1.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '30', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Data' => [ + 'description' => 'The detailed information, including the error codes and the number of entries that are returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'Extra' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'example' => 'None', + ], + 'List' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'T' => [ + 'description' => 'The detailed information, including the error codes and the number of entries that are returned.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The detailed information.'."\n", + 'type' => 'string', + 'example' => '"T": []', + ], + ], + ], + ], + 'PageNo' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'Total' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '4', + ], + ], + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, Successful is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Data\\": {\\n \\"Extra\\": \\"None\\",\\n \\"List\\": {\\n \\"T\\": [\\n \\"\\\\\\"T\\\\\\": []\\"\\n ]\\n },\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 10,\\n \\"Total\\": 4\\n },\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<GetAutonomousNotifyEventsInRangeResponse>\\n <Message>Successful</Message>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Data>\\n <List>\\n </List>\\n <PageNo>1</PageNo>\\n <PageSize>10</PageSize>\\n <Extra>None</Extra>\\n <Total>4</Total>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</GetAutonomousNotifyEventsInRangeResponse>","errorExample":""}]', + 'title' => 'GetAutonomousNotifyEventsInRange', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use Alibaba Cloud SDK or Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n" + .'* After your instance is connected to DAS, notification events such as snapshot capture are triggered if DAS detects changes to database monitoring metrics during anomaly detection.'."\n" + ."\n" + .'> You can query the details of notification events only if the autonomy center is enabled. For more information, see [Autonomy center](~~152139~~).'."\n", + ], + 'CreateDiagnosticReport' => [ + 'summary' => 'Creates a diagnostic report.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'DBInstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze8g2am97624****', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to create the diagnostic report. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1596177993000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to create the diagnostic report. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The start time must be later than the end time.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1596177993001', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'ac544623-f6ad-45fd-9a74-9be3db65****', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'string', + 'example' => '70af71852fcdf2c5dc7b90596e2cf05b', + ], + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**: The request was successful.'."\n" + .'* **false**: The request failed.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"ac544623-f6ad-45fd-9a74-9be3db65****\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": \\"70af71852fcdf2c5dc7b90596e2cf05b\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateDiagnosticReportResponse>\\n <RequestId>ac544623-f6ad-45fd-9a74-9be3db65****</RequestId>\\n <Message>Successful</Message>\\n <Data>70af71852fcdf2c5dc7b90596e2cf05b</Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</CreateDiagnosticReportResponse>","errorExample":""}]', + 'title' => 'CreateDiagnosticReport', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an Alibaba Cloud SDK, make sure that the aliyun-sdk-core version is later than 4.3.3. We recommend that you use the latest version.'."\n" + ."\n" + .'* The version of Database Autonomy Service (DAS) SDK must be 1.0.3 or later.'."\n" + ."\n" + .'* If you use an SDK to call DAS, you must set the region to cn-shanghai.'."\n" + ."\n" + .'* This operation supports the following database engines:'."\n" + ."\n" + .' * RDS MySQL'."\n" + .' * PolarDB for MySQL'."\n" + .' * Redis'."\n", + ], + 'DescribeDiagnosticReportList' => [ + 'summary' => 'Queries diagnostics reports.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'DBInstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze8g2am97624****', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. The value must be a positive integer. Default value: 1.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 10.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1668398892000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The end time must be later than the start time.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1668420492000', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'D00DB161-FEF6-5428-B37A-8D29A4C2****', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Synchro' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'example' => 'None', + ], + 'Data' => [ + 'description' => 'The information of the diagnostics reports. Valid values:'."\n" + ."\n" + .'* **total**: the number of diagnostics reports.'."\n" + .'* **score**: the health score.'."\n" + .'* **diagnosticTime**: the time when the diagnostics report was generated. The time is displayed in UTC.'."\n" + .'* **startTime**: the start time of the query. The time is displayed in UTC.'."\n" + .'* **endTime**: the end time of the query. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '{ "total": 1, "list": [ { "score": 100, "diagnosticTime": "2022-11-14T08:17:00Z", "startTime": "2022-11-14T07:16:59Z", "endTime": "2022-11-14T08:16:59Z" } ] }', + ], + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"D00DB161-FEF6-5428-B37A-8D29A4C2****\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Synchro\\": \\"None\\",\\n \\"Data\\": \\"{ \\\\\\"total\\\\\\": 1, \\\\\\"list\\\\\\": [ { \\\\\\"score\\\\\\": 100, \\\\\\"diagnosticTime\\\\\\": \\\\\\"2022-11-14T08:17:00Z\\\\\\", \\\\\\"startTime\\\\\\": \\\\\\"2022-11-14T07:16:59Z\\\\\\", \\\\\\"endTime\\\\\\": \\\\\\"2022-11-14T08:16:59Z\\\\\\" } ] }\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeDiagnosticReportListResponse>\\n <RequestId>D00DB161-FEF6-5428-B37A-8D29A4C2****</RequestId>\\n <Message>Successful</Message>\\n <Data>\\n <total>1</total>\\n <list>\\n <score>100</score>\\n <diagnosticTime>2022-11-14T08:17:00Z</diagnosticTime>\\n <startTime>2022-11-14T07:16:59Z</startTime>\\n <endTime>2022-11-14T08:16:59Z</endTime>\\n </list>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeDiagnosticReportListResponse>","errorExample":""}]', + 'title' => 'DescribeDiagnosticReportList', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an Alibaba Cloud SDK or a Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + ."\n" + .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n" + ."\n" + .'* This operation is applicable to the following database engines:'."\n" + ."\n" + .' * ApsaraDB RDS for MySQL'."\n" + .' * PolarDB for MySQL'."\n" + .' * ApsaraDB for Redis'."\n", + ], + 'GetDBInstanceConnectivityDiagnosis' => [ + 'summary' => 'Queries the diagnosis of network connectivity when a user accesses a specific database instance by specifying an IP address.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'title' => '实例ID', + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze8g2am97624****', + ], + ], + [ + 'name' => 'SrcIp', + 'in' => 'query', + 'schema' => [ + 'title' => '源IP', + 'description' => 'The source IP address.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '47.110.180.62', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. Otherwise, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The detailed information.'."\n", + 'type' => 'object', + 'properties' => [ + 'instanceId' => [ + 'title' => '实例ID', + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'example' => 'rm-2ze8g2am97624****', + ], + 'success' => [ + 'title' => '是否检测通过', + 'description' => 'Indicates whether the connectivity test was passed:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'enumValueTitles' => [], + 'example' => 'false', + ], + 'failType' => [ + 'title' => '异常类型', + 'description' => 'The type of the exception:'."\n" + ."\n" + .'* **0**: an exception that can be handled by the user.'."\n" + .'* **1**: an exception that can be handled by a technical engineer.'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'connCheckErrorCode' => [ + 'title' => '异常检测项', + 'description' => 'The exception detection items:'."\n" + ."\n" + .'* **SRC_IP_NOT_IN_USER_WHITELIST**: The source IP address is not added to the whitelist of the user.'."\n" + .'* **VIP_NOT_EXISTS**: The Application Load Balancer (ALB) instance corresponding to the virtual IP address (VIP) does not exist.'."\n" + .'* **RS_NOT_EXISTS**: The resource sharing (RS) is not properly mounted.'."\n" + .'* **VIP_TUNNEL_ID_NOT_CONSISTENT**: The tunnel ID used by the VIP of the virtual private cloud (VPC) type is different from the tunnel ID of the VPC.'."\n" + .'* **VIP_VPC_CLOUD_INSTANCE_NOT_EXISTS**: The VIP of the VPC type does not exist.'."\n" + .'* **VIP_IS_NOT_NGLB**: The NGLB mode is disabled for the VIP.'."\n" + .'* **CUSTINS_NOT_ASSOCIATE_ECS_SECURITY_GROUP**: No security group is associated with the instance.'."\n" + .'* **SRC_IP_NOT_IN_USER_WHITELIST**: The source IP address is not added to the whitelist of the user.'."\n" + .'* **SRC_IP_NOT_IN_ADMIN_WHITELIST**: The source IP address is not added to the whitelist of the instance.'."\n" + .'* **SRC_IP_NOT_IN_ECS_SECURITY_GROUP**: The source IP address is not added to the security group that is associated with the instance.'."\n" + .'* **VPC_INSTANCE_IP_NOT_WORKING_STATUS**: The IP address in the VPC is in an abnormal state.'."\n", + 'type' => 'string', + 'example' => 'SRC_IP_NOT_IN_USER_WHITELIST', + ], + 'connCheckErrorMessage' => [ + 'title' => '异常检测详情信息', + 'description' => 'The details of the exception detection.'."\n", + 'type' => 'string', + 'example' => 'Src ip:47.110.180.62 not in user whitelist', + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"instanceId\\": \\"rm-2ze8g2am97624****\\",\\n \\"success\\": false,\\n \\"failType\\": \\"0\\",\\n \\"connCheckErrorCode\\": \\"SRC_IP_NOT_IN_USER_WHITELIST\\",\\n \\"connCheckErrorMessage\\": \\"Src ip:47.100.XX.XX not in user whitelist\\"\\n },\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]', + 'title' => 'GetDBInstanceConnectivityDiagnosis', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an Alibaba Cloud SDK or Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n" + .'* The database instance that you want to manage is connected to DAS.'."\n", + ], + 'CreateCacheAnalysisJob' => [ + 'summary' => 'Creates a cache analysis task.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the ApsaraDB for Redis instance.'."\n", + 'type' => 'string', + 'required' => true, + 'docRequired' => true, + 'example' => 'r-bp18ff4a195d****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the data node on the instance. You can specify this parameter to query the monitoring information about the specified node.'."\n" + ."\n" + .'> If you specify the BackupSetId parameter, the system ignores the NodeId parameter. You can call the [DescribeLogicInstanceTopology](~~473786~~) operation to query the node ID.', + 'type' => 'string', + 'required' => false, + 'example' => 'r-x****-db-0', + ], + ], + [ + 'name' => 'BackupSetId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the backup file. You can call the [DescribeBackups](~~473823~~) operation to query the ID.'."\n" + ."\n" + .'* If you need to specify multiple backup file IDs, separate them with commas (,). For example, you can set this parameter to `12345,67890`.'."\n" + .'* If you do not specify this parameter, the system automatically backs up the task and performs cache analysis on the backup file.', + 'type' => 'string', + 'required' => false, + 'example' => '12345', + ], + ], + [ + 'name' => 'Separators', + 'in' => 'query', + 'schema' => [ + 'description' => 'The delimiters used to identify the prefixes of keys. You do not need to specify this parameter if one or more of the following default delimiters are used: `: ; , _ - + @ = | #`'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '&', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Data' => [ + 'description' => 'The detailed information.'."\n", + 'type' => 'object', + 'properties' => [ + 'TaskState' => [ + 'description' => 'The state of the cache analysis task. Valid values:'."\n" + ."\n" + .'* **BACKUP**: The data is being backed up.'."\n" + .'* **ANALYZING**: The data is being analyzed.'."\n" + .'* **FINISHED**: The data is analyzed.'."\n" + .'* **FAILED**: An error occurred.'."\n", + 'type' => 'string', + 'example' => 'BACKUP', + ], + 'JobId' => [ + 'description' => 'The ID of the cache analysis task.'."\n" + ."\n" + .'> This parameter can be used to query a specific cache analysis task. When you call the CreateCacheAnalysisJob operation, it takes some time to create a cache analysis task. As a result, the analysis results cannot be immediately returned. You can call the [DescribeCacheAnalysisJob](~~180983~~) operation to query the analysis results of the specified cache analysis task.'."\n", + 'type' => 'string', + 'example' => 'sf79-sd99-sa37-****', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'BigKeys' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'KeyInfo' => [ + 'description' => 'The number of elements in the key.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The data type of the ApsaraDB for Redis instance.', + 'type' => 'string', + 'example' => 'hash', + ], + 'Db' => [ + 'description' => 'The name of the database.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'ExpirationTimeMillis' => [ + 'description' => 'The expiration period of the key. Unit: milliseconds. A value of 0 indicates that the key does not expire.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1596256542547', + ], + 'Key' => [ + 'description' => 'The name of the key.', + 'type' => 'string', + 'example' => 'task_x****', + ], + 'Encoding' => [ + 'description' => 'The data type of the key.', + 'type' => 'string', + 'example' => 'hashtable', + ], + 'Bytes' => [ + 'description' => 'The number of bytes that are occupied by the key.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '12345', + ], + 'NodeId' => [ + 'description' => 'The ID of the data node on the instance.', + 'type' => 'string', + 'example' => 'r-x****-db-0', + ], + 'Count' => [ + 'description' => 'The number of elements in the key.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '127', + ], + ], + ], + ], + ], + ], + 'InstanceId' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'example' => 'r-bp18ff4a195d****', + ], + 'NodeId' => [ + 'description' => 'The ID of the data node on the instance.'."\n", + 'type' => 'string', + 'example' => 'r-x****-db-0', + ], + ], + ], + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**: The request was successful.'."\n" + .'* **false**: The request failed.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Data\\": {\\n \\"TaskState\\": \\"BACKUP\\",\\n \\"JobId\\": \\"sf79-sd99-sa37-****\\",\\n \\"Message\\": \\"Successful\\",\\n \\"BigKeys\\": {\\n \\"KeyInfo\\": [\\n {\\n \\"Type\\": \\"hash\\",\\n \\"Db\\": 0,\\n \\"ExpirationTimeMillis\\": 1596256542547,\\n \\"Key\\": \\"task_x****\\",\\n \\"Encoding\\": \\"hashtable\\",\\n \\"Bytes\\": 12345,\\n \\"NodeId\\": \\"r-x****-db-0\\",\\n \\"Count\\": 127\\n }\\n ]\\n },\\n \\"InstanceId\\": \\"r-bp18ff4a195d****\\",\\n \\"NodeId\\": \\"r-x****-db-0\\"\\n },\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateCacheAnalysisJobResponse>\\n <Message>Successful</Message>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Data>\\n <TaskState>BACKUP</TaskState>\\n <JobId>sf79-sd99-sa37-****</JobId>\\n <Message>Successful</Message>\\n <BigKeys>\\n <Type>hash</Type>\\n <Db>0</Db>\\n <ExpirationTimeMillis>1596256542547</ExpirationTimeMillis>\\n <Key>task_x****</Key>\\n <Encoding>hashtable</Encoding>\\n <Bytes>12345</Bytes>\\n <NodeId>r-x****-db-0</NodeId>\\n <Count>127</Count>\\n </BigKeys>\\n <InstanceId>r-bp18ff4a195d****</InstanceId>\\n <NodeId>r-x****-db-0</NodeId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</CreateCacheAnalysisJobResponse>","errorExample":""}]', + 'title' => 'CreateCacheAnalysisJob', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an Alibaba Cloud SDK or Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call the API operations of DAS, you must set the region ID to cn-shanghai.'."\n" + .'* You can call this operation to analyze the data structures of ApsaraDB for Redis and the following self-developed data structures of Tair: TairString, TairHash, TairGIS, TairBloom, TairDoc, TairCpc, and TairZset. Other self-developed Tair data structures are not supported.'."\n" + .'* If the specifications of the database instance that you want to analyze are changed, the backup file generated before the specification change cannot be analyzed.'."\n" + .'* Tair ESSD/SSD-based instances are not supported.'."\n", + ], + 'DescribeCacheAnalysisJob' => [ + 'summary' => 'Queries the details of a cache analysis task.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '23813', + 'abilityTreeNodes' => [ + 'FEATUREhdmJC65CS', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'r-bp18ff4a195d****', + ], + ], + [ + 'name' => 'JobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the cache analysis task. You can obtain the task ID from the response parameters of the [CreateCacheAnalysisJob](~~180982~~) operation.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'sf79-sd99-sa37-****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Message' => [ + 'description' => 'The message that is returned for the request.'."\n" + ."\n" + .'> If the request is successful, **Successful** is returned. If the request fails, an error message that contains information such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Data' => [ + 'description' => 'The details of the cache analysis task.'."\n", + 'type' => 'object', + 'properties' => [ + 'TaskState' => [ + 'description' => 'The state of the cache analysis task. Valid values:'."\n" + ."\n" + .'* **BACKUP**: The data is being backed up.'."\n" + .'* **ANALYZING**: The data is being analyzed.'."\n" + .'* **FINISHED**: The data is analyzed.'."\n" + .'* **FAILED**: An error occurred.'."\n", + 'type' => 'string', + 'example' => 'BACKUP', + ], + 'JobId' => [ + 'description' => 'The ID of the cache analysis task.'."\n", + 'type' => 'string', + 'example' => 'sf79-sd99-sa37-****', + ], + 'Message' => [ + 'description' => 'The message that is returned for the request.'."\n" + ."\n" + .'> If the request is successful, **Successful** is returned. If the request fails, an error message that contains information such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'BigKeys' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'KeyInfo' => [ + 'description' => 'The details of the large keys. The returned large keys are sorted in descending order based on the number of bytes occupied by the keys.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The data type of the instance.'."\n", + 'type' => 'string', + 'example' => 'hash', + ], + 'Db' => [ + 'description' => 'The database name.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'ExpirationTimeMillis' => [ + 'description' => 'The time when the key expires. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC. A value of 0 indicates that the key never expires.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1596256542547', + ], + 'Key' => [ + 'description' => 'The key name.'."\n", + 'type' => 'string', + 'example' => 'task_x****', + ], + 'Encoding' => [ + 'description' => 'The data type of the key.'."\n", + 'type' => 'string', + 'example' => 'hashtable', + ], + 'Bytes' => [ + 'description' => 'The number of bytes that are occupied by the key.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '12345', + ], + 'NodeId' => [ + 'description' => 'The ID of the data node on the instance.'."\n", + 'type' => 'string', + 'example' => 'r-x****-db-0', + ], + 'Count' => [ + 'description' => 'The number of elements in the key.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '127', + ], + ], + ], + ], + ], + ], + 'KeyPrefixes' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Prefix' => [ + 'description' => 'The prefixes of the keys.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'KeyNum' => [ + 'description' => 'The number of keys that contain the prefix.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '123', + ], + 'Type' => [ + 'description' => 'The data type of the instance.'."\n", + 'type' => 'string', + 'example' => 'hash', + ], + 'Bytes' => [ + 'description' => 'The number of bytes that are occupied by the key.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '12345', + ], + 'Prefix' => [ + 'description' => 'The prefix of the key.'."\n", + 'type' => 'string', + 'example' => 'task_', + ], + 'Count' => [ + 'description' => 'The number of elements in the key.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '127', + ], + ], + ], + ], + ], + ], + 'BigKeysOfNum' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'KeyInfo' => [ + 'description' => 'The details of the large keys. The returned large keys are sorted in descending order based on the number of keys.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The data type of the instance.'."\n", + 'type' => 'string', + 'example' => 'hash', + ], + 'Db' => [ + 'description' => 'The database name.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'ExpirationTimeMillis' => [ + 'description' => 'The time when the key expires. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC. A value of 0 indicates that the key never expires.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1596256542547', + ], + 'Key' => [ + 'description' => 'The key name.'."\n", + 'type' => 'string', + 'example' => 'task_x****', + ], + 'Encoding' => [ + 'description' => 'The data type of the key.'."\n", + 'type' => 'string', + 'example' => 'hashtable', + ], + 'Bytes' => [ + 'description' => 'The number of bytes that are occupied by the key.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '12345', + ], + 'NodeId' => [ + 'description' => 'The ID of the data node on the instance.'."\n", + 'type' => 'string', + 'example' => 'r-x****-db-0', + ], + 'Count' => [ + 'description' => 'The number of elements in the key.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '127', + ], + ], + ], + ], + ], + ], + 'UnexBigKeysOfBytes' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'KeyInfo' => [ + 'description' => 'The details of permanent keys. The returned keys are sorted in descending order based on the number of bytes occupied by the keys.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The data type of the instance.'."\n", + 'type' => 'string', + 'example' => 'hash', + ], + 'Db' => [ + 'description' => 'The database name.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'ExpirationTimeMillis' => [ + 'description' => 'The time when the key expires. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC. A value of 0 indicates that the key never expires.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1596256542547', + ], + 'Key' => [ + 'description' => 'The key name.'."\n", + 'type' => 'string', + 'example' => 'task_x****', + ], + 'Encoding' => [ + 'description' => 'The data type of the key.'."\n", + 'type' => 'string', + 'example' => 'hashtable', + ], + 'Bytes' => [ + 'description' => 'The number of bytes that are occupied by the key.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '12345', + ], + 'NodeId' => [ + 'description' => 'The ID of the data node on the instance.'."\n", + 'type' => 'string', + 'example' => 'r-x****-db-0', + ], + 'Count' => [ + 'description' => 'The number of elements in the key.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '127', + ], + ], + ], + ], + ], + ], + 'UnexBigKeysOfNum' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'KeyInfo' => [ + 'description' => 'The details of permanent keys. The returned keys are sorted in descending order based on the number of keys.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The data type of the instance.'."\n", + 'type' => 'string', + 'example' => 'hash', + ], + 'Db' => [ + 'description' => 'The database name.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'ExpirationTimeMillis' => [ + 'description' => 'The time when the key expires. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC. A value of 0 indicates that the key never expires.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1596256542547', + ], + 'Key' => [ + 'description' => 'The key name.'."\n", + 'type' => 'string', + 'example' => 'task_x****', + ], + 'Encoding' => [ + 'description' => 'The data type of the key.'."\n", + 'type' => 'string', + 'example' => 'hashtable', + ], + 'Bytes' => [ + 'description' => 'The number of bytes that are occupied by the key.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '12345', + ], + 'NodeId' => [ + 'description' => 'The ID of the data node on the instance.'."\n", + 'type' => 'string', + 'example' => 'r-x****-db-0', + ], + 'Count' => [ + 'description' => 'The number of elements in the key.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '127', + ], + ], + ], + ], + ], + ], + 'InstanceId' => [ + 'description' => 'The instance ID.', + 'type' => 'string', + 'example' => 'r-bp18ff4a195d****', + ], + 'NodeId' => [ + 'description' => 'The ID of the data node on the instance.', + 'type' => 'string', + 'example' => 'r-x****-db-0', + ], + 'ExpiryKeysLevelCount' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'ExpiryLevel' => [ + 'description' => 'The statistics of the keys that have expired.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'AnalysisTs' => [ + 'description' => 'The time when the cache analysis task was complete. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1717469347000', + ], + 'Level' => [ + 'description' => 'The expiration level. Valid values:'."\n" + ."\n" + .'* **0**: The key never expires.'."\n" + .'* **1**: The key has expired.'."\n" + .'* **2**: The key has expired for 0 to 1 hour.'."\n" + .'* **3**: The key has expired for 1 to 3 hours.'."\n" + .'* **4**: The key has expired for 3 to 12 hours.'."\n" + .'* **5**: The key has expired for 12 to 24 hours.'."\n" + .'* **6**: The key has expired for one to two days.'."\n" + .'* **7**: The key has expired for three to seven days.'."\n" + .'* **8**: The key has expired for more than seven days.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'TotalBytes' => [ + 'description' => 'The number of bytes occupied by the keys that have expired.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '8064', + ], + 'TotalKeys' => [ + 'description' => 'The total number of the keys that have expired.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '62', + ], + ], + ], + ], + ], + ], + ], + ], + 'Code' => [ + 'description' => 'The HTTP status code returned.', + 'type' => 'string', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Data\\": {\\n \\"TaskState\\": \\"BACKUP\\",\\n \\"JobId\\": \\"sf79-sd99-sa37-****\\",\\n \\"Message\\": \\"Successful\\",\\n \\"BigKeys\\": {\\n \\"KeyInfo\\": [\\n {\\n \\"Type\\": \\"hash\\",\\n \\"Db\\": 0,\\n \\"ExpirationTimeMillis\\": 1596256542547,\\n \\"Key\\": \\"task_x****\\",\\n \\"Encoding\\": \\"hashtable\\",\\n \\"Bytes\\": 12345,\\n \\"NodeId\\": \\"r-x****-db-0\\",\\n \\"Count\\": 127\\n }\\n ]\\n },\\n \\"KeyPrefixes\\": {\\n \\"Prefix\\": [\\n {\\n \\"KeyNum\\": 123,\\n \\"Type\\": \\"hash\\",\\n \\"Bytes\\": 12345,\\n \\"Prefix\\": \\"task_\\",\\n \\"Count\\": 127\\n }\\n ]\\n },\\n \\"BigKeysOfNum\\": {\\n \\"KeyInfo\\": [\\n {\\n \\"Type\\": \\"hash\\",\\n \\"Db\\": 0,\\n \\"ExpirationTimeMillis\\": 1596256542547,\\n \\"Key\\": \\"task_x****\\",\\n \\"Encoding\\": \\"hashtable\\",\\n \\"Bytes\\": 12345,\\n \\"NodeId\\": \\"r-x****-db-0\\",\\n \\"Count\\": 127\\n }\\n ]\\n },\\n \\"UnexBigKeysOfBytes\\": {\\n \\"KeyInfo\\": [\\n {\\n \\"Type\\": \\"hash\\",\\n \\"Db\\": 0,\\n \\"ExpirationTimeMillis\\": 1596256542547,\\n \\"Key\\": \\"task_x****\\",\\n \\"Encoding\\": \\"hashtable\\",\\n \\"Bytes\\": 12345,\\n \\"NodeId\\": \\"r-x****-db-0\\",\\n \\"Count\\": 127\\n }\\n ]\\n },\\n \\"UnexBigKeysOfNum\\": {\\n \\"KeyInfo\\": [\\n {\\n \\"Type\\": \\"hash\\",\\n \\"Db\\": 0,\\n \\"ExpirationTimeMillis\\": 1596256542547,\\n \\"Key\\": \\"task_x****\\",\\n \\"Encoding\\": \\"hashtable\\",\\n \\"Bytes\\": 12345,\\n \\"NodeId\\": \\"r-x****-db-0\\",\\n \\"Count\\": 127\\n }\\n ]\\n },\\n \\"InstanceId\\": \\"r-bp18ff4a195d****\\",\\n \\"NodeId\\": \\"r-x****-db-0\\",\\n \\"ExpiryKeysLevelCount\\": {\\n \\"ExpiryLevel\\": [\\n {\\n \\"AnalysisTs\\": 1717469347000,\\n \\"Level\\": 0,\\n \\"TotalBytes\\": 8064,\\n \\"TotalKeys\\": 62\\n }\\n ]\\n }\\n },\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeCacheAnalysisJobResponse>\\n <Message>Successful</Message>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Data>\\n <TaskState>BACKUP</TaskState>\\n <JobId>sf79-sd99-sa37-****</JobId>\\n <Message>Successful</Message>\\n <BigKeys>\\n <Type>hash</Type>\\n <Db>0</Db>\\n <ExpirationTimeMillis>1596256542547</ExpirationTimeMillis>\\n <Key>task_x****</Key>\\n <Encoding>hashtable</Encoding>\\n <Bytes>12345</Bytes>\\n <NodeId>r-x****-db-0</NodeId>\\n <Count>127</Count>\\n </BigKeys>\\n <KeyPrefixes>\\n <KeyNum>123</KeyNum>\\n <Type>hash</Type>\\n <Bytes>12345</Bytes>\\n <Prefix>task_</Prefix>\\n <Count>127</Count>\\n </KeyPrefixes>\\n <BigKeysOfNum>\\n <Type>hash</Type>\\n <Db>0</Db>\\n <ExpirationTimeMillis>1596256542547</ExpirationTimeMillis>\\n <Key>task_x****</Key>\\n <Encoding>hashtable</Encoding>\\n <Bytes>12345</Bytes>\\n <NodeId>r-x****-db-0</NodeId>\\n <Count>127</Count>\\n </BigKeysOfNum>\\n <UnexBigKeysOfBytes>\\n <Type>hash</Type>\\n <Db>0</Db>\\n <ExpirationTimeMillis>1596256542547</ExpirationTimeMillis>\\n <Key>task_x****</Key>\\n <Encoding>hashtable</Encoding>\\n <Bytes>12345</Bytes>\\n <NodeId>r-x****-db-0</NodeId>\\n <Count>127</Count>\\n </UnexBigKeysOfBytes>\\n <UnexBigKeysOfNum>\\n <Type>hash</Type>\\n <Db>0</Db>\\n <ExpirationTimeMillis>1596256542547</ExpirationTimeMillis>\\n <Key>task_x****</Key>\\n <Encoding>hashtable</Encoding>\\n <Bytes>12345</Bytes>\\n <NodeId>r-x****-db-0</NodeId>\\n <Count>127</Count>\\n </UnexBigKeysOfNum>\\n <InstanceId>r-bp18ff4a195d****</InstanceId>\\n <NodeId>r-x****-db-0</NodeId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeCacheAnalysisJobResponse>","errorExample":""}]', + 'title' => 'DescribeCacheAnalysisJob', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an Alibaba Cloud SDK or a Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call the API operations of DAS, you must set the region ID to cn-shanghai.'."\n" + .'* This operation is applicable only to ApsaraDB for Redis.'."\n" + ."\n" + .'> You can call this operation to query the top 500 keys in a cache analysis task.'."\n", + ], + 'DescribeCacheAnalysisJobs' => [ + 'summary' => 'Queries a list of cache analysis tasks.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'r-bp18ff4a195d****', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1596177993000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The end time must be later than the start time.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1596177993001', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. The value must be an integer that is greater than 0. Default value: 1.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 10.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Data' => [ + 'description' => 'The list of cache analysis tasks.'."\n", + 'type' => 'object', + 'properties' => [ + 'List' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'CacheAnalysisJob' => [ + 'description' => 'The ID of the data node on the instance.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TaskState' => [ + 'description' => 'The state of the cache analysis task. Valid values:'."\n" + ."\n" + .'* **BACKUP**: The data is being backed up.'."\n" + .'* **ANALYZING**: The data is being analyzed.'."\n" + .'* **FINISHED**: The data is analyzed.'."\n" + .'* **FAILED**: An error occurred.', + 'type' => 'string', + 'example' => 'BACKUP', + ], + 'JobId' => [ + 'description' => 'The ID of the cache analysis task.', + 'type' => 'string', + 'example' => 'sf79-sd99-sa37-****', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'BigKeys' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'KeyInfo' => [ + 'description' => 'The details about the large keys.'."\n" + ."\n" + .'> The sub-parameters of this parameter and the content of the sub-parameters are not returned. To query the detailed information about the cache analysis tasks, call the [DescribeCacheAnalysisJob](~~443012~~) operation.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The data type of the instance.', + 'type' => 'string', + 'example' => 'hash', + ], + 'Db' => [ + 'description' => 'The name of the database.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'ExpirationTimeMillis' => [ + 'description' => 'The expiration period of the key. Unit: milliseconds. A value of 0 indicates that the key does not expire.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1596256542547', + ], + 'Key' => [ + 'description' => 'The name of the key.', + 'type' => 'string', + 'example' => 'task_*****', + ], + 'Encoding' => [ + 'description' => 'The data type of the key.', + 'type' => 'string', + 'example' => 'hashtable', + ], + 'Bytes' => [ + 'description' => 'The number of bytes that are occupied by the key.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '12345', + ], + 'NodeId' => [ + 'description' => 'The ID of the data node on the instance.', + 'type' => 'string', + 'example' => 'r-****-db-0', + ], + 'Count' => [ + 'description' => 'The number of elements in the key.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '127', + ], + ], + ], + ], + ], + ], + 'InstanceId' => [ + 'description' => 'The instance ID.', + 'type' => 'string', + 'example' => 'r-bp18ff4a195d****', + ], + 'NodeId' => [ + 'description' => 'The ID of the data node on the instance.', + 'type' => 'string', + 'example' => 'r-x****-db-0', + ], + ], + ], + ], + ], + ], + 'PageNo' => [ + 'description' => 'The page number. The value must be an integer that is greater than 0. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'Extra' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'example' => 'None', + ], + 'Total' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '4', + ], + ], + ], + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**: The request was successful.'."\n" + .'* **false**: The request failed.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Data\\": {\\n \\"List\\": {\\n \\"CacheAnalysisJob\\": [\\n {\\n \\"TaskState\\": \\"BACKUP\\",\\n \\"JobId\\": \\"sf79-sd99-sa37-****\\",\\n \\"Message\\": \\"Successful\\",\\n \\"BigKeys\\": {\\n \\"KeyInfo\\": [\\n {\\n \\"Type\\": \\"hash\\",\\n \\"Db\\": 0,\\n \\"ExpirationTimeMillis\\": 1596256542547,\\n \\"Key\\": \\"task_*****\\",\\n \\"Encoding\\": \\"hashtable\\",\\n \\"Bytes\\": 12345,\\n \\"NodeId\\": \\"r-****-db-0\\",\\n \\"Count\\": 127\\n }\\n ]\\n },\\n \\"InstanceId\\": \\"r-bp18ff4a195d****\\",\\n \\"NodeId\\": \\"r-x****-db-0\\"\\n }\\n ]\\n },\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 10,\\n \\"Extra\\": \\"None\\",\\n \\"Total\\": 4\\n },\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeCacheAnalysisJobsResponse>\\n <Message>Successful</Message>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Data>\\n <List>\\n <TaskState>BACKUP</TaskState>\\n <JobId>sf79-sd99-sa37-****</JobId>\\n <Message>Successful</Message>\\n <BigKeys>\\n <Type>hash</Type>\\n <Db>0</Db>\\n <ExpirationTimeMillis>1596256542547</ExpirationTimeMillis>\\n <Key>task_*****</Key>\\n <Encoding>hashtable</Encoding>\\n <Bytes>12345</Bytes>\\n <NodeId>r-****-db-0</NodeId>\\n <Count>127</Count>\\n </BigKeys>\\n <InstanceId>r-bp18ff4a195d****</InstanceId>\\n <NodeId>r-x****-db-0</NodeId>\\n </List>\\n <PageNo>1</PageNo>\\n <PageSize>10</PageSize>\\n <Extra>None</Extra>\\n <Total>4</Total>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeCacheAnalysisJobsResponse>","errorExample":""}]', + 'title' => 'DescribeCacheAnalysisJobs', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an Alibaba Cloud SDK or a Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n" + .'* This operation is applicable only to ApsaraDB for Redis.'."\n", + ], + 'EnableSqlConcurrencyControl' => [ + 'summary' => 'Enables SQL throttling to control the numbers of database access requests and concurrent SQL statements.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'ConsoleContext', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n" + ."\n" + .'> You must specify the instance ID only if your database instance is an ApsaraDB RDS for MySQL instance or a PolarDB for MySQL cluster.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze1jdv45i7l6****', + ], + ], + [ + 'name' => 'SqlType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the SQL statements. Valid values:'."\n" + ."\n" + .'* **SELECT**'."\n" + .'* **UPDATE**'."\n" + .'* **DELETE**'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'SELECT', + ], + ], + [ + 'name' => 'MaxConcurrency', + 'in' => 'query', + 'schema' => [ + 'description' => 'The maximum number of concurrent SQL statements. Set this parameter to a positive integer.'."\n" + ."\n" + .'> When the number of concurrent SQL statements that contain the specified keywords reaches this upper limit, the throttling rule is triggered.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '3', + ], + ], + [ + 'name' => 'SqlKeywords', + 'in' => 'query', + 'schema' => [ + 'description' => 'The keywords that are used to identify the SQL statements that need to be throttled.'."\n" + ."\n" + .'> If you specify multiple SQL keywords, separate them with tildes (~). If the number of concurrent SQL statements that contain all the specified SQL keywords reaches the specified upper limit, the throttling rule is triggered.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'call~open~api~test~4~from~POP', + ], + ], + [ + 'name' => 'ConcurrencyControlTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The duration within which the SQL throttling rule takes effect. Unit: seconds.'."\n" + ."\n" + .'> The throttling rule takes effect only within this duration.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '300', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, Successful is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The detailed information, including the error codes and the number of entries that are returned.'."\n", + 'type' => 'string', + 'example' => 'Null', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": \\"Null\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<EnableSqlConcurrencyControlResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>\\"Data\\": { \\"total\\": 1, \\"list\\":[...] }, \\"Code\\": 200, \\"Success\\": true }</Data>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n</EnableSqlConcurrencyControlResponse>","errorExample":""}]', + 'title' => 'EnableSqlConcurrencyControl', + 'description' => 'This operation supports the following database engines:'."\n" + ."\n" + .'* ApsaraDB RDS for MySQL'."\n" + .'* PolarDB for MySQL'."\n", + ], + 'DisableSqlConcurrencyControl' => [ + 'summary' => 'Disables a throttling rule.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'ConsoleContext', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n" + ."\n" + .'> The database instance must be an ApsaraDB RDS for MySQL instance or a PolarDB for MySQL cluster.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze1jdv45i7l6****', + ], + ], + [ + 'name' => 'ItemId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the throttling rule that is applied to the instance. You can call the [GetRunningSqlConcurrencyControlRules](~~223538~~) operation to query the ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, Successful is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The detailed information, including the error codes and the number of entries that are returned.'."\n", + 'type' => 'string', + 'example' => 'Null', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": \\"Null\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<DisableSqlConcurrencyControlResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>Null</Data>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n</DisableSqlConcurrencyControlResponse>","errorExample":""}]', + 'title' => 'DisableSqlConcurrencyControl', + 'description' => 'This operation is applicable to the following database engines:'."\n" + ."\n" + .'* ApsaraDB RDS for MySQL'."\n" + .'* PolarDB for MySQL'."\n", + ], + 'DisableAllSqlConcurrencyControlRules' => [ + 'summary' => 'Disables all throttling rules that are in effect.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'ConsoleContext', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n" + ."\n" + .'> You must specify this parameter only if your database instance is an ApsaraDB RDS for MySQL instance or a PolarDB for MySQL cluster.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze1jdv45i7l6****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, Successful is returned. If the request failed, an error message that contains information such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'example' => 'None', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": \\"None\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<DisableAllSqlConcurrencyControlRulesResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n</DisableAllSqlConcurrencyControlRulesResponse>","errorExample":""}]', + 'title' => 'DisableAllSqlConcurrencyControlRules', + 'description' => 'This operation supports the following database engines:'."\n" + ."\n" + .'* ApsaraDB RDS for MySQL'."\n" + .'* PolarDB for MySQL'."\n", + ], + 'GetRunningSqlConcurrencyControlRules' => [ + 'summary' => 'Queries the throttling rules that are in effect.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'ConsoleContext', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n" + ."\n" + .'> You must specify this parameter only if your database instance is an ApsaraDB RDS for MySQL instance or a PolarDB for MySQL cluster.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze1jdv45i7l6****', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. The value must be a positive integer. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. The value must be a positive integer. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, Successful is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The detailed information, including the error codes and the number of entries that are returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'Total' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'List' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'runningRules' => [ + 'description' => 'The returned data.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ItemId' => [ + 'description' => 'The ID of the throttling rule that is applied to the instance.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '16', + ], + 'SqlType' => [ + 'description' => 'The type of the SQL statements. Valid values:'."\n" + ."\n" + .'* **SELECT**'."\n" + .'* **UPDATE**'."\n" + .'* **DELETE**', + 'type' => 'string', + 'example' => 'SELECT', + ], + 'InstanceId' => [ + 'description' => 'The instance ID.', + 'type' => 'string', + 'example' => 'rm-2ze1jdv45i7l6****', + ], + 'SqlKeywords' => [ + 'description' => 'The keywords contained in the SQL statements to which the throttling rule was applied.'."\n" + ."\n" + .'> SQL keywords are separated by tildes (~). If the number of concurrent SQL statements that contain all the specified SQL keywords reaches the specified upper limit, the throttling rule is triggered.', + 'type' => 'string', + 'example' => 'call~open~api~test~4~from~POP', + ], + 'StartTime' => [ + 'description' => 'The time when the throttling rule started to take effect. The value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1608888296000', + ], + 'KeywordsHash' => [ + 'description' => 'The hash value of the SQL keywords. The hash value is calculated based on the SQL keywords that are contained in the SQL statements to which the throttling rule is applied.', + 'type' => 'string', + 'example' => 'b0b8aceeb43baea87b219c81767b****', + ], + 'ConcurrencyControlTime' => [ + 'description' => 'The duration within which the SQL throttling rule takes effect. Unit: seconds.'."\n" + ."\n" + .'> The throttling rule takes effect only within this duration.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '600', + ], + 'UserId' => [ + 'description' => 'The Alibaba Cloud account ID.', + 'type' => 'string', + 'example' => 'testxxx', + ], + 'MaxConcurrency' => [ + 'description' => 'The maximum number of concurrent SQL statements. The value is a positive integer.'."\n" + ."\n" + .'> If the number of concurrent SQL statements that contain the specified keywords reaches this upper limit, the throttling rule is triggered.', + 'type' => 'string', + 'example' => '2', + ], + 'Status' => [ + 'description' => 'The status of the throttling rule. The value of **Open** indicates that the throttling rule is in effect.', + 'type' => 'string', + 'example' => 'Open', + ], + ], + ], + ], + ], + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"Total\\": 2,\\n \\"List\\": {\\n \\"runningRules\\": [\\n {\\n \\"ItemId\\": 16,\\n \\"SqlType\\": \\"SELECT\\",\\n \\"InstanceId\\": \\"rm-2ze1jdv45i7l6****\\",\\n \\"SqlKeywords\\": \\"call~open~api~test~4~from~POP\\",\\n \\"StartTime\\": 1608888296000,\\n \\"KeywordsHash\\": \\"b0b8aceeb43baea87b219c81767b****\\",\\n \\"ConcurrencyControlTime\\": 600,\\n \\"UserId\\": \\"testxxx\\",\\n \\"MaxConcurrency\\": \\"2\\",\\n \\"Status\\": \\"Open\\"\\n }\\n ]\\n }\\n },\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<GetRunningSqlConcurrencyControlRulesResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>\\n <Total>2</Total>\\n <List>\\n <ItemId>16</ItemId>\\n <SqlType>SELECT</SqlType>\\n <InstanceId>rm-2ze1jdv45i7l6****</InstanceId>\\n <SqlKeywords>call~open~api~test~4~from~POP</SqlKeywords>\\n <StartTime>1608888296000</StartTime>\\n <KeywordsHash>b0b8aceeb43baea87b219c81767b****</KeywordsHash>\\n <ConcurrencyControlTime>600</ConcurrencyControlTime>\\n <UserId>testxxx</UserId>\\n <MaxConcurrency>2</MaxConcurrency>\\n <Status>Open</Status>\\n </List>\\n </Data>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n</GetRunningSqlConcurrencyControlRulesResponse>","errorExample":""}]', + 'title' => 'GetRunningSqlConcurrencyControlRules', + 'description' => 'This operation supports the following database engines:'."\n" + ."\n" + .'* ApsaraDB RDS for MySQL'."\n" + .'* PolarDB for MySQL'."\n", + ], + 'GetSqlConcurrencyControlRulesHistory' => [ + 'summary' => 'Queries the throttling rules that are being executed or have been triggered.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'ConsoleContext', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n" + ."\n" + .'> Only ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters are supported.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze1jdv45i7l6****', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. The value must be an integer that is greater than 0. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. The value must be an integer that is greater than 0. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, Successful is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The detailed information, including the error codes and the number of entries that are returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'Total' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '4', + ], + 'List' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'rules' => [ + 'description' => 'The list of the queried throttling rules.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ItemId' => [ + 'description' => 'The ID of the throttling rule that is applied to the instance.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '16', + ], + 'SqlType' => [ + 'description' => 'The type of the SQL statements. Valid values:'."\n" + ."\n" + .'* **SELECT**'."\n" + .'* **UPDATE**'."\n" + .'* **DELETE**', + 'type' => 'string', + 'example' => 'SELECT', + ], + 'InstanceId' => [ + 'description' => 'The instance ID.', + 'type' => 'string', + 'example' => 'rm-2ze1jdv45i7l6****', + ], + 'SqlKeywords' => [ + 'description' => 'The keywords that are used to identify the SQL statements that need to be throttled.'."\n" + ."\n" + .'> SQL keywords are separated with tildes (~). When the number of concurrent SQL statements that contain all the specified SQL keywords reaches the specified upper limit, the throttling rule is triggered.', + 'type' => 'string', + 'example' => 'call~open~api~test~4~from~POP', + ], + 'StartTime' => [ + 'description' => 'The beginning of the time range to query. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1608888296000', + ], + 'KeywordsHash' => [ + 'description' => 'The hash value of the SQL keywords. The SQL keywords are contained in the SQL statements to which the throttling rule is applied.', + 'type' => 'string', + 'example' => 'b0b8aceeb43baea87b219c81767b****', + ], + 'ConcurrencyControlTime' => [ + 'description' => 'The duration within which the SQL throttling rule takes effect. Unit: seconds.'."\n" + ."\n" + .'> The throttling rule takes effect only within this duration.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '600', + ], + 'UserId' => [ + 'description' => 'The user ID.', + 'type' => 'string', + 'example' => 'testxxx', + ], + 'MaxConcurrency' => [ + 'description' => 'The maximum number of concurrent SQL statements. Set this parameter to a positive integer.'."\n" + ."\n" + .'> When the number of concurrent SQL statements that contain the specified keywords reaches this upper limit, the throttling rule is triggered.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'Status' => [ + 'description' => 'The state of the throttling rule. Valid values:'."\n" + ."\n" + .'* **Open**: The throttling rule is in effect.'."\n" + .'* **Closed**: The throttling rule was in effect.', + 'type' => 'string', + 'example' => 'Open', + ], + ], + ], + ], + ], + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**: The request was successful.'."\n" + .'* **false**: The request failed.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"Total\\": 4,\\n \\"List\\": {\\n \\"rules\\": [\\n {\\n \\"ItemId\\": 16,\\n \\"SqlType\\": \\"SELECT\\",\\n \\"InstanceId\\": \\"rm-2ze1jdv45i7l6****\\",\\n \\"SqlKeywords\\": \\"call~open~api~test~4~from~POP\\",\\n \\"StartTime\\": 1608888296000,\\n \\"KeywordsHash\\": \\"b0b8aceeb43baea87b219c81767b****\\",\\n \\"ConcurrencyControlTime\\": 600,\\n \\"UserId\\": \\"testxxx\\",\\n \\"MaxConcurrency\\": 2,\\n \\"Status\\": \\"Open\\"\\n }\\n ]\\n }\\n },\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<GetSqlConcurrencyControlRulesHistoryResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>\\n <Total>4</Total>\\n <List>\\n <ItemId>16</ItemId>\\n <SqlType>SELECT</SqlType>\\n <InstanceId>rm-2ze1jdv45i7l6****</InstanceId>\\n <SqlKeywords>call~open~api~test~4~from~POP</SqlKeywords>\\n <StartTime>1608888296000</StartTime>\\n <KeywordsHash>b0b8aceeb43baea87b219c81767b****</KeywordsHash>\\n <ConcurrencyControlTime>600</ConcurrencyControlTime>\\n <UserId>testxxx</UserId>\\n <MaxConcurrency>2</MaxConcurrency>\\n <Status>Open</Status>\\n </List>\\n </Data>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n</GetSqlConcurrencyControlRulesHistoryResponse>","errorExample":""}]', + 'title' => 'GetSqlConcurrencyControlRulesHistory', + 'description' => 'This operation supports the following database engines:'."\n" + ."\n" + .'* ApsaraDB RDS for MySQL'."\n" + .'* PolarDB for MySQL'."\n", + ], + 'GetSqlConcurrencyControlKeywordsFromSqlText' => [ + 'summary' => 'Generates a throttling keyword string based on an SQL statement.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'ConsoleContext', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze5hpn2b99d2****', + ], + ], + [ + 'name' => 'SqlText', + 'in' => 'query', + 'schema' => [ + 'description' => 'The SQL statement based on which a throttling keyword string is to be generated.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'SELECT * FROM test where name = \'das\'', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, Successful is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The throttling keyword string that was generated based on the SQL statement.'."\n", + 'type' => 'string', + 'example' => 'SELECT~FROM~test~where~name', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '30A643F5-D7A6-55F5-AB75-DF501427****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": \\"SELECT~FROM~test~where~name\\",\\n \\"RequestId\\": \\"30A643F5-D7A6-55F5-AB75-DF501427****\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<GetSqlConcurrencyControlKeywordsFromSqlTextResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>SELECT~FROM~test~where~name</Data>\\n <RequestId>30A643F5-D7A6-55F5-AB75-DF501427****</RequestId>\\n <Success>true</Success>\\n</GetSqlConcurrencyControlKeywordsFromSqlTextResponse>","errorExample":""}]', + 'title' => 'GetSqlConcurrencyControlKeywordsFromSqlText', + 'description' => 'This operation supports the following database engines:'."\n" + ."\n" + .'* ApsaraDB RDS for MySQL'."\n" + .'* PolarDB for MySQL'."\n", + 'responseParamsDescription' => 'The returned throttling keyword string is generated based on SQL syntax. To throttle a specific value, you must add the value to the string. For example, if the original SQL statement is `SELECT \\* FROM test where name = \'das\'`, the following throttling keyword string is returned: `SELECT~FROM~test~where~name`. If you want to throttle the `das` value, you must add `~das` to the string, so that the string becomes `SELECT~FROM~test~where~name~das`.'."\n", + ], + 'CreateRequestDiagnosis' => [ + 'summary' => 'Initiates an SQL statement diagnostics request.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-0iwhhl8gx0ld6****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The node ID.'."\n" + ."\n" + .'> This parameter must be specified for PolarDB for MySQL, PolarDB for PostgreSQL (Compatible with Oracle), and ApsaraDB for MongoDB instances.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '202****', + ], + ], + [ + 'name' => 'Database', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the database.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'das', + ], + ], + [ + 'name' => 'Sql', + 'in' => 'query', + 'schema' => [ + 'description' => 'The SQL statement that you want to diagnose.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'select * from test where name = \'mockUser\'', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, Successful is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The diagnostics ID, which is the unique identifier of the diagnosis. This parameter can be used to query the result of the diagnosis.'."\n", + 'type' => 'string', + 'example' => '61820b594664275c4429****', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '800FBAF5-A539-5B97-A09E-C63AB2F7****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**: The request was successful.'."\n" + .'* **false**: The request failed.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": \\"61820b594664275c4429****\\",\\n \\"RequestId\\": \\"800FBAF5-A539-5B97-A09E-C63AB2F7****\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateRequestDiagnosisResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>61820b594664275c4429****</Data>\\n <RequestId>800FBAF5-A539-5B97-A09E-C63AB2F7****</RequestId>\\n <Success>true</Success>\\n</CreateRequestDiagnosisResponse>","errorExample":""}]', + 'title' => 'CreateRequestDiagnosis', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an SDK to call Database Autonomy Service (DAS), you must set the region to cn-shanghai.'."\n" + ."\n" + .'* This operation supports the following database engines:'."\n" + ."\n" + .' * ApsaraDB RDS for MySQL'."\n" + .' * ApsaraDB RDS for PostgreSQL'."\n" + .' * ApsaraDB RDS for SQL Server'."\n" + .' * PolarDB for MySQL'."\n" + .' * PolarDB for PostgreSQL (compatible with Oracle)'."\n" + .' * ApsaraDB for MongoDB'."\n" + ."\n" + .'> The minor engine version of ApsaraDB RDS for PostgreSQL instances must be 20221230 or later. For more information about how to check and update the minor engine version of an ApsaraDB RDS for PostgreSQL instance, see [Update the minor engine version of an ApsaraDB RDS for PostgreSQL instance](~~146895~~).'."\n", + ], + 'GetRequestDiagnosisResult' => [ + 'summary' => 'Queries the results of an SQL diagnostics task.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-0iwhhl8gx0ld6****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The node ID.'."\n" + ."\n" + .'> You must specify the node ID if your database instance is a PolarDB for MySQL cluster, a PolarDB for PostgreSQL (compatible with Oracle) instance, or an ApsaraDB for MongoDB database.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '202****', + ], + ], + [ + 'name' => 'MessageId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The unique ID of the diagnostic task.[](~~341609~~)'."\n" + ."\n" + .'> If you set MessageId to the task ID of the automatic SQL optimization feature, no result is returned.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '61820b594664275c4429****', + ], + ], + [ + 'name' => 'SqlId', + 'in' => 'query', + 'schema' => [ + 'title' => 'SQL模板ID', + 'description' => 'The SQL template ID.'."\n" + ."\n" + .'> This parameter is required if you call this operation in the DAS console. You do not need to specify this parameter when you call this operation.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'Source', + 'in' => 'query', + 'schema' => [ + 'title' => '诊断来源', + 'description' => 'The source of the task.'."\n" + ."\n" + .'> This parameter is required if you call this operation in the DAS console. You do not need to specify this parameter when you call this operation.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, Successful is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '800FBAF5-A539-5B97-A09E-C63AB2F7****', + ], + 'Data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'messageId' => [ + 'description' => 'The unique ID of the diagnostics task.'."\n", + 'type' => 'string', + 'example' => '61820b594664275c4429****', + ], + 'uuid' => [ + 'description' => 'The unique ID of the diagnostics instance.'."\n", + 'type' => 'string', + 'example' => 'hdm_51fe9bc19ec413f4d530431af87a****', + ], + 'accountId' => [ + 'description' => 'The user ID.'."\n", + 'type' => 'string', + 'example' => '2093****', + ], + 'sqlId' => [ + 'description' => 'The SQL template ID.'."\n", + 'type' => 'string', + 'example' => '0c95dae3afef77be06572612df9b****', + ], + 'engine' => [ + 'description' => 'The database engine. Valid values:'."\n" + ."\n" + .'* **MySQL**'."\n" + .'* **PostgreSQL**'."\n" + .'* **SQLServer**'."\n" + .'* **PolarDBMySQL**'."\n" + .'* **PolarDBOracle**'."\n" + .'* **MongoDB**'."\n", + 'type' => 'string', + 'example' => 'MySQL', + ], + 'dbSchema' => [ + 'description' => 'The name of the database.'."\n", + 'type' => 'string', + 'example' => 'das', + ], + 'param' => [ + 'description' => 'The additional information.'."\n", + 'type' => 'string', + 'example' => '{"":""}', + ], + 'state' => [ + 'description' => 'The state of the diagnostics task. Valid values:'."\n" + ."\n" + .'* **0**: The diagnostics task is in progress.'."\n" + .'* **1**: A diagnostics error occurred.'."\n" + .'* **2**: The diagnostics task is complete.'."\n" + .'* **3**: An SQL error occurred.'."\n" + .'* **4**: An engine error occurred.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'result' => [ + 'description' => 'The result of the SQL diagnostics task. The result includes the following information:'."\n" + ."\n" + .'* **endTime**: the end time of the SQL diagnostics task.'."\n" + ."\n" + .'* **errorCode**: the error code.'."\n" + ."\n" + .' * **0001**: The SQL diagnostics task is complete.'."\n" + .' * **0003**: The SQL diagnostics task failed.'."\n" + ."\n" + .'* **errorMessage**: the error message.'."\n" + ."\n" + .'* **estimateCost**: the estimated cost.'."\n" + ."\n" + .' * **cpu**: the estimated CPU utilization of the index.'."\n" + .' * **io**: the estimated I/O usage of the index.'."\n" + .' * **rows**: the estimated values of the rows returned for the index.'."\n" + ."\n" + .'* **improvement**: the performance improvement ratio.'."\n" + ."\n" + .'* **indexAdvices**: the index recommendations, which include the following information:'."\n" + ."\n" + .' * **columns**: the index columns.'."\n" + .' * **ddlAddIndex**: the DDL statement for the index.'."\n" + .' * **indexName**: the name of the index.'."\n" + .' * **schemaName**: the name of the database.'."\n" + .' * **tableName**: the name of the table.'."\n" + .' * **unique**: indicates whether the index is unique.'."\n" + ."\n" + .'* **ip**: the IP address of the instance.'."\n" + ."\n" + .'* **messageId**: the ID of the diagnostics task.'."\n" + ."\n" + .'* **port**: the port used to connect to the instance.'."\n" + ."\n" + .'* **sqlTag**: the SQL tag.'."\n" + ."\n" + .'* **startTime**: the start time of the SQL diagnostics task.'."\n" + ."\n" + .'* **success**: indicates whether the request was successful.'."\n" + ."\n" + .'* **support**: indicates whether the SQL statement can be diagnosed. Valid values:'."\n" + ."\n" + .' * **true**'."\n" + .' * **false**'."\n" + ."\n" + .'* **tuningAdvices** : the SQL rewrite suggestions.'."\n", + 'type' => 'string', + 'example' => '{ "endTime":1636354256000, "errorCode":"0001", "errorMessage":"TFX succeeded", "estimateCost":{ "cpu":1.7878745150389268, "io":9.948402604746128, "rows":8.889372575194633 }, "improvement":12933.97, "indexAdvices":[ { "columns":[ "work_no" ], "ddlAddIndex":"ALTER TABLE `test`.`work_order` ADD INDEX `idx_workno` (`work_no`)", "indexName":"idx_workno", "schemaName":"test", "tableName":"work_order", "unique":false } ], "ip":"****.mysql.rds.aliyuncs.com", "messageId":"6188c8cb2f1365b16aee****", "port":3306, "sqlTag":"{\\"PRED_EQUAL\\":\\"Y\\",\\"CNT_QB\\":\\"1\\",\\"CNT_TB\\":\\"1\\"}", "startTime":1636354252000, "success":true, "support":true, "tuningAdvices":[ ] }', + ], + 'gmtCreate' => [ + 'description' => 'The time when the SQL diagnostics task was created. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'string', + 'example' => '1633071840000', + ], + 'gmtModified' => [ + 'description' => 'The time when the SQL diagnostics task was modified. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'string', + 'example' => '1633071850000', + ], + ], + ], + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"800FBAF5-A539-5B97-A09E-C63AB2F7****\\",\\n \\"Data\\": {\\n \\"messageId\\": \\"61820b594664275c4429****\\",\\n \\"uuid\\": \\"hdm_51fe9bc19ec413f4d530431af87a****\\",\\n \\"accountId\\": \\"2093****\\",\\n \\"sqlId\\": \\"0c95dae3afef77be06572612df9b****\\",\\n \\"engine\\": \\"MySQL\\",\\n \\"dbSchema\\": \\"das\\",\\n \\"param\\": \\"{\\\\\\"\\\\\\":\\\\\\"\\\\\\"}\\",\\n \\"state\\": 2,\\n \\"result\\": \\"{ \\\\\\"endTime\\\\\\":1636354256000, \\\\\\"errorCode\\\\\\":\\\\\\"0001\\\\\\", \\\\\\"errorMessage\\\\\\":\\\\\\"TFX成功\\\\\\", \\\\\\"estimateCost\\\\\\":{ \\\\\\"cpu\\\\\\":1.7878745150389268, \\\\\\"io\\\\\\":9.948402604746128, \\\\\\"rows\\\\\\":8.889372575194633 }, \\\\\\"improvement\\\\\\":12933.97, \\\\\\"indexAdvices\\\\\\":[ { \\\\\\"columns\\\\\\":[ \\\\\\"work_no\\\\\\" ], \\\\\\"ddlAddIndex\\\\\\":\\\\\\"ALTER TABLE `test`.`work_order` ADD INDEX `idx_workno` (`work_no`)\\\\\\", \\\\\\"indexName\\\\\\":\\\\\\"idx_workno\\\\\\", \\\\\\"schemaName\\\\\\":\\\\\\"test\\\\\\", \\\\\\"tableName\\\\\\":\\\\\\"work_order\\\\\\", \\\\\\"unique\\\\\\":false } ], \\\\\\"ip\\\\\\":\\\\\\"****.mysql.rds.aliyuncs.com\\\\\\", \\\\\\"messageId\\\\\\":\\\\\\"6188c8cb2f1365b16aee****\\\\\\", \\\\\\"port\\\\\\":3306, \\\\\\"sqlTag\\\\\\":\\\\\\"{\\\\\\\\\\\\\\"PRED_EQUAL\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"Y\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"CNT_QB\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"1\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"CNT_TB\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"1\\\\\\\\\\\\\\"}\\\\\\", \\\\\\"startTime\\\\\\":1636354252000, \\\\\\"success\\\\\\":true, \\\\\\"support\\\\\\":true, \\\\\\"tuningAdvices\\\\\\":[ ] }\\",\\n \\"gmtCreate\\": \\"1633071840000\\",\\n \\"gmtModified\\": \\"1633071850000\\"\\n },\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<GetRequestDiagnosisResultResponse>\\n <Message>Successful</Message>\\n <RequestId>800FBAF5-A539-5B97-A09E-C63AB2F7****</RequestId>\\n <Data>\\n <messageId>61820b594664275c4429****</messageId>\\n <uuid>hdm_51fe9bc19ec413f4d530431af87a****</uuid>\\n <accountId>2093****</accountId>\\n <sqlId>0c95dae3afef77be06572612df9b****</sqlId>\\n <engine>MySQL</engine>\\n <dbSchema>das</dbSchema>\\n <param>{\\"\\":\\"\\"}</param>\\n <state>2</state>\\n <result>{ \\"endTime\\":1636354256000, \\"errorCode\\":\\"0001\\", \\"errorMessage\\":\\"TFX成功\\", \\"estimateCost\\":{ \\"cpu\\":1.7878745150389268, \\"io\\":9.948402604746128, \\"rows\\":8.889372575194633 }, \\"improvement\\":12933.97, \\"indexAdvices\\":[ { \\"columns\\":[ \\"work_no\\" ], \\"ddlAddIndex\\":\\"ALTER TABLE `test`.`work_order` ADD INDEX `idx_workno` (`work_no`)\\", \\"indexName\\":\\"idx_workno\\", \\"schemaName\\":\\"test\\", \\"tableName\\":\\"work_order\\", \\"unique\\":false } ], \\"ip\\":\\"****.mysql.rds.aliyuncs.com\\", \\"messageId\\":\\"6188c8cb2f1365b16aee****\\", \\"port\\":3306, \\"sqlTag\\":\\"{\\\\\\"PRED_EQUAL\\\\\\":\\\\\\"Y\\\\\\",\\\\\\"CNT_QB\\\\\\":\\\\\\"1\\\\\\",\\\\\\"CNT_TB\\\\\\":\\\\\\"1\\\\\\"}\\", \\"startTime\\":1636354252000, \\"success\\":true, \\"support\\":true, \\"tuningAdvices\\":[ ] }</result>\\n <gmtCreate>1633071840000</gmtCreate>\\n <gmtModified>1633071850000</gmtModified>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</GetRequestDiagnosisResultResponse>","errorExample":""}]', + 'title' => 'GetRequestDiagnosisResult', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an SDK to call the API operations of Database Autonomy Service (DAS), you must set the region ID to cn-shanghai.'."\n" + ."\n" + .'* You cannot call this operation to query the diagnostic result of the automatic SQL optimization feature.'."\n" + ."\n" + .'* This operation is applicable to the following database engines:'."\n" + ."\n" + .' * RDS MySQL'."\n" + .' * RDS PostgreSQL'."\n" + .' * RDS SQL Server'."\n" + .' * PolarDB for MySQL'."\n" + .' * PolarDB for PostgreSQL (Compatible with Oracle)'."\n" + .' * ApsaraDB for MongoDB'."\n" + ."\n" + .'> If your instance is an ApsaraDB RDS for PostgreSQL instance, make sure that the minor engine version of your instance is 20220130 or later. For more information about how to check and update the minor engine version of an ApsaraDB RDS for PostgreSQL instance, see [Update the minor engine version of an ApsaraDB RDS for PostgreSQL instance](~~146895~~).'."\n", + ], + 'GetRequestDiagnosisPage' => [ + 'summary' => 'Queries SQL diagnostics records by pages.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-0iwhhl8gx0ld6****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The node ID.'."\n" + ."\n" + .'> You must specify the node ID if your database instance is a PolarDB for MySQL, PolarDB for PostgreSQL (Compatible with Oracle), or ApsaraDB for MongoDB instance.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '202****', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. The value must be a positive integer. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. The value must be a positive integer. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '10', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1633071840000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1634972640000', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, Successful is returned. If the request failed, an error message that contains information such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '800FBAF5-A539-5B97-A09E-C63AB2F7****', + ], + 'Data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'list' => [ + 'description' => 'The SQL diagnostics records returned.', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'messageId' => [ + 'description' => 'The unique ID of the diagnostics task.', + 'type' => 'string', + 'example' => '61820b594664275c4429****', + ], + 'uuid' => [ + 'description' => 'The unique ID of the diagnostics instance.', + 'type' => 'string', + 'example' => 'hdm_51fe9bc19ec413f4d530431af87a****', + ], + 'accountId' => [ + 'description' => 'The user ID.', + 'type' => 'string', + 'example' => '2093****', + ], + 'sqlId' => [ + 'description' => 'The SQL template ID.', + 'type' => 'string', + 'example' => '0c95dae3afef77be06572612df9b****', + ], + 'engine' => [ + 'description' => 'The database engine. Valid values:'."\n" + ."\n" + .'* **MySQL**'."\n" + .'* **PostgreSQL**'."\n" + .'* **SQLServer**'."\n" + .'* **PolarDBMySQL**'."\n" + .'* **PolarDBOracle**'."\n" + .'* **MongoDB**', + 'type' => 'string', + 'example' => 'MySQL', + ], + 'dbSchema' => [ + 'description' => 'The name of the database.', + 'type' => 'string', + 'example' => 'das', + ], + 'param' => [ + 'description' => 'Additional information.', + 'type' => 'string', + 'example' => '{"":""}', + ], + 'state' => [ + 'description' => 'The status of the diagnostics task. Valid values:'."\n" + ."\n" + .'* **0**: The diagnostics task is in progress.'."\n" + ."\n" + .'* **1**: A diagnostics error occurred.'."\n" + ."\n" + .'* **2**: The diagnostics task is complete.'."\n" + ."\n" + .'* **3**: An SQL error occurred.'."\n" + ."\n" + .'* **4**: An engine error occurred.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'result' => [ + 'description' => 'The result of the SQL diagnostics task. The result includes the following information:'."\n" + ."\n" + .'* **endTime**: the end time of the SQL diagnostics task.'."\n" + .'* **errorCode**: indicates whether the SQL diagnostics task is complete. Valid values:'."\n" + .' * **0001**: The SQL diagnostics task is complete.'."\n" + .' * **0003**: The SQL diagnostics task failed.'."\n" + ."\n" + .'* **errorMessage**: the error message.'."\n" + .'* **estimateCost**: the estimated cost.'."\n" + .' * **cpu**: the estimated CPU utilization of the index.'."\n" + .' * **io**: the estimated I/O usage of the index.'."\n" + .' * **rows**: the estimated values of the rows returned for the index.'."\n" + .'* **improvement**: the performance improvement ratio.'."\n" + .'* **indexAdvices**: the index recommendations, which include the following information:'."\n" + .' * **columns**: the index columns.'."\n" + .' * **ddlAddIndex**: the DDL statement for the index.'."\n" + .' * **indexName**: the name of the index.'."\n" + .' * **schemaName**: the name of the database.'."\n" + .' * **tableName**: the name of the table.'."\n" + .' * **unique**: indicates whether the index is unique.'."\n" + ."\n" + .'* **ip**: the IP address of the instance.'."\n" + .'* **messageId**: the ID of the diagnostics task.'."\n" + .'* **port**: the port used to connect to the instance.'."\n" + .'* **sqlTag**: the SQL tag.'."\n" + .'* **startTime**: the start time of the SQL diagnostics task.'."\n" + .'* **success**: indicates whether the request was successful.'."\n" + .'* **support**: indicates whether the SQL statement can be diagnosed. Valid values:'."\n" + .' * **true**: The SQL statement can be diagnosed.'."\n" + .' * **false**: The SQL statement cannot be diagnosed.'."\n" + ."\n" + .'* **tuningAdvices**: the SQL rewrite suggestions.', + 'type' => 'string', + 'example' => '{ "endTime":1636354256000, "errorCode":"0001", "errorMessage":"TFX Successful", "estimateCost":{ "cpu":1.7878745150389268, "io":9.948402604746128, "rows":8.889372575194633 }, "improvement":12933.97, "indexAdvices":[ { "columns":[ "work_no" ], "ddlAddIndex":"ALTER TABLE `test`.`work_order` ADD INDEX `idx_workno` (`work_no`)", "indexName":"idx_workno", "schemaName":"test", "tableName":"work_order", "unique":false } ], "ip":"****.mysql.rds.aliyuncs.com", "messageId":"6188c8cb2f1365b16aee****", "port":3306, "sqlTag":"{\\"PRED_EQUAL\\":\\"Y\\",\\"CNT_QB\\":\\"1\\",\\"CNT_TB\\":\\"1\\"}", "startTime":1636354252000, "success":true, "support":true, "tuningAdvices":[ ] }', + ], + 'gmtCreate' => [ + 'description' => 'The time when the SQL diagnostics task was created. The value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.', + 'type' => 'string', + 'example' => '1633071840000', + ], + 'gmtModified' => [ + 'description' => 'The time when the SQL diagnostics task was modified. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.', + 'type' => 'string', + 'example' => '1633071850000', + ], + ], + ], + ], + 'pageNo' => [ + 'description' => 'The page number. The value must be a positive integer. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'pageSize' => [ + 'description' => 'The number of entries per page. The value must be a positive integer. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'total' => [ + 'description' => 'The total number of returned entries.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + ], + 'extra' => [ + 'description' => 'Additional information.'."\n", + 'type' => 'string', + 'example' => '{"":""}', + ], + ], + ], + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"800FBAF5-A539-5B97-A09E-C63AB2F7****\\",\\n \\"Data\\": {\\n \\"list\\": [\\n {\\n \\"messageId\\": \\"61820b594664275c4429****\\",\\n \\"uuid\\": \\"hdm_51fe9bc19ec413f4d530431af87a****\\",\\n \\"accountId\\": \\"2093****\\",\\n \\"sqlId\\": \\"0c95dae3afef77be06572612df9b****\\",\\n \\"engine\\": \\"MySQL\\",\\n \\"dbSchema\\": \\"das\\",\\n \\"param\\": \\"{\\\\\\"\\\\\\":\\\\\\"\\\\\\"}\\",\\n \\"state\\": 2,\\n \\"result\\": \\"{ \\\\\\"endTime\\\\\\":1636354256000, \\\\\\"errorCode\\\\\\":\\\\\\"0001\\\\\\", \\\\\\"errorMessage\\\\\\":\\\\\\"TFX成功\\\\\\", \\\\\\"estimateCost\\\\\\":{ \\\\\\"cpu\\\\\\":1.7878745150389268, \\\\\\"io\\\\\\":9.948402604746128, \\\\\\"rows\\\\\\":8.889372575194633 }, \\\\\\"improvement\\\\\\":12933.97, \\\\\\"indexAdvices\\\\\\":[ { \\\\\\"columns\\\\\\":[ \\\\\\"work_no\\\\\\" ], \\\\\\"ddlAddIndex\\\\\\":\\\\\\"ALTER TABLE `test`.`work_order` ADD INDEX `idx_workno` (`work_no`)\\\\\\", \\\\\\"indexName\\\\\\":\\\\\\"idx_workno\\\\\\", \\\\\\"schemaName\\\\\\":\\\\\\"test\\\\\\", \\\\\\"tableName\\\\\\":\\\\\\"work_order\\\\\\", \\\\\\"unique\\\\\\":false } ], \\\\\\"ip\\\\\\":\\\\\\"****.mysql.rds.aliyuncs.com\\\\\\", \\\\\\"messageId\\\\\\":\\\\\\"6188c8cb2f1365b16aee****\\\\\\", \\\\\\"port\\\\\\":3306, \\\\\\"sqlTag\\\\\\":\\\\\\"{\\\\\\\\\\\\\\"PRED_EQUAL\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"Y\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"CNT_QB\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"1\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"CNT_TB\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"1\\\\\\\\\\\\\\"}\\\\\\", \\\\\\"startTime\\\\\\":1636354252000, \\\\\\"success\\\\\\":true, \\\\\\"support\\\\\\":true, \\\\\\"tuningAdvices\\\\\\":[ ] }\\",\\n \\"gmtCreate\\": \\"1633071840000\\",\\n \\"gmtModified\\": \\"1633071850000\\"\\n }\\n ],\\n \\"pageNo\\": 1,\\n \\"pageSize\\": 10,\\n \\"total\\": 100,\\n \\"extra\\": \\"{\\\\\\"\\\\\\":\\\\\\"\\\\\\"}\\"\\n },\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<GetRequestDiagnosisPageResponse>\\n <Message>Successful</Message>\\n <RequestId>800FBAF5-A539-5B97-A09E-C63AB2F7****</RequestId>\\n <Data>\\n <list>\\n <messageId>61820b594664275c4429****</messageId>\\n <uuid>hdm_51fe9bc19ec413f4d530431af87a****</uuid>\\n <accountId>2093****</accountId>\\n <sqlId>0c95dae3afef77be06572612df9b****</sqlId>\\n <engine>MySQL</engine>\\n <dbSchema>das</dbSchema>\\n <param>{\\"\\":\\"\\"}</param>\\n <state>2</state>\\n <result>{ \\"endTime\\":1636354256000, \\"errorCode\\":\\"0001\\", \\"errorMessage\\":\\"TFX成功\\", \\"estimateCost\\":{ \\"cpu\\":1.7878745150389268, \\"io\\":9.948402604746128, \\"rows\\":8.889372575194633 }, \\"improvement\\":12933.97, \\"indexAdvices\\":[ { \\"columns\\":[ \\"work_no\\" ], \\"ddlAddIndex\\":\\"ALTER TABLE `test`.`work_order` ADD INDEX `idx_workno` (`work_no`)\\", \\"indexName\\":\\"idx_workno\\", \\"schemaName\\":\\"test\\", \\"tableName\\":\\"work_order\\", \\"unique\\":false } ], \\"ip\\":\\"****.mysql.rds.aliyuncs.com\\", \\"messageId\\":\\"6188c8cb2f1365b16aee****\\", \\"port\\":3306, \\"sqlTag\\":\\"{\\\\\\"PRED_EQUAL\\\\\\":\\\\\\"Y\\\\\\",\\\\\\"CNT_QB\\\\\\":\\\\\\"1\\\\\\",\\\\\\"CNT_TB\\\\\\":\\\\\\"1\\\\\\"}\\", \\"startTime\\":1636354252000, \\"success\\":true, \\"support\\":true, \\"tuningAdvices\\":[ ] }</result>\\n <gmtCreate>1633071840000</gmtCreate>\\n <gmtModified>1633071850000</gmtModified>\\n </list>\\n <pageNo>1</pageNo>\\n <pageSize>10</pageSize>\\n <total>100</total>\\n <extra>{\\"\\":\\"\\"}</extra>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</GetRequestDiagnosisPageResponse>","errorExample":""}]', + 'title' => 'GetRequestDiagnosisPage', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an SDK to call API operations of Database Autonomy Service (DAS), you must set the region ID to cn-shanghai.'."\n" + ."\n" + .'* This operation supports the following database engines:'."\n" + ."\n" + .' * ApsaraDB RDS for MySQL'."\n" + .' * ApsaraDB RDS for PostgreSQL'."\n" + .' * ApsaraDB RDS for SQL Server'."\n" + .' * PolarDB for MySQL'."\n" + .' * PolarDB for PostgreSQL (Compatible with Oracle)'."\n" + .' * ApsaraDB for MongoDB'."\n" + ."\n" + .'> The minor engine version of the Apsara RDS for PostgreSQL instance must be 20220130 or later. For more information about how to check and update the minor engine version of an ApsaraDB RDS for PostgreSQL instance, see [Update the minor engine version of an ApsaraDB RDS for PostgreSQL instance](~~146895~~).'."\n", + ], + 'DescribeQueryExplain' => [ + 'summary' => 'Queries the execution plan of an SQL statement.', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREhdmI71917', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze8g2am97624****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'pi-bp1v203xzzh0a****', + ], + ], + [ + 'name' => 'Sql', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'select * from test where name = \'mockUser\'', + ], + ], + [ + 'name' => 'DbName', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'dbtest01', + ], + ], + [ + 'name' => 'Schema', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => '', + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'true', + ], + 'Data' => [ + 'title' => 'List<ExplainedSqlDO>', + 'description' => 'List<ExplainedSqlDO>', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'description' => '', + 'type' => 'string', + 'example' => '1', + ], + 'SelectType' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'SIMPLE', + ], + 'Table' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'test', + ], + 'Type' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'eq_ref', + ], + 'PossibleKeys' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'test_idx', + ], + 'Key' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'PRIMARY', + ], + 'KeyLen' => [ + 'description' => '', + 'type' => 'string', + 'example' => '3', + ], + 'Ref' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'test_column', + ], + 'Rows' => [ + 'description' => '', + 'type' => 'string', + 'example' => '1000', + ], + 'Extra' => [ + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + 'QueryPlan' => [ + 'title' => 'QUEYR_PLAN展示用', + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + 'TableList' => [ + 'title' => 'queryPlan中用到的表名', + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + ], + 'IndexList' => [ + 'title' => 'queryPlan中用到的索引名', + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + ], + 'LogicalPlanList' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + ], + 'StmtText' => [ + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + 'StmtId' => [ + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + 'NodeId' => [ + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + 'Parent' => [ + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + 'PhysicalOp' => [ + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + 'LogicalOp' => [ + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + 'Argument' => [ + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + 'DefinedValues' => [ + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + 'EstimateRows' => [ + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + 'EstimateIO' => [ + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + 'EstimateCPU' => [ + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + 'AvgRowSize' => [ + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + 'TotalSubtreeCost' => [ + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + 'OutputList' => [ + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + 'Warnings' => [ + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + 'Parallel' => [ + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + 'EstimateExecutions' => [ + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": [\\n {\\n \\"Id\\": \\"1\\",\\n \\"SelectType\\": \\"SIMPLE\\",\\n \\"Table\\": \\"test\\",\\n \\"Type\\": \\"eq_ref\\",\\n \\"PossibleKeys\\": \\"test_idx\\",\\n \\"Key\\": \\"PRIMARY\\",\\n \\"KeyLen\\": \\"3\\",\\n \\"Ref\\": \\"test_column\\",\\n \\"Rows\\": \\"1000\\",\\n \\"Extra\\": \\"无\\",\\n \\"QueryPlan\\": \\"无\\",\\n \\"TableList\\": [\\n \\"无\\"\\n ],\\n \\"IndexList\\": [\\n \\"无\\"\\n ],\\n \\"LogicalPlanList\\": [\\n \\"无\\"\\n ],\\n \\"StmtText\\": \\"无\\",\\n \\"StmtId\\": \\"无\\",\\n \\"NodeId\\": \\"无\\",\\n \\"Parent\\": \\"无\\",\\n \\"PhysicalOp\\": \\"无\\",\\n \\"LogicalOp\\": \\"无\\",\\n \\"Argument\\": \\"无\\",\\n \\"DefinedValues\\": \\"无\\",\\n \\"EstimateRows\\": \\"无\\",\\n \\"EstimateIO\\": \\"无\\",\\n \\"EstimateCPU\\": \\"无\\",\\n \\"AvgRowSize\\": \\"无\\",\\n \\"TotalSubtreeCost\\": \\"无\\",\\n \\"OutputList\\": \\"无\\",\\n \\"Warnings\\": \\"无\\",\\n \\"Parallel\\": \\"无\\",\\n \\"EstimateExecutions\\": \\"无\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'DescribeQueryExplain', + ], + 'DescribeHotBigKeys' => [ + 'summary' => 'Queries the hot keys and the large keys in the memory in real time.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREhdmROFBLE', + ], + ], + 'parameters' => [ + [ + 'name' => 'ConsoleContext', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the ApsaraDB for Redis instance.', + 'type' => 'string', + 'required' => true, + 'example' => 'r-bp18ff4a195d****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the data shard on the ApsaraDB for Redis instance.', + 'type' => 'string', + 'required' => false, + 'example' => 'r-****-db-0', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Data' => [ + 'description' => 'The list of hot keys and large keys.'."\n", + 'type' => 'object', + 'properties' => [ + 'HotKeys' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'HotKey' => [ + 'description' => 'The list of hot keys.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key.', + 'type' => 'string', + 'example' => 'abc:def:eng', + ], + 'Db' => [ + 'description' => 'The database in which the key is stored.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'Hot' => [ + 'description' => 'The frequency at which the key is accessed, which indicates the queries per second (QPS) of the key.', + 'type' => 'string', + 'example' => '5500~6000', + ], + 'KeyType' => [ + 'description' => 'The type of the key.', + 'type' => 'string', + 'example' => 'zset', + ], + 'Lfu' => [ + 'description' => 'The statistical value that is calculated based on the least frequently used (LFU) caching algorithm.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '253', + ], + 'NodeId' => [ + 'description' => 'The ID of the data shard on the ApsaraDB for Redis instance.', + 'type' => 'string', + 'example' => 'r-x****-db-0', + ], + 'Size' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + ], + ], + ], + ], + ], + 'BigKeys' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'BigKey' => [ + 'description' => 'The list of large keys.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Db' => [ + 'description' => 'The database in which the key is stored.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'Key' => [ + 'description' => 'The key.', + 'type' => 'string', + 'example' => 'abc:def:eng', + ], + 'KeyType' => [ + 'description' => 'The type of the key.', + 'type' => 'string', + 'example' => 'zset', + ], + 'Size' => [ + 'description' => 'The number of elements in the key.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'NodeId' => [ + 'description' => 'The ID of the data shard on the ApsaraDB for Redis instance.', + 'type' => 'string', + 'example' => 'r-x****-db-0', + ], + ], + ], + ], + ], + ], + 'HotKeyMsg' => [ + 'description' => 'The reason why the hot key failed to be queried.'."\n", + 'type' => 'string', + 'example' => 'current version doesn\'t support', + ], + 'BigKeyMsg' => [ + 'description' => 'The reason why the large key failed to be queried.'."\n", + 'type' => 'string', + 'example' => 'current version doesn\'t support', + ], + 'HighTrafficKeyMsg' => [ + 'type' => 'string', + ], + 'HighTrafficKeys' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'HighTrafficKey' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'type' => 'string', + ], + 'Db' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'Hot' => [ + 'type' => 'string', + ], + 'KeyType' => [ + 'type' => 'string', + ], + 'NodeId' => [ + 'type' => 'string', + ], + 'inBytes' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + 'outBytes' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + 'Size' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + ], + ], + ], + ], + ], + 'LargeKeys' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'LargeKey' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Db' => [ + 'type' => 'string', + ], + 'Key' => [ + 'type' => 'string', + ], + 'KeyType' => [ + 'type' => 'string', + ], + 'DataSize' => [ + 'type' => 'string', + ], + 'NodeId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + 'LargeKeyMsg' => [ + 'type' => 'string', + ], + ], + ], + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**: The request was successful.'."\n" + .'* **false**: The request failed.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Data\\": {\\n \\"HotKeys\\": {\\n \\"HotKey\\": [\\n {\\n \\"Key\\": \\"abc:def:eng\\",\\n \\"Db\\": 0,\\n \\"Hot\\": \\"5500~6000\\",\\n \\"KeyType\\": \\"zset\\",\\n \\"Lfu\\": 253,\\n \\"NodeId\\": \\"r-x****-db-0\\",\\n \\"Size\\": 2\\n }\\n ]\\n },\\n \\"BigKeys\\": {\\n \\"BigKey\\": [\\n {\\n \\"Db\\": 0,\\n \\"Key\\": \\"abc:def:eng\\",\\n \\"KeyType\\": \\"zset\\",\\n \\"Size\\": 2,\\n \\"NodeId\\": \\"r-x****-db-0\\"\\n }\\n ]\\n },\\n \\"HotKeyMsg\\": \\"current version doesn\'t support\\",\\n \\"BigKeyMsg\\": \\"current version doesn\'t support\\",\\n \\"HighTrafficKeyMsg\\": \\"current version doesn\'t support\\",\\n \\"HighTrafficKeys\\": {\\n \\"HighTrafficKey\\": [\\n {\\n \\"Key\\": \\"abc:def:eng\\",\\n \\"Db\\": 0,\\n \\"Hot\\": \\"1988\\",\\n \\"KeyType\\": \\"string\\",\\n \\"NodeId\\": \\"r-x****-db-0\\\\n\\",\\n \\"inBytes\\": 85767,\\n \\"outBytes\\": 1054684,\\n \\"Size\\": 2\\n }\\n ]\\n },\\n \\"LargeKeys\\": {\\n \\"LargeKey\\": [\\n {\\n \\"Db\\": \\"0\\",\\n \\"Key\\": \\"abc:def:eng\\",\\n \\"KeyType\\": \\"string\\",\\n \\"DataSize\\": \\"33554439\\",\\n \\"NodeId\\": \\"r-x****-db-0\\"\\n }\\n ]\\n },\\n \\"LargeKeyMsg\\": \\"current version doesn\'t support\\"\\n },\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeHotBigKeysResponse>\\n <Message>Successful</Message>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Data>\\n <HotKeys>\\n <Key>abc:def:eng</Key>\\n <Db>0</Db>\\n <Hot>5500~6000</Hot>\\n <KeyType>zset</KeyType>\\n <Lfu>253</Lfu>\\n <NodeId>r-x****-db-0</NodeId>\\n </HotKeys>\\n <BigKeys>\\n <Db>0</Db>\\n <Key>abc:def:eng</Key>\\n <KeyType>zset</KeyType>\\n <Size>2</Size>\\n <NodeId>r-x****-db-0</NodeId>\\n </BigKeys>\\n <HotKeyMsg>current version doesn\'t support</HotKeyMsg>\\n <BigKeyMsg>current version doesn\'t support</BigKeyMsg>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeHotBigKeysResponse>","errorExample":""}]', + 'title' => 'DescribeHotBigKeys', + 'description' => 'This operation sorts list, hash, set, and zset keys based on the number of elements contained in these keys. The top three keys that contain the most elements are considered large keys. If the number of queries per second (QPS) of a key is greater than 3,000, the key is considered a hot key.'."\n" + ."\n" + .'* If you use an Alibaba Cloud SDK, make sure that the aliyun-sdk-core version is later than 4.3.3. We recommend that you use the latest version.'."\n" + ."\n" + .'* The version of Database Autonomy Service (DAS) SDK must be 1.0.2 or later.'."\n" + ."\n" + .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n" + ."\n" + .'* This operation is available only for ApsaraDB for Redis instances that meet the following requirements:'."\n" + ."\n" + .' * The instance is a Community Edition instance that uses a major version of 5.0 or later or a performance-enhanced instance of the Enhanced Edition (Tair).'."\n" + .' * The ApsaraDB for Redis instance is updated to the latest minor version.', + ], + 'DescribeTopHotKeys' => [ + 'summary' => 'Queries the top 100 hotkeys over a period of time.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREhdmROFBLE', + ], + ], + 'parameters' => [ + [ + 'name' => 'ConsoleContext', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the ApsaraDB for Redis instance.', + 'type' => 'string', + 'required' => true, + 'example' => 'r-bp18ff4a195d****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the data shard on the ApsaraDB for Redis instance.', + 'type' => 'string', + 'required' => false, + 'example' => 'r-****-db-0', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1596177993000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> '."\n" + ."\n" + .'* The end time must be later than the start time.'."\n" + ."\n" + .'* Only data within the last four days can be queried.'."\n" + ."\n" + .'* The maximum interval between the **start time** and the** end time** is 3 hours.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1596177993001', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'HotKey' => [ + 'description' => 'The detailed information about the hot keys.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Db' => [ + 'description' => 'The database in which the key is stored.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'Key' => [ + 'description' => 'The key.', + 'type' => 'string', + 'example' => 'abc:def:eng', + ], + 'Hot' => [ + 'description' => 'The frequency at which the key is accessed, which indicates the QPS of the key.', + 'type' => 'string', + 'example' => '5500~6000', + ], + 'KeyType' => [ + 'description' => 'The type of the key.', + 'type' => 'string', + 'example' => 'zset', + ], + 'Lfu' => [ + 'description' => 'The statistical value that is calculated based on the least frequently used (LFU) caching algorithm.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '253', + ], + 'NodeId' => [ + 'description' => 'The ID of the data shard on the ApsaraDB for Redis instance.', + 'type' => 'string', + 'example' => 'r-x****-db-0', + ], + 'InBytes' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + 'OutBytes' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + 'Category' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**: The request was successful.'."\n" + .'* **false**: The request failed.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Data\\": {\\n \\"HotKey\\": [\\n {\\n \\"Db\\": 0,\\n \\"Key\\": \\"abc:def:eng\\",\\n \\"Hot\\": \\"5500~6000\\",\\n \\"KeyType\\": \\"zset\\",\\n \\"Lfu\\": 253,\\n \\"NodeId\\": \\"r-x****-db-0\\",\\n \\"InBytes\\": 0,\\n \\"OutBytes\\": 0,\\n \\"Category\\": \\"\\"\\n }\\n ]\\n },\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeTopHotKeysResponse>\\n <Message>Successful</Message>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Data>\\n <Db>0</Db>\\n <Key>abc:def:eng</Key>\\n <Hot>5500~6000</Hot>\\n <KeyType>zset</KeyType>\\n <Lfu>253</Lfu>\\n <NodeId>r-x****-db-0</NodeId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeTopHotKeysResponse>","errorExample":""}]', + 'title' => 'DescribeTopHotKeys', + 'description' => 'If the number of queries per second (QPS) of a key is greater than 3,000, the key is considered a hot key.'."\n" + ."\n" + .'* If you use an Alibaba Cloud SDK, make sure that the aliyun-sdk-core version is later than 4.3.3. We recommend that you use the latest version.'."\n" + ."\n" + .'* The version of Database Autonomy Service (DAS) SDK must be 1.0.2 or later.'."\n" + ."\n" + .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n" + ."\n" + .'* This operation is available only for an ApsaraDB for Redis instance of one of the following versions:'."\n" + ."\n" + .' * The instance is a Community Edition instance that uses a major version of 4.0 or later or a performance-enhanced instance of the Enhanced Edition (Tair).'."\n" + .' * The ApsaraDB for Redis instance is updated to the latest minor version.', + ], + 'DescribeTopBigKeys' => [ + 'summary' => 'Queries the top 100 large keys over a period of time.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'ConsoleContext', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the ApsaraDB for Redis instance.', + 'type' => 'string', + 'required' => true, + 'example' => 'r-bp18ff4a195d****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the data shard on the ApsaraDB for Redis instance.', + 'type' => 'string', + 'required' => false, + 'example' => 'r-x****-db-0', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1596177993000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> '."\n" + ."\n" + .'* The end time must be later than the start time.'."\n" + ."\n" + .'* Only data within the last four days can be queried.'."\n" + ."\n" + .'* The maximum interval between the **start time** and the** end time** is 3 hours.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1596177993001', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'BigKey' => [ + 'description' => 'The detailed information about the large keys.'."\n" + ."\n" + .'> This parameter is left empty If no large keys exist within the specified time range.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key.', + 'type' => 'string', + 'example' => 'abc:def:eng', + ], + 'Db' => [ + 'description' => 'The database in which the key is stored.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'KeyType' => [ + 'description' => 'The type of the key.', + 'type' => 'string', + 'example' => 'zset', + ], + 'Size' => [ + 'description' => 'The number of elements in the key.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'NodeId' => [ + 'description' => 'The ID of the data shard on the ApsaraDB for Redis instance.', + 'type' => 'string', + 'example' => 'r-x****-db-0', + ], + ], + ], + ], + ], + ], + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**: The request was successful.'."\n" + .'* **false**: The request failed.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Data\\": {\\n \\"BigKey\\": [\\n {\\n \\"Key\\": \\"abc:def:eng\\",\\n \\"Db\\": 0,\\n \\"KeyType\\": \\"zset\\",\\n \\"Size\\": 2,\\n \\"NodeId\\": \\"r-x****-db-0\\"\\n }\\n ]\\n },\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeTopBigKeysResponse>\\n <Message>Successful</Message>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Data>\\n <Key>abc:def:eng</Key>\\n <Db>0</Db>\\n <KeyType>zset</KeyType>\\n <Size>2</Size>\\n <NodeId>r-x****-db-0</NodeId>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeTopBigKeysResponse>","errorExample":""}]', + 'title' => 'DescribeTopBigKeys', + 'description' => 'The list, hash, set, and zset keys are sorted based on the number of elements in these keys. The top three keys that have the most elements are considered large keys.'."\n" + ."\n" + .'* If you use an Alibaba Cloud SDK, make sure that the aliyun-sdk-core version is later than 4.3.3. We recommend that you use the latest version.'."\n" + ."\n" + .'* The version of Database Autonomy Service (DAS) SDK must be 1.0.2 or later.'."\n" + ."\n" + .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n" + ."\n" + .'* This operation is available only for an ApsaraDB for Redis instance of one of the following versions:'."\n" + ."\n" + .' * The instance is ApsaraDB for Redis Community Edition instances that use a major version of 5.0 or later or a performance-enhanced instance of the ApsaraDB for Redis Enhanced Edition (Tair).'."\n" + .' * The ApsaraDB for Redis instance is updated to the latest minor version.', + ], + 'DescribeHotKeys' => [ + 'summary' => 'Queries the hot keys of an ApsaraDB for Redis instance.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the ApsaraDB for Redis instance.', + 'type' => 'string', + 'required' => true, + 'example' => 'r-bp18ff4a195d****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the data shard on the ApsaraDB for Redis instance.', + 'type' => 'string', + 'required' => false, + 'example' => 'r-x****-db-0', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, Successful is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'HotKey' => [ + 'description' => 'The details of the hot keys.', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The name of the key.', + 'type' => 'string', + 'example' => 'abc:def:eng', + ], + 'Db' => [ + 'description' => 'The database in which the key is stored.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'Hot' => [ + 'description' => 'The frequency at which the key is accessed, which indicates the queries per second (QPS) of the key.', + 'type' => 'string', + 'example' => '5500~6000', + ], + 'KeyType' => [ + 'description' => 'The type of the key.', + 'type' => 'string', + 'example' => 'zset', + ], + 'Size' => [ + 'description' => 'The number of elements in the key.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'InBytes' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + 'OutBytes' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + 'NodeId' => [ + 'type' => 'string', + ], + 'Category' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Data\\": {\\n \\"HotKey\\": [\\n {\\n \\"Key\\": \\"abc:def:eng\\",\\n \\"Db\\": 0,\\n \\"Hot\\": \\"5500~6000\\",\\n \\"KeyType\\": \\"zset\\",\\n \\"Size\\": 2,\\n \\"InBytes\\": 85766,\\n \\"OutBytes\\": 1054688,\\n \\"NodeId\\": \\"r-x****-db-0\\",\\n \\"Category\\": \\"qps\\"\\n }\\n ]\\n },\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeHotKeysResponse>\\n <Message>Successful</Message>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Data>\\n <Key>abc:def:eng</Key>\\n <Db>0</Db>\\n <Hot>5500~6000</Hot>\\n <KeyType>zset</KeyType>\\n <Size>2</Size>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeHotKeysResponse>","errorExample":""}]', + 'title' => 'DescribeHotKeys', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an Alibaba Cloud SDK, make sure that the aliyun-sdk-core version is later than V4.3.3. We recommend that you use the latest version.'."\n" + ."\n" + .'* The version of your Database Autonomy Service (DAS) SDK must be V1.0.2 or later.'."\n" + ."\n" + .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n" + ."\n" + .'* This operation is applicable only to ApsaraDB for Redis instances that meet the following requirements:'."\n" + ."\n" + .' * The ApsaraDB for Redis instance is a Community Edition instance that uses a major version of 4.0 or later or a performance-enhanced instance of the Enhanced Edition (Tair).'."\n" + .' * The ApsaraDB for Redis instance is updated to the latest minor version.', + ], + 'CreateQueryOptimizeTag' => [ + 'summary' => 'Adds a tag to a SQL template.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + 'http', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'Engine', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database engine. Valid values:'."\n" + ."\n" + .'* **MySQL**: ApsaraDB RDS for MySQL'."\n" + .'* **PolarDBMySQL**: PolarDB for MySQL'."\n" + .'* **PostgreSQL**: ApsaraDB RDS for PostgreSQL'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MySQL', + ], + ], + [ + 'name' => 'SqlIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The SQL template IDs. You can call the [GetQueryOptimizeExecErrorStats](~~405261~~) operation to obtain the SQL template ID. Separate multiple SQL template IDs with commas (,).'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '6068ce044e3dc9b903979672fb0b69df,d12515c015fc9f41a0778a9e1de0e941', + ], + ], + [ + 'name' => 'Tags', + 'in' => 'query', + 'schema' => [ + 'description' => 'The SQL tags. Separate multiple SQL tags with commas (,). Valid values:'."\n" + ."\n" + .'* **DAS_IMPORTANT**: The SQL template is important.'."\n" + .'* **DAS_NOT_IMPORTANT**: The SQL template is unimportant.'."\n" + .'* **USER_IGNORE**: The scheduling of the SQL template does not need to be optimized.'."\n" + .'* **DAS_IN_PLAN**: The scheduling of the SQL template needs to be optimized.'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [], + 'example' => 'DAS_IN_PLAN,DAS_NOT_IMPORTANT', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'description' => 'The status of **Tags**. Valid values:'."\n" + ."\n" + .'* **0**: removes all tags added to the SQL templates that are specified by **SqlIds** and leaves **Tags** empty.'."\n" + .'* **1**: adds the tags specified by **Tags** to the SQL templates that are specified by **SqlIds**.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'Comments', + 'in' => 'query', + 'schema' => [ + 'description' => 'The remarks.'."\n" + ."\n" + .'The remarks can be 1 to 300 characters in length.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Slow SQL queries of offline synchronization. No optimization is required.', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze1jdv45i7l6****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Data' => [ + 'title' => 'Boolean', + 'description' => 'Indicates whether the tags were added to the SQL templates.'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": true\\n}","errorExample":""},{"type":"xml","example":"<CreateQueryOptimizeTagResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n <Data>true</Data>\\n</CreateQueryOptimizeTagResponse>","errorExample":""}]', + 'title' => 'CreateQueryOptimizeTag', + 'description' => '* If you use Alibaba Cloud SDK or Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + ."\n" + .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n" + ."\n" + .'* This operation supports the following database engines:'."\n" + ."\n" + .' * ApsaraDB RDS for MySQL'."\n" + .' * PolarDB for MySQL'."\n" + .' * ApsaraDB RDS for PostgreSQL'."\n", + ], + 'GetQueryOptimizeExecErrorStats' => [ + 'summary' => 'Queries SQL templates that failed to be executed.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'Engine', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database engine. Valid values:'."\n" + ."\n" + .'* **MySQL**'."\n" + .'* **PolarDBMySQL**'."\n" + .'* **PostgreSQL**'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MySQL', + ], + ], + [ + 'name' => 'InstanceIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance IDs. Separate multiple IDs with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rm-2ze8g2am97624****', + ], + ], + [ + 'name' => 'Keywords', + 'in' => 'query', + 'schema' => [ + 'description' => 'The keywords of the SQL template. Separate multiple keywords with spaces.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'select update', + ], + ], + [ + 'name' => 'LogicalOperator', + 'in' => 'query', + 'schema' => [ + 'description' => 'The logical relationship between multiple keywords. Valid values:'."\n" + ."\n" + .'* **or**'."\n" + .'* **and**'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'or', + ], + ], + [ + 'name' => 'DbNames', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the database to be queried.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'testdb01', + ], + ], + [ + 'name' => 'Time', + 'in' => 'query', + 'schema' => [ + 'description' => 'The time range to query. Specify the time in the UNIX timestamp format. Unit: milliseconds.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1642953600000', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 10.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '10', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'OrderBy', + 'in' => 'query', + 'schema' => [ + 'description' => 'The field by which to sort the returned entries. Only error_count is supported, which specifies that the entries are sorted based on the number of failed executions.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'error_count', + ], + ], + [ + 'name' => 'Asc', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to sort the returned entries in ascending order. Default value: **true**. Valid values:'."\n" + ."\n" + .'* **true**: sorts the returned entries in ascending order.'."\n" + .'* **false**: does not sort the returned entries in ascending order.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'Region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region in which the instance resides. Valid values:'."\n" + ."\n" + .'* **cn-china**: Chinese mainland'."\n" + .'* **cn-hongkong**: China (Hong Kong)'."\n" + .'* **ap-southeast-1**: Singapore'."\n" + ."\n" + .'This parameter takes effect only if **InstanceIds** is left empty. If you leave **InstanceIds** empty, the system obtains data from the region set by **Region**. By default, Region is set to **cn-china**. If you specify **InstanceIds**, **Region** does not take effect and the system obtains data from the region in which the first specified instance resides.****'."\n" + ."\n" + .'> Set this parameter to **cn-china** for the instances that are created in the regions in the Chinese mainland.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-china', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The detailed information, including the error codes and the number of entries that are returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'Total' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '19', + ], + 'PageNo' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'Extra' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'example' => 'None', + ], + 'List' => [ + 'description' => 'The information about the SQL templates that failed to execute.', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'InstanceId' => [ + 'description' => 'The instance ID.', + 'type' => 'string', + 'example' => 'rm-2ze8g2am97624****', + ], + 'InstanceName' => [ + 'description' => 'The alias of the database instance.', + 'type' => 'string', + 'example' => 'test01', + ], + 'Dbname' => [ + 'description' => 'The name of the database.', + 'type' => 'string', + 'example' => 'testdb01', + ], + 'SqlId' => [ + 'description' => 'The SQL template ID.', + 'type' => 'string', + 'example' => '2e8147b5ca2dfc640dfd5e43d96a****', + ], + 'SqlText' => [ + 'description' => 'The content of the SQL template.', + 'type' => 'string', + 'example' => 'select * from test1', + ], + 'ErrorCode' => [ + 'description' => 'The error code returned if the request failed.', + 'type' => 'string', + 'example' => '1146', + ], + 'ErrorCount' => [ + 'description' => 'The number of errors.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + ], + ], + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**: The request was successful.'."\n" + .'* **false**: The request failed.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"Total\\": 19,\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 10,\\n \\"Extra\\": \\"None\\",\\n \\"List\\": [\\n {\\n \\"InstanceId\\": \\"rm-2ze8g2am97624****\\",\\n \\"InstanceName\\": \\"test01\\",\\n \\"Dbname\\": \\"testdb01\\",\\n \\"SqlId\\": \\"2e8147b5ca2dfc640dfd5e43d96a****\\",\\n \\"SqlText\\": \\"select * from test1\\",\\n \\"ErrorCode\\": \\"1146\\",\\n \\"ErrorCount\\": 10\\n }\\n ]\\n },\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<GetQueryOptimizeExecErrorStatsResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>\\n <Total>19</Total>\\n <PageNo>1</PageNo>\\n <PageSize>10</PageSize>\\n <Extra>None</Extra>\\n <List>\\n <InstanceId>rm-2ze8g2am97624****</InstanceId>\\n <InstanceName>test01</InstanceName>\\n <Dbname>testdb01</Dbname>\\n <SqlId>2e8147b5ca2dfc640dfd5e43d96a****</SqlId>\\n <SqlText>select * from test1</SqlText>\\n <ErrorCode>1146</ErrorCode>\\n <ErrorCount>10</ErrorCount>\\n </List>\\n </Data>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n</GetQueryOptimizeExecErrorStatsResponse>","errorExample":""}]', + 'title' => 'GetQueryOptimizeExecErrorStats', + 'description' => '* If you use Alibaba Cloud SDK or Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + ."\n" + .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n" + ."\n" + .'* This operation supports the following database engines:'."\n" + ."\n" + .' * ApsaraDB RDS for MySQL'."\n" + .' * PolarDB for MySQL'."\n" + .' * ApsaraDB RDS for PostgreSQL'."\n", + ], + 'GetQueryOptimizeExecErrorSample' => [ + 'summary' => 'Queries the failed SQL statements under a SQL template.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREhdmTQGIFY', + ], + ], + 'parameters' => [ + [ + 'name' => 'Engine', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database engine. Valid values:'."\n" + ."\n" + .'* **MySQL**'."\n" + .'* **PolarDBMySQL**'."\n" + .'* **PostgreSQL**'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MySQL', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze8g2am97624****', + ], + ], + [ + 'name' => 'SqlId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The SQL template ID. You can call the [GetQueryOptimizeExecErrorStats](~~405235~~) operation to obtain the SQL template ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '2e8147b5ca2dfc640dfd5e43d96a****', + ], + ], + [ + 'name' => 'Time', + 'in' => 'query', + 'schema' => [ + 'description' => 'The date to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1642953600000', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The detailed information.'."\n", + 'type' => 'object', + 'properties' => [ + 'Total' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'PageNo' => [ + 'description' => 'A reserved parameter.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => 'None', + ], + 'PageSize' => [ + 'description' => 'A reserved parameter.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => 'None', + ], + 'Extra' => [ + 'description' => 'A reserved parameter.'."\n", + 'type' => 'string', + 'example' => 'None', + ], + 'List' => [ + 'description' => 'The queried data.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'OrigHost' => [ + 'description' => 'The IP address of the client that executes the SQL statement.', + 'type' => 'string', + 'example' => '100.104.XX.XX', + ], + 'User' => [ + 'description' => 'The username of the client that executes the SQL statement.', + 'type' => 'string', + 'example' => 'test01', + ], + 'Dbname' => [ + 'description' => 'The name of the database.', + 'type' => 'string', + 'example' => 'testdb01', + ], + 'SqlId' => [ + 'description' => 'The SQL template ID.', + 'type' => 'string', + 'example' => '2e8147b5ca2dfc640dfd5e43d96a****', + ], + 'SqlText' => [ + 'description' => 'The content of the SQL statement that failed to be executed.', + 'type' => 'string', + 'example' => 'select * from test1', + ], + 'ErrorCode' => [ + 'description' => 'The error code returned.', + 'type' => 'string', + 'example' => '1146', + ], + 'Timestamp' => [ + 'description' => 'The point in time when the failed SQL statement was executed. The value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1643020306739', + ], + ], + ], + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"Total\\": 2,\\n \\"PageNo\\": 0,\\n \\"PageSize\\": 0,\\n \\"Extra\\": \\"None\\",\\n \\"List\\": [\\n {\\n \\"OrigHost\\": \\"100.104.XX.XX\\",\\n \\"User\\": \\"test01\\",\\n \\"Dbname\\": \\"testdb01\\",\\n \\"SqlId\\": \\"2e8147b5ca2dfc640dfd5e43d96a****\\",\\n \\"SqlText\\": \\"select * from test1\\",\\n \\"ErrorCode\\": \\"1146\\",\\n \\"Timestamp\\": 1643020306739\\n }\\n ]\\n },\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<GetQueryOptimizeExecErrorSampleResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>\\n <Total>2</Total>\\n <Extra>None</Extra>\\n <List>\\n <OrigHost>100.104.XX.XX</OrigHost>\\n <User>test01</User>\\n <Dbname>testdb01</Dbname>\\n <SqlId>2e8147b5ca2dfc640dfd5e43d96a****</SqlId>\\n <SqlText>select * from test1</SqlText>\\n <ErrorCode>1146</ErrorCode>\\n <Timestamp>1643020306739</Timestamp>\\n </List>\\n </Data>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n</GetQueryOptimizeExecErrorSampleResponse>","errorExample":""}]', + 'title' => 'GetQueryOptimizeExecErrorSample', + 'description' => '* If you use Alibaba Cloud SDK, make sure that the aliyun-sdk-core version is later than V2.1.8. We recommend that you use the latest version.'."\n" + ."\n" + .'* The version of your Database Autonomy Service (DAS) SDK must be V2.1.8 or later.'."\n" + ."\n" + .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n" + ."\n" + .'* This operation supports the following database engines:'."\n" + ."\n" + .' * ApsaraDB RDS for MySQL'."\n" + .' * PolarDB for MySQL'."\n" + .' * ApsaraDB RDS for PostgreSQL'."\n", + ], + 'GetQueryOptimizeSolution' => [ + 'summary' => 'Queries suggestions provided by query governance for optimizing an SQL template.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREhdmTQGIFY', + ], + ], + 'parameters' => [ + [ + 'name' => 'Engine', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database engine. Valid values:'."\n" + ."\n" + .'* **MySQL**'."\n" + .'* **PolarDBMySQL**'."\n" + .'* **PostgreSQL**'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MySQL', + ], + ], + [ + 'name' => 'SqlId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The SQL template ID. You can call the [GetQueryOptimizeDataStats](~~405261~~) operation to query the SQL template ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '05fecf7e7b3efd123c4d5197035f****', + ], + ], + [ + 'name' => 'RuleIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The tag ID. For more information, see [Query governance](~~290038~~).'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'LARGE_ROWS_EXAMINED', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID. You can call the [GetQueryOptimizeDataStats](~~405261~~) operation to query the instance ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rm-bp1o3z6beqpej****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'Total' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'PageNo' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => 'None', + ], + 'PageSize' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => 'None', + ], + 'Extra' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'example' => 'None', + ], + 'List' => [ + 'description' => 'The optimization suggestions.', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Level' => [ + 'description' => 'The severity level. Valid values:'."\n" + ."\n" + .'* **INFO**'."\n" + .'* **WARN**', + 'type' => 'string', + 'example' => 'INFO', + ], + 'RuleId' => [ + 'description' => 'The tag ID.', + 'type' => 'string', + 'example' => 'LARGE_ROWS_EXAMINED', + ], + 'Solution' => [ + 'description' => 'The suggestion.', + 'type' => 'string', + 'example' => 'LARGE_ROWS_EXAMINED_SOLUTION', + ], + 'SolutionExt' => [ + 'description' => 'The reserved parameter.', + 'type' => 'string', + 'example' => 'None', + ], + ], + ], + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '30FF4E40-17F3-5A51-AB23-43F30D9B****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"Total\\": 1,\\n \\"PageNo\\": 0,\\n \\"PageSize\\": 0,\\n \\"Extra\\": \\"None\\",\\n \\"List\\": [\\n {\\n \\"Level\\": \\"INFO\\",\\n \\"RuleId\\": \\"LARGE_ROWS_EXAMINED\\",\\n \\"Solution\\": \\"LARGE_ROWS_EXAMINED_SOLUTION\\",\\n \\"SolutionExt\\": \\"None\\"\\n }\\n ]\\n },\\n \\"RequestId\\": \\"30FF4E40-17F3-5A51-AB23-43F30D9B****\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<GetQueryOptimizeSolutionResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>\\n <Total>1</Total>\\n <Extra>None</Extra>\\n <List>\\n <Level>INFO</Level>\\n <RuleId>LARGE_ROWS_EXAMINED</RuleId>\\n <Solution>LARGE_ROWS_EXAMINED_SOLUTION</Solution>\\n <SolutionExt>None</SolutionExt>\\n </List>\\n </Data>\\n <RequestId>30FF4E40-17F3-5A51-AB23-43F30D9B****</RequestId>\\n <Success>true</Success>\\n</GetQueryOptimizeSolutionResponse>","errorExample":""}]', + 'title' => 'GetQueryOptimizeSolution', + 'description' => '* If you use an Alibaba Cloud SDK or a Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + ."\n" + .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n" + ."\n" + .'* This operation supports the following database engines:'."\n" + ."\n" + .' * ApsaraDB RDS for MySQL'."\n" + .' * PolarDB for MySQL'."\n" + .' * ApsaraDB RDS for PostgreSQL'."\n", + ], + 'GetQueryOptimizeRuleList' => [ + 'summary' => 'Queries the tags added by the query governance feature to specified database instances.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'Engine', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database engine. Valid values:'."\n" + ."\n" + .'* **MySQL**'."\n" + .'* **PolarDBMySQL**'."\n" + .'* **PostgreSQL**'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MySQL', + ], + ], + [ + 'name' => 'InstanceIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance IDs. Separate multiple IDs with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rm-2ze8g2am97624****', + ], + ], + [ + 'name' => 'TagNames', + 'in' => 'query', + 'schema' => [ + 'title' => '', + 'description' => 'A reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'Region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region in which the instance resides. Valid values:'."\n" + ."\n" + .'* **cn-china**: Chinese mainland'."\n" + .'* **cn-hongkong**: China (Hong Kong)'."\n" + .'* **ap-southeast-1**: Singapore'."\n" + ."\n" + .'This parameter takes effect only if **InstanceIds** is left empty. If you leave **InstanceIds** empty, the system obtains data from the region set by **Region**. By default, Region is set to **cn-china**. If you specify **InstanceIds**, **Region** does not take effect and the system obtains data from the region in which the first specified instance resides.****'."\n" + ."\n" + .'> If your instances reside in the regions in the Chinese mainland, set this parameter to **cn-china**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-china', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The detailed information.'."\n", + 'type' => 'object', + 'properties' => [ + 'Total' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'PageNo' => [ + 'description' => 'A reserved parameter.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => 'None', + ], + 'PageSize' => [ + 'description' => 'A reserved parameter.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => 'None', + ], + 'Extra' => [ + 'description' => 'A reserved parameter.'."\n", + 'type' => 'string', + 'example' => 'None', + ], + 'List' => [ + 'description' => 'The information about tags.', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The type of the tag. **Predefined** is returned, which indicates that the tag is added by the system.', + 'type' => 'string', + 'example' => 'Predefined', + ], + 'Name' => [ + 'description' => 'The name of the tag.', + 'type' => 'string', + 'example' => 'LARGE_ROWS_EXAMINED', + ], + 'RuleId' => [ + 'description' => 'A reserved parameter.', + 'type' => 'string', + 'example' => 'None', + ], + ], + ], + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"Total\\": 1,\\n \\"PageNo\\": 0,\\n \\"PageSize\\": 0,\\n \\"Extra\\": \\"None\\",\\n \\"List\\": [\\n {\\n \\"Type\\": \\"Predefined\\",\\n \\"Name\\": \\"LARGE_ROWS_EXAMINED\\",\\n \\"RuleId\\": \\"None\\"\\n }\\n ]\\n },\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<GetQueryOptimizeRuleListResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>\\n <Total>1</Total>\\n <Extra>None</Extra>\\n <List>\\n <Type>Predefined</Type>\\n <Name>LARGE_ROWS_EXAMINED</Name>\\n <RuleId>None</RuleId>\\n </List>\\n </Data>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n</GetQueryOptimizeRuleListResponse>","errorExample":""}]', + 'title' => 'GetQueryOptimizeRuleList', + 'description' => '* If you use Alibaba Cloud SDK, make sure that the aliyun-sdk-core version is later than V2.1.8. We recommend that you use the latest version.'."\n" + ."\n" + .'* The version of your Database Autonomy Service (DAS) SDK must be V2.1.8 or later.'."\n" + ."\n" + .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n" + ."\n" + .'* This operation supports the following database engines:'."\n" + ."\n" + .' * ApsaraDB RDS for MySQL'."\n" + .' * PolarDB for MySQL'."\n" + .' * ApsaraDB RDS for PostgreSQL'."\n", + ], + 'GetQueryOptimizeDataTrend' => [ + 'summary' => 'Queries query governance trend data.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'Engine', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database engine. Valid values:'."\n" + ."\n" + .'* **MySQL**'."\n" + .'* **PolarDBMySQL**'."\n" + .'* **PostgreSQL**'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MySQL', + ], + ], + [ + 'name' => 'InstanceIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance IDs. Separate multiple IDs with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rm-2ze8g2am97624****', + ], + ], + [ + 'name' => 'TagNames', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'Start', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> You can specify a start time up to two months earlier than the current time.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1642435200000', + ], + ], + [ + 'name' => 'End', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The end time must be later than the start time, but not later than 00:00:00 (UTC+8) on the current day.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1643040000000', + ], + ], + [ + 'name' => 'Region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region in which the instance resides. Valid values:'."\n" + ."\n" + .'* **cn-china**: Chinese mainland.'."\n" + .'* **cn-hongkong**: China (Hong Kong).'."\n" + .'* **ap-southeast-1**: Singapore.'."\n" + ."\n" + .'This parameter takes effect only if **InstanceIds** is left empty. If you leave **InstanceIds** empty, the system obtains data from the region specified by **Region**. By default, Region is set to **cn-china**. If you specify **InstanceIds**, **Region** does not take effect and the system obtains data from the region in which the first specified instance resides.****'."\n" + ."\n" + .'> If your instances reside in the regions inside the Chinese mainland, set this parameter to **cn-china**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-china', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The detailed information.'."\n", + 'type' => 'object', + 'properties' => [ + 'Total' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'PageNo' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => 'None', + ], + 'PageSize' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => 'None', + ], + 'Extra' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'example' => 'None', + ], + 'List' => [ + 'description' => 'The details of the trend data.', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Kpi' => [ + 'description' => 'The name of the metric. Valid values:'."\n" + ."\n" + .'* **sqlExecuteCount**: the number of executions of slow SQL queries.'."\n" + .'* **sqlExecuteCountDiff**: the difference in the number of executions of slow SQL queries compared to the previous day.'."\n" + .'* **sqlCount**: the number of slow SQL templates.'."\n" + .'* **sqlCountDiff**: the difference in the number of slow SQL templates compared to the previous day.'."\n" + .'* **optimizedSqlExecuteCount**: the number of optimizable executions of slow SQL queries.'."\n" + .'* **optimizedSqlExecuteCountDiff**: the difference in the number of optimizable executions of slow SQL queries compared to the previous day.'."\n" + .'* **optimizedSqlCount**: the number of optimizable slow SQL templates.'."\n" + .'* **optimizedSqlCountDiff**: the difference in the number of optimizable slow SQL templates compared to the previous day.', + 'type' => 'string', + 'example' => 'sqlExecuteCount', + ], + 'Timestamp' => [ + 'description' => 'The data timestamp. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1643040000000', + ], + 'Value' => [ + 'description' => 'The value of the metric.', + 'type' => 'number', + 'format' => 'double', + 'example' => '1000', + ], + ], + ], + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"Total\\": 10,\\n \\"PageNo\\": 0,\\n \\"PageSize\\": 0,\\n \\"Extra\\": \\"None\\",\\n \\"List\\": [\\n {\\n \\"Kpi\\": \\"sqlExecuteCount\\",\\n \\"Timestamp\\": 1643040000000,\\n \\"Value\\": 1000\\n }\\n ]\\n },\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<GetQueryOptimizeDataTrendResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>\\n <Total>10</Total>\\n <Extra>None</Extra>\\n <List>\\n <Kpi>sqlExecuteCount</Kpi>\\n <Timestamp>1643040000000</Timestamp>\\n <Value>1000</Value>\\n </List>\\n </Data>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n</GetQueryOptimizeDataTrendResponse>","errorExample":""}]', + 'title' => 'GetQueryOptimizeDataTrend', + 'description' => '* If you use Alibaba Cloud SDK, make sure that the aliyun-sdk-core version is later than V2.1.8. We recommend that you use the latest version.'."\n" + ."\n" + .'* The version of your Database Autonomy Service (DAS) SDK must be V2.1.8 or later.'."\n" + ."\n" + .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n" + ."\n" + .'* This operation supports the following database engines:'."\n" + ."\n" + .' * ApsaraDB RDS for MySQL'."\n" + .' * PolarDB for MySQL'."\n" + .' * ApsaraDB RDS for PostgreSQL'."\n", + ], + 'GetQueryOptimizeDataTop' => [ + 'summary' => 'Queries information about the best-performing and worst-performing instances based on query governance data.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'Engine', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database engine. Valid values:'."\n" + ."\n" + .'* **MySQL**'."\n" + .'* **PolarDBMySQL**'."\n" + .'* **PostgreSQL**'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MySQL', + ], + ], + [ + 'name' => 'InstanceIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance IDs. Separate multiple IDs with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rm-2ze8g2am97624****', + ], + ], + [ + 'name' => 'TagNames', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'Time', + 'in' => 'query', + 'schema' => [ + 'description' => 'The time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1642953600000', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of instances that you want to query. Valid values:'."\n" + ."\n" + .'* **RED**: the best-performing instances'."\n" + .'* **BLACK**: the worst-performing instances'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'RED', + ], + ], + [ + 'name' => 'Region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region in which the instance resides. Valid values:'."\n" + ."\n" + .'* **cn-china**: Chinese mainland'."\n" + .'* **cn-hongkong**: China (Hong Kong)'."\n" + .'* **ap-southeast-1**: Singapore'."\n" + ."\n" + .'This parameter takes effect only if **InstanceIds** is left empty. If you leave **InstanceIds** empty, the system obtains data from the region set by **Region**. By default, Region is set to **cn-china**. If you specify **InstanceIds**, **Region** does not take effect and the system obtains data from the region in which the first specified instance resides.****'."\n" + ."\n" + .'> Set this parameter to **cn-china** for all your instances that reside in the regions in the Chinese mainland.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-china', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The detailed information.'."\n", + 'type' => 'object', + 'properties' => [ + 'Total' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'PageNo' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => 'None', + ], + 'PageSize' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => 'None', + ], + 'Extra' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'example' => 'None', + ], + 'List' => [ + 'description' => 'The information about the instances.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'InstanceId' => [ + 'description' => 'The instance ID.', + 'type' => 'string', + 'example' => 'rm-2ze8g2am97624****', + ], + 'Type' => [ + 'description' => 'The metric name. Valid values:'."\n" + ."\n" + .'* **sqlExecuteCount**: the number of slow SQL executions.'."\n" + .'* **optimizedSqlExecuteCount**: the number of slow SQL executions that need to be optimized.', + 'type' => 'string', + 'example' => 'sqlExecuteCount', + ], + 'Value' => [ + 'description' => 'The metric value.', + 'type' => 'number', + 'format' => 'double', + 'example' => '100', + ], + ], + ], + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**: The request was successful.'."\n" + .'* **false**: The request failed.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"Total\\": 10,\\n \\"PageNo\\": 0,\\n \\"PageSize\\": 0,\\n \\"Extra\\": \\"None\\",\\n \\"List\\": [\\n {\\n \\"InstanceId\\": \\"rm-2ze8g2am97624****\\",\\n \\"Type\\": \\"sqlExecuteCount\\",\\n \\"Value\\": 100\\n }\\n ]\\n },\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<GetQueryOptimizeDataTopResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>\\n <Total>10</Total>\\n <Extra>None</Extra>\\n <List>\\n <InstanceId>rm-2ze8g2am97624****</InstanceId>\\n <Type>sqlExecuteCount</Type>\\n <Value>100</Value>\\n </List>\\n </Data>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n</GetQueryOptimizeDataTopResponse>","errorExample":""}]', + 'title' => 'GetQueryOptimizeDataTop', + 'description' => '* If you use an Alibaba Cloud SDK, make sure that the aliyun-sdk-core version is later than V2.1.8. We recommend that you use the latest version.'."\n" + ."\n" + .'* The version of your Database Autonomy Service (DAS) SDK must be V2.1.8 or later.'."\n" + ."\n" + .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n" + ."\n" + .'* This operation supports the following database engines:'."\n" + ."\n" + .' * ApsaraDB RDS for MySQL'."\n" + .' * PolarDB for MySQL'."\n" + .' * ApsaraDB RDS for PostgreSQL'."\n", + ], + 'GetQueryOptimizeDataStats' => [ + 'summary' => 'Queries information about SQL templates based on query governance data.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'Engine', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database engine. Valid values:'."\n" + ."\n" + .'* **MySQL**'."\n" + .'* **PolarDBMySQL**'."\n" + .'* **PostgreSQL**'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MySQL', + ], + ], + [ + 'name' => 'InstanceIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance IDs. Separate multiple IDs with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rm-2ze8g2am97624****', + ], + ], + [ + 'name' => 'TagNames', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'Keywords', + 'in' => 'query', + 'schema' => [ + 'description' => 'The keywords of the SQL template. Separate multiple keywords with spaces.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'select update', + ], + ], + [ + 'name' => 'LogicalOperator', + 'in' => 'query', + 'schema' => [ + 'description' => 'The logical relationship between multiple keywords. Valid values:'."\n" + ."\n" + .'* **or**'."\n" + .'* **and**'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'or', + ], + ], + [ + 'name' => 'Rules', + 'in' => 'query', + 'schema' => [ + 'description' => 'The tags that are used to filter SQL templates. Separate multiple tags with commas (,). For more information, see [Query governance](~~290038~~).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'DAS_NOT_IMPORTANT', + ], + ], + [ + 'name' => 'DbNames', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the database to be queried.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'testdb01', + ], + ], + [ + 'name' => 'Time', + 'in' => 'query', + 'schema' => [ + 'description' => 'The time range to query. Specify the time in the UNIX timestamp format. Unit: milliseconds.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1642953600000', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 10.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'OrderBy', + 'in' => 'query', + 'schema' => [ + 'description' => 'The field by which to sort the returned entries. Default value: **count**. Valid values:'."\n" + ."\n" + .'* **count**: the number of executions.'."\n" + .'* **maxQueryTime**: the longest execution time.'."\n" + .'* **avgQueryTime**: the average execution time.'."\n" + .'* **maxLockTime**: the longest lock wait time.'."\n" + .'* **avgLockTime**: the longest lock wait time.'."\n" + .'* **maxRowsExamined**: the largest number of scanned rows.'."\n" + .'* **avgRowsExamined**: the average number of scanned rows.'."\n" + .'* **maxRowsSent**: the largest number of returned rows.'."\n" + .'* **avgRowsSent**: the average number of returned rows.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'count', + ], + ], + [ + 'name' => 'Asc', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to sort the returned entries in ascending order. Default value: **true**. Valid values:'."\n" + ."\n" + .'* **true**: sorts the returned entries in ascending order.'."\n" + .'* **false**: does not sort the returned entries in ascending order.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'OnlyOptimizedSql', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to query only SQL templates that need to be optimized. Default value: **false**. Valid values:'."\n" + ."\n" + .'* **true**: queries only SQL templates that need to be optimized.'."\n" + .'* **false**: does not query only SQL statements that need to be optimized.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'SqlIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The SQL template ID. You can query the ID of a template by calling the [GetQueryOptimizeExecErrorStats](~~405235~~) operation.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2e8147b5ca2dfc640dfd5e43d96a****', + ], + ], + [ + 'name' => 'Region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region in which the instance resides. Valid values:'."\n" + ."\n" + .'* **cn-china**: Chinese mainland'."\n" + .'* **cn-hongkong**: China (Hong Kong)'."\n" + .'* **ap-southeast-1**: Singapore'."\n" + ."\n" + .'This parameter takes effect only if **InstanceIds** is left empty. If you leave **InstanceIds** empty, the system obtains data from the region set by **Region**. By default, Region is set to **cn-china**. If you specify **InstanceIds**, **Region** does not take effect and the system obtains data from the region in which the first specified instance resides.****'."\n" + ."\n" + .'> Set this parameter to **cn-china** for the instances that are created in the regions in the Chinese mainland.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-china', + ], + ], + [ + 'name' => 'User', + 'in' => 'query', + 'schema' => [ + 'description' => 'The account of the database to be queried.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'testUser', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'Total' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'PageNo' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => 'None', + ], + 'PageSize' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => 'None', + ], + 'Extra' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'example' => 'None', + ], + 'List' => [ + 'description' => 'The information about the SQL templates.', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'InstanceId' => [ + 'description' => 'The instance ID.', + 'type' => 'string', + 'example' => 'rm-2ze8g2am97624****', + ], + 'Dbname' => [ + 'description' => 'The name of the database to which the SQL template belongs.', + 'type' => 'string', + 'example' => 'testdb01', + ], + 'SqlId' => [ + 'description' => 'The SQL template ID.', + 'type' => 'string', + 'example' => '2e8147b5ca2dfc640dfd5e43d96a****', + ], + 'SqlType' => [ + 'description' => 'The type of the SQL statement.', + 'type' => 'string', + 'example' => 'INSERT', + ], + 'Psql' => [ + 'description' => 'The SQL template.', + 'type' => 'string', + 'example' => 'select 1', + ], + 'SqlSample' => [ + 'description' => 'The sample query that took the longest time to execute.', + 'type' => 'string', + 'example' => 'select 2', + ], + 'Count' => [ + 'description' => 'The number of times that the SQL template is executed.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + 'MaxQueryTime' => [ + 'description' => 'The longest query execution time. Unit: seconds.', + 'type' => 'number', + 'format' => 'double', + 'example' => '1.1', + ], + 'AvgQueryTime' => [ + 'description' => 'The average query execution time. Unit: seconds.', + 'type' => 'number', + 'format' => 'double', + 'example' => '1.1', + ], + 'MaxLockTime' => [ + 'description' => 'The longest lock wait time. Unit: seconds.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0.1', + ], + 'AvgLockTime' => [ + 'description' => 'The average lock wait time. Unit: seconds.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0.1', + ], + 'MaxRowsExamined' => [ + 'description' => 'The largest number of scanned rows.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100000', + ], + 'AvgRowsExamined' => [ + 'description' => 'The average number of scanned rows.', + 'type' => 'number', + 'format' => 'double', + 'example' => '100.1', + ], + 'MaxRowsSent' => [ + 'description' => 'The largest number of returned rows.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10000', + ], + 'AvgRowsSent' => [ + 'description' => 'The average number of returned rows.', + 'type' => 'number', + 'format' => 'double', + 'example' => '100.1', + ], + 'MaxRowsAffected' => [ + 'description' => 'The largest number of rows affected by the SQL template.'."\n" + ."\n" + .'> A value of -1 indicates that this parameter is not collected.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10000', + ], + 'AvgRowsAffected' => [ + 'description' => 'The average number of rows affected by the SQL statement.'."\n" + ."\n" + .'> A value of -1 indicates that this parameter is not collected.', + 'type' => 'number', + 'format' => 'double', + 'example' => '100.1', + ], + 'RuleList' => [ + 'description' => 'The information about the rules.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => 'The rule name.', + 'type' => 'string', + 'example' => 'DAS_NOT_IMPORTANT', + ], + 'Type' => [ + 'description' => 'The type of the rule. Valid values:'."\n" + ."\n" + .'* **Predefined**'."\n" + .'* **UserDefined**', + 'type' => 'string', + 'example' => 'Predefined', + ], + ], + ], + ], + 'User' => [ + 'description' => 'The account of the database.', + 'type' => 'string', + 'example' => 'testUser', + ], + ], + ], + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**: The request was successful.'."\n" + .'* **false**: The request failed.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"Total\\": 10,\\n \\"PageNo\\": 0,\\n \\"PageSize\\": 0,\\n \\"Extra\\": \\"None\\",\\n \\"List\\": [\\n {\\n \\"InstanceId\\": \\"rm-2ze8g2am97624****\\",\\n \\"Dbname\\": \\"testdb01\\",\\n \\"SqlId\\": \\"2e8147b5ca2dfc640dfd5e43d96a****\\",\\n \\"SqlType\\": \\"INSERT\\",\\n \\"Psql\\": \\"select 1\\",\\n \\"SqlSample\\": \\"select 2\\",\\n \\"Count\\": 100,\\n \\"MaxQueryTime\\": 1.1,\\n \\"AvgQueryTime\\": 1.1,\\n \\"MaxLockTime\\": 0.1,\\n \\"AvgLockTime\\": 0.1,\\n \\"MaxRowsExamined\\": 100000,\\n \\"AvgRowsExamined\\": 100.1,\\n \\"MaxRowsSent\\": 10000,\\n \\"AvgRowsSent\\": 100.1,\\n \\"MaxRowsAffected\\": 10000,\\n \\"AvgRowsAffected\\": 100.1,\\n \\"RuleList\\": [\\n {\\n \\"Name\\": \\"DAS_NOT_IMPORTANT\\",\\n \\"Type\\": \\"Predefined\\"\\n }\\n ],\\n \\"User\\": \\"testUser\\"\\n }\\n ]\\n },\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<GetQueryOptimizeDataStatsResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>\\n <Total>10</Total>\\n <Extra>None</Extra>\\n <List>\\n <InstanceId>rm-2ze8g2am97624****</InstanceId>\\n <Dbname>testdb01</Dbname>\\n <SqlId>2e8147b5ca2dfc640dfd5e43d96a****</SqlId>\\n <SqlType>INSERT</SqlType>\\n <Psql>select 1</Psql>\\n <SqlSample>select 2</SqlSample>\\n <Count>100</Count>\\n <MaxQueryTime>1.1</MaxQueryTime>\\n <AvgQueryTime>1.1</AvgQueryTime>\\n <MaxLockTime>0.1</MaxLockTime>\\n <AvgLockTime>0.1</AvgLockTime>\\n <MaxRowsExamined>100000</MaxRowsExamined>\\n <AvgRowsExamined>100.1</AvgRowsExamined>\\n <MaxRowsSent>10000</MaxRowsSent>\\n <AvgRowsSent>100.1</AvgRowsSent>\\n <MaxRowsAffected>10000</MaxRowsAffected>\\n <AvgRowsAffected>100.1</AvgRowsAffected>\\n <RuleList>\\n <Name>DAS_NOT_IMPORTANT</Name>\\n <Type>Predefined</Type>\\n </RuleList>\\n </List>\\n </Data>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n</GetQueryOptimizeDataStatsResponse>","errorExample":""}]', + 'title' => 'GetQueryOptimizeDataStats', + 'description' => '* If you use an Alibaba Cloud SDK, make sure that the aliyun-sdk-core version is later than V2.1.8. We recommend that you use the latest version.'."\n" + ."\n" + .'* The version of your Database Autonomy Service (DAS) SDK must be V2.1.8 or later.'."\n" + ."\n" + .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n" + ."\n" + .'* This operation supports the following database engines:'."\n" + ."\n" + .' * ApsaraDB RDS for MySQL'."\n" + .' * PolarDB for MySQL'."\n" + .' * ApsaraDB RDS for PostgreSQL'."\n", + ], + 'GetQueryOptimizeTag' => [ + 'summary' => 'Queries the tags of a SQL statement.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREhdmTQGIFY', + ], + ], + 'parameters' => [ + [ + 'name' => 'Engine', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database engine. Valid values:'."\n" + ."\n" + .'* **MySQL**: ApsaraDB RDS for MySQL'."\n" + .'* **PolarDBMySQL**: PolarDB for MySQL'."\n" + .'* **PostgreSQL**: ApsaraDB RDS for PostgreSQL'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MySQL', + ], + ], + [ + 'name' => 'SqlId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The SQL template ID. You can call the [GetQueryOptimizeDataStats](~~405261~~) operation to query the SQL template ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '29d9fef63e347d39c3436658a5fe5f2b', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze8g2am97624****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Data' => [ + 'title' => 'SqlTag', + 'description' => 'The returned SQL tag data.'."\n", + 'type' => 'object', + 'properties' => [ + 'SqlId' => [ + 'description' => 'The SQL template ID.'."\n", + 'type' => 'string', + 'example' => '651b56fe9418d48edb8fdf0980ec****', + ], + 'Tags' => [ + 'title' => '逗号分隔的多个tag', + 'description' => 'The SQL tags. Multiple tags are separated by commas (,).'."\n", + 'type' => 'string', + 'example' => 'DAS_IN_PLAN,DAS_NOT_IMPORTANT', + ], + 'Comments' => [ + 'description' => 'The remarks.'."\n", + 'type' => 'string', + 'example' => 'Slow SQL queries of offline synchronization. No optimization is required.', + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"SqlId\\": \\"29d9fef63e347d39c3436658a5fe****\\",\\n \\"Tags\\": \\"DAS_IN_PLAN,DAS_NOT_IMPORTANT\\",\\n \\"Comments\\": \\"离线同步类慢SQL,无需优化。\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<GetQueryOptimizeTagResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n <Data>\\n <SqlId>29d9fef63e347d39c3436658a5fe****</SqlId>\\n <Tags>DAS_IN_PLAN,DAS_NOT_IMPORTANT</Tags>\\n <Comments>离线同步类慢SQL,无需优化。</Comments>\\n </Data>\\n</GetQueryOptimizeTagResponse>","errorExample":""}]', + 'title' => 'GetQueryOptimizeTag', + 'description' => '* If you use Alibaba Cloud SDK or Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + ."\n" + .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n" + ."\n" + .'* This operation supports the following database engines:'."\n" + ."\n" + .' * ApsaraDB RDS for MySQL'."\n" + .' * PolarDB for MySQL'."\n" + .' * ApsaraDB RDS for PostgreSQL'."\n", + ], + 'GetQueryOptimizeShareUrl' => [ + 'summary' => 'Queries a share URL provided by the query governance feature.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREhdmTQGIFY', + ], + ], + 'parameters' => [ + [ + 'name' => 'Engine', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database engine. Valid values:'."\n" + ."\n" + .'* **MySQL**: ApsaraDB RDS for MySQL'."\n" + .'* **PolarDBMySQL**: PolarDB for MySQL'."\n" + .'* **PostgreSQL**: ApsaraDB RDS for PostgreSQL'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'MySQL', + ], + ], + [ + 'name' => 'InstanceIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance IDs. Separate multiple IDs with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rm-2ze1jdv45i7l6****', + ], + ], + [ + 'name' => 'TagNames', + 'in' => 'query', + 'schema' => [ + 'description' => 'A reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'Keywords', + 'in' => 'query', + 'schema' => [ + 'description' => 'The keywords of the SQL template. Separate multiple keywords with spaces.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'select update', + ], + ], + [ + 'name' => 'LogicalOperator', + 'in' => 'query', + 'schema' => [ + 'description' => 'The logical relationship between multiple keywords. Valid values:'."\n" + ."\n" + .'* **or**'."\n" + .'* **and**'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'or', + ], + ], + [ + 'name' => 'Rules', + 'in' => 'query', + 'schema' => [ + 'description' => 'The tags that are used to filter SQL templates. Separate multiple tags with commas (,). For more information, see [Query governance](~~290038~~).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'DAS_NOT_IMPORTANT', + ], + ], + [ + 'name' => 'DbNames', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the database to be queried.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'testdb01', + ], + ], + [ + 'name' => 'Time', + 'in' => 'query', + 'schema' => [ + 'description' => 'The date to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1642953600000', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'OrderBy', + 'in' => 'query', + 'schema' => [ + 'description' => 'The field by which to sort the returned entries. Default value: **count**. Valid values:'."\n" + ."\n" + .'* **count**: the number of executions.'."\n" + .'* **maxQueryTime**: the longest execution duration.'."\n" + .'* **avgQueryTime**: the average execution duration.'."\n" + .'* **maxLockTime**: the longest lock wait duration.'."\n" + .'* **avgLockTime**: the average lock wait duration.'."\n" + .'* **maxRowsExamined**: the largest number of scanned rows.'."\n" + .'* **avgRowsExamined**: the average number of scanned rows.'."\n" + .'* **maxRowsSent**: the largest number of returned rows.'."\n" + .'* **avgRowsSent**: the average number of returned rows.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'count', + ], + ], + [ + 'name' => 'Asc', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to sort the returned entries in ascending order. Default value: **true**. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'OnlyOptimizedSql', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to query only SQL templates that need to be optimized. Default value: **false**. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'SqlIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The SQL template IDs. You can call the [GetQueryOptimizeExecErrorStats](~~405261~~) operation to obtain the SQL template IDs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '6068ce044e3dc9b903979672fb0b69df,d12515c015fc9f41a0778a9e1de0****', + ], + ], + [ + 'name' => 'Region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region in which the instance resides. Valid values:'."\n" + ."\n" + .'* **cn-china**: Chinese mainland'."\n" + .'* **cn-hongkong**: China (Hong Kong)'."\n" + .'* **ap-southeast-1**: Singapore'."\n" + ."\n" + .'This parameter takes effect only if **InstanceIds** is left empty. If you leave **InstanceIds** empty, the system obtains data from the region set by **Region**. By default, Region is set to **cn-china**. If you specify **InstanceIds**, **Region** does not take effect and the system obtains data from the region in which the first specified instance resides.****'."\n" + ."\n" + .'> If your instances reside in the regions in the Chinese mainland, set this parameter to **cn-china**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-china', + ], + ], + [ + 'name' => 'User', + 'in' => 'query', + 'schema' => [ + 'description' => 'The account of the database to be queried.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'testUser', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, Successful is returned. If the request failed, an error message that contains information such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Data' => [ + 'title' => 'String', + 'description' => 'The share URL.'."\n", + 'type' => 'string', + 'example' => 'https://hdm.console.aliyun.com/#/queryOptimize?Keywords=&OnlyOptimizedSql=true&Time=1684771200000&Engine=MySQL&InstanceIds=&Rules=&PageNo=1&PageSize=10&OrderBy=count&Asc=false&SqlIds=&dbNames=®ion=cn-china&user=', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": \\"https://hdm.console.aliyun.com/#/queryOptimize****\\"\\n}","errorExample":""},{"type":"xml","example":"<GetQueryOptimizeShareUrlResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n <Data>https://hdm.console.aliyun.com/#/queryOptimize****</Data>\\n</GetQueryOptimizeShareUrlResponse>","errorExample":""}]', + 'title' => 'GetQueryOptimizeShareUrl', + 'description' => '* If you use Alibaba Cloud SDK or Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + ."\n" + .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n" + ."\n" + .'* This operation supports the following database engines:'."\n" + ."\n" + .' * ApsaraDB RDS for MySQL'."\n" + .' * PolarDB for MySQL'."\n" + .' * ApsaraDB RDS for PostgreSQL'."\n", + ], + 'GetErrorRequestSample' => [ + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze8g2am97624****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The node ID.'."\n" + ."\n" + .'> You must specify the node ID if your database instance is a PolarDB for MySQL cluster.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'pi-bp179lg03445l****', + ], + ], + [ + 'name' => 'SqlId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The SQL query ID. You can call the [GetAsyncErrorRequestListByCode](~~410746~~) operation to query the ID of the SQL query for which MySQL error code is returned.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2cd4432556c3dab9d825ba363637****', + ], + ], + [ + 'name' => 'Start', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The start time must be within the storage duration of the SQL Explorer feature of the database instance, and can be up to 90 days earlier than the current time.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1642556990714', + ], + ], + [ + 'name' => 'End', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The end time must be later than the start time. The interval cannot exceed 24 hours.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1642566830000', + ], + ], + [ + 'name' => 'DbName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the database.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'testdb01', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'sqlId' => [ + 'description' => 'The SQL query ID.'."\n", + 'type' => 'string', + 'example' => '2cd4432556c3dab9d825ba363637****', + ], + 'database' => [ + 'description' => 'The database name.'."\n", + 'type' => 'string', + 'example' => 'dbgateway', + ], + 'originHost' => [ + 'description' => 'The IP address of the client that executes the SQL statement.'."\n", + 'type' => 'string', + 'example' => '172.16.1****', + ], + 'tables' => [ + 'description' => 'The table information.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The table name.'."\n", + 'type' => 'string', + 'example' => 'meter_****', + ], + ], + 'instanceId' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'example' => 'rm-2ze8g2am97624****', + ], + 'errorCode' => [ + 'description' => 'The error code that is returned.'."\n", + 'type' => 'string', + 'example' => '1062', + ], + 'user' => [ + 'description' => 'The username of the account that is used to log on to the database.'."\n", + 'type' => 'string', + 'example' => 'dbgat****', + ], + 'sql' => [ + 'description' => 'The SQL statement.'."\n", + 'type' => 'string', + 'example' => 'insert into meter_****', + ], + 'timestamp' => [ + 'description' => 'The time when the SQL query was executed. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1644476100435', + ], + ], + ], + 'example' => '[ { "sqlId": "2cd4432556c3dab9d825ba363637****", "database": "dbgateway", "originHost": "172.16.1****", "tables": [ "meter_****" ], "instanceId": "rm-2ze8g2am97624****", "errorCode": "1062", "user": "dbgat****", "sql": "insert into meter_****\\n ( \\n ****\\n )\\n values (now(), now(), \'bbbc8624-5e19-455a-9714-8466f688****\', \'2022-02-10 14:00:00\', \'{\\"endTime\\":\\"2022-02-10 14:00:00\\",\\"endTimestamp\\":1644472800,\\"startTime\\":\\"2022-02-10 13:00:00\\",\\"startTimestamp\\":1644469200}\', null, null)", "timestamp": 1644476100435 }]', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '7172BECE-588A-5961-8126-C216E16B****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": [\\n {\\n \\"sqlId\\": \\"2cd4432556c3dab9d825ba363637****\\",\\n \\"database\\": \\"dbgateway\\",\\n \\"originHost\\": \\"172.16.1****\\",\\n \\"tables\\": [\\n \\"meter_****\\"\\n ],\\n \\"instanceId\\": \\"rm-2ze8g2am97624****\\",\\n \\"errorCode\\": \\"1062\\",\\n \\"user\\": \\"dbgat****\\",\\n \\"sql\\": \\"insert into meter_****\\",\\n \\"timestamp\\": 1644476100435\\n }\\n ],\\n \\"RequestId\\": \\"7172BECE-588A-5961-8126-C216E16B****\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<GetErrorRequestSampleResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>\\n <sqlId>2cd4432556c3dab9d825ba363637****</sqlId>\\n <database>dbgateway</database>\\n <originHost>172.16.1****</originHost>\\n <tables>meter_****</tables>\\n <instanceId>rm-2ze8g2am97624****</instanceId>\\n <errorCode>1062</errorCode>\\n <user>dbgat****</user>\\n <sql>insert into meter_****</sql>\\n <timestamp>1644476100435</timestamp>\\n </Data>\\n <RequestId>7172BECE-588A-5961-8126-C216E16B****</RequestId>\\n <Success>true</Success>\\n</GetErrorRequestSampleResponse>","errorExample":""}]', + 'title' => 'GetErrorRequestSample', + 'summary' => 'Asynchronously queries information about failed SQL queries in SQL Explorer data. You can query up to 20 failed SQL queries within the specific time range.', + 'description' => '> GetErrorRequestSample is an asynchronous operation. After a request is sent, the complete results are not returned immediately. If the value of **isFinish** is **false** in the response, wait for 1 second and then send a request again. If the value of **isFinish** is **true**, the complete results are returned.'."\n" + ."\n" + .'* This API operation supports only ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters for which Database Autonomy Service (DAS) Enterprise Edition is enabled. For more information, see [Purchase DAS Enterprise Edition](~~163298~~).'."\n" + .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n", + ], + 'GetAsyncErrorRequestStatResult' => [ + 'summary' => 'Asynchronously obtains the number of failed executions of SQL templates based on SQL Explorer data.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREhdmFT57I0', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze8g2am97624****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The node ID.'."\n" + ."\n" + .'> This parameter must be specified for PolarDB for MySQL instances.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'pi-bp179lg03445l****', + ], + ], + [ + 'name' => 'SqlIdList', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the SQL template. Separate multiple SQL IDs with commas (,). You can call the [GetAsyncErrorRequestListByCode](~~410746~~) operation to query the ID of the SQL query for which MySQL error code is returned.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ad78a4e7d3ce81590c9dc2d5f4bc****,0f92feacd92c048b06a16617a633****', + ], + ], + [ + 'name' => 'Start', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The beginning of the time range to query must be within the storage duration of the database instance and can be up to 90 days earlier than the current time.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1642556990714', + ], + ], + [ + 'name' => 'End', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The end time must be later than the start time. The interval between the start time and the end time cannot exceed 24 hours.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1642566830000', + ], + ], + [ + 'name' => 'DbName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the database.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'testdb01', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'fail' => [ + 'description' => 'Indicates whether the request failed. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'isFinish' => [ + 'description' => 'Indicates whether the asynchronous request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'resultId' => [ + 'description' => 'The ID of the asynchronous request.'."\n", + 'type' => 'string', + 'example' => 'async__61f45ee381b2fa4e8a6545e3bee9****', + ], + 'state' => [ + 'description' => 'The state of the asynchronous request. Valid values:'."\n" + ."\n" + .'* **RUNNING**: The asynchronous request is running.'."\n" + .'* **SUCCESS**: The asynchronous request is successful.'."\n" + .'* **FAIL**: The asynchronous request fails.'."\n", + 'type' => 'string', + 'example' => 'SUCCESS', + ], + 'timestamp' => [ + 'description' => 'The time when the asynchronous request was made. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1644558576717', + ], + 'complete' => [ + 'description' => 'Indicates whether the asynchronous request was complete.'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'result' => [ + 'description' => 'The returned data of the asynchronous request.'."\n", + 'type' => 'object', + 'items' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'object', + 'properties' => [ + 'sqlId' => [ + 'name' => 'sqlId', + 'type' => 'string', + 'backendName' => 'sqlId', + 'example' => 'ad78a4e7d3ce81590c9dc2d5f4bc****', + 'description' => 'The SQL ID.'."\n", + ], + 'instanceId' => [ + 'name' => 'instanceId', + 'type' => 'string', + 'backendName' => 'instanceId', + 'example' => 'rm-2ze8g2am97624****', + 'description' => 'The instance ID.'."\n", + ], + 'count' => [ + 'name' => 'count', + 'type' => 'integer', + 'format' => 'int32', + 'backendName' => 'count', + 'description' => 'The number of failed executions.'."\n", + 'example' => '1', + ], + ], + 'description' => 'The returned data of the asynchronous request.'."\n", + ], + 'extendType' => 'true', + ], + 'additionalProperties' => [ + 'type' => 'object', + 'properties' => [ + 'sqlId' => [ + 'type' => 'string', + ], + 'instanceId' => [ + 'type' => 'string', + ], + 'count' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + ], + ], + ], + ], + 'example' => '{ "fail": false, "data": { "ad78a4e7d3ce81590c9dc2d5f4bc****": { "sqlId": "ad78a4e7d3ce81590c9dc2d5f4bc****", "instanceId": "rm-2ze8g2am97624****", "count": 1 }, "0f92feacd92c048b06a16617a633****": { "sqlId": "0f92feacd92c048b06a16617a633****", "instanceId": "rm-2ze8g2am97624****", "count": 2 } }, "resultId": "async__61f45ee381b2fa4e8a6545e3bee9****", "isFinish": true, "state": "SUCCESS", "complete": true, "timestamp": 1644558576717 }', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '3FC3F8EB-3564-5D1A-B187-3B03E5B0****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"fail\\": false,\\n \\"isFinish\\": true,\\n \\"resultId\\": \\"async__61f45ee381b2fa4e8a6545e3bee9****\\",\\n \\"state\\": \\"SUCCESS\\",\\n \\"timestamp\\": 1644558576717,\\n \\"complete\\": true,\\n \\"result\\": {\\n \\"key\\": {\\n \\"sqlId\\": \\"\\",\\n \\"instanceId\\": \\"\\",\\n \\"count\\": 0\\n }\\n }\\n },\\n \\"RequestId\\": \\"3FC3F8EB-3564-5D1A-B187-3B03E5B0****\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<GetAsyncErrorRequestStatResultResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>\\n <fail>false</fail>\\n <isFinish>true</isFinish>\\n <resultId>async__61f45ee381b2fa4e8a6545e3bee9****</resultId>\\n <state>SUCCESS</state>\\n <timestamp>1644558576717</timestamp>\\n <complete>true</complete>\\n <result>\\n <key>\\n <sqlId>ad78a4e7d3ce81590c9dc2d5f4bc****</sqlId>\\n <instanceId>rm-2ze8g2am97624****</instanceId>\\n <count>1</count>\\n </key>\\n </result>\\n </Data>\\n <RequestId>3FC3F8EB-3564-5D1A-B187-3B03E5B0****</RequestId>\\n <Success>true</Success>\\n</GetAsyncErrorRequestStatResultResponse>","errorExample":""}]', + 'title' => 'GetAsyncErrorRequestStatResult', + 'description' => '> GetAsyncErrorRequestStatResult is an asynchronous operation. After a request is sent, the complete results are not returned immediately. If the value of **isFinish** is **false** in the response, wait for 1 second and then send a request again. If the value of **isFinish** is **true**, the complete results are returned.'."\n" + ."\n" + .'* This API operation supports only ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters for which Database Autonomy Service (DAS) Enterprise Edition is enabled. For more information, see [Purchase DAS Enterprise Edition](~~163298~~).'."\n" + .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n", + ], + 'GetAsyncErrorRequestListByCode' => [ + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze8g2am97624****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The node ID.'."\n" + ."\n" + .'> This parameter must be specified if the database instance is a PolarDB for MySQL cluster.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'pi-wz9s658475e58****', + ], + ], + [ + 'name' => 'Start', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The start time must be within the storage duration of the SQL Explorer feature of the database instance, and can be up to 90 days earlier than the current time.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1642556990714', + ], + ], + [ + 'name' => 'End', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The end time must be later than the start time. The interval between the start time and the end time cannot exceed 24 hours.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1642566830000', + ], + ], + [ + 'name' => 'ErrorCode', + 'in' => 'query', + 'schema' => [ + 'description' => 'The error code. You can call the [GetAsyncErrorRequestStatByCode](~~409804~~) operation to query the MySQL error codes that may be generated in the SQL Explorer results of an instance.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1064', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'fail' => [ + 'description' => 'Indicates whether the asynchronous request failed. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'result' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'sqlId' => [ + 'description' => 'SQL ID.', + 'type' => 'string', + 'example' => 'ad78a4e7d3ce81590c9dc2d5f4bc****', + ], + 'instanceId' => [ + 'description' => 'The instance ID', + 'type' => 'string', + 'example' => 'rm-2ze8g2am97624****', + ], + ], + ], + ], + 'resultId' => [ + 'description' => 'The ID of the asynchronous request.'."\n", + 'type' => 'string', + 'example' => 'async__c39d43ece52d35267cc4b92a0c26****', + ], + 'isFinish' => [ + 'description' => 'Indicates whether the asynchronous request was complete. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'state' => [ + 'description' => 'The state of the asynchronous request. Valid values:'."\n" + ."\n" + .'* **RUNNING**'."\n" + .'* **SUCCESS**'."\n" + .'* **FAIL**'."\n", + 'type' => 'string', + 'example' => 'SUCCESS', + ], + 'complete' => [ + 'description' => 'Indicates whether the asynchronous request was complete.'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'timestamp' => [ + 'description' => 'The time when the asynchronous request was made. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1644559407740', + ], + ], + 'example' => '{ "fail": false, "data": [ { "sqlId": "ad78a4e7d3ce81590c9dc2d5f4bc****", "instanceId": "rm-2ze8g2am97624****" }, { "sqlId": "0f92feacd92c048b06a16617a633****", "instanceId": "rm-2ze8g2am97624****" } ], "resultId": "async__c39d43ece52d35267cc4b92a0c26****", "isFinish": true, "state": "SUCCESS", "complete": true, "timestamp": 1644559407740 }', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '9CB97BC4-6479-55D0-B9D0-EA925AFE****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"fail\\": false,\\n \\"result\\": [\\n {\\n \\"sqlId\\": \\"ad78a4e7d3ce81590c9dc2d5f4bc****\\",\\n \\"instanceId\\": \\"rm-2ze8g2am97624****\\"\\n }\\n ],\\n \\"resultId\\": \\"async__c39d43ece52d35267cc4b92a0c26****\\",\\n \\"isFinish\\": true,\\n \\"state\\": \\"SUCCESS\\",\\n \\"complete\\": true,\\n \\"timestamp\\": 1644559407740\\n },\\n \\"RequestId\\": \\"9CB97BC4-6479-55D0-B9D0-EA925AFE****\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<GetAsyncErrorRequestListByCodeResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>\\n <fail>false</fail>\\n <result>\\n <sqlId>ad78a4e7d3ce81590c9dc2d5f4bc****</sqlId>\\n <instanceId>rm-2ze8g2am97624****</instanceId>\\n </result>\\n <resultId>async__c39d43ece52d35267cc4b92a0c26****</resultId>\\n <isFinish>true</isFinish>\\n <state>SUCCESS</state>\\n <complete>true</complete>\\n <timestamp>1644559407740</timestamp>\\n </Data>\\n <RequestId>9CB97BC4-6479-55D0-B9D0-EA925AFE****</RequestId>\\n <Success>true</Success>\\n</GetAsyncErrorRequestListByCodeResponse>","errorExample":""}]', + 'title' => 'GetAsyncErrorRequestListByCode', + 'summary' => 'Asynchronously queries the IDs of SQL statements that generate a MySQL error code in the SQL Explorer results of a database instance.', + 'description' => '> GetAsyncErrorRequestListByCode is an asynchronous operation. After a request is sent, the complete results are not returned immediately. If the value of the **isFinish** parameter is **false** in the response, wait for 1 second and then send a request again. If the value of the **isFinish** parameter is **true**, the complete results are returned.'."\n" + ."\n" + .'* This API operation supports only ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters for which Database Autonomy Service (DAS) Enterprise Edition is enabled. For more information, see [Enable and manage DAS Economy Edition and DAS Enterprise Edition](~~163298~~).'."\n" + .'* If you use an SDK to call the API operations of DAS, you must set the region ID to cn-shanghai.'."\n" + .'* When you call this operation, the value of the SqlId parameter changes due to the optimization of the SQL template algorithm starting from September 1, 2024. For more information, see [\\[Notice\\] Optimization of the SQL template algorithm](~~2845725~~).', + ], + 'GetAsyncErrorRequestStatByCode' => [ + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze8g2am97624****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The node ID.'."\n" + ."\n" + .'> This parameter must be specified for PolarDB for MySQL clusters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'pi-wz9s658475e58****', + ], + ], + [ + 'name' => 'Start', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The start time must be within the storage duration of the SQL Explorer feature of the database instance and can be up to 90 days earlier than the current time.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1642556990714', + ], + ], + [ + 'name' => 'End', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The end time must be later than the start time. The interval between the start time and the end time cannot exceed 24 hours.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1642566830000', + ], + ], + [ + 'name' => 'DbName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of a database.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'testdb01', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'fail' => [ + 'description' => 'Indicates whether the asynchronous request failed. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'isFinish' => [ + 'description' => 'Indicates whether the asynchronous request was complete. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'resultId' => [ + 'description' => 'The ID of the asynchronous request.'."\n", + 'type' => 'string', + 'example' => 'async__fcd7c35788e62324622c3b4a03de****', + ], + 'state' => [ + 'description' => 'The state of the asynchronous request. Valid values:'."\n" + ."\n" + .'* **RUNNING**'."\n" + .'* **SUCCESS**'."\n" + .'* **FAIL**'."\n", + 'type' => 'string', + 'example' => 'SUCCESS', + ], + 'timestamp' => [ + 'description' => 'The time when the asynchronous request was made. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1644560866961', + ], + 'complete' => [ + 'description' => 'Indicates whether the asynchronous request was complete.'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'result' => [ + 'description' => 'The number of SQL queries corresponding to the error code.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'instanceId' => [ + 'description' => 'The instance ID.', + 'type' => 'string', + 'example' => 'rm-2ze8g2am97624****', + ], + 'errorCode' => [ + 'description' => 'The error code returned if the request failed.', + 'type' => 'string', + 'example' => '1062', + ], + 'count' => [ + 'description' => 'The number of SQL queries corresponding to the error code.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + ], + ], + ], + ], + 'example' => '{ "fail": false, "data": [ { "instanceId": "rm-2ze8g2am97624****", "count": 1, "errorCode": "1062" }, { "instanceId": "rm-2ze8g2am97624****", "count": 2, "errorCode": "1064" } ], "resultId": "async__fcd7c35788e62324622c3b4a03de****", "isFinish": true, "state": "SUCCESS", "complete": true, "timestamp": 1644560866961 }', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '840F51F7-9C01-538D-94F6-AE712905****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"fail\\": false,\\n \\"isFinish\\": true,\\n \\"resultId\\": \\"async__fcd7c35788e62324622c3b4a03de****\\",\\n \\"state\\": \\"SUCCESS\\",\\n \\"timestamp\\": 1644560866961,\\n \\"complete\\": true,\\n \\"result\\": [\\n {\\n \\"instanceId\\": \\"rm-2ze8g2am97624****\\",\\n \\"errorCode\\": \\"1062\\",\\n \\"count\\": 1\\n }\\n ]\\n },\\n \\"RequestId\\": \\"840F51F7-9C01-538D-94F6-AE712905****\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<GetAsyncErrorRequestStatByCodeResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>\\n <fail>false</fail>\\n <isFinish>true</isFinish>\\n <resultId>async__fcd7c35788e62324622c3b4a03de****</resultId>\\n <state>SUCCESS</state>\\n <timestamp>1644560866961</timestamp>\\n <complete>true</complete>\\n <result>\\n <instanceId>rm-2ze8g2am97624****</instanceId>\\n <errorCode>1062</errorCode>\\n <count>1</count>\\n </result>\\n </Data>\\n <RequestId>840F51F7-9C01-538D-94F6-AE712905****</RequestId>\\n <Success>true</Success>\\n</GetAsyncErrorRequestStatByCodeResponse>","errorExample":""}]', + 'title' => 'GetAsyncErrorRequestStatByCode', + 'summary' => 'Asynchronously queries the MySQL error codes in SQL Explorer data and the number of SQL queries corresponding to each error code.', + 'description' => '> GetAsyncErrorRequestStatByCode is an asynchronous operation After a request is sent, the complete results are not returned immediately. If the value of **isFinish** is **false** in the response, wait for 1 second and then send a request again. If the value of **isFinish** is **true**, the complete results are returned.'."\n" + ."\n" + .'* This API operation supports only ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters for which Database Autonomy Service (DAS) Enterprise Edition is enabled. For more information, see [Purchase DAS Enterprise Edition](~~163298~~).'."\n" + .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n", + ], + 'GetFullRequestOriginStatByInstanceId' => [ + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + 'http', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'UserId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the Alibaba Cloud account that is used to create the database instance.'."\n" + ."\n" + .'> This parameter is optional. The system can automatically obtain the account ID based on the value of InstanceId when you call this operation.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '196278346919****', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze8g2am97624****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The node ID.'."\n" + ."\n" + .'> This parameter must be specified if the database instance is a PolarDB for MySQL cluster.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'pi-bp12v7243x012****', + ], + ], + [ + 'name' => 'Start', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The start time must be within the storage duration of the SQL Explorer of the database instance, and can be up to 90 days earlier than the current time.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1644716649000', + ], + ], + [ + 'name' => 'End', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The end time must be later than the start time. The interval between the start time and the end time cannot exceed 24 hours.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1644803409000', + ], + ], + [ + 'name' => 'OrderBy', + 'in' => 'query', + 'schema' => [ + 'description' => 'The field by which the results to be returned are sorted. Default value: **count**. Valid values:'."\n" + ."\n" + .'* **count**: the number of executions.'."\n" + .'* **avgRt**: the average execution duration.'."\n" + .'* **rtRate**: the execution duration percentage.'."\n" + .'* **rowsExamined**: the total number of scanned rows.'."\n" + .'* **avgRowsExamined**: the average number of scanned rows.'."\n" + .'* **avgRowsReturned**: the average number of returned rows.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'count', + ], + ], + [ + 'name' => 'Asc', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to sort the results in ascending order. By default, the results are not sorted in ascending order.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'Disabled', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 20.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '20', + ], + ], + [ + 'name' => 'SqlType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the SQL statement. Valid values: **SELECT**, **INSERT**, **UPDATE**, **DELETE**, **MERGE**, **ALTER**, **CREATEINDEX**, **DROPINDEX**, **CREATE**, **DROP**, **SET**, **DESC**, **REPLACE**, **CALL**, **BEGIN**, **DESCRIBE**, **ROLLBACK**, **FLUSH**, **USE**, **SHOW**, **START**, **COMMIT**, and **RENAME**.'."\n" + ."\n" + .'> If the database instance is an ApsaraDB RDS for MySQL instance, a PolarDB for MySQL instance, or a PolarDB-X 2.0 instance, statistics can be collected based on the SQL statement type.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'SELECT', + ], + ], + [ + 'name' => 'Role', + 'in' => 'query', + 'schema' => [ + 'description' => 'The role of the PolarDB-X 2.0 node. Valid values:'."\n" + ."\n" + .'* **polarx_cn**: compute node.'."\n" + .'* **polarx_en**: data node.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'polarx_cn', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '7172BECE-588A-5961-8126-C216E16B****', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'List' => [ + 'description' => 'The details of the full request data.', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The IP address of the client that executes the SQL statement.', + 'type' => 'string', + 'example' => '172.26.6****', + ], + 'AvgFetchRows' => [ + 'description' => 'The average number of rows that are fetched from data nodes by compute nodes on the PolarDB-X 2.0 instance.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'AvgLockWaitTime' => [ + 'description' => 'The average lock wait duration. Unit: seconds.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0.00009589874265269765', + ], + 'AvgLogicalRead' => [ + 'description' => 'The average number of logical reads.', + 'type' => 'number', + 'format' => 'double', + 'example' => '654.4470327860251', + ], + 'AvgPhysicalAsyncRead' => [ + 'description' => 'The average number of physical asynchronous reads.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'AvgPhysicalSyncRead' => [ + 'description' => 'The average number of physical synchronous reads.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0', + ], + 'AvgRows' => [ + 'description' => 'The average number of rows.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'AvgExaminedRows' => [ + 'description' => 'The average number of scanned rows.'."\n" + ."\n" + .'> This parameter is returned only for ApsaraDB RDS for MySQL, ApsaraDB RDS for PostgreSQL, and PolarDB for MySQL databases.', + 'type' => 'number', + 'format' => 'double', + 'example' => '10000', + ], + 'AvgReturnedRows' => [ + 'description' => 'The average number of returned rows.', + 'type' => 'number', + 'format' => 'double', + 'example' => '10000', + ], + 'AvgUpdatedRows' => [ + 'description' => 'The average number of updated rows.'."\n" + ."\n" + .'> This parameter is returned only for ApsaraDB RDS for MySQL and PolarDB-X 2.0 databases.', + 'type' => 'number', + 'format' => 'double', + 'example' => '10000', + ], + 'AvgRt' => [ + 'description' => 'The average execution duration.', + 'type' => 'number', + 'format' => 'double', + 'example' => '2.499', + ], + 'AvgSqlCount' => [ + 'description' => 'The average number of SQL statements.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10000', + ], + 'Count' => [ + 'description' => 'The total number of executions.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100000', + ], + 'CountRate' => [ + 'description' => 'The percentage of the total number of executions.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0.0586', + ], + 'Database' => [ + 'description' => 'The name of the database.', + 'type' => 'string', + 'example' => 'dbtest01', + ], + 'ErrorCount' => [ + 'description' => 'The number of failed executions.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'FetchRows' => [ + 'description' => 'The number of rows that are fetched from data nodes by compute nodes on the PolarDB-X 2.0 instance.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Ip' => [ + 'description' => 'The network address of the database instance.', + 'type' => 'string', + 'example' => 'rm-uf6dyi58dm6****.mysql.rds.aliy****.com', + ], + 'LockWaitTime' => [ + 'description' => 'The lock wait duration. Unit: seconds.', + 'type' => 'number', + 'format' => 'double', + 'example' => '1089.4177720290281', + ], + 'LogicalRead' => [ + 'description' => 'The number of logical reads.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '7.434573266E9', + ], + 'OriginHost' => [ + 'description' => 'The IP address of the client that executes the SQL statement.', + 'type' => 'string', + 'example' => '172.26.6****', + ], + 'PhysicalAsyncRead' => [ + 'description' => 'The number of physical asynchronous reads.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'PhysicalSyncRead' => [ + 'description' => 'The number of physical synchronous reads.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'Port' => [ + 'description' => 'The port number that is used to connect to the database instance.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '3306', + ], + 'Rows' => [ + 'description' => 'The total number of rows updated or returned by the compute nodes of the PolarDB-X 2.0 instance.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'ExaminedRows' => [ + 'description' => 'The total number of scanned rows.'."\n" + ."\n" + .'> This parameter is returned only for ApsaraDB RDS for MySQL, ApsaraDB RDS for PostgreSQL, and PolarDB for MySQL databases.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10000', + ], + 'RtGreaterThanOneSecondCount' => [ + 'description' => 'The number of SQL statements that take longer than 1 second to execute.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'RtRate' => [ + 'description' => 'The execution duration percentage.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0.1384', + ], + 'SqlCount' => [ + 'description' => 'The number of SQL statements.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'SumUpdatedRows' => [ + 'description' => 'The total number of updated rows.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Version' => [ + 'description' => 'The version number.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'VpcId' => [ + 'description' => 'The virtual private cloud (VPC) ID.', + 'type' => 'string', + 'example' => 'vpc-2zentqj1sk4qmolci****', + ], + ], + ], + ], + 'Total' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + ], + ], + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"7172BECE-588A-5961-8126-C216E16B****\\",\\n \\"Data\\": {\\n \\"List\\": [\\n {\\n \\"Key\\": \\"172.26.6****\\",\\n \\"AvgFetchRows\\": 0,\\n \\"AvgLockWaitTime\\": 0.00009589874265269765,\\n \\"AvgLogicalRead\\": 654.4470327860251,\\n \\"AvgPhysicalAsyncRead\\": 0,\\n \\"AvgPhysicalSyncRead\\": 0,\\n \\"AvgRows\\": 0,\\n \\"AvgExaminedRows\\": 10000,\\n \\"AvgReturnedRows\\": 10000,\\n \\"AvgUpdatedRows\\": 10000,\\n \\"AvgRt\\": 2.499,\\n \\"AvgSqlCount\\": 10000,\\n \\"Count\\": 100000,\\n \\"CountRate\\": 0.0586,\\n \\"Database\\": \\"dbtest01\\",\\n \\"ErrorCount\\": 1,\\n \\"FetchRows\\": 200,\\n \\"Ip\\": \\"rm-uf6dyi58dm6****.mysql.rds.aliy****.com\\",\\n \\"LockWaitTime\\": 1089.4177720290281,\\n \\"LogicalRead\\": 7434573266,\\n \\"OriginHost\\": \\"172.26.6****\\",\\n \\"PhysicalAsyncRead\\": 0,\\n \\"PhysicalSyncRead\\": 0,\\n \\"Port\\": 3306,\\n \\"Rows\\": 0,\\n \\"ExaminedRows\\": 10000,\\n \\"RtGreaterThanOneSecondCount\\": 2,\\n \\"RtRate\\": 0.1384,\\n \\"SqlCount\\": 200,\\n \\"SumUpdatedRows\\": 200,\\n \\"Version\\": 1,\\n \\"VpcId\\": \\"vpc-2zentqj1sk4qmolci****\\"\\n }\\n ],\\n \\"Total\\": 1\\n },\\n \\"Code\\": 200,\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<GetFullRequestOriginStatByInstanceIdResponse>\\n <Message>Successful</Message>\\n <RequestId>7172BECE-588A-5961-8126-C216E16B****</RequestId>\\n <Data>\\n <List>\\n <Key>172.26.6****</Key>\\n <AvgFetchRows>0</AvgFetchRows>\\n <AvgLockWaitTime>0.00009589874265269765</AvgLockWaitTime>\\n <AvgLogicalRead>654.4470327860251</AvgLogicalRead>\\n <AvgPhysicalAsyncRead>0</AvgPhysicalAsyncRead>\\n <AvgPhysicalSyncRead>0</AvgPhysicalSyncRead>\\n <AvgRows>0</AvgRows>\\n <AvgExaminedRows>10000</AvgExaminedRows>\\n <AvgReturnedRows>10000</AvgReturnedRows>\\n <AvgUpdatedRows>10000</AvgUpdatedRows>\\n <AvgRt>2.499</AvgRt>\\n <AvgSqlCount>10000</AvgSqlCount>\\n <Count>100000</Count>\\n <CountRate>0.0586</CountRate>\\n <Database>dbtest01</Database>\\n <ErrorCount>1</ErrorCount>\\n <FetchRows>200</FetchRows>\\n <Ip>rm-uf6dyi58dm6****.mysql.rds.aliy****.com</Ip>\\n <LockWaitTime>1089.4177720290281</LockWaitTime>\\n <OriginHost>172.26.6****</OriginHost>\\n <PhysicalAsyncRead>0</PhysicalAsyncRead>\\n <PhysicalSyncRead>0</PhysicalSyncRead>\\n <Port>3306</Port>\\n <Rows>0</Rows>\\n <ExaminedRows>10000</ExaminedRows>\\n <RtGreaterThanOneSecondCount>2</RtGreaterThanOneSecondCount>\\n <RtRate>0.1384</RtRate>\\n <SqlCount>200</SqlCount>\\n <SumUpdatedRows>200</SumUpdatedRows>\\n <Version>1</Version>\\n <VpcId>vpc-2zentqj1sk4qmolci****</VpcId>\\n </List>\\n <Total>1</Total>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</GetFullRequestOriginStatByInstanceIdResponse>","errorExample":""}]', + 'title' => 'GetFullRequestOriginStatByInstanceId', + 'summary' => 'Collects the full request statistics in the SQL Explorer results of a database instance by access source.', + 'description' => 'The SQL Explorer feature allows you to check the health status of SQL statements and troubleshoot performance issues. For more information, see [SQL Explorer](~~204096~~).'."\n" + ."\n" + .'* For more information about database instances that support this feature, see [Overview](~~190912~~).'."\n" + .'* If you use an SDK to call API operations of Database Autonomy Service (DAS), you must set the region ID to cn-shanghai.'."\n", + ], + 'GetFullRequestStatResultByInstanceId' => [ + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + 'http', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'UserId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the Alibaba Cloud account that was used to create the database instance.'."\n" + ."\n" + .'> This parameter is optional. The system can automatically obtain the Alibaba Cloud account ID based on the value of InstanceId when you call the GetFullRequestOriginStatByInstanceId operation.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '196278346919****', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze8g2am97624****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The node ID.'."\n" + ."\n" + .'> You must specify the node ID if your database instance is a PolarDB for MySQL cluster.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'pi-bp12v7243x012****', + ], + ], + [ + 'name' => 'SqlId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The SQL ID.'."\n" + ."\n" + .'> If this parameter is specified, the full request statistics of the specified SQL query are collected. If this parameter is left empty, the full request statistics of the entire database instance are collected.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'd71f82be1eef72bd105128204d2e****', + ], + ], + [ + 'name' => 'OriginHost', + 'in' => 'query', + 'schema' => [ + 'description' => 'The IP address of the client that executes the SQL statement.'."\n" + ."\n" + .'> This parameter is optional. If this parameter is specified, the full request statistics of the specified IP address are collected. If this parameter is left empty, the full request statistics of the entire database instance are collected.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '172.26.XX.XXX', + ], + ], + [ + 'name' => 'Keyword', + 'in' => 'query', + 'schema' => [ + 'description' => 'The keywords that are used for query.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'dbtest01', + ], + ], + [ + 'name' => 'Start', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The start time can be up to 90 days earlier than the current time.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1645581813000', + ], + ], + [ + 'name' => 'End', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The end time must be later than the start time. The interval cannot exceed one day.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1645668213000', + ], + ], + [ + 'name' => 'OrderBy', + 'in' => 'query', + 'schema' => [ + 'description' => 'The field by which to sort the returned entries. Default value: **count**. Valid values:'."\n" + ."\n" + .'* **count**: the number of executions.'."\n" + .'* **avgRt**: the average execution duration.'."\n" + .'* **rtRate**: the execution duration percentage.'."\n" + .'* **rowsExamined**: the total number of scanned rows.'."\n" + .'* **avgRowsExamined**: the average number of scanned rows.'."\n" + .'* **avgRowsReturned**: the average number of returned rows.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'count', + ], + ], + [ + 'name' => 'Asc', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to sort the results in ascending order. By default, the results are not sorted in ascending order.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'Disabled', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 20.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '20', + ], + ], + [ + 'name' => 'SqlType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the SQL statement. Valid values: **SELECT**, **INSERT**, **UPDATE**, **DELETE**, **LOGIN**, **LOGOUT**, **MERGE**, **ALTER**, **CREATEINDEX**, **DROPINDEX**, **CREATE**, **DROP**, **SET**, **DESC**, **REPLACE**, **CALL**, **BEGIN**, **DESCRIBE**, **ROLLBACK**, **FLUSH**, **USE**, **SHOW**, **START**, **COMMIT**, and **RENAME**.'."\n" + ."\n" + .'> If your database instance is an ApsaraDB RDS for MySQL instance, a PolarDB for MySQL cluster, or a PolarDB-X 2.0 instance, the statistics can be collected based on the SQL statement type.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'SELECT', + ], + ], + [ + 'name' => 'DbName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the database.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'dbtest01', + ], + ], + [ + 'name' => 'Role', + 'in' => 'query', + 'schema' => [ + 'description' => 'The role of the node in the PolarDB-X 2.0 instance. Valid values:'."\n" + ."\n" + .'* **polarx_cn**: compute node.'."\n" + .'* **polarx_dn**: data node.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'polarx_cn', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message that contains information such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '7172BECE-588A-5961-8126-C216E16B****', + ], + 'Data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'Result' => [ + 'description' => 'The returned full request data.'."\n", + 'type' => 'object', + 'properties' => [ + 'List' => [ + 'description' => 'The full request data.', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'SqlId' => [ + 'description' => 'The SQL ID.', + 'type' => 'string', + 'example' => 'd71f82be1eef72bd105128204d2e****', + ], + 'AvgFetchRows' => [ + 'description' => 'The average number of rows that are fetched by compute nodes from data nodes on the PolarDB-X 2.0 instance.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'AvgLockWaitTime' => [ + 'description' => 'The average lock wait latency. Unit: seconds.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0.00009589874265269765', + ], + 'AvgLogicalRead' => [ + 'description' => 'The average number of logical reads.', + 'type' => 'number', + 'format' => 'double', + 'example' => '654.4470327860251', + ], + 'AvgPhysicalAsyncRead' => [ + 'description' => 'The average number of physical asynchronous reads.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'AvgPhysicalSyncRead' => [ + 'description' => 'The average number of physical synchronous reads.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'AvgExaminedRows' => [ + 'description' => 'The average number of scanned rows.'."\n" + ."\n" + .'> This parameter is returned only for ApsaraDB RDS for MySQL, ApsaraDB RDS for PostgreSQL, and PolarDB for MySQL databases.', + 'type' => 'number', + 'format' => 'double', + 'example' => '10000', + ], + 'AvgReturnedRows' => [ + 'description' => 'The average number of returned rows.', + 'type' => 'number', + 'format' => 'double', + 'example' => '10000', + ], + 'AvgUpdatedRows' => [ + 'description' => 'The average number of updated rows.'."\n" + ."\n" + .' > This parameter is returned only for ApsaraDB RDS for MySQL and PolarDB-X 2.0 databases.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10000', + ], + 'AvgRt' => [ + 'description' => 'The average execution duration.', + 'type' => 'number', + 'format' => 'double', + 'example' => '2.499', + ], + 'AvgSqlCount' => [ + 'description' => 'The average number of SQL statements.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10000', + ], + 'Count' => [ + 'description' => 'The total number of executions.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100000', + ], + 'CountRate' => [ + 'description' => 'The percentage of the total number of executions.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0.0586', + ], + 'Database' => [ + 'description' => 'The name of the database.', + 'type' => 'string', + 'example' => 'dbtest01', + ], + 'ErrorCount' => [ + 'description' => 'The number of failed executions.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'FetchRows' => [ + 'description' => 'The number of rows that are fetched by compute nodes from data nodes on the PolarDB-X 2.0 instance.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'Ip' => [ + 'description' => 'The IP address of the database instance.', + 'type' => 'string', + 'example' => 'rm-uf6dyi58dm6****.mysql.rds.aliy****.com', + ], + 'LockWaitTime' => [ + 'description' => 'The lock wait latency. Unit: seconds.', + 'type' => 'number', + 'format' => 'double', + 'example' => '1089.4177720290281', + ], + 'LogicalRead' => [ + 'description' => 'The number of logical reads.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '7.434573266E9', + ], + 'PhysicalAsyncRead' => [ + 'description' => 'The number of physical asynchronous reads.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'PhysicalSyncRead' => [ + 'description' => 'The number of physical synchronous reads.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'Port' => [ + 'description' => 'The port number that is used to connect to the database instance.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '3306', + ], + 'Psql' => [ + 'description' => 'The SQL template.', + 'type' => 'string', + 'example' => 'select * from dbtest01 where ****', + ], + 'Rows' => [ + 'description' => 'The total number of rows updated or returned by the compute nodes of the PolarDB-X 2.0 instance.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'ExaminedRows' => [ + 'description' => 'The total number of scanned rows.'."\n" + ."\n" + .'> This parameter is returned only for ApsaraDB RDS for MySQL, ApsaraDB RDS for PostgreSQL, and PolarDB for MySQL databases.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10000', + ], + 'RtGreaterThanOneSecondCount' => [ + 'description' => 'The number of SQL statements that take longer than 1 second to execute.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + 'RtRate' => [ + 'description' => 'The execution duration percentage.', + 'type' => 'number', + 'format' => 'double', + 'example' => '2.499', + ], + 'SqlCount' => [ + 'description' => 'The number of SQL statements.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'SumUpdatedRows' => [ + 'description' => 'The total number of updated rows.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + ], + 'Tables' => [ + 'description' => 'The names of tables in the database.', + 'type' => 'array', + 'items' => [ + 'description' => 'The names of tables in the database.', + 'type' => 'string', + 'example' => 'tabletest01,tabletest02', + ], + ], + 'Version' => [ + 'description' => 'The version number.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'VpcId' => [ + 'description' => 'The virtual private cloud (VPC) ID.', + 'type' => 'string', + 'example' => 'vpc-2zentqj1sk4qmolci****', + ], + ], + ], + ], + 'Total' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + ], + ], + 'Fail' => [ + 'description' => 'Indicates whether the asynchronous request failed. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'IsFinish' => [ + 'description' => 'Indicates whether the asynchronous request was complete. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'ResultId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '9CB97BC4-6479-55D0-B9D0-EA925AFE****', + ], + 'State' => [ + 'description' => 'The state of the asynchronous request. Valid values:'."\n" + ."\n" + .'* **RUNNING**'."\n" + .'* **SUCCESS**'."\n" + .'* **FAIL**'."\n", + 'type' => 'string', + 'example' => 'SUCCESS', + ], + 'Timestamp' => [ + 'description' => 'The time when the asynchronous request was sent. The value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1645668213000', + ], + ], + ], + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"7172BECE-588A-5961-8126-C216E16B****\\",\\n \\"Data\\": {\\n \\"Result\\": {\\n \\"List\\": [\\n {\\n \\"SqlId\\": \\"d71f82be1eef72bd105128204d2e****\\",\\n \\"AvgFetchRows\\": 0,\\n \\"AvgLockWaitTime\\": 0.00009589874265269765,\\n \\"AvgLogicalRead\\": 654.4470327860251,\\n \\"AvgPhysicalAsyncRead\\": 0,\\n \\"AvgPhysicalSyncRead\\": 0,\\n \\"AvgExaminedRows\\": 10000,\\n \\"AvgReturnedRows\\": 10000,\\n \\"AvgUpdatedRows\\": 10000,\\n \\"AvgRt\\": 2.499,\\n \\"AvgSqlCount\\": 10000,\\n \\"Count\\": 100000,\\n \\"CountRate\\": 0.0586,\\n \\"Database\\": \\"dbtest01\\",\\n \\"ErrorCount\\": 1,\\n \\"FetchRows\\": 0,\\n \\"Ip\\": \\"rm-uf6dyi58dm6****.mysql.rds.aliy****.com\\",\\n \\"LockWaitTime\\": 1089.4177720290281,\\n \\"LogicalRead\\": 7434573266,\\n \\"PhysicalAsyncRead\\": 0,\\n \\"PhysicalSyncRead\\": 0,\\n \\"Port\\": 3306,\\n \\"Psql\\": \\"select * from dbtest01 where ****\\",\\n \\"Rows\\": 0,\\n \\"ExaminedRows\\": 10000,\\n \\"RtGreaterThanOneSecondCount\\": 20,\\n \\"RtRate\\": 2.499,\\n \\"SqlCount\\": 200,\\n \\"SumUpdatedRows\\": 100,\\n \\"Tables\\": [\\n \\"tabletest01,tabletest02\\"\\n ],\\n \\"Version\\": 1,\\n \\"VpcId\\": \\"vpc-2zentqj1sk4qmolci****\\"\\n }\\n ],\\n \\"Total\\": 1\\n },\\n \\"Fail\\": false,\\n \\"IsFinish\\": true,\\n \\"ResultId\\": \\"9CB97BC4-6479-55D0-B9D0-EA925AFE****\\",\\n \\"State\\": \\"SUCCESS\\",\\n \\"Timestamp\\": 1645668213000\\n },\\n \\"Code\\": 200,\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<GetFullRequestStatResultByInstanceIdResponse>\\n <Message>Successful</Message>\\n <RequestId>7172BECE-588A-5961-8126-C216E16B****</RequestId>\\n <Data>\\n <Result>\\n <List>\\n <SqlId>d71f82be1eef72bd105128204d2e****</SqlId>\\n <AvgFetchRows>0</AvgFetchRows>\\n <AvgLockWaitTime>0.00009589874265269765</AvgLockWaitTime>\\n <AvgLogicalRead>654.4470327860251</AvgLogicalRead>\\n <AvgPhysicalAsyncRead>0</AvgPhysicalAsyncRead>\\n <AvgPhysicalSyncRead>0</AvgPhysicalSyncRead>\\n <AvgExaminedRows>10000</AvgExaminedRows>\\n <AvgReturnedRows>10000</AvgReturnedRows>\\n <AvgUpdatedRows>10000</AvgUpdatedRows>\\n <AvgRt>2.499</AvgRt>\\n <AvgSqlCount>10000</AvgSqlCount>\\n <Count>100000</Count>\\n <CountRate>0.0586</CountRate>\\n <Database>dbtest01</Database>\\n <ErrorCount>1</ErrorCount>\\n <FetchRows>0</FetchRows>\\n <Ip>rm-uf6dyi58dm6****.mysql.rds.aliy****.com</Ip>\\n <LockWaitTime>1089.4177720290281</LockWaitTime>\\n <PhysicalAsyncRead>0</PhysicalAsyncRead>\\n <PhysicalSyncRead>0</PhysicalSyncRead>\\n <Port>3306</Port>\\n <Psql>select * from dbtest01 where ****</Psql>\\n <Rows>0</Rows>\\n <ExaminedRows>10000</ExaminedRows>\\n <RtGreaterThanOneSecondCount>20</RtGreaterThanOneSecondCount>\\n <RtRate>2.499</RtRate>\\n <SqlCount>200</SqlCount>\\n <SumUpdatedRows>100</SumUpdatedRows>\\n <Tables>tabletest01,tabletest02</Tables>\\n <Version>1</Version>\\n <VpcId>vpc-2zentqj1sk4qmolci****</VpcId>\\n </List>\\n <Total>1</Total>\\n </Result>\\n <Fail>false</Fail>\\n <IsFinish>true</IsFinish>\\n <ResultId>9CB97BC4-6479-55D0-B9D0-EA925AFE****</ResultId>\\n <State>SUCCESS</State>\\n <Timestamp>1645668213000</Timestamp>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</GetFullRequestStatResultByInstanceIdResponse>","errorExample":""}]', + 'title' => 'GetFullRequestStatResultByInstanceId', + 'summary' => 'Asynchronously collects the full request statistics in the SQL Explorer results of a database instance by SQL ID.', + 'description' => '> GetFullRequestStatResultByInstanceId is an asynchronous operation. After a request is sent, the complete results are not returned immediately. If the value of the isFinish parameter is **false** in the response, wait for 1 second and then send a request again. If the value of the isFinish parameter is **true**, the complete results are returned.'."\n" + ."\n" + .'The SQL Explorer feature allows you to check the health status of SQL statements and troubleshoot performance issues. For more information, see [SQL Explorer](~~204096~~).'."\n" + ."\n" + .'* For more information about database instances that support this feature, see [Overview of DAS Enterprise Edition](~~190912~~).'."\n" + .'* If you use an SDK to call the API operations of Database Autonomy Service (DAS), you must set the region ID to cn-shanghai.'."\n" + .'* When you call this operation, the value of the SqlId parameter changes due to the optimization of the SQL template algorithm starting from September 1, 2024. For more information, see [\\[Notice\\] Optimization of the SQL template algorithm](~~2845725~~).'."\n", + ], + 'GetFullRequestSampleByInstanceId' => [ + 'summary' => 'Queries sample SQL statements in the SQL Explorer data of a database instance by SQL ID. You can query up to 20 sample SQL statements.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREhdmFT57I0', + ], + ], + 'parameters' => [ + [ + 'name' => 'UserId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the Alibaba Cloud account that is used to create the database instance.'."\n" + ."\n" + .'> This parameter is optional. The system can automatically obtain the account ID based on the value of InstanceId when you call this operation.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '196278346919****', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze8g2am97624****', + ], + ], + [ + 'name' => 'SqlId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The SQL statement ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '651b56fe9418d48edb8fdf0980ec****', + ], + ], + [ + 'name' => 'Start', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The start time must be within the storage duration of the SQL Explorer feature of the database instance, and can be up to 90 days earlier than the current time.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1660097421000', + ], + ], + [ + 'name' => 'End', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The end of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The end time must be later than the start time. The interval between the start time and the end time must be equal to or greater than 1 hour.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1660104621000', + ], + ], + [ + 'name' => 'Role', + 'in' => 'query', + 'schema' => [ + 'description' => 'The role of the PolarDB-X 2.0 node. Valid values:'."\n" + ."\n" + .'* **polarx_cn**: compute node.'."\n" + .'* **polarx_en**: data node.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'polarx_cn', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message that contains information such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '0A74B755-98B7-59DB-8724-1321B394****', + ], + 'Data' => [ + 'description' => 'The returned data.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Timestamp' => [ + 'description' => 'The time when the SQL statement was executed. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1660100753556', + ], + 'SqlId' => [ + 'description' => 'The SQL statement ID.', + 'type' => 'string', + 'example' => '651b56fe9418d48edb8fdf0980ec****', + ], + 'Sql' => [ + 'description' => 'The sample SQL statement.', + 'type' => 'string', + 'example' => 'select * from testdb01 where ****', + ], + 'Database' => [ + 'description' => 'The name of the database.', + 'type' => 'string', + 'example' => 'dbtest', + ], + 'Rt' => [ + 'description' => 'The amount of time consumed to execute the SQL statement. Unit: seconds.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0.409789', + ], + 'User' => [ + 'description' => 'The name of the user who executes the SQL statement.', + 'type' => 'string', + 'example' => 'testuser', + ], + 'LockWaitTime' => [ + 'description' => 'The lock wait duration. Unit: seconds.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0.0137', + ], + 'LogicalRead' => [ + 'description' => 'The number of logical reads.', + 'type' => 'number', + 'format' => 'double', + 'example' => '165848', + ], + 'PhysicalSyncRead' => [ + 'description' => 'The number of physical synchronous reads.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0', + ], + 'PhysicalAsyncRead' => [ + 'description' => 'The number of physical asynchronous reads.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0', + ], + 'RowsExamined' => [ + 'title' => '扫描行数', + 'description' => 'The total number of scanned rows.'."\n" + ."\n" + .'> This parameter is returned only for ApsaraDB RDS for MySQL, ApsaraDB RDS for PostgreSQL, and PolarDB for MySQL databases.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2048576', + ], + 'RowsReturned' => [ + 'description' => 'The number of rows returned by the SQL statement.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '14', + ], + 'OriginHost' => [ + 'description' => 'The source IP address.', + 'type' => 'string', + 'example' => '172.17.XX.XX', + ], + 'ScanRows' => [ + 'title' => '扫描行数, RDS MySQL DescribeTemplateSqlDetail', + 'description' => 'The number of scanned rows.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'UpdateRows' => [ + 'title' => '更新行数, RDS MySQL DescribeTemplateSqlDetail', + 'description' => 'The number of updated rows.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'SqlType' => [ + 'description' => 'The type of the SQL statement. Valid values: **SELECT**, **INSERT**, **UPDATE**, **DELETE**, **LOGIN**, **LOGOUT**, **MERGE**, **ALTER**, **CREATEINDEX**, **DROPINDEX**, **CREATE**, **DROP**, **SET**, **DESC**, **REPLACE**, **CALL**, **BEGIN**, **DESCRIBE**, **ROLLBACK**, **FLUSH**, **USE**, **SHOW**, **START**, **COMMIT**, and **RENAME**.', + 'type' => 'string', + 'example' => 'SELECT', + ], + 'Scnt' => [ + 'title' => 'polarx cn节点,dn请求总数', + 'description' => 'The number of requests sent from PolarDB-X 2.0 compute nodes to data nodes.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'Rows' => [ + 'title' => 'polarx cn节点,总更新/返回行数', + 'description' => 'The number of rows updated or returned on PolarDB-X 2.0 compute nodes.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'Frows' => [ + 'title' => 'polarx cn节点,拉取行数', + 'description' => 'The number of rows fetched by PolarDB-X 2.0 compute nodes.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + ], + ], + ], + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"0A74B755-98B7-59DB-8724-1321B394****\\",\\n \\"Data\\": [\\n {\\n \\"Timestamp\\": 1660100753556,\\n \\"SqlId\\": \\"651b56fe9418d48edb8fdf0980ec****\\",\\n \\"Sql\\": \\"select * from testdb01 where ****\\",\\n \\"Database\\": \\"dbtest\\",\\n \\"Rt\\": 0.409789,\\n \\"User\\": \\"testuser\\",\\n \\"LockWaitTime\\": 0.0137,\\n \\"LogicalRead\\": 165848,\\n \\"PhysicalSyncRead\\": 0,\\n \\"PhysicalAsyncRead\\": 0,\\n \\"RowsExamined\\": 2048576,\\n \\"RowsReturned\\": 14,\\n \\"OriginHost\\": \\"172.17.XX.XX\\",\\n \\"ScanRows\\": 0,\\n \\"UpdateRows\\": 0,\\n \\"SqlType\\": \\"SELECT\\",\\n \\"Scnt\\": 0,\\n \\"Rows\\": 0,\\n \\"Frows\\": 0\\n }\\n ],\\n \\"Code\\": 200,\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<GetFullRequestSampleByInstanceIdResponse>\\n <Message>Successful</Message>\\n <RequestId>0A74B755-98B7-59DB-8724-1321B394****</RequestId>\\n <Data>\\n <Timestamp>1660100753556</Timestamp>\\n <SqlId>651b56fe9418d48edb8fdf0980ec****</SqlId>\\n <Sql>select * from testdb01 where ****</Sql>\\n <Database>dbtest</Database>\\n <Rt>0.409789</Rt>\\n <User>testuser</User>\\n <LockWaitTime>0.0137</LockWaitTime>\\n <LogicalRead>165848</LogicalRead>\\n <PhysicalSyncRead>0</PhysicalSyncRead>\\n <PhysicalAsyncRead>0</PhysicalAsyncRead>\\n <RowsExamined>2048576</RowsExamined>\\n <RowsReturned>14</RowsReturned>\\n <OriginHost>172.17.XX.XX</OriginHost>\\n <ScanRows>0</ScanRows>\\n <UpdateRows>0</UpdateRows>\\n <SqlType>SELECT</SqlType>\\n <Scnt>0</Scnt>\\n <Rows>0</Rows>\\n <Frows>0</Frows>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</GetFullRequestSampleByInstanceIdResponse>","errorExample":""}]', + 'title' => 'GetFullRequestSampleByInstanceId', + 'description' => 'The SQL Explorer feature allows you to check the health status of SQL statements and troubleshoot performance issues. For more information, see [SQL Explorer](~~204096~~).'."\n" + ."\n" + .'* For more information about the database engines that support SQL Explorer, see [SQL Explorer](~~204096~~).'."\n" + .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n", + ], + 'DescribeSqlLogConfig' => [ + 'summary' => 'Queries the configurations of Database Autonomy Service (DAS) Enterprise Edition that is enabled for a database instance.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '198881', + 'abilityTreeNodes' => [ + 'FEATUREhdmPGXCEW', + 'FEATUREhdmFT57I0', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the database instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze8g2am97624****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The response code.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Data' => [ + 'title' => 'SqlLogConfig', + 'description' => 'The data that is returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'ColdEnable' => [ + 'description' => 'Indicates whether the cold data storage is enabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'ColdRetention' => [ + 'title' => '冷数据存储周期(不落库),通过 retention - hotRetention 计算', + 'description' => 'The number of days for which the SQL Explorer and Audit data is stored in cold storage.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '23', + ], + 'ColdStartTime' => [ + 'description' => 'The time when the cold data storage was enabled. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1683712800000', + ], + 'CollectorVersion' => [ + 'description' => 'The collector version. Valid values:'."\n" + ."\n" + .'* **MYSQL_V0**'."\n" + .'* **MYSQL_V1**'."\n" + .'* **MYSQL_V2**'."\n" + .'* **MYSQL_V3**'."\n" + .'* **PG_V1**'."\n" + .'* **rdspg_v1**'."\n" + .'* **polarpg_v1**'."\n", + 'type' => 'string', + 'example' => 'MYSQL_V3', + ], + 'HotEnable' => [ + 'description' => 'Indicates whether the hot data storage is enabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'HotRetention' => [ + 'description' => 'The number of days for which the SQL Explorer and Audit data is stored in hot storage.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '7', + ], + 'HotStartTime' => [ + 'description' => 'The time when the hot data storage was enabled. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1683712800000', + ], + 'LogFilter' => [ + 'description' => 'A reserved parameter.'."\n", + 'type' => 'string', + 'example' => 'None', + ], + 'RequestEnable' => [ + 'description' => 'Indicates whether the SQL Explorer feature is enabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'RequestStartTime' => [ + 'description' => 'The time when the SQL Explorer feature was enabled. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1683712800000', + ], + 'RequestStopTime' => [ + 'description' => 'The time when DAS Enterprise Edition V1 expired. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1715335200000', + ], + 'Retention' => [ + 'description' => 'The total storage duration of the SQL Explorer and Audit data. The value of this parameter is the sum of the values of **HotRetention** and **ColdRetention**. Unit: day.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '30', + ], + 'SqlLogEnable' => [ + 'description' => 'Indicates whether DAS Enterprise Edition is enabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'SqlLogSource' => [ + 'description' => 'A reserved parameter.', + 'type' => 'string', + 'example' => 'None', + ], + 'SqlLogState' => [ + 'description' => 'The state of data migration. Valid values:'."\n" + ."\n" + .'* **FINISH**: The historical data is migrated.'."\n" + .'* **RUNNING**: The historical data is being migrated.'."\n" + .'* **FAILURE**: The historical data fails to be migrated.'."\n", + 'type' => 'string', + 'example' => 'FINISH', + ], + 'SqlLogVisibleTime' => [ + 'description' => 'The time when DAS Enterprise Edition was enabled. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1683712800000', + ], + 'SupportMigration' => [ + 'description' => 'A reserved parameter.', + 'type' => 'boolean', + 'example' => 'None', + ], + 'SupportVersion' => [ + 'title' => '当前实例支持的数据库版本(不落库)', + 'description' => 'The latest version of DAS Enterprise Edition that supports the database instance. Valid values:'."\n" + ."\n" + .'* **SQL_LOG_V0**: DAS Enterprise Edition V0.'."\n" + .'* **SQL_LOG_V1**: DAS Enterprise version V1.'."\n" + .'* **SQL_LOG_V2**: DAS Enterprise Edition V2.'."\n" + .'* **SQL_LOG_V3**: DAS Enterprise Edition V3.'."\n" + .'* **SQL_LOG_NOT_ENABLE**: DAS Enterprise Edition is not enabled.'."\n" + .'* **SQL_LOG_NOT_SUPPORT**: DAS Enterprise Edition is not supported.'."\n", + 'type' => 'string', + 'example' => 'SQL_LOG_V3', + ], + 'Version' => [ + 'title' => '当前审计日志的版本', + 'description' => 'The version of DAS Enterprise Edition that is enabled for the database instance. Valid values:'."\n" + ."\n" + .'* **SQL_LOG_V0**: DAS Enterprise Edition V0.'."\n" + .'* **SQL_LOG_V1**: DAS Enterprise version V1.'."\n" + .'* **SQL_LOG_V2**: DAS Enterprise Edition V2.'."\n" + .'* **SQL_LOG_V3**: DAS Enterprise Edition V3.'."\n" + .'* **SQL_LOG_NOT_ENABLE**: DAS Enterprise Edition is not enabled.'."\n" + .'* **SQL_LOG_NOT_SUPPORT**: DAS Enterprise Edition is not supported.'."\n", + 'type' => 'string', + 'example' => 'SQL_LOG_V3', + ], + ], + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '0A74B755-98B7-59DB-8724-1321B394****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Data\\": {\\n \\"ColdEnable\\": true,\\n \\"ColdRetention\\": 23,\\n \\"ColdStartTime\\": 1683712800000,\\n \\"CollectorVersion\\": \\"MYSQL_V3\\",\\n \\"HotEnable\\": true,\\n \\"HotRetention\\": 7,\\n \\"HotStartTime\\": 1683712800000,\\n \\"LogFilter\\": \\"None\\",\\n \\"RequestEnable\\": true,\\n \\"RequestStartTime\\": 1683712800000,\\n \\"RequestStopTime\\": 1715335200000,\\n \\"Retention\\": 30,\\n \\"SqlLogEnable\\": true,\\n \\"SqlLogSource\\": \\"None\\",\\n \\"SqlLogState\\": \\"FINISH\\",\\n \\"SqlLogVisibleTime\\": 1683712800000,\\n \\"SupportMigration\\": true,\\n \\"SupportVersion\\": \\"SQL_LOG_V3\\",\\n \\"Version\\": \\"SQL_LOG_V3\\"\\n },\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"0A74B755-98B7-59DB-8724-1321B394****\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]', + 'title' => 'DescribeSqlLogConfig', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an Alibaba Cloud SDK or a DAS SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n", + 'responseParamsDescription' => 'For database instances for which DAS Enterprise Edition V0 or DAS Enterprise Edition V1 is enabled, the SQL Explorer and Audit data is stored in CStore, which is considered as hot data storage.******** In this case, the following results are returned is the response: `SqlLogEnable = HotEnable = true, Retention = HotRetention, ColdEnable = false, ColdRetention = 0`.'."\n", + ], + 'ModifySqlLogConfig' => [ + 'summary' => 'Enables or configures Database Autonomy Service (DAS) Enterprise Edition for a database instance.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '198880', + 'abilityTreeNodes' => [ + 'FEATUREhdmPGXCEW', + 'FEATUREhdmFT57I0', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the database instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rr-2ze770smbq3tpr2o9', + ], + ], + [ + 'name' => 'Enable', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Specifies whether to enable DAS Enterprise Edition. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n" + ."\n" + .'> This parameter is required if you want to enable DAS Enterprise Edition. By default, the latest version of DAS Enterprise Edition that supports the database instance is enabled.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'RequestEnable', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Specifies whether to enable the SQL Explorer feature. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n" + ."\n" + .'> This parameter is required if only DAS Enterprise Edition V3 can be enabled for the database instance.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'Retention', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The total storage duration of the SQL Explorer and Audit data. Unit: day. Valid values:'."\n" + ."\n" + .'* 7'."\n" + .'* 30'."\n" + .'* 180'."\n" + .'* 365'."\n" + ."\n" + .'> If you want to enable DAS Enterprise Edition V3, the value of this parameter must be greater than or equal to 30.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '30', + ], + ], + [ + 'name' => 'HotRetention', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The number of days for which the SQL Explorer and Audit data is stored in hot storage. Valid values: 1 to 7.'."\n" + ."\n" + .'> This parameter is required if only DAS Enterprise Edition V3 can be enabled for the database instance.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'Filters', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'A reserved parameter.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'A reserved parameter.', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'A reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + 'Value' => [ + 'description' => 'A reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 100, + ], + ], + [ + 'name' => 'EnableAudit', + 'in' => 'query', + 'schema' => [ + 'type' => 'boolean', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The response code.'."\n", + 'type' => 'string', + 'example' => '403', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '03C88D8E-1541-518E-8BFF-BEC6589B6334', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'False', + ], + 'Data' => [ + 'title' => 'SqlLogConfig', + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'SqlLogVisibleTime' => [ + 'description' => 'The time when DAS Enterprise Edition was enabled. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1683712800000', + ], + 'RequestStopTime' => [ + 'description' => 'The time when DAS Enterprise Edition V1 expired. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1715335200000', + ], + 'CollectorVersion' => [ + 'description' => 'The collector version. Valid values:'."\n" + ."\n" + .'* **MYSQL_V0**'."\n" + .'* **MYSQL_V1**'."\n" + .'* **MYSQL_V2**'."\n" + .'* **MYSQL_V3**'."\n" + .'* **PG_V1**'."\n" + .'* **rdspg_v1**'."\n" + .'* **polarpg_v1**'."\n", + 'type' => 'string', + 'example' => 'MYSQL_V3', + ], + 'SupportVersion' => [ + 'title' => '当前实例支持的数据库版本(不落库)', + 'description' => 'The latest version of DAS Enterprise Edition that supports the database instance. Valid values:'."\n" + ."\n" + .'* **SQL_LOG_V0**: DAS Enterprise Edition V0.'."\n" + .'* **SQL_LOG_V1**: DAS Enterprise Edition V1.'."\n" + .'* **SQL_LOG_V2**: DAS Enterprise Edition V2.'."\n" + .'* **SQL_LOG_V3**: DAS Enterprise Edition V3.'."\n" + .'* **SQL_LOG_NOT_ENABLE**: DAS Enterprise Edition is not enabled.'."\n" + .'* **SQL_LOG_NOT_SUPPORT**: DAS Enterprise Edition is not supported.'."\n", + 'type' => 'string', + 'example' => 'SQL_LOG_V3', + ], + 'ColdRetention' => [ + 'title' => '冷数据存储周期(不落库),通过 retention - hotRetention 计算', + 'description' => 'The number of days for which the SQL Explorer and Audit data is stored in cold storage. The value is calculated by using the following formula: Value of ColdRetention = Value of Retention - Value of HotRetention.``'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '23', + ], + 'SqlLogEnable' => [ + 'description' => 'Indicates whether DAS Enterprise Edition is enabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Retention' => [ + 'description' => 'The total storage duration of the SQL Explorer and Audit data. Unit: day.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '30', + ], + 'HotRetention' => [ + 'description' => 'The number of days for which the SQL Explorer and Audit data is stored in hot storage.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '7', + ], + 'RequestEnable' => [ + 'description' => 'Indicates whether the SQL Explorer feature is enabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'Version' => [ + 'title' => '当前审计日志的版本', + 'description' => 'The version of DAS Enterprise Edition that is enabled for the database instance. Valid values:'."\n" + ."\n" + .'* **SQL_LOG_V0**: DAS Enterprise Edition V0.'."\n" + .'* **SQL_LOG_V1**: DAS Enterprise Edition V1.'."\n" + .'* **SQL_LOG_V2**: DAS Enterprise Edition V2.'."\n" + .'* **SQL_LOG_V3**: DAS Enterprise Edition V3.'."\n" + .'* **SQL_LOG_NOT_ENABLE**: DAS Enterprise Edition is not enabled.'."\n" + .'* **SQL_LOG_NOT_SUPPORT**: DAS Enterprise Edition is not supported.'."\n", + 'type' => 'string', + 'example' => 'SQL_LOG_V3', + ], + 'RequestStartTime' => [ + 'description' => 'The time when the SQL Explorer feature was enabled. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1683712800000', + ], + 'HotEnable' => [ + 'description' => 'Indicates whether the hot data storage is enabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'HotStartTime' => [ + 'description' => 'The time when the hot data storage was enabled. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1683712800000', + ], + 'ColdEnable' => [ + 'description' => 'Indicates whether the cold data storage is enabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'ColdStartTime' => [ + 'description' => 'The time when the cold data storage was enabled. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1683712800000', + ], + 'SqlLogState' => [ + 'description' => 'The state of data migration. Valid values:'."\n" + ."\n" + .'* **FINISH**: The historical data is migrated.'."\n" + .'* **RUNNING**: The historical data is being migrated.'."\n" + .'* **FAILURE**: The historical data fails to be migrated.'."\n", + 'type' => 'string', + 'example' => 'FINISH', + ], + 'LogFilter' => [ + 'description' => 'A reserved parameter.'."\n", + 'type' => 'string', + 'example' => 'None', + ], + 'SqlLogSource' => [ + 'title' => '开启审计日志来源', + 'type' => 'string', + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"03C88D8E-1541-518E-8BFF-BEC6589B6334\\",\\n \\"Success\\": \\"false\\",\\n \\"Data\\": {\\n \\"SqlLogVisibleTime\\": 1683712800000,\\n \\"RequestStopTime\\": 1715335200000,\\n \\"CollectorVersion\\": \\"MYSQL_V3\\",\\n \\"SupportVersion\\": \\"SQL_LOG_V3\\",\\n \\"ColdRetention\\": 23,\\n \\"SqlLogEnable\\": true,\\n \\"Retention\\": 30,\\n \\"HotRetention\\": 7,\\n \\"RequestEnable\\": false,\\n \\"Version\\": \\"SQL_LOG_V3\\",\\n \\"RequestStartTime\\": 1683712800000,\\n \\"HotEnable\\": true,\\n \\"HotStartTime\\": 1683712800000,\\n \\"ColdEnable\\": true,\\n \\"ColdStartTime\\": 1683712800000,\\n \\"SqlLogState\\": \\"FINISH\\",\\n \\"LogFilter\\": \\"None\\",\\n \\"SqlLogSource\\": \\"\\"\\n }\\n}","type":"json"}]', + 'title' => 'ModifySqlLogConfig', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an Alibaba Cloud SDK or a DAS SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n" + .'* By default, the latest version of DAS Enterprise Edition that supports the database instance is enabled. For information about the databases and regions that are supported by different versions of DAS Enterprise Edition, see [Editions and supported features](~~156204~~).'."\n", + 'requestParamsDescription' => 'DAS Enterprise Edition has the following versions: DAS Enterprise Edition V0, DAS Enterprise Edition V1, DAS Enterprise Edition V2, and DAS Enterprise Edition V3. By default, the latest version of DAS Enterprise Edition that supports the database instance is activated.'."\n" + ."\n" + .'* For a database instance for which DAS Enterprise Edition V0 is activated, you need to specify only **Enable** and **Retention**.'."\n" + .'* For a database instance for which DAS Enterprise Edition V1 is activated, you need to specify only **Enable** and **Retention**. DAS automatically enables the SQL Explorer feature for the database instance. The default value of **RequestEnable** is **true**.'."\n" + .'* For a database instance for which DAS Enterprise Edition V2 is activated, you need to specify only **Enable** and **Retention**. DAS automatically enables the SQL Explorer feature for the database instance. The default value of **RequestEnable** is **true**. The value of **HotRetention** is fixed to 7, which specifies that the retention period for data in the hot storage is seven days. The default value of `Retention` is 7, which specifies that the retention period for data in the cold storage is seven days.'."\n", + ], + 'DescribeSqlLogStatistic' => [ + 'summary' => 'Queries the statistics of Database Autonomy Service (DAS) Enterprise Edition.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '198879', + 'abilityTreeNodes' => [ + 'FEATUREhdmFT57I0', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the database instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze1jdv45i7l6****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The response code.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Data' => [ + 'title' => 'SqlLogStatistic', + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'Timestamp' => [ + 'title' => '时间戳', + 'description' => 'The timestamp. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1712568564928', + ], + 'HotSqlSize' => [ + 'title' => '热数据量', + 'description' => 'The size of the SQL Explorer and Audit data that is stored in hot storage. Unit: bytes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'enumValueTitles' => [], + 'example' => '1118042', + ], + 'ColdSqlSize' => [ + 'title' => '冷数据量', + 'description' => 'The size of the SQL Explorer and Audit data that is stored in cold storage. Unit: bytes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '8585901', + ], + 'ImportSqlSize' => [ + 'title' => '引入量', + 'description' => 'The size of the SQL Explorer and Audit data that was generated in the most recent day. Unit: bytes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '23', + ], + 'FreeHotSqlSize' => [ + 'description' => 'The free quota for hot data storage. Unit: bytes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '297245', + ], + 'FreeColdSqlSize' => [ + 'description' => 'The free quota for cold data storage. Unit: bytes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '5041450', + ], + 'TotalSqlSize' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"Timestamp\\": 1712568564928,\\n \\"HotSqlSize\\": 1118042,\\n \\"ColdSqlSize\\": 8585901,\\n \\"ImportSqlSize\\": 297245,\\n \\"FreeHotSqlSize\\": 297245,\\n \\"FreeColdSqlSize\\": 5041450,\\n \\"TotalSqlSize\\": 0\\n }\\n}","type":"json"}]', + 'title' => 'DescribeSqlLogStatistic', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an Alibaba Cloud SDK or a DAS SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n", + ], + 'GetDasSQLLogHotData' => [ + 'summary' => 'Queries the hot data of audit logs.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '178715', + 'abilityTreeNodes' => [ + 'FEATUREhdmFT57I0', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the database instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze1jdv45i7l6****', + ], + ], + [ + 'name' => 'Start', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Specify a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The beginning of the time range to query must be later than the time when DAS Enterprise Edition is enabled, and can be up to seven days earlier than the current time.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1684734297000', + ], + ], + [ + 'name' => 'End', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The end of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The end time must be later than the start time. The interval between the start time and the end time cannot exceed 24 hours.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1684820697000', + ], + ], + [ + 'name' => 'QueryKeyword', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The keyword that is used for the query.'."\n" + ."\n" + .'> Fuzzy search is not supported. You can query data by using multiple keywords. Separate keywords with spaces.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [], + 'example' => 'test', + ], + ], + [ + 'name' => 'AccountName', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The account of the database.'."\n" + ."\n" + .'> You can specify multiple database accounts that are separated by spaces. Example: `user1 user2 user3`.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'testuser', + ], + ], + [ + 'name' => 'DBName', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The name of the database.'."\n" + ."\n" + .'> You can specify multiple database names that are separated by spaces. Example: `DB1 DB2 DB3`.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'testDB', + ], + ], + [ + 'name' => 'HostAddress', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The IP address of the client.'."\n" + ."\n" + .'> You can specify multiple IP addresses that are separated by spaces. Example: `IP1 IP2 IP3`.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '47.100.XX.XX', + ], + ], + [ + 'name' => 'LogicalOperator', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The logical relationship among multiple keywords.'."\n" + ."\n" + .'* **or**'."\n" + .'* **and**'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'or', + ], + ], + [ + 'name' => 'MaxLatancy', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The maximum execution duration. Unit: microseconds. You can specify this parameter to query the SQL statements whose execution duration is smaller than the value of this parameter.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '100', + ], + ], + [ + 'name' => 'MaxScanRows', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The maximum number of scanned rows. You can specify this parameter to query the SQL statements that scan a smaller number of rows than the value of this parameter.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10000', + ], + ], + [ + 'name' => 'MinLatancy', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The minimum execution duration. Unit: microseconds. You can specify this parameter to query the SQL statements whose execution duration is greater than or equal to the value of this parameter.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'MinScanRows', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The minimum number of scanned rows. You can specify this parameter to query the SQL statements that scan a larger or an equal number of rows than the value of this parameter.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'SqlType', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The type of the SQL statement. Valid values:'."\n" + ."\n" + .'* **SELECT**'."\n" + .'* **UPDATE**'."\n" + .'* **DELETE**', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'DELETE' => '', + 'UPDATE' => '', + 'SELECT' => '', + ], + 'example' => 'SELECT', + ], + ], + [ + 'name' => 'State', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The execution results. You can specify **0** to query the SQL statements that are successfully executed. You can also specify an error code to query the corresponding SQL statements that fail to be executed.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '0', + ], + ], + [ + 'name' => 'ThreadID', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The thread ID.'."\n" + ."\n" + .'> You can specify multiple thread IDs that are separated by spaces. Example: `Thread ID1 Thread ID2 Thread ID3`.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '657', + ], + ], + [ + 'name' => 'PageNumbers', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '2', + ], + ], + [ + 'name' => 'MaxRecordsPerPage', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The maximum number of entries per page. Valid values: 5 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'SortKey', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The basis on which you want to sort the query results.'."\n" + ."\n" + .'* **SCAN_ROWS**: the number of scanned rows.'."\n" + .'* **UPDATE_ROWS**: the number of updated rows.'."\n" + .'* **CONSUME**: the time consumed.'."\n" + .'* **ORIGIN_TIME**: the execution duration.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'SCAN_ROWS', + ], + ], + [ + 'name' => 'SortMethod', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The order in which you want to sort the query results.'."\n" + ."\n" + .'* **ase**: ascending order.'."\n" + .'* **desc**: descending order.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ase', + ], + ], + [ + 'name' => 'ChildDBInstanceIDs', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The node ID.'."\n" + ."\n" + .'> This parameter must be specified if the database instance is a PolarDB for MySQL cluster.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'pi-bp179lg03445l****', + ], + ], + [ + 'name' => 'Role', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The reserved parameter. This parameter is not supported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'TraceId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The reserved parameter. This parameter is not supported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'MinRows', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The reserved parameter. This parameter is not supported.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'MaxRows', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The reserved parameter. This parameter is not supported.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'MinSpillCnt', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The reserved parameter. This parameter is not supported.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'MaxSpillCnt', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The reserved parameter. This parameter is not supported.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'TransactionId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The transaction ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '0', + ], + ], + [ + 'name' => 'Fail', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The error code of SQL execution. You can call the [GetAsyncErrorRequestStatByCode](~~409804~~) operation to query MySQL error codes in SQL Explorer data.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1064', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '0A74B755-98B7-59DB-8724-1321B394****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Data' => [ + 'title' => 'ListResult<Map<String, Object>>', + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'List' => [ + 'description' => 'The details of the data returned.', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Latancy' => [ + 'description' => 'The execution duration. Unit: microseconds.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10000', + ], + 'Ext' => [ + 'description' => 'The extended information. This parameter is a reserved parameter.', + 'type' => 'string', + 'example' => 'None', + ], + 'ExecuteTime' => [ + 'description' => 'The execution time. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.', + 'type' => 'string', + 'example' => '2023-05-23 T12:11:20Z', + ], + 'OriginTime' => [ + 'description' => 'The execution time. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.', + 'type' => 'string', + 'example' => '2023-05-23 T12:11:20.999Z', + ], + 'HostAddress' => [ + 'description' => 'The IP address of the client.', + 'type' => 'string', + 'example' => '47.100.XX.XX', + ], + 'UpdateRows' => [ + 'description' => 'The number of updated rows.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '30', + ], + 'LogicRead' => [ + 'description' => 'The number of logical reads.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '12', + ], + 'SQLText' => [ + 'description' => 'The content of the SQL statement.', + 'type' => 'string', + 'example' => 'select 1', + ], + 'LockTime' => [ + 'description' => 'The lock wait duration. Unit: microseconds.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'ScanRows' => [ + 'description' => 'The number of rows scanned by the SQL statement.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '29', + ], + 'ThreadID' => [ + 'description' => 'The thread ID.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '657', + ], + 'State' => [ + 'description' => 'The execution result. If a **0** is returned, the SQL statement was successfully executed. If an error code is returned, the SQL statement failed to be executed.', + 'type' => 'string', + 'example' => '0', + ], + 'DBName' => [ + 'description' => 'The name of the database.', + 'type' => 'string', + 'example' => 'testDB', + ], + 'SqlType' => [ + 'description' => 'The type of the SQL statement. Valid values:'."\n" + ."\n" + .'* **SELECT**'."\n" + .'* **UPDATE**'."\n" + .'* **DELETE**', + 'type' => 'string', + 'example' => 'SELECT', + ], + 'AccountName' => [ + 'description' => 'The account of the database.', + 'type' => 'string', + 'example' => 'testuser', + ], + 'PhysicSyncRead' => [ + 'description' => 'The number of physical synchronous reads.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'PhysicAsyncRead' => [ + 'description' => 'The number of physical asynchronous reads.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'TransactionId' => [ + 'description' => 'The transaction ID.', + 'type' => 'string', + 'example' => '0', + ], + 'ReturnRows' => [ + 'description' => 'The number of rows returned.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'NodeId' => [ + 'type' => 'string', + ], + ], + ], + ], + 'Total' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + 'PageNo' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'Extra' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'any', + 'example' => 'None', + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"0A74B755-98B7-59DB-8724-1321B394****\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"List\\": [\\n {\\n \\"Latancy\\": 10000,\\n \\"Ext\\": \\"None\\",\\n \\"ExecuteTime\\": \\"2023-05-23 T12:11:20Z\\",\\n \\"OriginTime\\": \\"2023-05-23 T12:11:20.999Z\\",\\n \\"HostAddress\\": \\"47.100.XX.XX\\",\\n \\"UpdateRows\\": 30,\\n \\"LogicRead\\": 12,\\n \\"SQLText\\": \\"select 1\\",\\n \\"LockTime\\": 1,\\n \\"ScanRows\\": 29,\\n \\"ThreadID\\": 657,\\n \\"State\\": \\"0\\",\\n \\"DBName\\": \\"testDB\\",\\n \\"SqlType\\": \\"select\\",\\n \\"AccountName\\": \\"testuser\\",\\n \\"PhysicSyncRead\\": 0,\\n \\"PhysicAsyncRead\\": 0,\\n \\"TransactionId\\": \\"0\\",\\n \\"ReturnRows\\": 1,\\n \\"NodeId\\": \\"\\"\\n }\\n ],\\n \\"Total\\": 20,\\n \\"PageNo\\": 2,\\n \\"PageSize\\": 10,\\n \\"Extra\\": \\"None\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<GetDasSQLLogHotDataResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <RequestId>0A74B755-98B7-59DB-8724-1321B394****</RequestId>\\n <Success>true</Success>\\n <Data>\\n <List>\\n <Latancy>10000</Latancy>\\n <Ext>None</Ext>\\n <ExecuteTime>2023-05-23 T12:11:20Z</ExecuteTime>\\n <OriginTime>2023-05-23 T12:11:20.999Z</OriginTime>\\n <HostAddress>47.100.XX.XX</HostAddress>\\n <UpdateRows>30</UpdateRows>\\n <LogicRead>12</LogicRead>\\n <SQLText>select 1</SQLText>\\n <LockTime>1</LockTime>\\n <ScanRows>29</ScanRows>\\n <ThreadID>657</ThreadID>\\n <State>0</State>\\n <DBName>testDB</DBName>\\n <SqlType>SELECT</SqlType>\\n <AccountName>testuser</AccountName>\\n <PhysicSyncRead>0</PhysicSyncRead>\\n <PhysicAsyncRead>0</PhysicAsyncRead>\\n <TransactionId>0</TransactionId>\\n <ReturnRows>1</ReturnRows>\\n </List>\\n <Total>20</Total>\\n <PageNo>2</PageNo>\\n <PageSize>10</PageSize>\\n <Extra>None</Extra>\\n </Data>\\n</GetDasSQLLogHotDataResponse>","errorExample":""}]', + 'title' => 'GetDasSQLLogHotData', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an Alibaba Cloud SDK or DAS SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n" + .'* This operation is applicable to PolarDB for MySQL, ApsaraDB RDS for MySQL, ApsaraDB RDS for PostgreSQL, and ApsaraDB RDS for SQL Server.'."\n" + ."\n" + .'> The beginning of the time range to query can be up to seven days earlier than the current time. The interval between the start time and the end time cannot exceed one day. This operation can return a maximum of 10,000 entries.'."\n", + ], + 'CreateSqlLogTask' => [ + 'summary' => 'Creates an offline task for Database Autonomy Service (DAS) Enterprise Edition.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '199695', + 'abilityTreeNodes' => [ + 'FEATUREhdmFT57I0', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the database instance.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'pc-2ze8g2am97624****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The node ID.'."\n" + ."\n" + .'> This parameter is available only for instances that run in a cluster architecture. You can specify this parameter to query the offline tasks of a specific node. By default, if this parameter is not specified, the information about the offline tasks of the primary node is returned.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'pi-uf6k5f6g3912i0dqz', + ], + ], + [ + 'name' => 'Type', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The type of the task. Valid values:'."\n" + ."\n" + .'* **Export**'."\n" + .'* **Query**'."\n" + .'* **Insight**'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Export', + ], + ], + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The name of the task.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test01', + ], + ], + [ + 'name' => 'Filters', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The filter conditions.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'title' => '过滤参数', + 'description' => 'The name of the filter parameter.'."\n" + ."\n" + .'> For more information about the supported filter parameters and their valid values, see the following **supplement about the Key parameter**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'KeyWords', + ], + 'Value' => [ + 'description' => 'The value of the filter parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'select', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 100, + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Specify the time in the UNIX timestamp format. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1596177993000'."\n", + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The end of the time range to query. Specify the time in the UNIX timestamp format. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1608888296000'."\n", + ], + ], + [ + 'name' => 'Role', + 'in' => 'query', + 'schema' => [ + 'description' => 'The role of the node of the PolarDB-X 2.0 database instance. Valid values:'."\n" + ."\n" + .'* **polarx_cn**: compute node'."\n" + .'* **polarx_dn**: data node'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'polarx_cn', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The response code.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, error information such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '83D9D59B-057A-54A9-BFF9-CF2B42F05645', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Data' => [ + 'title' => 'SqlLogTask', + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'TaskId' => [ + 'description' => 'The task ID.'."\n", + 'type' => 'string', + 'example' => '54f8041743ca3a9ac5cb9342d050527c', + ], + 'InstanceId' => [ + 'title' => '实例标识', + 'description' => 'The ID of the database instance.'."\n", + 'type' => 'string', + 'example' => 'pc-2ze8g2am97624****', + ], + 'Name' => [ + 'title' => '任务别名', + 'description' => 'The name of the task.'."\n", + 'type' => 'string', + 'example' => 'Export_test', + ], + 'Start' => [ + 'title' => '查询开始时间', + 'description' => 'The beginning of the time range to query. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1596177993000', + ], + 'End' => [ + 'title' => '查询结束时间', + 'description' => 'The end of the time range to query. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1608888296000'."\n", + ], + 'Status' => [ + 'title' => '任务状态', + 'description' => 'The state of the task. Valid values:'."\n" + ."\n" + .'* **INIT**: The task is to be scheduled.'."\n" + .'* **RUNNING**: The task is running.'."\n" + .'* **FAILED**: The task failed.'."\n" + .'* **CANCELED**: The task is canceled.'."\n" + .'* **COMPLETED**: The task is complete.'."\n" + ."\n" + .'> You can view the result of a task that is in the **COMPLETED** state.'."\n", + 'type' => 'string', + 'example' => 'COMPLETED', + ], + 'CreateTime' => [ + 'title' => '任务创建时间', + 'description' => 'The time when the task was created. This value is a UNIX timestamp. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1681363254423'."\n", + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"83D9D59B-057A-54A9-BFF9-CF2B42F05645\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"TaskId\\": \\"54f8041743ca3a9ac5cb9342d050527c\\",\\n \\"InstanceId\\": \\"pc-2ze8g2am97624****\\",\\n \\"Name\\": \\"Export_test\\",\\n \\"Start\\": 1596177993000,\\n \\"End\\": 1608888296000,\\n \\"Status\\": \\"COMPLETED\\",\\n \\"CreateTime\\": 1681363254423\\n }\\n}","type":"json"}]', + 'title' => 'CreateSqlLogTask', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an Alibaba Cloud SDK or DAS SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n" + .'* You can create an offline task only for database instances for which DAS Enterprise Edition V2 or V3 is enabled. For more information about the databases and regions that are supported by various versions of DAS Enterprise Edition, see [Editions and supported features](~~156204~~).'."\n", + 'requestParamsDescription' => 'The following list describes the filter parameters that can be used as **Key** and their valid values:'."\n" + ."\n" + .'* **KeyWords**: the keywords. You can specify multiple keywords that are separated by spaces.'."\n" + .'* **LogicalOperator**: the logical operation between keywords. Valid values: and and or.'."\n" + .'* **AccountName**: the username.'."\n" + .'* **DBName**: the database name.'."\n" + .'* **HostAddress**: the IP address of the client.'."\n" + .'* **MaxConsume**: the maximum amount of time that is consumed. Unit: milliseconds.'."\n" + .'* **MinConsume**: the minimum amount of time that is consumed. Unit: milliseconds.'."\n" + .'* **MaxScanRows**: the maximum number of rows that are scanned.'."\n" + .'* **MinScanRows**: the minimum number of rows that are scanned.'."\n" + .'* **SqlType**: the type of the SQL statement. Valid values: select, update, insert, and delete.'."\n" + .'* **State**: the execution result. Valid values: 0 and 1. A value of 0 indicates that the SQL statement execution is successful. A value of 1 indicates that the SQL statement fails to be executed.'."\n" + .'* **ThreadId**: the thread ID.'."\n" + .'* **SortKey**: the name of the column that is used for sorting. Valid values: ScanRows, UpdateRows, Consume, ExecuteTime, ReturnRows, LockTime, Frows, Scnt, CpuTime, and PhysicalRead. A value of ScanRows indicates the number of rows that are scanned. A value of UpdateRows indicates the number of rows that are updated. A value of Consume indicates the duration of the query. A value of ExecuteTime indicates the time when the query was performed. A value of ReturnRows indicates the number of rows that are returned. A value of LockTime indicates the lock wait duration. A value of Frows indicates the number of rows that are pulled by the compute nodes of the PolarDB-X 2.0 database instance. A value of Scnt indicates the number of requests that are sent to the data nodes by the compute nodes of the PolarDB-X 2.0 database instance. A value of CpuTime indicates the CPU execution duration. A value of PhysicalRead indicates the number of physical reads.'."\n" + .'* **SortMethod**: the order in which the queried logs are sorted. Valid values: DESC and ASC. A value of DESC indicates the descending order. A value of ASC indicates the ascending order. Default value: DESC.'."\n" + .'* **TraceId**: the trace ID of the PolarDB-X 2.0 database instance.'."\n" + .'* **MinRows**: the minimum number of rows that are updated.'."\n" + .'* **MaxRows**: the maximum number of rows that are updated.'."\n" + .'* **MinScnt**: the minimum number of requests that are sent to the data nodes by the compute nodes of the PolarDB-X 2.0 database instance.'."\n" + .'* **MaxScnt**: the maximum number of requests that are sent to the data nodes by the compute nodes of the PolarDB-X 2.0 database instance.'."\n" + .'* **TrxId**: the transaction ID.'."\n" + .'* **Fail**: the error code.'."\n" + .'* **sqlId**: the SQL statement ID.'."\n" + .'* **JobId**: the ID of the asynchronous task. This parameter is required for querying the return result if DAS Enterprise Edition V0 or V1 is enabled for your database instance.'."\n", + ], + 'DescribeSqlLogTask' => [ + 'summary' => 'Queries the details of an offline task in Database Autonomy Service (DAS) Enterprise Edition.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '213185', + 'abilityTreeNodes' => [ + 'FEATUREhdmFT57I0', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the database instance.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'r-bp1nti25tc7bq5****'."\n", + ], + ], + [ + 'name' => 'TaskId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The task ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'a4f5c4494dbd6713185d87a97aa53e8'."\n", + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The response code.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Data' => [ + 'title' => 'SqlLogTaskDetail', + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'title' => '任务名', + 'description' => 'The task name.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'TaskId' => [ + 'title' => '任务ID', + 'description' => 'The task ID.'."\n", + 'type' => 'string', + 'example' => '9a4f5c4494dbd6713185d87a97aa53e8'."\n", + ], + 'TaskType' => [ + 'title' => '任务类型', + 'description' => 'The task type. Valid values:'."\n" + ."\n" + .'* **Export**'."\n" + .'* **Query**'."\n", + 'type' => 'string', + 'example' => 'Query', + ], + 'CreateTime' => [ + 'title' => '任务创建时间', + 'description' => 'The time when the task was created. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1681363254423'."\n", + ], + 'Status' => [ + 'title' => '任务状态', + 'description' => 'The task state. Valid values:'."\n" + ."\n" + .'* **INIT**: The task is to be scheduled.'."\n" + .'* **RUNNING**: The task is running.'."\n" + .'* **FAILED**: The task failed.'."\n" + .'* **CANCELED**: The task is canceled.'."\n" + .'* **COMPLETED**: The task is complete.'."\n" + ."\n" + .'> If a task is in the **COMPLETED** state, you can view the results of the task.'."\n", + 'type' => 'string', + 'example' => 'COMPLETED', + ], + 'Expire' => [ + 'description' => 'Indicates whether the task has expired. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'false'."\n", + ], + 'Start' => [ + 'title' => '查询开始时间', + 'description' => 'The beginning of the time range to query. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1596177993000'."\n", + ], + 'End' => [ + 'title' => '查询结束时间', + 'description' => 'The end of the time range to query. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1608888296000'."\n", + ], + 'Filters' => [ + 'title' => '过滤条件', + 'description' => 'The filter parameters.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'title' => '过滤参数', + 'description' => 'The name of the filter parameter.'."\n" + ."\n" + .'> For more information about the filter parameters, see the **Valid values of Key** section of this topic.'."\n", + 'type' => 'string', + 'example' => 'keyWords'."\n", + ], + 'Value' => [ + 'title' => '过滤值', + 'description' => 'The value of the filter parameter.'."\n", + 'type' => 'any', + 'example' => 'select', + ], + ], + ], + ], + 'Total' => [ + 'title' => '总条数', + 'description' => 'The total number of tasks.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Queries' => [ + 'title' => '明细列表', + 'description' => 'The results of the offline querying task.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Vip' => [ + 'description' => 'The IP address to which the endpoint used for query is resolved.'."\n", + 'type' => 'string', + 'example' => '10.146.XX.XX', + ], + 'NodeId' => [ + 'description' => 'The ID of the child node.'."\n", + 'type' => 'string', + 'example' => 'pi-bp1o58x3ib7e6****'."\n", + ], + 'SqlText' => [ + 'description' => 'The queried SQL statement.'."\n", + 'type' => 'string', + 'example' => 'SELECT @@session.transaction_read_only', + ], + 'SqlType' => [ + 'description' => 'The type of the SQL statement. Valid values:'."\n" + ."\n" + .'* **SELECT**'."\n" + .'* **UPDATE**'."\n" + .'* **DELETE**'."\n", + 'type' => 'string', + 'example' => 'SELECT', + ], + 'State' => [ + 'description' => 'The execution result of the SQL statement. Valid values:'."\n" + ."\n" + .'* **0**: The execution was successful.'."\n" + .'* **1**: The execution failed.'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'DBName' => [ + 'description' => 'The database name.'."\n", + 'type' => 'string', + 'example' => 'testdb01', + ], + 'SqlId' => [ + 'description' => 'The ID of the SQL statement.'."\n", + 'type' => 'string', + 'example' => 'a4111670e80596c5bf42cf5154438a91', + ], + 'ExecuteTime' => [ + 'title' => 'yyyy-MM-dd\'T\'HH:mm:ss.SSS\'Z\'', + 'description' => 'The execution time. The time follows the ISO 8601 standard in the `yyyy-MM-ddTHH:mm:ssZ` format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2023-12-07T02:15:32Z', + ], + 'OriginTime' => [ + 'title' => 'ts unix', + 'description' => 'The execution timestamp. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1701886532000'."\n", + ], + 'AccountName' => [ + 'description' => 'The database account.'."\n", + 'type' => 'string', + 'example' => 'testname'."\n", + ], + 'HostAddress' => [ + 'description' => 'The IP address of the client.'."\n", + 'type' => 'string', + 'example' => '11.197.XX.XX'."\n", + ], + 'Consume' => [ + 'description' => 'The execution duration. Unit: millisecond.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '58', + ], + 'LockTime' => [ + 'description' => 'The lock wait time. Unit: millisecond.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'UpdateRows' => [ + 'description' => 'The number of rows updated.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'ScanRows' => [ + 'description' => 'The number of rows scanned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'ReturnRows' => [ + 'description' => 'The number of rows returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'LogicRead' => [ + 'description' => 'The number of logical reads.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'PhysicSyncRead' => [ + 'description' => 'The number of physical synchronous reads.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'PhysicAsyncRead' => [ + 'description' => 'The number of physical asynchronous reads.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'ThreadId' => [ + 'description' => 'The thread ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => 'None', + ], + 'TrxId' => [ + 'description' => 'The transaction ID.'."\n", + 'type' => 'string', + 'example' => '200000'."\n", + ], + 'Ext' => [ + 'description' => 'The extended information. This parameter is a reserved parameter.'."\n", + 'type' => 'string', + 'example' => 'None', + ], + 'Scnt' => [ + 'title' => 'polarx cn节点,dn请求总数', + 'description' => 'The number of requests from the compute nodes (CNs) to the data nodes (DNs) in the PolarDB-X 2.0 instance.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10'."\n", + ], + 'Rows' => [ + 'title' => 'polarx cn节点,总更新/返回行数', + 'description' => 'The total number of rows updated or returned by the CNs of the PolarDB-X 2.0 instance.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'Frows' => [ + 'title' => 'polarx cn节点,拉取行数', + 'description' => 'The number of rows pulled by the CNs of the PolarDB-X 2.0 instance.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'TraceId' => [ + 'description' => 'The trace ID of the PolarDB-X 2.0 instance, which is the execution ID of the SQL statement on the DN.'."\n", + 'type' => 'string', + 'example' => '14c93b7c7bf00000 ', + ], + 'UseImciEngine' => [ + 'description' => 'Indicates whether the PolarDB for MySQL instance uses In-Memory Column Indexes (IMCIs). Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true'."\n", + ], + 'ParallelDegree' => [ + 'description' => 'The wait time of parallel queries in the queue in the PolarDB for MySQL instance. Unit: millisecond.'."\n", + 'type' => 'string', + 'example' => '10'."\n", + ], + 'ParallelQueueTime' => [ + 'description' => 'The degree of parallelism (DOP) value of the PolarDB for MySQL instance.'."\n", + 'type' => 'string', + 'example' => '2', + ], + 'PhysicRead' => [ + 'description' => 'The total number of physical reads.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'CpuTime' => [ + 'description' => 'The CPU execution time. Unit: microsecond.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100'."\n", + ], + 'Writes' => [ + 'description' => 'The number of writes to the ApsaraDB RDS for SQL Server instance.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'Collection' => [ + 'type' => 'string', + ], + 'SqlCommand' => [ + 'title' => '查询中的SQL命令', + 'type' => 'integer', + 'format' => 'int64', + 'example' => 'sql', + ], + 'ConnectionId' => [ + 'title' => '查询中使用的连接ID', + 'type' => 'string', + 'example' => 'ld-******', + ], + 'Protected' => [ + 'title' => '查询项是否受保护', + 'type' => 'string', + 'example' => 'MySQL', + ], + 'Params' => [ + 'title' => '查询参数列表', + 'type' => 'string', + 'example' => '[1, "das"]', + ], + 'ClientIp' => [ + 'title' => '查询中的客户端IP地址', + 'type' => 'string', + 'example' => '10.0.0.1xx', + ], + 'ClientPort' => [ + 'title' => '查询中客户端端口号', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '3306', + ], + 'RowKey' => [ + 'title' => '查询中的行键', + 'type' => 'string', + 'example' => '23', + ], + 'AffectColumns' => [ + 'title' => '影响的列', + 'type' => 'string', + 'example' => '["col1"]', + ], + 'TableName' => [ + 'title' => '查询中使用的表名', + 'type' => 'string', + 'example' => 'das', + ], + ], + ], + ], + 'Export' => [ + 'title' => '导出地址', + 'description' => 'The download URL of the export task.'."\n", + 'type' => 'string', + 'example' => '"https://das-sqllog-download-cn-hongkong.oss-cn-hongkong.aliyuncs.com/****"', + ], + ], + ], + ], + 'description' => '', + 'title' => '根节点或根目录', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"Name\\": \\"SQL审计导出1\\\\n\\",\\n \\"TaskId\\": \\"9a4f5c4494dbd6713185d87a97aa53e8\\\\n\\",\\n \\"TaskType\\": \\"Query\\",\\n \\"CreateTime\\": 1681363254423,\\n \\"Status\\": \\"COMPLETED\\",\\n \\"Expire\\": true,\\n \\"Start\\": 1596177993000,\\n \\"End\\": 1608888296000,\\n \\"Filters\\": [\\n {\\n \\"Key\\": \\"keyWords\\\\n\\",\\n \\"Value\\": \\"select\\"\\n }\\n ],\\n \\"Total\\": 1,\\n \\"Queries\\": [\\n {\\n \\"Vip\\": \\"10.146.XX.XX\\",\\n \\"NodeId\\": \\"pi-bp1o58x3ib7e6****\\\\n\\",\\n \\"SqlText\\": \\"SELECT @@session.transaction_read_only\\",\\n \\"SqlType\\": \\"SELECT\\",\\n \\"State\\": \\"0\\",\\n \\"DBName\\": \\"testdb01\\",\\n \\"SqlId\\": \\"a4111670e80596c5bf42cf5154438a91\\",\\n \\"ExecuteTime\\": \\"2023-12-07T02:15:32Z\\",\\n \\"OriginTime\\": 1701886532000,\\n \\"AccountName\\": \\"testname\\\\n\\",\\n \\"HostAddress\\": \\"11.197.XX.XX\\\\n\\",\\n \\"Consume\\": 58,\\n \\"LockTime\\": 0,\\n \\"UpdateRows\\": 0,\\n \\"ScanRows\\": 0,\\n \\"ReturnRows\\": 0,\\n \\"LogicRead\\": 0,\\n \\"PhysicSyncRead\\": 0,\\n \\"PhysicAsyncRead\\": 0,\\n \\"ThreadId\\": 0,\\n \\"TrxId\\": \\"200000\\\\n\\",\\n \\"Ext\\": \\"None\\",\\n \\"Scnt\\": 10,\\n \\"Rows\\": 10,\\n \\"Frows\\": 10,\\n \\"TraceId\\": \\"14c93b7c7bf00000 \\",\\n \\"UseImciEngine\\": \\"true\\\\n\\",\\n \\"ParallelDegree\\": \\"10\\\\n\\",\\n \\"ParallelQueueTime\\": \\"2\\",\\n \\"PhysicRead\\": 0,\\n \\"CpuTime\\": 100,\\n \\"Writes\\": 10,\\n \\"Collection\\": \\"None\\",\\n \\"SqlCommand\\": 0,\\n \\"ConnectionId\\": \\"ld-******\\",\\n \\"Protected\\": \\"MySQL\\",\\n \\"Params\\": \\"[1, \\\\\\"das\\\\\\"]\\",\\n \\"ClientIp\\": \\"10.0.0.1xx\\",\\n \\"ClientPort\\": 3306,\\n \\"RowKey\\": \\"23\\",\\n \\"AffectColumns\\": \\"[\\\\\\"col1\\\\\\"]\\",\\n \\"TableName\\": \\"das\\"\\n }\\n ],\\n \\"Export\\": \\"\\\\\\"https://das-sqllog-download-cn-hongkong.oss-cn-hongkong.aliyuncs.com/****\\\\\\"\\"\\n }\\n}","type":"json"}]', + 'title' => 'DescribeSqlLogTask', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an Alibaba Cloud SDK or a DAS SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call the API operations of DAS, you must set the region ID to cn-shanghai.'."\n", + 'responseParamsDescription' => 'Valid values of **Key**:'."\n" + ."\n" + .'* **KeyWords**: the keywords. Separate multiple keywords with spaces.'."\n" + .'* **LogicalOperator**: the logical operator between keywords. Valid values: and and or.'."\n" + .'* **AccountName**: the database account.'."\n" + .'* **DBName**: the database name.'."\n" + .'* **HostAddress**: the IP address of the client.'."\n" + .'* **MaxConsume**: the maximum execution duration. Unit: millisecond.'."\n" + .'* **MinConsume**: the minimum execution duration. Unit: millisecond.'."\n" + .'* **MaxScanRows**: the maximum number of rows scanned.'."\n" + .'* **MinScanRows**: the minimum number of rows scanned.'."\n" + .'* **SqlType**: the type of the SQL statement. Valid values: select, update, insert, and delete.'."\n" + .'* **State**: the execution result. Valid values: 0 and 1. A value of 0 indicates that the execution was successful. A value of 1 indicates that the execution failed.'."\n" + .'* **ThreadId**: The thread ID.'."\n" + .'* **SortKey**: the name of the column for sorting. Valid values: ScanRows, UpdateRows, Consume, ExecuteTime, ReturnRows, LockTime, Frows, Scnt, CpuTime, and PhysicalRead.'."\n" + .'* **SortMethod**: The sorting order. Valid values: DESC and ASC. A value of DESC indicates the descending order. A value of ASC indicates the ascending order. Default value: DESC.'."\n" + .'* **TraceId**: the trace ID of the PolarDB-X 2.0 instance.'."\n" + .'* **MinRows**: the minimum number of rows updated.'."\n" + .'* **MaxRows**: the maximum number of rows updated.'."\n" + .'* **MinScnt**: the minimum number of requests from the CNs to the DNs in the PolarDB-X 2.0 instance.'."\n" + .'* **MaxScnt**: the maximum number of requests from the CNs to the DNs in the PolarDB-X 2.0 instance.'."\n" + .'* **TrxId**: the transaction ID.'."\n" + .'* **Fail**: the error code.'."\n" + .'* **sqlId**: the ID of the SQL statement.'."\n" + .'* **JobId**: the task ID. For a database instance for which DAS Enterprise Edition V0 or V1 is enabled, you must use the asynchronous task ID to query the returned results.'."\n", + ], + 'DescribeSqlLogTasks' => [ + 'summary' => 'Queries the audit log tasks of a database instance.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '199696', + 'abilityTreeNodes' => [ + 'FEATUREhdmFT57I0', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the database instance.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'r-bp1nti25tc7bq5****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The node ID.'."\n" + ."\n" + .'> This parameter is available only for instances that are deployed in the cluster architecture. You can specify this parameter to query the tasks of a specific node. If this parameter is not specified, the tasks of the primary node are returned by default.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'pi-bp1o58x3ib7e6z496', + ], + ], + [ + 'name' => 'Filters', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The filter parameters.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'title' => '过滤参数', + 'description' => 'The name of the filter parameter.'."\n" + ."\n" + .'> For more information about the filter parameters, see the **Valid values of Key** section of this topic.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'delimiter', + ], + 'Value' => [ + 'description' => 'The value of the filter parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => ',', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 100, + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The beginning of the time range to query. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1596177993000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The end of the time range to query. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1608888296000', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The number of entries per page. Valid values: 1 to 100. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The response code.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Data' => [ + 'title' => 'ListResult<SqlLogTask>', + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'List' => [ + 'description' => 'The details of the data returned.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'TaskId' => [ + 'description' => 'The task ID.'."\n", + 'type' => 'string', + 'example' => '9a4f5c4494dbd6713185d87a97aa53e8', + ], + 'InstanceId' => [ + 'title' => '实例标识', + 'description' => 'The ID of the database instance.'."\n", + 'type' => 'string', + 'example' => 'rm-2zew761kf7ho18752', + ], + 'Name' => [ + 'title' => '任务别名', + 'description' => 'The task name.'."\n", + 'type' => 'string', + 'example' => 'test01', + ], + 'Start' => [ + 'title' => '查询开始时间', + 'description' => 'The time when the task started. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1683859555482', + ], + 'End' => [ + 'title' => '查询结束时间', + 'description' => 'The time when the task ended. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1705975320000', + ], + 'Status' => [ + 'title' => '任务状态', + 'description' => 'The task state. Valid values:'."\n" + ."\n" + .'* **INIT**: The task is to be scheduled.'."\n" + .'* **RUNNING**: The task is running.'."\n" + .'* **FAILED**: The task failed.'."\n" + .'* **CANCELED**: The task is canceled.'."\n" + .'* **COMPLETED**: The task is complete.'."\n" + ."\n" + .'> If a task is in the **COMPLETED** state, you can view the results of the task.'."\n", + 'type' => 'string', + 'example' => 'RUNNING', + ], + 'LogCount' => [ + 'title' => '日志总数', + 'description' => 'The number of log records.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '99999', + ], + 'Progress' => [ + 'title' => '任务进度', + 'description' => 'The task progress.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + 'ScanFileSize' => [ + 'title' => '扫描的文件量', + 'description' => 'The number of files that are scanned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '3000', + ], + 'Expire' => [ + 'title' => '任务是否过期', + 'description' => 'Indicates whether the task expired. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'CreateTime' => [ + 'title' => '任务创建时间', + 'description' => 'The time when the task was created. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1681363254423', + ], + 'AnalysisTaskFinishTime' => [ + 'title' => '分析任务完成时间', + 'description' => 'The time when the analysis task was complete. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1712751923000', + ], + 'AnalysisTaskStatus' => [ + 'description' => 'The state of the analysis task.'."\n" + ."\n" + .'> This parameter is a system parameter. You do not need to pay attention to the parameter.'."\n", + 'type' => 'string', + 'example' => 'SCAN_ANALYZE_COMPLETED', + ], + 'Result' => [ + 'title' => 'oss链接或其他信息', + 'description' => 'The URL that is returned if the value of TaskType is **Export**.'."\n", + 'type' => 'string', + 'example' => 'https://das-sqllog-download-cn-shanghai.oss-cn-shanghai.aliyuncs.com/la', + ], + 'TaskType' => [ + 'description' => 'The task type. Valid values:'."\n" + ."\n" + .'* **Export**'."\n" + .'* **Query**'."\n", + 'type' => 'string', + 'example' => 'Export', + ], + 'Filters' => [ + 'description' => 'The filter parameters.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The name of the filter parameter.'."\n" + ."\n" + .'> For more information about the filter parameters, see the **Valid values of Key** section of this topic.'."\n", + 'type' => 'string', + 'example' => 'delimiter', + ], + 'Value' => [ + 'description' => 'The value of the filter parameter.'."\n", + 'type' => 'string', + 'example' => ',', + ], + ], + ], + ], + 'InnerResult' => [ + 'type' => 'string', + ], + ], + ], + ], + 'Total' => [ + 'description' => 'The number of tasks.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '40', + ], + 'PageNo' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"List\\": [\\n {\\n \\"TaskId\\": \\"9a4f5c4494dbd6713185d87a97aa53e8\\",\\n \\"InstanceId\\": \\"r-bp1nti25tc7bq5****\\\\n\\",\\n \\"Name\\": \\"SQL审计导出1\\",\\n \\"Start\\": 1683859555482,\\n \\"End\\": 1705975320000,\\n \\"Status\\": \\"RUNNING\\",\\n \\"LogCount\\": 99999,\\n \\"Progress\\": 100,\\n \\"ScanFileSize\\": 3000,\\n \\"Expire\\": false,\\n \\"CreateTime\\": 1681363254423,\\n \\"AnalysisTaskFinishTime\\": 1712751923000,\\n \\"AnalysisTaskStatus\\": \\"SCAN_ANALYZE_COMPLETED\\",\\n \\"Result\\": \\"https://das-sqllog-download-cn-shanghai.oss-cn-shanghai.aliyuncs.com/la\\",\\n \\"TaskType\\": \\"Export\\",\\n \\"Filters\\": [\\n {\\n \\"Key\\": \\"keyWords\\\\n\\",\\n \\"Value\\": \\"select\\\\n\\"\\n }\\n ],\\n \\"InnerResult\\": \\"\\"\\n }\\n ],\\n \\"Total\\": 40,\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 10\\n }\\n}","type":"json"}]', + 'title' => 'DescribeSqlLogTasks', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an Alibaba Cloud SDK or a DAS SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n", + 'requestParamsDescription' => 'Supported parameters and values for **Key**:'."\n" + ."\n" + .'* **taskId**: the task ID.'."\n" + .'* **keyWords**: the task name.'."\n" + .'* **status**: the task state. Valid values: INIT, RUNNING, FAILED, CANCELED, and COMPLETED.'."\n", + ], + 'GetRedisAllSession' => [ + 'summary' => 'Queries the current session on an ApsaraDB for Redis instance.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '154787', + 'abilityTreeNodes' => [ + 'FEATUREhdmMEY212', + ], + ], + 'parameters' => [ + [ + 'name' => 'ConsoleContext', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'r-2zemyfd1sh1u2i****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The session data.'."\n", + 'type' => 'object', + 'properties' => [ + 'Timestamp' => [ + 'description' => 'The time when the instance sessions were returned. The value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1660100753556', + ], + 'Total' => [ + 'description' => 'The total number of sessions.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'Sessions' => [ + 'description' => 'The information about the sessions.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Sub' => [ + 'description' => 'The number of subscribed channels.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'Psub' => [ + 'description' => 'The number of subscriptions that match the pattern.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'Idle' => [ + 'description' => 'The duration during which the session is in the idle state. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '8', + ], + 'Flags' => [ + 'description' => 'The client flag. Valid values:'."\n" + ."\n" + .'* **A**: The connection needs to be closed at the earliest opportunity.'."\n" + .'* **b**: The client is waiting for blocked events.'."\n" + .'* **c**: The connection is closed after all replies are written.'."\n" + .'* **d**: The monitored keys have been modified, and the `EXEC` command is about to fail.'."\n" + .'* **i**: The client is waiting for VM I/O operations. This value is no longer used.'."\n" + .'* **M**: The client is the primary node.'."\n" + .'* **N**: No special flags are configured.'."\n" + .'* **O**: The client is in monitor mode.'."\n" + .'* **r**: The client is a cluster node in read-only mode.'."\n" + .'* **S**: The client is a replica node in normal mode.'."\n" + .'* **u**: The client is not blocked.'."\n" + .'* **U**: The client is connected by using UNIX domain sockets.'."\n" + .'* **x**: The client is executing a transaction.'."\n", + 'type' => 'string', + 'example' => 'N', + ], + 'Oll' => [ + 'description' => 'The number of objects contained in the output list.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'QbufFree' => [ + 'description' => 'The remaining size of the input buffer. Unit: bytes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'Multi' => [ + 'description' => 'The number of commands in `MULTI` or `EXEC`.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '-1', + ], + 'Omem' => [ + 'description' => 'The size of the output buffer. Unit: bytes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'Qbuf' => [ + 'description' => 'The size of the input buffer. Unit: bytes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'Name' => [ + 'description' => 'The name of the client.'."\n", + 'type' => 'string', + 'example' => 'test', + ], + 'Obl' => [ + 'description' => 'The size of the fixed output buffer. Unit: bytes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'Client' => [ + 'description' => 'The IP address of the client.'."\n", + 'type' => 'string', + 'example' => '172.16.XX.XX', + ], + 'Cmd' => [ + 'description' => 'The command that was last run.'."\n", + 'type' => 'string', + 'example' => 'PING', + ], + 'Id' => [ + 'description' => 'The client ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '9080586', + ], + 'Addr' => [ + 'description' => 'The IP address and port number of the client.'."\n", + 'type' => 'string', + 'example' => '172.16.XX.XX:53458', + ], + 'NodeId' => [ + 'description' => 'The node ID.'."\n", + 'type' => 'string', + 'example' => 'r-2zemyfd1sh1u2i****-proxy-14#1679****', + ], + 'Age' => [ + 'description' => 'The connection duration of the session. Unit: seconds.'."\n", + 'type' => 'string', + 'example' => '12', + ], + 'Db' => [ + 'description' => 'The ID of the database that the client is using.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'Events' => [ + 'description' => 'The file descriptor event. Valid values:'."\n" + ."\n" + .'* **r**: Client sockets are readable in the event loop.'."\n" + .'* **w**: Client sockets are writable in the event loop.'."\n", + 'type' => 'string', + 'example' => 'r', + ], + 'Fd' => [ + 'description' => 'The file descriptor that is used by sockets.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '73', + ], + 'ClientDesc' => [ + 'description' => 'The alias of the client.'."\n", + 'type' => 'string', + 'example' => 'prod ip', + ], + ], + ], + ], + 'SourceStats' => [ + 'description' => 'The statistics on the access source.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The access source.'."\n", + 'type' => 'string', + 'example' => '172.16.XX.XX', + ], + 'Count' => [ + 'description' => 'The total number of sessions from the access source.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'Ids' => [ + 'description' => 'The client IDs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The client ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '9080586', + ], + ], + ], + ], + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '40C6E9AF-6C23-5614-AA83-34344CC6****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"Timestamp\\": 1660100753556,\\n \\"Total\\": 2,\\n \\"Sessions\\": [\\n {\\n \\"Sub\\": 0,\\n \\"Psub\\": 0,\\n \\"Idle\\": 8,\\n \\"Flags\\": \\"N\\",\\n \\"Oll\\": 0,\\n \\"QbufFree\\": 0,\\n \\"Multi\\": -1,\\n \\"Omem\\": 0,\\n \\"Qbuf\\": 0,\\n \\"Name\\": \\"test\\",\\n \\"Obl\\": 0,\\n \\"Client\\": \\"172.16.XX.XX\\",\\n \\"Cmd\\": \\"PING\\",\\n \\"Id\\": 9080586,\\n \\"Addr\\": \\"172.16.XX.XX:53458\\",\\n \\"NodeId\\": \\"r-2zemyfd1sh1u2i****-proxy-14#1679****\\",\\n \\"Age\\": \\"12\\",\\n \\"Db\\": 0,\\n \\"Events\\": \\"r\\",\\n \\"Fd\\": 73,\\n \\"ClientDesc\\": \\"prod ip\\"\\n }\\n ],\\n \\"SourceStats\\": [\\n {\\n \\"Key\\": \\"172.16.XX.XX\\",\\n \\"Count\\": \\"1\\",\\n \\"Ids\\": [\\n 9080586\\n ]\\n }\\n ]\\n },\\n \\"RequestId\\": \\"40C6E9AF-6C23-5614-AA83-34344CC6****\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<GetRedisAllSessionResponse>\\n <Message>Successful</Message>\\n <RequestId>40C6E9AF-6C23-5614-AA83-34344CC6****</RequestId>\\n <Data>\\n <SourceStats>\\n <Ids>5</Ids>\\n <Count>1</Count>\\n <Key>11.200.XX.XX</Key>\\n </SourceStats>\\n <SourceStats>\\n <Ids>106909499</Ids>\\n <Count>1</Count>\\n <Key>127.0.XX.XX</Key>\\n </SourceStats>\\n <Total>2</Total>\\n <Sessions>\\n <Sub>0</Sub>\\n <Omem>0</Omem>\\n <Qbuf>0</Qbuf>\\n <Multi>-1</Multi>\\n <Flags>N</Flags>\\n <Oll>0</Oll>\\n <Addr>127.0.XX.XX:44019</Addr>\\n <Name/>\\n <Events>r</Events>\\n <Psub>0</Psub>\\n <Idle>1</Idle>\\n <Obl>0</Obl>\\n <Cmd>config</Cmd>\\n <Id>106909499</Id>\\n <Client>127.0.XX.XX</Client>\\n <Age>6101538</Age>\\n <Db>0</Db>\\n <Fd>6</Fd>\\n </Sessions>\\n <Sessions>\\n <Sub>0</Sub>\\n <Omem>0</Omem>\\n <Qbuf>0</Qbuf>\\n <Multi>-1</Multi>\\n <Flags>S</Flags>\\n <Oll>0</Oll>\\n <Addr>127.0.XX.XX:44019</Addr>\\n <Name/>\\n <Events>r</Events>\\n <Psub>0</Psub>\\n <Idle>1</Idle>\\n <Obl>0</Obl>\\n <Cmd>replconf</Cmd>\\n <Id>5</Id>\\n <Client>11.200.XX.XX</Client>\\n <Age>67387263</Age>\\n <Db>0</Db>\\n <Fd>10</Fd>\\n </Sessions>\\n <Timestamp>1663912392217</Timestamp>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</GetRedisAllSessionResponse>","errorExample":""}]', + 'title' => 'GetRedisAllSession', + 'description' => '* This operation is applicable only to ApsaraDB for Redis instances.'."\n" + .'* If you use an SDK to call operations of Database Autonomy Service (DAS), you must set the region ID to cn-shanghai.'."\n" + ."\n" + .'> This operation cannot be used to query sessions generated in direct connection mode on ApsaraDB for Redis cluster instances.'."\n", + ], + 'GetMongoDBCurrentOp' => [ + 'summary' => 'Queries the current sessions of an ApsaraDB for MongoDB (MongoDB) instance.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => ' '."\n" + .'dds-uf608087********', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The node ID.'."\n" + ."\n" + .'> If you do not specify a node ID, the sessions of the primary node are queried by default.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '23302531', + ], + ], + [ + 'name' => 'Role', + 'in' => 'query', + 'schema' => [ + 'description' => 'A reserved parameter. You do not need to specify the parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'FilterDoc', + 'in' => 'query', + 'schema' => [ + 'description' => 'The `db.currentOp()` command that is used to filter sessions. For more information, see [db.currentOp()](https://docs.mongodb.com/manual/reference/method/db.currentOp/) of MongoDB Documentation.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{ "active" : true }', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The response code.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. Otherwise, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The details of the sessions.'."\n", + 'type' => 'object', + 'properties' => [ + 'Timestamp' => [ + 'description' => 'The time when the database sessions were returned. The value is in the UNIX timestamp format. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1692029584428', + ], + 'SessionList' => [ + 'description' => 'The sessions.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'OpId' => [ + 'description' => 'The operation ID.'."\n", + 'type' => 'string', + 'example' => '14508', + ], + 'Active' => [ + 'description' => 'Indicates whether the operation is active. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Command' => [ + 'description' => 'The document that contains the complete command object associated with the operation.'."\n", + 'type' => 'string', + 'example' => '"command" : {'."\n" + .' "find" : "items",'."\n" + .' "filter" : {'."\n" + .' "sku" : 1403978'."\n" + .' },'."\n" + .' ...'."\n" + .' "$db" : "test"'."\n" + .'}', + ], + 'Op' => [ + 'description' => 'The type of the operation.'."\n", + 'type' => 'string', + 'example' => 'update', + ], + 'SecsRunning' => [ + 'description' => 'The duration of the operation. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '5', + ], + 'PlanSummary' => [ + 'description' => 'The description of the execution plan.'."\n", + 'type' => 'string', + 'example' => 'None', + ], + 'Host' => [ + 'description' => 'The host.'."\n", + 'type' => 'string', + 'example' => 'a79******.cloud.et15:3328', + ], + 'Client' => [ + 'description' => 'The IP address of the client.'."\n", + 'type' => 'string', + 'example' => '219.143.177.4:52324', + ], + 'Desc' => [ + 'description' => 'The description of the connection.'."\n", + 'type' => 'string', + 'example' => 'conn1013858', + ], + 'Ns' => [ + 'description' => 'The namespace.'."\n", + 'type' => 'string', + 'example' => 'admin.cmd', + ], + 'ConnectionId' => [ + 'description' => 'The connection ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '66378736', + ], + 'Driver' => [ + 'description' => 'The driver for MongoDB.'."\n", + 'type' => 'string', + 'example' => 'mongo-java-driver|[email protected]', + ], + 'OsType' => [ + 'description' => 'The type of the operating system.'."\n", + 'type' => 'string', + 'example' => 'Linux', + ], + 'OsName' => [ + 'description' => 'The name of the operating system.'."\n", + 'type' => 'string', + 'example' => 'Linux', + ], + 'OsArch' => [ + 'description' => 'The architecture of the operating system.'."\n", + 'type' => 'string', + 'example' => 'amd64', + ], + 'Platform' => [ + 'description' => 'The platform.'."\n", + 'type' => 'string', + 'example' => 'Java/Alibaba/1.8.0_152-b5', + ], + 'KillPending' => [ + 'description' => 'Indicates whether the operation is marked as terminated.'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Shard' => [ + 'description' => 'The ID of the data shard.'."\n" + ."\n" + .'> This parameter is returned for sharded cluster instances.'."\n", + 'type' => 'string', + 'example' => 'd-bp1689995b78****', + ], + ], + ], + ], + 'SessionStat' => [ + 'description' => 'The statistics on the sessions.'."\n", + 'type' => 'object', + 'properties' => [ + 'ActiveCount' => [ + 'description' => 'The number of active sessions.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'TotalCount' => [ + 'description' => 'The total number of sessions.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '55', + ], + 'LongestSecsRunning' => [ + 'description' => 'The longest duration of a session. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'ClientStats' => [ + 'description' => 'The statistics on the IP addresses of the clients.'."\n", + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'object', + 'properties' => [ + 'ActiveCount' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => 'The number of clients whose IP addresses are active.'."\n", + 'example' => '0', + ], + 'TotalCount' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => 'The total number of IP addresses of clients.'."\n", + 'example' => '11', + ], + ], + 'description' => 'The details of the IP addresses of the clients.'."\n", + ], + ], + 'DbStats' => [ + 'description' => 'The statistics on the namespaces.'."\n", + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'object', + 'properties' => [ + 'ActiveCount' => [ + 'type' => 'integer', + 'format' => 'int64', + 'description' => 'The number of active namespaces.'."\n", + 'example' => '0', + ], + 'TotalCount' => [ + 'type' => 'integer', + 'format' => 'int64', + 'example' => '11', + 'description' => 'The total number of namespaces.'."\n", + ], + ], + 'description' => 'The details of the namespaces.'."\n", + ], + ], + ], + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'FC6C0929-29E1-59FD-8DFE-70D9D41E****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"Timestamp\\": 1692029584428,\\n \\"SessionList\\": [\\n {\\n \\"OpId\\": \\"14508\\",\\n \\"Active\\": true,\\n \\"Command\\": \\"\\\\\\"command\\\\\\" : {\\\\n \\\\\\"find\\\\\\" : \\\\\\"items\\\\\\",\\\\n \\\\\\"filter\\\\\\" : {\\\\n \\\\\\"sku\\\\\\" : 1403978\\\\n },\\\\n ...\\\\n \\\\\\"$db\\\\\\" : \\\\\\"test\\\\\\"\\\\n}\\",\\n \\"Op\\": \\"update\\",\\n \\"SecsRunning\\": 5,\\n \\"PlanSummary\\": \\"None\\",\\n \\"Host\\": \\"a79****.cloud.et15:3328\\",\\n \\"Client\\": \\"219.143.XX.XX:52324\\",\\n \\"Desc\\": \\"conn1013858\\",\\n \\"Ns\\": \\"admin.cmd\\",\\n \\"ConnectionId\\": 66378736,\\n \\"Driver\\": \\"mongo-java-driver|[email protected]\\",\\n \\"OsType\\": \\"Linux\\",\\n \\"OsName\\": \\"Linux\\",\\n \\"OsArch\\": \\"AMD64\\",\\n \\"Platform\\": \\"Java/Alibaba/1.8.0_152-b5\\",\\n \\"KillPending\\": true,\\n \\"Shard\\": \\"d-bp1689995b78****\\"\\n }\\n ],\\n \\"SessionStat\\": {\\n \\"ActiveCount\\": 0,\\n \\"TotalCount\\": 11,\\n \\"LongestSecsRunning\\": 0,\\n \\"ClientStats\\": {\\n \\"key\\": {\\n \\"ActiveCount\\": 0,\\n \\"TotalCount\\": 11\\n }\\n },\\n \\"DbStats\\": {\\n \\"key\\": {\\n \\"ActiveCount\\": 0,\\n \\"TotalCount\\": 11\\n }\\n }\\n }\\n },\\n \\"RequestId\\": \\"FC6C0929-29E1-59FD-8DFE-70D9D41E****\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'GetMongoDBCurrentOp', + 'description' => '* This operation is applicable only to MongoDB instances.'."\n" + .'* If you use an Alibaba Cloud SDK or Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call API operations of DAS, you must set the region to cn-shanghai.'."\n", + 'responseParamsDescription' => 'For more information, see the data returned by running the currentOp command of MongoDB.'."\n", + ], + 'KillInstanceAllSession' => [ + 'summary' => 'Terminates all sessions on an instance.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'ConsoleContext', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'r-8vbcyr4sw0c4yc****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'example' => 'None', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": \\"None\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<KillInstanceAllSessionResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n</KillInstanceAllSessionResponse>","errorExample":""}]', + 'title' => 'KillInstanceAllSession', + 'description' => '* This operation is applicable only to ApsaraDB for Redis.'."\n" + .'* If you use Alibaba Cloud SDK, make sure that the aliyun-sdk-core version is later than V4.3.3. We recommend that you use the latest version.'."\n" + .'* The version of your Database Autonomy Service (DAS) SDK must be V1.0.2 or later.'."\n" + .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n", + ], + 'CreateKillInstanceSessionTask' => [ + 'summary' => 'Creates a task that terminates sessions.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze8g2am97624****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The node ID.'."\n" + ."\n" + .'> This parameter must be specified if the database instance is a PolarDB for MySQL cluster. If you do not specify a node ID and set **KillAllSessions** to **true**, the system traverses all nodes in the PolarDB for MySQL cluster and terminates the active sessions on each node.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'pi-bp1v203xzzh0a****', + ], + ], + [ + 'name' => 'DbUser', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database account that has the permissions to terminate sessions.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'testUser', + ], + ], + [ + 'name' => 'DbUserPassword', + 'in' => 'query', + 'schema' => [ + 'description' => 'The password of the database account.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'testPassword', + ], + ], + [ + 'name' => 'IgnoredUsers', + 'in' => 'query', + 'schema' => [ + 'description' => 'The account whose sessions do not need to be terminated.'."\n" + ."\n" + .'> Set this parameter to a JSON array. Separate database accounts with commas (,). Example: \\[\'Database account 1\',\'Database account 2\'].'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '[\'db_user1\',\'db_user2\']', + ], + ], + [ + 'name' => 'KillAllSessions', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to terminate all sessions.'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n" + ."\n" + .'> If you set this parameter to **true**, sessions of the accounts that are specified by **IgnoredUsers**, sessions of internal O\\&M accounts of Alibaba Cloud, and **Binlog Dump** sessions are not terminated.'."\n", + 'type' => 'boolean', + 'required' => true, + 'example' => 'true', + ], + ], + [ + 'name' => 'SessionIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The IDs of sessions that need to be terminated.'."\n" + ."\n" + .'> Set this parameter to a JSON array. Separate session IDs with commas (,). Example: \\[\'Session ID1\',\'Session ID2\']. If **KillAllSessions** is set to **true**, this parameter does not take effect.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '[10805639,10805623,10805645,10805553,10805566,10805616]', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, Successful is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The ID of the task that terminated the sessions.'."\n" + ."\n" + .'> If the sessions of a PolarDB for MySQL cluster were terminated, **NodeId** is left empty, and **KillAllSessions** is set to **true**, the task IDs are returned based on the number of nodes. Example: \\["f77d535b45405bd462b21caa3ee8\\*\\*\\*\\*", "e93ab549abb081eb5dcd5396a29b\\*\\*\\*\\*"].'."\n", + 'type' => 'string', + 'example' => 'f77d535b45405bd462b21caa3ee8****', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": \\"f77d535b45405bd462b21caa3ee8****\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<CreateKillInstanceSessionTaskResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>f77d535b45405bd462b21caa3ee8****</Data>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n</CreateKillInstanceSessionTaskResponse>","errorExample":""}]', + 'title' => 'CreateKillInstanceSessionTask', + 'description' => '* This operation is applicable only to ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters.'."\n" + .'* If you use an Alibaba Cloud SDK or a Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n", + ], + 'GetKillInstanceSessionTaskResult' => [ + 'summary' => 'Queries the results of a task that terminates sessions.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze1jdv45i7l6****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The node ID.'."\n" + ."\n" + .'> You must specify this parameter if your database instance is a PolarDB for MySQL cluster.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'pi-8vbkfj5a756um****', + ], + ], + [ + 'name' => 'TaskId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The task ID. You can obtain the task ID from the response parameters of the [CreateKillInstanceSessionTask](~~609246~~) operation.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'f77d535b45405bd462b21caa3ee8****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, Successful is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'TaskId' => [ + 'description' => 'The task ID.'."\n", + 'type' => 'string', + 'example' => 'f77d535b45405bd462b21caa3ee8****', + ], + 'UserId' => [ + 'description' => 'The ID of the Alibaba Cloud account.'."\n", + 'type' => 'string', + 'example' => '164882191396****', + ], + 'InstanceId' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'example' => 'rm-2ze1jdv45i7l6****', + ], + 'NodeId' => [ + 'description' => 'The node ID.'."\n" + ."\n" + .'> This parameter is returned only if the instance is a PolarDB for MySQL cluster.'."\n", + 'type' => 'string', + 'example' => 'pi-bp1h12rv501cv****', + ], + 'TaskState' => [ + 'description' => 'The state of the task that terminates sessions.'."\n" + ."\n" + .'* **RUNNING**: The task is in progress.'."\n" + .'* **SUCCESS**: The task is successful.'."\n" + .'* **FAILURE**: The task failed.'."\n" + .'* **ERROR**: Other errors occur.'."\n", + 'type' => 'string', + 'example' => 'SUCCESS', + ], + 'Sessions' => [ + 'description' => 'The session IDs.'."\n" + ."\n" + .'> If all sessions are terminated, the IDs of all sessions on the instance or node are returned.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The session ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '['."\n" + .'152,'."\n" + .'112,'."\n" + .'106,'."\n" + .'146,'."\n" + .'8357323,'."\n" + .'5697053,'."\n" + .'8357518,'."\n" + .'8357519,'."\n" + .'14964383'."\n" + .']', + ], + ], + 'KillSuccessCount' => [ + 'description' => 'The number of sessions that were terminated.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + ], + 'KillFailCount' => [ + 'description' => 'The number of sessions that failed to be terminated.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'IgnoredUserSessionCount' => [ + 'description' => 'The number of ignored sessions, including sessions of the accounts that are specified by IgnoredUsers, sessions of internal O\\&M accounts of Alibaba Cloud, and **Binlog Dump** sessions.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '9', + ], + 'Result' => [ + 'description' => 'The details of the task that terminated sessions.', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'description' => 'The session ID.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '8357518', + ], + 'User' => [ + 'description' => 'The account of the database.', + 'type' => 'string', + 'example' => 'testUser', + ], + 'Host' => [ + 'description' => 'The IP address and port number of the host that initiated the session.', + 'type' => 'string', + 'example' => '100.104.XX.XX:23428', + ], + 'Db' => [ + 'description' => 'The name of the database.', + 'type' => 'string', + 'example' => 'dbTest', + ], + 'Command' => [ + 'description' => 'The type of the command executed in the session.', + 'type' => 'string', + 'example' => 'Sleep', + ], + 'Time' => [ + 'description' => 'The execution duration. Unit: seconds.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'State' => [ + 'description' => 'The status of the session.', + 'type' => 'string', + 'example' => 'Sending data', + ], + 'Info' => [ + 'description' => 'The SQL statement executed in the session.', + 'type' => 'string', + 'example' => 'SELECT sleep(60)', + ], + 'Active' => [ + 'description' => 'Indicates whether the session is active.'."\n" + ."\n" + .'> If the type of the command is Query or Execute and the session in the transaction is not terminated, the session is active.', + 'type' => 'boolean', + 'example' => 'true', + ], + 'TaskId' => [ + 'description' => 'The ID of the subtask that terminates the session.', + 'type' => 'string', + 'example' => 'task_d9e94107-6116-4ac3-b874-81466aff****', + ], + 'Reason' => [ + 'description' => 'The description of the session when the session was terminated.'."\n" + ."\n" + .'* **SESSION_KILLED**: The session is terminated.'."\n" + .'* **SESSION_EXPIRED**: The session has expired.'."\n" + .'* **SESSION_NO_PERMISSION**: The account used to terminate the session has insufficient permissions.'."\n" + .'* **SESSION_ACCOUNT_ERROR**: The account or password used to terminate the session is invalid.'."\n" + .'* **SESSION_IGNORED_USER**: The session of the account does not need to be terminated.'."\n" + .'* **SESSION_INTERNAL_USER_OR_COMMAND**: The session is a session initiated by or a command run by an Alibaba Cloud O\\&M account.'."\n" + .'* **SESSION_KILL_TASK_TIMEOUT**: Timeout occurs when the session is terminated.'."\n" + .'* **SESSION_OTHER_ERROR**: Other errors occurred.', + 'type' => 'string', + 'example' => 'SESSION_KILLED', + ], + ], + ], + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"TaskId\\": \\"f77d535b45405bd462b21caa3ee8****\\",\\n \\"UserId\\": \\"164882191396****\\",\\n \\"InstanceId\\": \\"rm-2ze1jdv45i7l6****\\",\\n \\"NodeId\\": \\"pi-bp1h12rv501cv****\\",\\n \\"TaskState\\": \\"SUCCESS\\",\\n \\"Sessions\\": [\\n 0\\n ],\\n \\"KillSuccessCount\\": 100,\\n \\"KillFailCount\\": 0,\\n \\"IgnoredUserSessionCount\\": 9,\\n \\"Result\\": [\\n {\\n \\"Id\\": 8357518,\\n \\"User\\": \\"testUser\\",\\n \\"Host\\": \\"100.104.XX.XX:23428\\",\\n \\"Db\\": \\"dbTest\\",\\n \\"Command\\": \\"Sleep\\",\\n \\"Time\\": 1,\\n \\"State\\": \\"Sending data\\",\\n \\"Info\\": \\"SELECT sleep(60)\\",\\n \\"Active\\": true,\\n \\"TaskId\\": \\"task_d9e94107-6116-4ac3-b874-81466aff****\\",\\n \\"Reason\\": \\"SESSION_KILLED\\"\\n }\\n ]\\n },\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<GetKillInstanceSessionTaskResultResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>\\n <TaskId>f77d535b45405bd462b21caa3ee8****</TaskId>\\n <UserId>164882191396****</UserId>\\n <InstanceId>rm-2ze1jdv45i7l6****</InstanceId>\\n <TaskState>SUCCESS</TaskState>\\n <KillSuccessCount>100</KillSuccessCount>\\n <KillFailCount>0</KillFailCount>\\n <IgnoredUserSessionCount>9</IgnoredUserSessionCount>\\n <Result>\\n <Id>8357518</Id>\\n <User>testUser</User>\\n <Host>100.104.XX.XX:23428</Host>\\n <Db>dbTest</Db>\\n <Command>Sleep</Command>\\n <Time>1</Time>\\n <State>Sending data</State>\\n <Info>SELECT sleep(60)</Info>\\n <Active>true</Active>\\n <TaskId>task_d9e94107-6116-4ac3-b874-81466aff****</TaskId>\\n <Reason>SESSION_KILLED</Reason>\\n </Result>\\n </Data>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n</GetKillInstanceSessionTaskResultResponse>","errorExample":""}]', + 'title' => 'GetKillInstanceSessionTaskResult', + 'description' => '* This operation is applicable only to ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters.'."\n" + .'* If you use an Alibaba Cloud SDK or a Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n", + ], + 'GetMySQLAllSessionAsync' => [ + 'summary' => 'Asynchronously queries the sessions of an instance and collects statistics on the sessions based on dimensions.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n" + ."\n" + .'> Only ApsaraDB RDS for MySQL, PolarDB for MySQL, and PolarDB-X 2.0 instances are supported.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze8g2am97624****'."\n", + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The node ID.'."\n" + ."\n" + .'> You must specify this parameter for PolarDB for MySQL clusters. If you do not specify a node ID, the session data of the primary node is returned by default.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'pi-wz954ryd8f893****', + ], + ], + [ + 'name' => 'ResultId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The asynchronous request ID.'."\n" + ."\n" + .'> GetMySQLAllSessionAsync is an asynchronous operation. After a request is sent, the system does not return complete results but returns a **request ID**. You need to use the **request ID** to initiate requests until the value of the **isFinish** field in the returned results is **true**, the complete results are returned. This indicates that to obtain complete data, you must call this operation at least twice.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'async__507044db6c4eadfa2dab9b084e80****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'Fail' => [ + 'description' => 'Indicates whether the asynchronous request failed. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'SessionData' => [ + 'description' => 'The session data.'."\n", + 'type' => 'object', + 'properties' => [ + 'TotalSessionCount' => [ + 'description' => 'The total number of sessions.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '988', + ], + 'ActiveSessionCount' => [ + 'description' => 'The total number of active sessions.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'MaxActiveTime' => [ + 'description' => 'The maximum execution duration of an active session. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '6', + ], + 'SessionList' => [ + 'description' => 'The sessions.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'SessionId' => [ + 'description' => 'The session ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '14521783', + ], + 'User' => [ + 'description' => 'The username of the database account.'."\n", + 'type' => 'string', + 'example' => 'testUser', + ], + 'Client' => [ + 'description' => 'The IP address of the client.'."\n", + 'type' => 'string', + 'example' => '47.100.XX.XX', + ], + 'DbName' => [ + 'description' => 'The database name.'."\n", + 'type' => 'string', + 'example' => 'dbTest', + ], + 'Command' => [ + 'description' => 'The type of the command executed in the session.'."\n", + 'type' => 'string', + 'example' => 'Query', + ], + 'Time' => [ + 'description' => 'The execution duration of the session. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '6', + ], + 'State' => [ + 'description' => 'The status of the session.'."\n", + 'type' => 'string', + 'example' => 'starting', + ], + 'SqlText' => [ + 'description' => 'The SQL statement executed in the session.'."\n", + 'type' => 'string', + 'example' => 'INSERT INTO ...', + ], + 'UserClientAlias' => [ + 'description' => 'The alias of the IP address of the client.'."\n", + 'type' => 'string', + 'example' => 'master-shanghai', + ], + 'TrxId' => [ + 'description' => 'The ID of the transaction to which the session belongs.'."\n", + 'type' => 'string', + 'example' => '754300775132', + ], + 'TrxDuration' => [ + 'description' => 'The duration of the transaction. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '6', + ], + 'SqlTemplateId' => [ + 'description' => 'The SQL template ID.'."\n" + ."\n" + .'> This parameter is returned only when you use a PolarDB-X 2.0 instance.'."\n", + 'type' => 'string', + 'example' => 'a7cac1a9', + ], + ], + ], + ], + 'UserStats' => [ + 'description' => 'The sessions that are counted by database account.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The database account.'."\n", + 'type' => 'string', + 'example' => 'testUser', + ], + 'TotalCount' => [ + 'description' => 'The total number of sessions within the account.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'ActiveCount' => [ + 'description' => 'The number of active sessions within the account.'."\n" + ."\n" + .'> If the type of the command executed in the session is Query or Execute and the session in the transaction is not terminated, the session is active.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'ThreadIdList' => [ + 'description' => 'The IDs of the sessions within the account.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The session IDs.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '[14525727,14526269]', + ], + ], + 'UserList' => [ + 'description' => 'The database accounts to which the sessions belong.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The database account.'."\n", + 'type' => 'string', + 'example' => '[\'testUser\']', + ], + ], + ], + 'description' => '', + ], + ], + 'ClientStats' => [ + 'description' => 'The sessions that are counted by client IP address.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The IP address of the client.'."\n", + 'type' => 'string', + 'example' => '47.100.XX.XX', + ], + 'TotalCount' => [ + 'description' => 'The total number of sessions that belong to the client IP address.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'ActiveCount' => [ + 'description' => 'The number of active sessions that belong to the client IP address.'."\n" + ."\n" + .'> If the type of the command executed in the session is Query or Execute and the session in the transaction is not terminated, the session is active.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'ThreadIdList' => [ + 'description' => 'The IDs of the sessions that belong to the client IP address.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The session IDs.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '[14526018,14525956]', + ], + ], + 'UserList' => [ + 'description' => 'The database accounts to which the sessions belong.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The database account.'."\n", + 'type' => 'string', + 'example' => '[\'testUser\']', + ], + ], + ], + 'description' => '', + ], + ], + 'DbStats' => [ + 'description' => 'The sessions that are counted by database.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The database name.'."\n", + 'type' => 'string', + 'example' => 'dbTest', + ], + 'TotalCount' => [ + 'description' => 'The total number of sessions of the database.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'ActiveCount' => [ + 'description' => 'The number of active sessions of the database.'."\n" + ."\n" + .'> If the type of the command executed in the session is Query or Execute and the session in the transaction is not terminated, the session is active.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'ThreadIdList' => [ + 'description' => 'The IDs of the sessions of the database.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The session IDs.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '[14525727,14526269]', + ], + ], + 'UserList' => [ + 'description' => 'The database accounts to which the sessions belong.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The database account.'."\n", + 'type' => 'string', + 'example' => '[\'testUser\']', + ], + ], + ], + 'description' => '', + ], + ], + 'TimeStamp' => [ + 'description' => 'The time when the session was queried. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1659581514000020', + ], + ], + ], + 'ResultId' => [ + 'description' => 'The ID of the asynchronous request.'."\n", + 'type' => 'string', + 'example' => 'async__507044db6c4eadfa2dab9b084e80****', + ], + 'IsFinish' => [ + 'description' => 'Indicates whether the asynchronous request was complete. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'State' => [ + 'description' => 'The state of the asynchronous request. Valid values:'."\n" + ."\n" + .'* **RUNNING**'."\n" + .'* **SUCCESS**'."\n" + .'* **FAIL**'."\n", + 'type' => 'string', + 'example' => 'SUCCESS', + ], + 'Complete' => [ + 'description' => 'Indicates whether the asynchronous request was complete. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Timestamp' => [ + 'description' => 'The time when the asynchronous request was made. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1660100753556', + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"Fail\\": false,\\n \\"SessionData\\": {\\n \\"TotalSessionCount\\": 988,\\n \\"ActiveSessionCount\\": 10,\\n \\"MaxActiveTime\\": 6,\\n \\"SessionList\\": [\\n {\\n \\"SessionId\\": 14521783,\\n \\"User\\": \\"testUser\\",\\n \\"Client\\": \\"47.100.XX.XX\\",\\n \\"DbName\\": \\"dbTest\\",\\n \\"Command\\": \\"Query\\",\\n \\"Time\\": 6,\\n \\"State\\": \\"starting\\",\\n \\"SqlText\\": \\"INSERT INTO ...\\",\\n \\"UserClientAlias\\": \\"master-shanghai\\",\\n \\"TrxId\\": \\"754300775132\\",\\n \\"TrxDuration\\": 6,\\n \\"SqlTemplateId\\": \\"a7cac1a9\\"\\n }\\n ],\\n \\"UserStats\\": [\\n {\\n \\"Key\\": \\"testUser\\",\\n \\"TotalCount\\": 2,\\n \\"ActiveCount\\": 1,\\n \\"ThreadIdList\\": [\\n 0\\n ],\\n \\"UserList\\": [\\n \\"[\'testUser\']\\"\\n ]\\n }\\n ],\\n \\"ClientStats\\": [\\n {\\n \\"Key\\": \\"47.100.XX.XX\\",\\n \\"TotalCount\\": 2,\\n \\"ActiveCount\\": 1,\\n \\"ThreadIdList\\": [\\n 0\\n ],\\n \\"UserList\\": [\\n \\"[\'testUser\']\\"\\n ]\\n }\\n ],\\n \\"DbStats\\": [\\n {\\n \\"Key\\": \\"dbTest\\",\\n \\"TotalCount\\": 2,\\n \\"ActiveCount\\": 1,\\n \\"ThreadIdList\\": [\\n 0\\n ],\\n \\"UserList\\": [\\n \\"[\'testUser\']\\"\\n ]\\n }\\n ],\\n \\"TimeStamp\\": 1659581514000020\\n },\\n \\"ResultId\\": \\"async__507044db6c4eadfa2dab9b084e80****\\",\\n \\"IsFinish\\": true,\\n \\"State\\": \\"SUCCESS\\",\\n \\"Complete\\": true,\\n \\"Timestamp\\": 1660100753556\\n },\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<GetMySQLAllSessionAsyncResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>\\n <Fail>false</Fail>\\n <SessionData>\\n <TotalSessionCount>988</TotalSessionCount>\\n <ActiveSessionCount>10</ActiveSessionCount>\\n <MaxActiveTime>6</MaxActiveTime>\\n <SessionList>\\n <SessionId>14521783</SessionId>\\n <User>testUser</User>\\n <Client>47.100.XX.XX</Client>\\n <DbName>dbTest</DbName>\\n <Command>Query</Command>\\n <Time>6</Time>\\n <State>starting</State>\\n <SqlText>INSERT INTO ...</SqlText>\\n <UserClientAlias>master-shanghai</UserClientAlias>\\n <TrxId>754300775132</TrxId>\\n <TrxDuration>6</TrxDuration>\\n </SessionList>\\n <UserStats>\\n <Key>testUser</Key>\\n <TotalCount>984</TotalCount>\\n <ActiveCount>11</ActiveCount>\\n <UserList>[\'testUser\']</UserList>\\n </UserStats>\\n <ClientStats>\\n <Key>47.100.XX.XX</Key>\\n <TotalCount>50</TotalCount>\\n <ActiveCount>3</ActiveCount>\\n <UserList>[\'testUser\']</UserList>\\n </ClientStats>\\n <DbStats>\\n <Key>dbTest</Key>\\n <TotalCount>60</TotalCount>\\n <ActiveCount>5</ActiveCount>\\n <UserList>[\'testUser\']</UserList>\\n </DbStats>\\n <TimeStamp>1659581514000020</TimeStamp>\\n </SessionData>\\n <ResultId>async__507044db6c4eadfa2dab9b084e80****</ResultId>\\n <IsFinish>true</IsFinish>\\n <State>SUCCESS</State>\\n <Complete>true</Complete>\\n <Timestamp>1660100753556</Timestamp>\\n </Data>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n</GetMySQLAllSessionAsyncResponse>","errorExample":""}]', + 'title' => 'GetMySQLAllSessionAsync', + 'description' => '> GetMySQLAllSessionAsync is an asynchronous operation. After a request is sent, the system does not return complete results but returns a request ID. You need to use the request ID to initiate requests until the value of the **isFinish** field in the returned results is **true**, the complete results are returned. This indicates that to obtain complete data, you must call this operation at least twice.'."\n" + ."\n" + .'* This operation is applicable only to ApsaraDB RDS for MySQL instances, PolarDB for MySQL clusters, and PolarDB-X 2.0 instances.'."\n" + .'* If you use an Alibaba Cloud SDK or Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n", + ], + 'CreateStorageAnalysisTask' => [ + 'summary' => 'Creates a storage analysis task to query the usage details of one or more databases and tables.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze1jdv45i7l6****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The node ID. For ApsaraDB for MongoDB instances, you can use this parameter to specify a node for storage analysis. You can call the [DescribeRoleZoneInfo](~~123802~~) operation to query the information about nodes of an ApsaraDB for MongoDB instance.'."\n" + ."\n" + .'* If you set this parameter to a value in the **InsName** format, such as `d-bp1872fa24d5****`, you can call this operation to analyze the hidden node that corresponds to the node ID.'."\n" + .'* If you set this parameter to a value in the `InsName#RoleId` format, such as `d-bp1872fa24d5****#299****5`, you can call this operation to analyze the specified node.'."\n" + ."\n" + .'> If you run a storage analysis task on an ApsaraDB for MongoDB replica set instance and you do not specify this parameter, only the hidden node of the instance is analyzed by default. If you run a storage analysis task on an ApsaraDB for MongoDB sharded cluster instance, we recommend that you set this parameter to specify a node.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '23302528', + ], + ], + [ + 'name' => 'DbName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database name. If you specify a database, the operation analyzes the storage usage of the specified database.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'testdb01', + ], + ], + [ + 'name' => 'TableName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The table name. If you specify a table in the specified database, the operation analyzes the storage usage of the specified table. If you specify a table, you must also specify the database to which the table belongs by using **DbName**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test_table', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request is successful, **Successful** is returned. Otherwise, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'TaskId' => [ + 'description' => 'The task ID.'."\n", + 'type' => 'string', + 'example' => '910f83f4b96df0524ddc5749f61539f8', + ], + 'CreateTaskSuccess' => [ + 'description' => 'Indicates whether the task is created. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'ErrorMessage' => [ + 'description' => 'The error message returned.'."\n", + 'type' => 'string', + 'example' => 'unknown error', + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request is successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"TaskId\\": \\"910f83f4b96df0524ddc5749f61539f8\\",\\n \\"CreateTaskSuccess\\": false,\\n \\"ErrorMessage\\": \\"unknown error\\"\\n },\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'CreateStorageAnalysisTask', + 'description' => '* This operation is applicable only to ApsaraDB RDS for MySQL instances, PolarDB for MySQL clusters, and ApsaraDB for MongoDB instances.'."\n" + .'* For ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters, this operation works the same as the storage analysis feature of the previous version. Tasks generated by this operation cannot be viewed on the Storage Analysis page of the new version in the Database Autonomy Service (DAS) console. If you want to view the tasks and results, call the related API operation to obtain data and save data to your computer.'."\n" + .'* If you use an Alibaba Cloud SDK or DAS SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n", + ], + 'GetStorageAnalysisResult' => [ + 'summary' => 'Queries the status and results of a storage analysis task.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '204031', + 'abilityTreeNodes' => [ + 'FEATUREhdm3TU4OK', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-bp10xxxxxxxxx', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The node ID.'."\n" + ."\n" + .'> This parameter is reserved.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '202****', + ], + ], + [ + 'name' => 'TaskId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The task ID. You can obtain the task ID from the response of the [CreateStorageAnalysisTask](~~2639140~~) operation.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '910f83f4b96df0524ddc5749f615****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request is successful, **Successful** is returned. Otherwise, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'TaskId' => [ + 'description' => 'The task ID.'."\n", + 'type' => 'string', + 'example' => '910f83f4b96df0524ddc5749f615****', + ], + 'TaskFinish' => [ + 'description' => 'Indicates whether the task is complete.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'TaskSuccess' => [ + 'description' => 'Indicates whether the task is successful.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'TaskState' => [ + 'description' => 'The status of the storage analysis task. Valid values:'."\n" + ."\n" + .'* **INIT**: The task is being initialized.'."\n" + .'* **PENDING**: The task is being queued for execution.'."\n" + .'* **RECEIVED**: The task is received for execution.'."\n" + .'* **RUNNING**: The task is being executed.'."\n" + .'* **RETRY**: The task is being retried.'."\n" + .'* **SUCCESS**: The task succeeds.'."\n" + .'* **FAILURE**: The task fails.'."\n", + 'type' => 'string', + 'example' => 'RUNNING', + ], + 'TaskProgress' => [ + 'description' => 'The task progress.'."\n" + ."\n" + .'> Valid values are integers that range from 0 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '50', + ], + 'TotalDbCount' => [ + 'description' => 'The number of databases that need to be analyzed in the storage analysis task.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '32', + ], + 'AnalyzedDbCount' => [ + 'description' => 'The number of databases that have been analyzed.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'StorageAnalysisResult' => [ + 'description' => 'The details of storage analysis.'."\n", + 'type' => 'object', + 'properties' => [ + 'TotalStorageSize' => [ + 'description' => 'The total size of instance storage.'."\n" + ."\n" + .'> Unit: bytes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '214748364800', + ], + 'TotalUsedStorageSize' => [ + 'description' => 'The size of used storage.'."\n" + ."\n" + .'> Unit: bytes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '68345135104', + ], + 'TotalFreeStorageSize' => [ + 'description' => 'The size of remaining storage.'."\n" + ."\n" + .'> Unit: bytes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '146403229696', + ], + 'DailyIncrement' => [ + 'description' => 'The estimated average daily growth of the used storage space in the previous seven days. Unit: bytes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'EstimateAvailableDays' => [ + 'description' => 'The estimated number of days for which the remaining storage space is available.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '99', + ], + 'AnalysisSuccess' => [ + 'description' => 'Indicates whether the analysis on the database and table is successful.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'AnalysisErrorType' => [ + 'description' => 'The reason why the analysis on the database and table fails.'."\n" + ."\n" + .'* **DB_OR_TABLE_NOT_EXIST**: The specified database or table does not exist.'."\n" + .'* **DB_NOT_EXIST**: The specified database does not exist.'."\n", + 'type' => 'string', + 'example' => 'DB_NOT_EXIST', + ], + 'NeedOptimizeItemList' => [ + 'description' => 'The items to be optimized, which are generated based on DAS default rules. You can ignore these items based on your business requirements, and create custom rules to generate items to be optimized based on other basic data that is returned.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'DbName' => [ + 'description' => 'The name of the database.'."\n", + 'type' => 'string', + 'example' => 'testdb01', + ], + 'TableName' => [ + 'description' => 'The name of the table.'."\n", + 'type' => 'string', + 'example' => 'test_table', + ], + 'OptimizeItemName' => [ + 'description' => 'The item to be optimized. Valid values:'."\n" + ."\n" + .'* **NEED_ANALYZE_TABLE**: tables whose storage statistics obtained from `information_schema.tables` are 50 GB larger or smaller than the physical file sizes. This is applicable only to ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters.'."\n" + ."\n" + .'* **NEED_OPTIMIZE_TABLE**: tables whose space fragments are larger than 6 GB and whose fragmentation rates are greater than 30%. The fragmentation rate of a table is generally calculated based on the following formulas:'."\n" + ."\n" + .' * ApsaraDB RDS for MySQL and PolarDB for MySQL: `Fragmentation rate = DataFree/(DataSize + IndexSize + DataFree)`. In this topic, PhyTotalSize = DataSize + IndexSize + DataFree. Thus, the fragmentation rate can be calculated based on the following formula: `Fragmentation rate = DataFree/PhyTotalSize`.'."\n" + .' * ApsaraDB for MongoDB: `Fragmentation rate = FragmentSize/PhyTotalSize`.'."\n" + ."\n" + .'* **TABLE_ENGINE**: tables whose storage engines are not InnoDB or XEngine. This is applicable only to ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters.'."\n" + ."\n" + .'* **AUTO_INCREMENT_ID_BE_TO_RUN_OUT**: tables whose usages of auto-increment IDs exceed 80%. This is applicable only to ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters.'."\n" + ."\n" + .'* **DUPLICATE_INDEX**: tables whose indexes are redundant or duplicate. This is applicable only to ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters.'."\n" + ."\n" + .'* **TABLE_SIZE**: single tables whose sizes are larger than 50 GB. This is applicable only to ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters.'."\n" + ."\n" + .'* **TABLE_ROWS_AND_AVG_ROW_LENGTH**: single tables that contain more than 5 million rows and whose average row lengths exceed 10 KB. This is applicable only to ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters.'."\n" + ."\n" + .'* **TOTAL_DATA_FREE**: instances whose reclaimable space is larger than 60 GB and whose total fragmentation rate is larger than 5%.'."\n" + ."\n" + .'* **STORAGE_USED_PERCENT**: instances whose space usage is larger than 90%.'."\n", + 'type' => 'string', + 'example' => 'NEED_OPTIMIZE_TABLE', + ], + 'OptimizeAdvice' => [ + 'description' => 'The optimization suggestion. Valid values:'."\n" + ."\n" + .'* **NEED_ANALYZE_TABLE**: You can execute the `ANALYZE TABLE` statement on the table during off-peak hours. This is applicable only to ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters.'."\n" + .'* **NEED_OPTIMIZE_TABLE**: You can reclaim fragments during off-peak hours.'."\n" + .'* **CHANGE_TABLE_ENGINE_IF_NECESSARY**: Change the storage engine type of a table after risk assessment. This is applicable only to ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters.'."\n" + .'* **AUTO_INCREMENT_ID_BE_TO_RUN_OUT**: Pay attention to the usage of auto-increment IDs. This is applicable only to ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters.'."\n" + .'* **DUPLICATE_INDEX**: Optimize indexes of tables. This is applicable only to ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters.'."\n" + .'* **TABLE_SIZE**: Pay attention to the table size. This is applicable only to ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters.'."\n" + .'* **TABLE_ROWS_AND_AVG_ROW_LENGTH**: Pay attention to the number of rows in a table and the average row length. This is applicable only to ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters.'."\n" + .'* **STORAGE_USED_PERCENT**: Pay attention to the space usage to prevent the instance from being locked if the instance is full.'."\n", + 'type' => 'string', + 'example' => 'NEED_OPTIMIZE_TABLE', + ], + 'AssociatedData' => [ + 'description' => 'The data associated with the items to be optimized, which is in the JSON format.'."\n", + 'type' => 'string', + 'example' => '{'."\n" + .' "autoIncrementCurrentValue": 2147483647,'."\n" + .' "autoIncrementRatio": 1,'."\n" + .' "dbName": "testdb01",'."\n" + .' "maximumValue": 2147483647,'."\n" + .' "columnName": "id",'."\n" + .' "tableName": "test_table"'."\n" + .'}', + ], + ], + ], + ], + 'TableStats' => [ + 'description' => 'The information about the table.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'DbName' => [ + 'description' => 'The name of the database.'."\n", + 'type' => 'string', + 'example' => 'testdb01', + ], + 'TableName' => [ + 'description' => 'The name of the table.'."\n", + 'type' => 'string', + 'example' => 'test_table', + ], + 'TableType' => [ + 'description' => 'The type of the table.'."\n" + ."\n" + .'> This parameter is applicable only to ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters.'."\n", + 'type' => 'string', + 'example' => 'BASE TABLE', + ], + 'Engine' => [ + 'description' => 'The type of the storage engine used by the table.'."\n" + ."\n" + .'> This parameter is applicable only to ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters.'."\n", + 'type' => 'string', + 'example' => 'InnoDB', + ], + 'PhysicalFileSize' => [ + 'description' => 'The physical file size of the table. Unit: bytes.'."\n" + ."\n" + .'> This parameter is applicable only to ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters. Data of specific database instances cannot be obtained due to deployment mode.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '3057655808', + ], + 'PhyTotalSize' => [ + 'description' => 'The storage space of the table. Unit: bytes.'."\n" + ."\n" + .'> For ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters, the value of the parameter is the sum of **DataSize**, **IndexSize**, and **DataFree**. For ApsaraDB for MongoDB instances, the value of this parameter is the sum of **DataSize** and **IndexSize**.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '3012493312', + ], + 'TotalSize' => [ + 'description' => '* For ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters, this parameter indicates the amount of space occupied by table data and indexes. Unit: bytes. The value is the sum of **DataSize** and **IndexSize**.'."\n" + .'* For ApsaraDB for MongoDB instances, this parameter indicates the actual size of space allocated by Block Manager. Unit: Bytes. The compression ratio of an ApsaraDB for MongoDB instance is calculated based on the following formula: `Compression ratio = TotalSize/DataSize`.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '3005153280', + ], + 'IndexSize' => [ + 'description' => 'The storage space occupied by indexes. Unit: bytes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1022296064', + ], + 'DataSize' => [ + 'description' => '* For ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters, this parameter indicates the amount of space occupied by data. Unit: bytes.'."\n" + .'* For ApsaraDB for MongoDB instances, this parameter indicates the size of uncompressed data, that is, the amount of data. Unit: bytes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1982857216', + ], + 'DataFree' => [ + 'description' => 'The size of space fragments. Unit: bytes.'."\n" + ."\n" + .'> This parameter is applicable only to ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters. The fragmentation rate of a table is generally calculated based on the following formula: `Fragmentation rate = DataFree/(DataSize + IndexSize + DataFree)`. In this topic, `Fragmentation rate = DataFree/PhyTotalSize`.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '7340032', + ], + 'TableRows' => [ + 'description' => 'The number of rows in the table.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '12794732', + ], + 'AvgRowLength' => [ + 'description' => 'The average length of rows. Unit: bytes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '154', + ], + 'FragmentSize' => [ + 'description' => 'The size of space that can be reclaimed. Unit: bytes.'."\n" + ."\n" + .'> This parameter is applicable only to ApsaraDB for MongoDB instances. `Fragmentation rate = FragmentSize/PhyTotalSize`.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '362221568', + ], + ], + ], + ], + ], + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request is successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"TaskId\\": \\"910f83f4b96df0524ddc5749f615****\\",\\n \\"TaskFinish\\": true,\\n \\"TaskSuccess\\": true,\\n \\"TaskState\\": \\"SUCCESS\\",\\n \\"TaskProgress\\": 100,\\n \\"TotalDbCount\\": 32,\\n \\"AnalyzedDbCount\\": 2,\\n \\"StorageAnalysisResult\\": {\\n \\"TotalStorageSize\\": 214748364800,\\n \\"TotalUsedStorageSize\\": 68345135104,\\n \\"TotalFreeStorageSize\\": 146403229696,\\n \\"DailyIncrement\\": 0,\\n \\"EstimateAvailableDays\\": 99,\\n \\"AnalysisSuccess\\": true,\\n \\"AnalysisErrorType\\": \\"DB_NOT_EXIST\\",\\n \\"NeedOptimizeItemList\\": [\\n {\\n \\"DbName\\": \\"testdb01\\",\\n \\"TableName\\": \\"test_table\\",\\n \\"OptimizeItemName\\": \\"NEED_OPTIMIZE_TABLE\\",\\n \\"OptimizeAdvice\\": \\"NEED_OPTIMIZE_TABLE\\",\\n \\"AssociatedData\\": \\"{\\\\n \\\\\\"autoIncrementCurrentValue\\\\\\": 2147483647,\\\\n \\\\\\"autoIncrementRatio\\\\\\": 1,\\\\n \\\\\\"dbName\\\\\\": \\\\\\"testdb01\\\\\\",\\\\n \\\\\\"maximumValue\\\\\\": 2147483647,\\\\n \\\\\\"columnName\\\\\\": \\\\\\"id\\\\\\",\\\\n \\\\\\"tableName\\\\\\": \\\\\\"test_table\\\\\\"\\\\n}\\"\\n }\\n ],\\n \\"TableStats\\": [\\n {\\n \\"DbName\\": \\"testdb01\\",\\n \\"TableName\\": \\"test_table\\",\\n \\"TableType\\": \\"BASE TABLE\\",\\n \\"Engine\\": \\"InnoDB\\",\\n \\"PhysicalFileSize\\": 3057655808,\\n \\"PhyTotalSize\\": 3012493312,\\n \\"TotalSize\\": 3005153280,\\n \\"IndexSize\\": 1022296064,\\n \\"DataSize\\": 1982857216,\\n \\"DataFree\\": 7340032,\\n \\"TableRows\\": 12794732,\\n \\"AvgRowLength\\": 154,\\n \\"FragmentSize\\": 362221568\\n }\\n ]\\n }\\n },\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'GetStorageAnalysisResult', + 'description' => '> The physical file size indicates the actual size of an obtained file. Only specific deployment modes of database instances support the display of physical file sizes. The statistics on tables are obtained from `information_schema.tables`. Statistics in MySQL are not updated in real time. Therefore, the statistics may be different from the physical file sizes. If you want to obtain the latest data, you can execute the `ANALYZE TABLE` statement on the relevant tables during off-peak hours.'."\n" + ."\n" + .'* This operation is applicable only to ApsaraDB RDS for MySQL instances, PolarDB for MySQL clusters, and ApsaraDB for MongoDB instances.'."\n" + .'* For ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters, this operation works the same as the storage analysis feature of the previous version. Tasks generated by this operation cannot be viewed on the Storage Analysis page of the new version in the Database Autonomy Service (DAS) console. If you want to view the tasks and results, call the related API operation to obtain data and save data to your computer.'."\n" + .'* If you use an Alibaba Cloud SDK or DAS SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n", + ], + 'GetAutoIncrementUsageStatistic' => [ + 'summary' => 'Queries the usage of auto-increment table IDs.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze8g2am97624****', + ], + ], + [ + 'name' => 'DbNames', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database name. If you specify a database, the operation queries the usage of auto-increment table IDs in the specified database. Otherwise, the operation queries the usage of auto-increment table IDs in all databases on the instance.'."\n" + ."\n" + .'> Specify the parameter value as a JSON array, such as \\[\'db1\',\'db2\']. Separate multiple database names with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '[\'db1\',\'db2\']', + ], + ], + [ + 'name' => 'RatioFilter', + 'in' => 'query', + 'schema' => [ + 'description' => 'The usage threshold of auto-increment IDs. Only usage that exceeds the threshold can be returned. Valid values are decimals that range from 0 to 1.'."\n", + 'type' => 'number', + 'format' => 'double', + 'required' => true, + 'example' => '0.9', + ], + ], + [ + 'name' => 'RealTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to query real-time data. Valid values:'."\n" + ."\n" + .'* **true**: queries data in real time except for data generated in the last 10 minutes.****'."\n" + .'* **false**: queries data generated in the last 2 hours. If no such data exists, queries the latest data.'."\n", + 'type' => 'boolean', + 'required' => true, + 'example' => 'false', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request is successful, **Successful** is returned. Otherwise, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'Finish' => [ + 'description' => 'Indicates whether the task is complete. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'Timestamp' => [ + 'description' => 'The time when the request was made. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1697183353000', + ], + 'TaskStatus' => [ + 'description' => 'The task status. Valid values:'."\n" + ."\n" + .'* **INIT**: The task is being initialized.'."\n" + .'* **RUNNING**: The task is being executed.'."\n" + .'* **SUCCESS**: The task succeeds.'."\n" + .'* **FAIL**: The task fails.'."\n", + 'type' => 'string', + 'example' => 'INIT', + ], + 'ErrorInfo' => [ + 'description' => 'The error message returned if the task fails.'."\n", + 'type' => 'string', + 'example' => 'the given database name list invalid, none of the database names in the list exist on the instance', + ], + 'AutoIncrementUsageList' => [ + 'description' => 'The usage details of auto-increment IDs.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'DbName' => [ + 'description' => 'The database name.'."\n", + 'type' => 'string', + 'example' => 'db01', + ], + 'TableName' => [ + 'description' => 'The table name.'."\n", + 'type' => 'string', + 'example' => 'test_table', + ], + 'ColumnName' => [ + 'description' => 'The column name.'."\n", + 'type' => 'string', + 'example' => 'id', + ], + 'AutoIncrementCurrentValue' => [ + 'description' => 'The latest auto-increment ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2147483647', + ], + 'MaximumValue' => [ + 'description' => 'The maximum auto-increment ID that is supported by the current data type.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2147483647', + ], + 'AutoIncrementRatio' => [ + 'description' => 'The usage ratio of auto-increment IDs.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '1', + ], + ], + ], + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '0A74B755-98B7-59DB-8724-1321B394****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request is successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"Finish\\": false,\\n \\"Timestamp\\": 1697183353000,\\n \\"TaskStatus\\": \\"INIT\\",\\n \\"ErrorInfo\\": \\"the given database name list invalid, none of the database names in the list exist on the instance\\",\\n \\"AutoIncrementUsageList\\": [\\n {\\n \\"DbName\\": \\"db01\\",\\n \\"TableName\\": \\"test_table\\",\\n \\"ColumnName\\": \\"id\\",\\n \\"AutoIncrementCurrentValue\\": 2147483647,\\n \\"MaximumValue\\": 2147483647,\\n \\"AutoIncrementRatio\\": 1\\n }\\n ]\\n },\\n \\"RequestId\\": \\"0A74B755-98B7-59DB-8724-1321B394****\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'GetAutoIncrementUsageStatistic', + 'description' => '* This operation is applicable only to ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters.'."\n" + .'* If you use an Alibaba Cloud SDK or Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call DAS, you must set the region to cn-shanghai.'."\n", + ], + 'GetDeadLockDetailList' => [ + 'summary' => 'Queries the deadlock details of an ApsaraDB RDS for SQL Server instance.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'list', + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the database instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze2016723b328gs2', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1701755730292', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1702360530292', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. The value must be an integer that is greater than 0. Default value: 1.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 10.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '5', + ], + ], + [ + 'name' => 'DbNameList', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the database. When you specify multiple databases, you must separate the database names with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'school1,school2', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request is successful, **Successful** is returned. Otherwise, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'List' => [ + 'description' => 'The details of the data returned.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The details of the data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'BatchId' => [ + 'description' => 'The time when the data was collected. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1702301170701', + ], + 'BlockProcessList' => [ + 'description' => 'The blocking details of the instance. The details are information about the session that caused the lock.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ClientApp' => [ + 'description' => 'The name of the client that initiates the transaction in the session.'."\n", + 'type' => 'string', + 'example' => 'Microsoft SQL Server Management Studio - Query', + ], + 'HostName' => [ + 'description' => 'The hostname.'."\n", + 'type' => 'string', + 'example' => 'sd74020124', + ], + 'LastTranStarted' => [ + 'description' => 'The time when the transaction was started. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1702301152000', + ], + 'LockMode' => [ + 'description' => 'The mode of the lock. For more information, see [Lock modes](~~2362804~~).'."\n", + 'type' => 'string', + 'example' => 'U', + ], + 'LogUsed' => [ + 'description' => 'The size of the logs generated in the session. Unit: bytes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '352', + ], + 'LoginName' => [ + 'description' => 'The logon name of the user.'."\n", + 'type' => 'string', + 'example' => 'sd74020124\\\\Administrator', + ], + 'ObjectOwned' => [ + 'description' => 'The locked object.'."\n", + 'type' => 'string', + 'example' => 'school.dbo.test2', + ], + 'ObjectRequested' => [ + 'description' => 'The object that the transaction requested to lock.'."\n", + 'type' => 'string', + 'example' => 'school.dbo.test1', + ], + 'OwnMode' => [ + 'description' => 'The lock mode held by the session. For more information, see [Lock modes](~~2362804~~).'."\n", + 'type' => 'string', + 'example' => 'X', + ], + 'Spid' => [ + 'description' => 'The ID of the session in which the transaction is started.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '61', + ], + 'SqlText' => [ + 'description' => 'The SQL statement.'."\n", + 'type' => 'string', + 'example' => 'update test1 set col1 =9', + ], + 'Status' => [ + 'description' => 'The status of the transaction.'."\n", + 'type' => 'string', + 'example' => 'suspended', + ], + 'Victim' => [ + 'description' => 'Indicates whether the session is the victim of the deadlock. Valid values:'."\n" + ."\n" + .'* **0**: no.'."\n" + .'* **1**: yes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'WaitMode' => [ + 'description' => 'The lock mode requested by the session. For more information, see [Lock modes](~~2362804~~).'."\n", + 'type' => 'string', + 'example' => 'U', + ], + 'WaitResource' => [ + 'description' => 'The resources requested by the transaction.'."\n", + 'type' => 'string', + 'example' => 'RID: 5:1:312:0', + ], + 'WaitResourceDescription' => [ + 'description' => 'The details of the resources requested by the transaction.'."\n", + 'type' => 'string', + 'example' => 'RID:school:school.mdf:312:0', + ], + 'DatabaseName' => [ + 'description' => 'The name of the database.'."\n", + 'type' => 'string', + 'example' => 'school', + ], + ], + 'description' => '', + ], + ], + 'ClientApp' => [ + 'description' => 'The name of the client.'."\n", + 'type' => 'string', + 'example' => 'Microsoft SQL Server Management Studio - Query', + ], + 'HostName' => [ + 'description' => 'The hostname.'."\n", + 'type' => 'string', + 'example' => 'sd74020124', + ], + 'LastTranStarted' => [ + 'description' => 'The time when the transaction was started. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1702301141000', + ], + 'LockMode' => [ + 'description' => 'The mode of the lock. For more information, see [Lock modes](~~2362804~~).'."\n", + 'type' => 'string', + 'example' => 'U', + ], + 'LogUsed' => [ + 'description' => 'The size of the logs generated in the session. Unit: bytes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '352', + ], + 'LoginName' => [ + 'description' => 'The logon name of the user.'."\n", + 'type' => 'string', + 'example' => 'sd74020124\\\\Administrator', + ], + 'ObjectRequested' => [ + 'description' => 'The object that the transaction requested to lock.'."\n", + 'type' => 'string', + 'example' => 'school.dbo.test2', + ], + 'ObjectOwned' => [ + 'description' => 'The locked object.'."\n", + 'type' => 'string', + 'example' => 'school.dbo.test1', + ], + 'OwnMode' => [ + 'description' => 'The lock mode held by the session. For more information, see [Lock modes](~~2362804~~).'."\n", + 'type' => 'string', + 'example' => 'X', + ], + 'Spid' => [ + 'description' => 'The ID of the session in which the transaction is started.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '56', + ], + 'SqlText' => [ + 'description' => 'The SQL statement.'."\n", + 'type' => 'string', + 'example' => 'update test2 set col1 =88', + ], + 'Status' => [ + 'description' => 'The status of the transaction.'."\n", + 'type' => 'string', + 'example' => 'suspended', + ], + 'Victim' => [ + 'description' => 'Indicates whether the session is the victim of the deadlock. Valid values:'."\n" + ."\n" + .'* **0**: no.'."\n" + .'* **1**: yes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1'."\n", + ], + 'WaitMode' => [ + 'description' => 'The lock mode requested by the session. For more information, see [Lock modes](~~2362804~~).'."\n", + 'type' => 'string', + 'example' => 'U', + ], + 'WaitResource' => [ + 'description' => 'The resources requested by the transaction.'."\n", + 'type' => 'string', + 'example' => 'RID: 5:1:376:0', + ], + 'WaitResourceDescription' => [ + 'description' => 'The details of the resources requested by the transaction.'."\n", + 'type' => 'string', + 'example' => 'RID:school:school.mdf:376:0', + ], + 'DatabaseName' => [ + 'description' => 'The name of the database.'."\n", + 'type' => 'string', + 'example' => 'school', + ], + ], + ], + ], + 'PageNo' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'Total' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '840F51F7-9C01-538D-94F6-AE712905****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request is successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"List\\": [\\n {\\n \\"BatchId\\": 1702301170701,\\n \\"BlockProcessList\\": [\\n {\\n \\"ClientApp\\": \\"Microsoft SQL Server Management Studio - Query\\",\\n \\"HostName\\": \\"sd7402****\\",\\n \\"LastTranStarted\\": 1702301152000,\\n \\"LockMode\\": \\"U\\",\\n \\"LogUsed\\": 352,\\n \\"LoginName\\": \\"sd7402****\\\\\\\\\\\\\\\\Administrator\\",\\n \\"ObjectOwned\\": \\"testdb1.dbo.test2\\",\\n \\"ObjectRequested\\": \\"testdb1.dbo.test1\\",\\n \\"OwnMode\\": \\"X\\",\\n \\"Spid\\": 61,\\n \\"SqlText\\": \\"update test1 set col1 =9\\",\\n \\"Status\\": \\"suspended\\",\\n \\"Victim\\": 0,\\n \\"WaitMode\\": \\"U\\",\\n \\"WaitResource\\": \\"RID: 5:1:312:0\\",\\n \\"WaitResourceDescription\\": \\"RID:school:school.mdf:312:0\\",\\n \\"DatabaseName\\": \\"testdb1\\"\\n }\\n ],\\n \\"ClientApp\\": \\"Microsoft SQL Server Management Studio - Query\\",\\n \\"HostName\\": \\"sd7402****\\",\\n \\"LastTranStarted\\": 1702301141000,\\n \\"LockMode\\": \\"U\\",\\n \\"LogUsed\\": 352,\\n \\"LoginName\\": \\"sd7402****\\\\\\\\\\\\\\\\Administrator\\",\\n \\"ObjectRequested\\": \\"testdb1.dbo.test2\\",\\n \\"ObjectOwned\\": \\"testdb1.dbo.test1\\",\\n \\"OwnMode\\": \\"X\\",\\n \\"Spid\\": 56,\\n \\"SqlText\\": \\"update test2 set col1 =88\\",\\n \\"Status\\": \\"suspended\\",\\n \\"Victim\\": 1,\\n \\"WaitMode\\": \\"U\\",\\n \\"WaitResource\\": \\"RID: 5:1:376:0\\",\\n \\"WaitResourceDescription\\": \\"RID:school:school.mdf:376:0\\",\\n \\"DatabaseName\\": \\"testdb1\\"\\n }\\n ],\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 10,\\n \\"Total\\": 2\\n },\\n \\"RequestId\\": \\"840F51F7-9C01-538D-94F6-AE712905****\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]', + 'title' => 'GetDeadLockDetailList', + 'description' => '* This operation is applicable only to ApsaraDB RDS for SQL Server instances.'."\n" + .'* If you use an Alibaba Cloud SDK or Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call the API operations of DAS, you must set the region ID to cn-shanghai.'."\n", + ], + 'GetBlockingDetailList' => [ + 'summary' => 'Queries the blocking data of an ApsaraDB RDS for SQL Server instance.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'list', + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the database instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-t4nfalp2ap421312z', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1679429913757', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1682490480548', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. The value must be an integer that is greater than 0. Default value: 1.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. The value must be an integer that is greater than 0. Default value: 10.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'QueryHash', + 'in' => 'query', + 'schema' => [ + 'description' => 'The hash value of the SQL statement. The hash values of SQL statements of the same type are the same.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'DC08B955CAD25E7B', + ], + ], + [ + 'name' => 'DbNameList', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the database. Separate multiple database names with commas (,).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'school1,school2', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request is successful, **Successful** is returned. Otherwise, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'List' => [ + 'description' => 'The details of the data returned.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The details of the data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'BatchId' => [ + 'description' => 'The batch ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1683530096156', + ], + 'ClientAppName' => [ + 'description' => 'The client name.'."\n", + 'type' => 'string', + 'example' => '.Net SqlClient Data Provider', + ], + 'DataBase' => [ + 'description' => 'The name of the database.'."\n", + 'type' => 'string', + 'example' => 'school', + ], + 'HostName' => [ + 'description' => 'The client hostname.'."\n", + 'type' => 'string', + 'example' => 'ALLBNMGTAPPRD01', + ], + 'LoginId' => [ + 'description' => 'The username that is used for the logon.'."\n", + 'type' => 'string', + 'example' => 'Cheney603', + ], + 'QueryHash' => [ + 'description' => 'The hash value of the SQL statement.'."\n", + 'type' => 'string', + 'example' => '6977DD06CD9CAFF2', + ], + 'Spid' => [ + 'description' => 'The session ID.'."\n", + 'type' => 'string', + 'example' => '1717', + ], + 'SqlText' => [ + 'description' => 'The SQL statement.'."\n", + 'type' => 'string', + 'example' => 'select * from test1', + ], + 'StartTime' => [ + 'description' => 'The time when the execution started. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'string', + 'example' => '1608888296000', + ], + 'WaitTimeMs' => [ + 'description' => 'The duration of the blocking. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '30000', + ], + 'WaitType' => [ + 'description' => 'The wait type. For more information about wait types, see [sys.dm_os_wait_stats (Transact-SQL)](https://learn.microsoft.com/en-us/sql/relational-databases/system-dynamic-management-views/sys-dm-os-wait-stats-transact-sql?view=sql-server-ver15).'."\n", + 'type' => 'string', + 'example' => 'MISCELLANEOUS', + ], + 'CurrentCollectionTime' => [ + 'description' => 'The time when the blocking data was collected. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1700065800000', + ], + ], + ], + ], + 'PageNo' => [ + 'description' => 'The page number of the page returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => 'The number of entries returned on each page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'Total' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '19', + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"List\\": [\\n {\\n \\"BatchId\\": 1683530096156,\\n \\"ClientAppName\\": \\".Net SqlClient Data Provider\\",\\n \\"DataBase\\": \\"testdb1\\",\\n \\"HostName\\": \\"ALLBNMGTAPPRD01\\",\\n \\"LoginId\\": \\"Testuser\\",\\n \\"QueryHash\\": \\"DC08B955CAD25E7B\\",\\n \\"Spid\\": \\"1717\\",\\n \\"SqlText\\": \\"select * from test1\\",\\n \\"StartTime\\": \\"1608888296000\\",\\n \\"WaitTimeMs\\": 30000,\\n \\"WaitType\\": \\"MISCELLANEOUS\\",\\n \\"CurrentCollectionTime\\": 1700065800000\\n }\\n ],\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 10,\\n \\"Total\\": 19\\n },\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]', + 'title' => 'GetBlockingDetailList', + 'description' => '* This operation is applicable only to ApsaraDB RDS for SQL Server instances.'."\n" + .'* If you use an Alibaba Cloud SDK or Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call the API operations of DAS, you must set the region ID to cn-shanghai.'."\n", + ], + 'CreateLatestDeadLockAnalysis' => [ + 'summary' => 'Creates a recent deadlock analysis task.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREhdm7GLEEO', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'pc-bp1u5mas9exx7****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'pi-bp16v3824rt73****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => '', + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'description' => '', + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": true,\\n \\"Data\\": true\\n}","type":"json"}]', + 'title' => 'CreateLatestDeadLockAnalysis', + ], + 'GetDeadLockHistory' => [ + 'summary' => 'Queries the historical tasks of recent deadlock analysis and full deadlock analysis.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREhdm7GLEEO', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'pc-bp1u5mas9exx7****'."\n", + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'pi-bp16v3824rt73****', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1731983066000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1732069466000', + ], + ], + [ + 'name' => 'Source', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'AUTO', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Message' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'Successful', + ], + 'Synchro' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'None', + ], + 'Data' => [ + 'description' => '', + 'type' => 'string', + 'example' => '{'."\n" + .' "total": 2,'."\n" + .' "list": ['."\n" + .' {'."\n" + .' "accountId": "108************",'."\n" + .' "textId": "35303d12d52d29ba73bb85fa2d5b****",'."\n" + .' "gmtModified": 1732712680000,'."\n" + .' "lockTime": 1732687047000,'."\n" + .' "gmtCreate": 1732712680000,'."\n" + .' "nodeId": "pi-8****************",'."\n" + .' "uuid": "pc-8v**************"'."\n" + .' },'."\n" + .' {'."\n" + .' "accountId": "108************",'."\n" + .' "textId": "50a24bdcc5fe7e03f92a55ae7574****",'."\n" + .' "gmtModified": 1732626448000,'."\n" + .' "lockTime": 1722500305000,'."\n" + .' "gmtCreate": 1732626448000,'."\n" + .' "nodeId": "pi-8****************",'."\n" + .' "uuid": "pc-8v**************"'."\n" + .' }'."\n" + .' ]'."\n" + .'}', + ], + 'Code' => [ + 'description' => '', + 'type' => 'string', + 'example' => '200', + ], + 'Success' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'true', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Synchro\\": \\"None\\",\\n \\"Data\\": \\"{\\\\n \\\\\\"total\\\\\\": 2,\\\\n \\\\\\"list\\\\\\": [\\\\n {\\\\n \\\\\\"accountId\\\\\\": \\\\\\"108************\\\\\\",\\\\n \\\\\\"textId\\\\\\": \\\\\\"35303d12d52d29ba73bb85fa2d5b****\\\\\\",\\\\n \\\\\\"gmtModified\\\\\\": 1732712680000,\\\\n \\\\\\"lockTime\\\\\\": 1732687047000,\\\\n \\\\\\"gmtCreate\\\\\\": 1732712680000,\\\\n \\\\\\"nodeId\\\\\\": \\\\\\"pi-8****************\\\\\\",\\\\n \\\\\\"uuid\\\\\\": \\\\\\"pc-8v**************\\\\\\"\\\\n },\\\\n {\\\\n \\\\\\"accountId\\\\\\": \\\\\\"108************\\\\\\",\\\\n \\\\\\"textId\\\\\\": \\\\\\"50a24bdcc5fe7e03f92a55ae7574****\\\\\\",\\\\n \\\\\\"gmtModified\\\\\\": 1732626448000,\\\\n \\\\\\"lockTime\\\\\\": 1722500305000,\\\\n \\\\\\"gmtCreate\\\\\\": 1732626448000,\\\\n \\\\\\"nodeId\\\\\\": \\\\\\"pi-8****************\\\\\\",\\\\n \\\\\\"uuid\\\\\\": \\\\\\"pc-8v**************\\\\\\"\\\\n }\\\\n ]\\\\n}\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]', + 'title' => 'GetDeadLockHistory', + ], + 'GetDeadLockDetail' => [ + 'summary' => 'Queries the details of a deadlock.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREhdm7GLEEO', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'pc-bp1u5mas9exx7****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'pi-bp16v3824rt73****', + ], + ], + [ + 'name' => 'TextId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'a0e390cd5aca9ae964448f040153****', + ], + ], + [ + 'name' => 'Source', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'AUTO', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '', + 'type' => 'string', + 'example' => '9CB97BC4-6479-55D0-B9D0-EA925AFE****', + ], + 'Message' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'Successful', + ], + 'Synchro' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'None', + ], + 'Data' => [ + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + 'Code' => [ + 'description' => '', + 'type' => 'string', + 'example' => '200', + ], + 'Success' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'true', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9CB97BC4-6479-55D0-B9D0-EA925AFE****\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Synchro\\": \\"None\\",\\n \\"Data\\": \\"{\\\\n \\\\\\"accountId\\\\\\": \\\\\\"108************\\\\\\",\\\\n \\\\\\"textId\\\\\\": \\\\\\"35303d12d52d29ba73bb************\\\\\\",\\\\n \\\\\\"gmtModified\\\\\\": 1732712680000,\\\\n \\\\\\"originText\\\\\\": \\\\\\"LATEST DETECTED DEADLOCK****\\\\\\",\\\\n \\\\\\"deadlock\\\\\\": \\\\\\"{\\\\\\\\\\\\\\"id\\\\\\\\\\\\\\":0,\\\\\\\\\\\\\\"occurTime\\\\\\\\\\\\\\":1732687047000,\\\\\\\\\\\\\\"originTextId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"35303d12d52d29ba73bb************\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"rollbackTrxId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"2\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"transactions\\\\\\\\\\\\\\":[{\\\\\\\\\\\\\\"deadlockIdInDB\\\\\\\\\\\\\\":0,\\\\\\\\\\\\\\"ip\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"100.***.***.***\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"lockWait\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"index PRIMARY of table `das`.`students` trx id 15989454 lock_mode X locks rec but not gap waiting\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"queryId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"386737457\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"queryType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"updating\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"relatedTables\\\\\\\\\\\\\\":[\\\\\\\\\\\\\\"`das`.`students`\\\\\\\\\\\\\\"],\\\\\\\\\\\\\\"sqlText\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"update students set name=UUID() where id = 2 \\\\\\\\\\\\\\",\\\\\\\\\\\\\\"tableNamesString\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"`das`.`students`\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"threadId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"9194526\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"transactionId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"15989454\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"trxIdInLock\\\\\\\\\\\\\\":1,\\\\\\\\\\\\\\"userName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"das\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"waitLockIndexName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"PRIMARY \\\\\\\\\\\\\\",\\\\\\\\\\\\\\"waitLockMode\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"X locks rec but not gap waiting\\\\\\\\\\\\\\"},{\\\\\\\\\\\\\\"deadlockIdInDB\\\\\\\\\\\\\\":0,\\\\\\\\\\\\\\"holdLockIndexName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"PRIMARY \\\\\\\\\\\\\\",\\\\\\\\\\\\\\"holdLockMode\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"X locks rec but not gap\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"ip\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"100.***.***.***\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"lockHold\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"index PRIMARY of table `das`.`students` trx id 15989451 lock_mode X locks rec but not gap\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"lockWait\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"index PRIMARY of table `das`.`students` trx id 15989451 lock_mode X locks rec but not gap waiting\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"queryId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"386737566\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"queryType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"updating\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"relatedTables\\\\\\\\\\\\\\":[\\\\\\\\\\\\\\"`das`.`students`\\\\\\\\\\\\\\"],\\\\\\\\\\\\\\"sqlText\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"update students set name=UUID() where id = 3 \\\\\\\\\\\\\\",\\\\\\\\\\\\\\"tableNamesString\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"`das`.`students`\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"threadId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"9194501\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"transactionId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"15989451\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"trxIdInLock\\\\\\\\\\\\\\":2,\\\\\\\\\\\\\\"userName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"das\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"waitLockIndexName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"PRIMARY \\\\\\\\\\\\\\",\\\\\\\\\\\\\\"waitLockMode\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"X locks rec but not gap waiting\\\\\\\\\\\\\\"}],\\\\\\\\\\\\\\"trxNum\\\\\\\\\\\\\\":2}\\\\\\",\\\\n \\\\\\"gmtCreate\\\\\\": 1732712680000,\\\\n \\\\\\"nodeId\\\\\\": \\\\\\"pi-8****************\\\\\\",\\\\n \\\\\\"uuid\\\\\\": \\\\\\"pc-8v***************\\\\\\"\\\\n}\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]', + 'title' => 'GetDeadLockDetail', + ], + 'GetDeadlockHistogram' => [ + 'summary' => 'Queries the trend of the number of deadlocks in full deadlock analysis within a specified period of time.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '208479', + 'abilityTreeNodes' => [ + 'FEATUREhdm7GLEEO', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'pc-bp1u5mas9exx7****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'pi-bp16v3824rt73****', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1731983066000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1732069466000', + ], + ], + [ + 'name' => 'Status', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'SUCCESS', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => '', + 'type' => 'string', + 'example' => '0A74B755-98B7-59DB-8724-1321B394****', + ], + 'Success' => [ + 'description' => '', + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'title' => 'List<DeadlockTrendItem>', + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'UserId' => [ + 'title' => '用户ID', + 'description' => '', + 'type' => 'string', + 'example' => '108************', + ], + 'InstanceId' => [ + 'title' => '实例ID', + 'description' => '', + 'type' => 'string', + 'example' => 'pc-bp1u5mas9exx7****', + ], + 'NodeId' => [ + 'title' => '子实例名称,对polar集群使用', + 'description' => '', + 'type' => 'string', + 'example' => 'pi-bp16v3824rt73****', + ], + 'TaskId' => [ + 'title' => '死锁任务ID', + 'description' => '', + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-1321B394****', + ], + 'StartTime' => [ + 'title' => '诊断范围开始时间', + 'description' => '', + 'type' => 'string', + 'example' => '1729994400000', + ], + 'EndTime' => [ + 'title' => '诊断范围结束时间', + 'description' => '', + 'type' => 'string', + 'example' => '1729998000000', + ], + 'LockNumber' => [ + 'title' => '死锁数量', + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'Status' => [ + 'title' => '任务状态 (SUCCESS: 诊断完成, FAILED: 诊断异常/失败)', + 'description' => '', + 'type' => 'string', + 'example' => 'SUCCESS', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"0A74B755-98B7-59DB-8724-1321B394****\\",\\n \\"Success\\": true,\\n \\"Data\\": [\\n {\\n \\"UserId\\": \\"108************\\",\\n \\"InstanceId\\": \\"pc-bp1u5mas9exx7****\\",\\n \\"NodeId\\": \\"pi-bp16v3824rt73****\\",\\n \\"TaskId\\": \\"B6D17591-B48B-4D31-9CD6-1321B394****\\",\\n \\"StartTime\\": \\"1729994400000\\",\\n \\"EndTime\\": \\"1729998000000\\",\\n \\"LockNumber\\": 2,\\n \\"Status\\": \\"SUCCESS\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'GetDeadlockHistogram', + ], + 'GetInstanceMissingIndexList' => [ + 'summary' => 'Queries the details of all missing indexes of an instance.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'list', + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database instance ID.'."\n" + ."\n" + .'> Only ApsaraDB RDS for SQL Server instances are supported.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-************', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 10.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'ObjectName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The object name.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'bas_customer', + ], + ], + [ + 'name' => 'ReservedSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The query condition based on the table size.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '>=|100', + ], + ], + [ + 'name' => 'RowCount', + 'in' => 'query', + 'schema' => [ + 'description' => 'The query condition based on the number of table rows.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '>=|100000', + ], + ], + [ + 'name' => 'ReservedPages', + 'in' => 'query', + 'schema' => [ + 'description' => 'The query condition based on the total number of pages.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '>=|100', + ], + ], + [ + 'name' => 'IndexCount', + 'in' => 'query', + 'schema' => [ + 'description' => 'The query condition based on the number of indexes.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '>=|8', + ], + ], + [ + 'name' => 'UniqueCompiles', + 'in' => 'query', + 'schema' => [ + 'description' => 'The query condition based on the number of compilations.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '>=|10000', + ], + ], + [ + 'name' => 'UserSeeks', + 'in' => 'query', + 'schema' => [ + 'description' => 'The query condition based on the number of seeks.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '>=|1000', + ], + ], + [ + 'name' => 'UserScans', + 'in' => 'query', + 'schema' => [ + 'description' => 'The query condition based on the number of scans.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '>=|10000', + ], + ], + [ + 'name' => 'AvgTotalUserCost', + 'in' => 'query', + 'schema' => [ + 'description' => 'The query condition based on the average cost savings.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '<=|8', + ], + ], + [ + 'name' => 'AvgUserImpact', + 'in' => 'query', + 'schema' => [ + 'description' => 'The query condition based on the performance improvement.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '>|10000', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start time of the last seek.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1679414400000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end time of the last seek.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1681869544000', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The detailed information.'."\n", + 'type' => 'object', + 'properties' => [ + 'List' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'AvgTotalUserCost' => [ + 'description' => 'The average cost savings.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '4.67', + ], + 'AvgUserImpact' => [ + 'description' => 'The performance improvement, in percentage.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '98.3'."\n", + ], + 'DatabaseName' => [ + 'description' => 'The database name.'."\n", + 'type' => 'string', + 'example' => 'school', + ], + 'EqualityColumns' => [ + 'description' => 'The index columns included in the equal operation.'."\n", + 'type' => 'string', + 'example' => 'col1,col2,col3', + ], + 'IncludedColumns' => [ + 'description' => 'The columns on which indexes are missing.'."\n", + 'type' => 'string', + 'example' => 'col3,col4', + ], + 'IndexCount' => [ + 'description' => 'The number of indexes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'LastUserSeek' => [ + 'description' => 'The last seek time of a user.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1702023327000', + ], + 'ObjectName' => [ + 'description' => 'The object name.'."\n", + 'type' => 'string', + 'example' => 'stu', + ], + 'ReservedPages' => [ + 'description' => 'The total number of returned pages.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '5025', + ], + 'ReservedSize' => [ + 'description' => 'The table size.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '39.26', + ], + 'RowCount' => [ + 'description' => 'The number of table rows.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '226945', + ], + 'SchemaName' => [ + 'description' => 'The schema name.'."\n", + 'type' => 'string', + 'example' => 'dbo', + ], + 'SystemScans' => [ + 'description' => 'The number of scans.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'SystemSeeks' => [ + 'description' => 'The number of seeks.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'UniqueCompiles' => [ + 'description' => 'The number of compilations.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2392', + ], + 'UserScans' => [ + 'description' => 'The number of scans performed by users.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'UserSeeks' => [ + 'description' => 'The number of seeks performed by users.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1081', + ], + 'InequalityColumns' => [ + 'description' => 'The index columns included in the not equal operation.'."\n", + 'type' => 'string', + 'example' => '2392', + ], + 'CreateIndex' => [ + 'description' => 'The statement used to create the missing indexes.'."\n", + 'type' => 'string', + 'example' => 'CREATE INDEX [IX_CLOUDDBA_school_dbo_stu@col1_@col2] ON [school].[dbo].[stu]([col1],[col2],[col3]) INCLUDE ([col4],[col5]) WITH (FILLFACTOR = 90, ONLINE = OFF);', + ], + ], + ], + ], + 'PageNo' => [ + 'description' => 'The page number of the page returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'Total' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '16', + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '0A74B755-98B7-59DB-8724-1321B394****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request is successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"List\\": [\\n {\\n \\"AvgTotalUserCost\\": 4.67,\\n \\"AvgUserImpact\\": 98.3,\\n \\"DatabaseName\\": \\"testdb\\",\\n \\"EqualityColumns\\": \\"col1,col2,col3\\",\\n \\"IncludedColumns\\": \\"col3,col4\\",\\n \\"IndexCount\\": 1,\\n \\"LastUserSeek\\": 1702023327000,\\n \\"ObjectName\\": \\"stu\\",\\n \\"ReservedPages\\": 5025,\\n \\"ReservedSize\\": 39.26,\\n \\"RowCount\\": 226945,\\n \\"SchemaName\\": \\"dbo\\",\\n \\"SystemScans\\": 0,\\n \\"SystemSeeks\\": 0,\\n \\"UniqueCompiles\\": 2392,\\n \\"UserScans\\": 0,\\n \\"UserSeeks\\": 1081,\\n \\"InequalityColumns\\": \\"2392\\",\\n \\"CreateIndex\\": \\"CREATE INDEX [IX_CLOUDDBA_school_dbo_stu@col1_@col2] ON [school].[dbo].[stu]([col1],[col2],[col3]) INCLUDE ([col4],[col5]) WITH (FILLFACTOR = 90, ONLINE = OFF);\\"\\n }\\n ],\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 10,\\n \\"Total\\": 16\\n },\\n \\"RequestId\\": \\"0A74B755-98B7-59DB-8724-1321B394****\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]', + 'title' => 'GetInstanceMissingIndexList', + 'description' => '* This operation is applicable only to ApsaraDB RDS for SQL Server instances.'."\n" + .'* If you use an Alibaba Cloud SDK or Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call the API operations of DAS, you must set the region ID to cn-shanghai.'."\n", + ], + 'DescribeSlowLogHistogramAsync' => [ + 'summary' => 'Asynchronously queries the trend data of slow query logs of an instance.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '236527', + 'abilityTreeNodes' => [ + 'FEATUREhdmR88NLD', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze8g2am97624****'."\n", + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'r-****-db-0', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1596177993000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1662518540764', + ], + ], + [ + 'name' => 'Filters', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'title' => '过滤参数', + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + 'Value' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 100, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => '', + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'true', + ], + 'Data' => [ + 'title' => 'AsyncResult<Histogram>', + 'description' => 'AsyncResult<Histogram>。', + 'type' => 'object', + 'properties' => [ + 'RequestKey' => [ + 'title' => '请求参数的Key', + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + 'ResultId' => [ + 'title' => '结果ID', + 'description' => '', + 'type' => 'string', + 'example' => 'async__20ee808e72257f16a4fe024057ca****', + ], + 'State' => [ + 'title' => '当前状态 (RUNNING: 正在运行, SUCCESS: 成功, FAIL: 失败)', + 'description' => '', + 'type' => 'string', + 'example' => 'SUCCESS', + ], + 'IsFinish' => [ + 'title' => '是否完成', + 'description' => '', + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'title' => '数据', + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Total' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Count' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + ], + ], + 'Ts' => [ + 'title' => '关系型数据库只使用这个', + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '['."\n" + .' 1735098480000,'."\n" + .' 1735098540000,'."\n" + .' 1735098600000,'."\n" + .' 1735098660000,'."\n" + .' 1735098720000,'."\n" + .' 1735098780000'."\n" + .' ]', + ], + ], + 'TsEnd' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '', + ], + ], + 'Item' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'NodeId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'r-bp1hi0wg57s3n0i3n8-db-0', + ], + 'Count' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + ], + ], + 'InsItems' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'InsId' => [ + 'description' => '', + 'type' => 'string', + 'example' => '2492', + ], + 'InsRole' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'userAdmin', + ], + 'Count' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + ], + 'TotalCount' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + ], + ], + ], + 'TotalCount' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + 'InsRole' => [ + 'type' => 'string', + ], + ], + ], + ], + 'Rt' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '['."\n" + .' 2.306,'."\n" + .' 1.141,'."\n" + .' 0.0,'."\n" + .' 4.538,'."\n" + .' 1.247,'."\n" + .' 1.972'."\n" + .' ]', + ], + ], + 'AvgRt' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '['."\n" + .' 1.593,'."\n" + .' 2.306,'."\n" + .' 1.141,'."\n" + .' 0.0,'."\n" + .' 1.5127,'."\n" + .' 1.247'."\n" + .' ]', + ], + ], + 'MaxRt' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '['."\n" + .' 1.593,'."\n" + .' 2.306,'."\n" + .' 1.141,'."\n" + .' 14.115'."\n" + .' 0.0,'."\n" + .' 1.972'."\n" + .' ]', + ], + ], + 'LockTime' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '['."\n" + .' 1.051,'."\n" + .' 1.007,'."\n" + .' 0.0,'."\n" + .' 0.755,'."\n" + .' 0.096,'."\n" + .' 0.0'."\n" + .' ]', + ], + ], + 'AvgLockTime' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '['."\n" + .' 1.051,'."\n" + .' 0.0,'."\n" + .' 0.3357,'."\n" + .' 0.755,'."\n" + .' 0.324,'."\n" + .' 0.814'."\n" + .' ]', + ], + ], + 'MaxLockTime' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '['."\n" + .' 1.051,'."\n" + .' 1.007,'."\n" + .' 0.755,'."\n" + .' 0.0,'."\n" + .' 0.05,'."\n" + .' 0.656'."\n" + .' ]', + ], + ], + 'RowsExamined' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '['."\n" + .' 256,'."\n" + .' 1,'."\n" + .' 512,'."\n" + .' 0,'."\n" + .' 1476678,'."\n" + .' 24430'."\n" + .' ]', + ], + ], + 'AvgRowsExamined' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '['."\n" + .' 256.0,'."\n" + .' 256.3333,'."\n" + .' 512.0,'."\n" + .' 370860.1111,'."\n" + .' 0.0,'."\n" + .' 1.0'."\n" + .' ]', + ], + ], + 'MaxRowsExamined' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '['."\n" + .' 256,'."\n" + .' 1,'."\n" + .' 512,'."\n" + .' 0,'."\n" + .' 1476678,'."\n" + .' 24430'."\n" + .' ]', + ], + ], + 'RowsSent' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '['."\n" + .' 384,'."\n" + .' 256,'."\n" + .' 0,'."\n" + .' 207030,'."\n" + .' 4,'."\n" + .' 256'."\n" + .' ]', + ], + ], + 'AvgRowsSent' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '['."\n" + .' 128.0,'."\n" + .' 0.0,'."\n" + .' 256.0,'."\n" + .' 25878.75,'."\n" + .' 192.0,'."\n" + .' 72.7778'."\n" + .' ]', + ], + ], + 'MaxRowsSent' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '['."\n" + .' 256,'."\n" + .' 207023,'."\n" + .' 0,'."\n" + .' 128,'."\n" + .' 0,'."\n" + .' 0'."\n" + .' ]', + ], + ], + 'KeysExamined' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '['."\n" + .' 384,'."\n" + .' 256,'."\n" + .' 0,'."\n" + .' 207030,'."\n" + .' 4,'."\n" + .' 256'."\n" + .' ]', + ], + ], + 'AvgKeysExamined' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '['."\n" + .' 128.0,'."\n" + .' 0.0,'."\n" + .' 256.0,'."\n" + .' 25878.75,'."\n" + .' 192.0,'."\n" + .' 72.7778'."\n" + .' ]', + ], + ], + 'MaxKeysExamined' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '['."\n" + .' 384,'."\n" + .' 256,'."\n" + .' 0,'."\n" + .' 207030,'."\n" + .' 4,'."\n" + .' 256'."\n" + .' ]', + ], + ], + 'DocExamined' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '['."\n" + .' 256,'."\n" + .' 207023,'."\n" + .' 0,'."\n" + .' 128,'."\n" + .' 0,'."\n" + .' 0'."\n" + .' ]', + ], + ], + 'AvgDocExamined' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '['."\n" + .' 128.0,'."\n" + .' 0.0,'."\n" + .' 256.0,'."\n" + .' 25878.75,'."\n" + .' 192.0,'."\n" + .' 72.7778'."\n" + .' ]', + ], + ], + 'MaxDocExamined' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '['."\n" + .' 256,'."\n" + .' 207023,'."\n" + .' 0,'."\n" + .' 128,'."\n" + .' 0,'."\n" + .' 0'."\n" + .' ]', + ], + ], + 'ReturnNum' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '['."\n" + .' 256,'."\n" + .' 207023,'."\n" + .' 0,'."\n" + .' 128,'."\n" + .' 0,'."\n" + .' 0'."\n" + .' ]', + ], + ], + 'AvgReturnNum' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '['."\n" + .' 128.0,'."\n" + .' 0.0,'."\n" + .' 256.0,'."\n" + .' 25878.75,'."\n" + .' 192.0,'."\n" + .' 72.7778'."\n" + .' ]', + ], + ], + 'MaxReturnNum' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '['."\n" + .' 256,'."\n" + .' 207023,'."\n" + .' 0,'."\n" + .' 128,'."\n" + .' 0,'."\n" + .' 0'."\n" + .' ]', + ], + ], + 'IOWrites' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '['."\n" + .' 256,'."\n" + .' 207023,'."\n" + .' 0,'."\n" + .' 128,'."\n" + .' 0,'."\n" + .' 0'."\n" + .' ]', + ], + ], + 'AvgIOWrites' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '['."\n" + .' 384,'."\n" + .' 256,'."\n" + .' 0,'."\n" + .' 207030,'."\n" + .' 4,'."\n" + .' 256'."\n" + .' ]', + ], + ], + 'MaxIOWrites' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '['."\n" + .' 256,'."\n" + .' 1,'."\n" + .' 512,'."\n" + .' 0,'."\n" + .' 1476678,'."\n" + .' 24430'."\n" + .' ]', + ], + ], + 'LastRowsCountAffected' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '['."\n" + .' 256,'."\n" + .' 207023,'."\n" + .' 0,'."\n" + .' 128,'."\n" + .' 0,'."\n" + .' 0'."\n" + .' ]', + ], + ], + 'AvgLastRowsCountAffected' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '['."\n" + .' 1.593,'."\n" + .' 2.306,'."\n" + .' 1.141,'."\n" + .' 0.0,'."\n" + .' 1.5127,'."\n" + .' 1.247'."\n" + .' ]', + ], + ], + 'MaxLastRowsCountAffected' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '['."\n" + .' 1,'."\n" + .' 1,'."\n" + .' 3,'."\n" + .' 1,'."\n" + .' 2,'."\n" + .' 3'."\n" + .' ]', + ], + ], + 'LogicalIOReads' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '['."\n" + .' 384,'."\n" + .' 256,'."\n" + .' 0,'."\n" + .' 207030,'."\n" + .' 4,'."\n" + .' 256'."\n" + .' ]', + ], + ], + 'AvgLogicalIOReads' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '['."\n" + .' 1.593,'."\n" + .' 2.306,'."\n" + .' 1.141,'."\n" + .' 0.0,'."\n" + .' 1.5127,'."\n" + .' 1.247'."\n" + .' ]', + ], + ], + 'MaxLogicalIOReads' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '['."\n" + .' 124,'."\n" + .' 2,'."\n" + .' 24,'."\n" + .' 251,'."\n" + .' 191,'."\n" + .' 721'."\n" + .' ]', + ], + ], + 'PhysicalIOReads' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '['."\n" + .' 324,'."\n" + .' 22,'."\n" + .' 254,'."\n" + .' 251,'."\n" + .' 191,'."\n" + .' 721'."\n" + .' ]', + ], + ], + 'AvgPhysicalIOReads' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '['."\n" + .' 128.0,'."\n" + .' 0.0,'."\n" + .' 256.0,'."\n" + .' 25878.75,'."\n" + .' 192.0,'."\n" + .' 72.7778'."\n" + .' ]', + ], + ], + 'MaxPhysicalIOReads' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '['."\n" + .' 314,'."\n" + .' 242,'."\n" + .' 114,'."\n" + .' 351,'."\n" + .' 191,'."\n" + .' 721'."\n" + .' ]', + ], + ], + 'RowsCountAffected' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '['."\n" + .' 34,'."\n" + .' 42,'."\n" + .' 14,'."\n" + .' 51,'."\n" + .' 91,'."\n" + .' 71'."\n" + .' ]', + ], + ], + 'AvgRowsCountAffected' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '['."\n" + .' 1.593,'."\n" + .' 2.306,'."\n" + .' 1.141,'."\n" + .' 14.115,'."\n" + .' 0.0,'."\n" + .' 1.783,'."\n" + .' 0.0,'."\n" + .' 1.972'."\n" + .' ]', + ], + ], + 'MaxRowsCountAffected' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '['."\n" + .' 714,'."\n" + .' 442,'."\n" + .' 314,'."\n" + .' 151,'."\n" + .' 291,'."\n" + .' 521'."\n" + .' ]', + ], + ], + 'CPUTime' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '['."\n" + .' 1.051,'."\n" + .' 1.007,'."\n" + .' 0.755,'."\n" + .' 0.0,'."\n" + .' 0.05,'."\n" + .' 0.656'."\n" + .' ]', + ], + ], + 'AvgCPUTime' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '['."\n" + .' 2.306,'."\n" + .' 1.141,'."\n" + .' 0.0,'."\n" + .' 4.538,'."\n" + .' 1.247,'."\n" + .' 0.0'."\n" + .' ]', + ], + ], + 'MaxCPUTime' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '['."\n" + .' 2.306,'."\n" + .' 1.141,'."\n" + .' 0.0,'."\n" + .' 4.538,'."\n" + .' 1.247,'."\n" + .' 0.0'."\n" + .' ]', + ], + ], + 'Rows' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + ], + 'AvgRows' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'number', + 'format' => 'double', + ], + ], + 'MaxRows' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + ], + 'Frows' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + ], + 'AvgFrows' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'number', + 'format' => 'double', + ], + ], + 'MaxFrows' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + ], + 'Scnt' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + ], + 'AvgScnt' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'number', + 'format' => 'double', + ], + ], + 'MaxScnt' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + ], + 'TotalCount' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + ], + ], + 'ErrorCode' => [ + 'title' => '错误码', + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10910', + ], + 'Message' => [ + 'title' => '错误信息', + 'description' => '', + 'type' => 'string', + 'example' => 'Successful', + ], + 'Timestamp' => [ + 'title' => '请求时间', + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1645668213000', + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"RequestKey\\": \\"无\\",\\n \\"ResultId\\": \\"async__20ee808e72257f16a4fe024057ca****\\",\\n \\"State\\": \\"SUCCESS\\",\\n \\"IsFinish\\": true,\\n \\"Data\\": {\\n \\"Total\\": 1,\\n \\"Count\\": [\\n 100\\n ],\\n \\"Ts\\": [\\n 0\\n ],\\n \\"TsEnd\\": [\\n 0\\n ],\\n \\"Item\\": [\\n {\\n \\"NodeId\\": \\"r-bp1hi0wg57s3n0i3n8-db-0\\",\\n \\"Count\\": [\\n 100\\n ],\\n \\"InsItems\\": [\\n {\\n \\"InsId\\": \\"2492\\",\\n \\"InsRole\\": \\"userAdmin\\",\\n \\"Count\\": [\\n 1\\n ],\\n \\"TotalCount\\": 0\\n }\\n ],\\n \\"TotalCount\\": 0,\\n \\"InsRole\\": \\"\\"\\n }\\n ],\\n \\"Rt\\": [\\n 0\\n ],\\n \\"AvgRt\\": [\\n 0\\n ],\\n \\"MaxRt\\": [\\n 0\\n ],\\n \\"LockTime\\": [\\n 0\\n ],\\n \\"AvgLockTime\\": [\\n 0\\n ],\\n \\"MaxLockTime\\": [\\n 0\\n ],\\n \\"RowsExamined\\": [\\n 0\\n ],\\n \\"AvgRowsExamined\\": [\\n 0\\n ],\\n \\"MaxRowsExamined\\": [\\n 0\\n ],\\n \\"RowsSent\\": [\\n 0\\n ],\\n \\"AvgRowsSent\\": [\\n 0\\n ],\\n \\"MaxRowsSent\\": [\\n 0\\n ],\\n \\"KeysExamined\\": [\\n 0\\n ],\\n \\"AvgKeysExamined\\": [\\n 0\\n ],\\n \\"MaxKeysExamined\\": [\\n 0\\n ],\\n \\"DocExamined\\": [\\n 0\\n ],\\n \\"AvgDocExamined\\": [\\n 0\\n ],\\n \\"MaxDocExamined\\": [\\n 0\\n ],\\n \\"ReturnNum\\": [\\n 0\\n ],\\n \\"AvgReturnNum\\": [\\n 0\\n ],\\n \\"MaxReturnNum\\": [\\n 0\\n ],\\n \\"IOWrites\\": [\\n 0\\n ],\\n \\"AvgIOWrites\\": [\\n 0\\n ],\\n \\"MaxIOWrites\\": [\\n 0\\n ],\\n \\"LastRowsCountAffected\\": [\\n 0\\n ],\\n \\"AvgLastRowsCountAffected\\": [\\n 0\\n ],\\n \\"MaxLastRowsCountAffected\\": [\\n 0\\n ],\\n \\"LogicalIOReads\\": [\\n 0\\n ],\\n \\"AvgLogicalIOReads\\": [\\n 0\\n ],\\n \\"MaxLogicalIOReads\\": [\\n 0\\n ],\\n \\"PhysicalIOReads\\": [\\n 0\\n ],\\n \\"AvgPhysicalIOReads\\": [\\n 0\\n ],\\n \\"MaxPhysicalIOReads\\": [\\n 0\\n ],\\n \\"RowsCountAffected\\": [\\n 0\\n ],\\n \\"AvgRowsCountAffected\\": [\\n 0\\n ],\\n \\"MaxRowsCountAffected\\": [\\n 0\\n ],\\n \\"CPUTime\\": [\\n 0\\n ],\\n \\"AvgCPUTime\\": [\\n 0\\n ],\\n \\"MaxCPUTime\\": [\\n 0\\n ],\\n \\"Rows\\": [\\n 0\\n ],\\n \\"AvgRows\\": [\\n 0\\n ],\\n \\"MaxRows\\": [\\n 0\\n ],\\n \\"Frows\\": [\\n 0\\n ],\\n \\"AvgFrows\\": [\\n 0\\n ],\\n \\"MaxFrows\\": [\\n 0\\n ],\\n \\"Scnt\\": [\\n 0\\n ],\\n \\"AvgScnt\\": [\\n 0\\n ],\\n \\"MaxScnt\\": [\\n 0\\n ],\\n \\"TotalCount\\": 0\\n },\\n \\"ErrorCode\\": 10910,\\n \\"Message\\": \\"Successful\\",\\n \\"Timestamp\\": 1645668213000\\n }\\n}","type":"json"}]', + 'title' => 'DescribeSlowLogHistogramAsync', + ], + 'DescribeSlowLogStatistic' => [ + 'summary' => 'Queries statistical information about slow query logs.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '236526', + 'abilityTreeNodes' => [ + 'FEATUREhdmR88NLD', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze1jdv45i7l6****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'r-x****-db-0', + ], + ], + [ + 'name' => 'Type', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'SlowLogRequestOrigin' => 'SlowLogRequestOrigin', + 'OriginHost' => 'OriginHost', + 'SlowLogRequestUser' => 'SlowLogRequestUser', + 'SQL' => 'SQL', + ], + 'example' => 'SQL', + ], + ], + [ + 'name' => 'TemplateId', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => '04ea3310df40c3fa8a6b4854db49f79a', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1568269711000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1608888296000', + ], + ], + [ + 'name' => 'OrderBy', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'count', + ], + ], + [ + 'name' => 'Asc', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + ], + ], + [ + 'name' => 'Filters', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'title' => '过滤参数', + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'KeyWords', + ], + 'Value' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'select', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 100, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => '', + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => '', + 'type' => 'string', + 'example' => '52D540CF-C517-1F57-BB42-9035F96******', + ], + 'Success' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'true', + ], + 'Data' => [ + 'title' => 'AsyncResult<DBLogRecords<SlowLogStat>>', + 'description' => 'AsyncResult<DBLogRecords<SlowLogStat>>', + 'type' => 'object', + 'properties' => [ + 'RequestKey' => [ + 'title' => '请求参数的Key', + 'description' => '', + 'type' => 'string', + 'example' => '123456789', + ], + 'ResultId' => [ + 'title' => '结果ID', + 'description' => '', + 'type' => 'string', + 'example' => 'async__665ee69612f1627c7fd9f3c85075****', + ], + 'State' => [ + 'title' => '当前状态 (RUNNING: 正在运行, SUCCESS: 成功, FAIL: 失败)', + 'description' => '', + 'type' => 'string', + 'example' => 'SUCCESS', + ], + 'IsFinish' => [ + 'title' => '是否完成', + 'description' => '', + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'title' => '数据', + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'DbInstanceName' => [ + 'description' => '', + 'type' => 'string', + 'example' => '0', + ], + 'NodeId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'pi-wz99g5rn7w1x8h0sf', + ], + 'ItemsNumbers' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'StartTime' => [ + 'description' => '', + 'type' => 'string', + 'example' => '2024-10-08T02:01:00Z', + ], + 'EndTime' => [ + 'description' => '', + 'type' => 'string', + 'example' => '2024-08-08T02:15:00Z', + ], + 'DbInstanceId' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => 'rm-k2ja51w7cnusg5a1x', + ], + 'TotalRecords' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '13', + ], + 'PageNumbers' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'MaxRecordsPerPage' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'Logs' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Count' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '12', + ], + 'MaxLockTime' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '-', + ], + 'MaxQueryTime' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '-', + ], + 'MaxRowsExamined' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '318613', + ], + 'MaxRowsSent' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '256', + ], + 'AvgQueryTime' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '-', + ], + 'QueryTimeRate' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '0.1018', + ], + 'CountRate' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '0.2034', + ], + 'AvgRowsExamined' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '53421.0', + ], + 'OriginAlias' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'order-1', + ], + 'User' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'user-1', + ], + 'SqlTag' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'SqlId' => [ + 'description' => 'SQL ID。', + 'type' => 'string', + 'example' => 'a3931d8c3a9315dd5ed016d71cf*****', + ], + 'Tags' => [ + 'title' => '逗号分隔的多个tag', + 'description' => '', + 'type' => 'string', + 'example' => 'DAS_IN_PLAN', + ], + 'Comments' => [ + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + ], + ], + 'Trend' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Timestamp' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1723775362', + ], + 'Value' => [ + 'description' => '', + 'type' => 'any', + 'example' => 'tf-testacc-oos-parameter', + ], + ], + ], + ], + 'Database' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'work-wechat-api', + ], + 'Histogram' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Total' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '7', + ], + 'Count' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + ], + ], + 'Ts' => [ + 'title' => '关系型数据库只使用这个', + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1715220818', + ], + ], + 'TsEnd' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '-', + ], + ], + 'Item' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'NodeId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'r-bp1s1m8hwzrm77kfvz-db-0', + ], + 'Count' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + ], + ], + ], + ], + ], + 'Rt' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '1854', + ], + ], + 'AvgRt' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '3709', + ], + ], + 'MaxRt' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '2516.0', + ], + ], + 'LockTime' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '300', + ], + ], + 'AvgLockTime' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '15', + ], + ], + 'MaxLockTime' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '1051', + ], + ], + 'RowsExamined' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '641057', + ], + ], + 'AvgRowsExamined' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '222189', + ], + ], + 'MaxRowsExamined' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '878511', + ], + ], + 'RowsSent' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '4', + ], + ], + 'AvgRowsSent' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '2.0', + ], + ], + 'MaxRowsSent' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '256', + ], + ], + ], + ], + 'SqlId' => [ + 'description' => 'SQL ID。', + 'type' => 'string', + 'example' => '2dca88762ec6b3812504ab8a4b******', + ], + 'Scheme' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'HTTP', + ], + 'SubInstanceId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'r-8vba51c588ba3a94', + ], + 'DbInstanceName' => [ + 'description' => '', + 'type' => 'string', + 'example' => '0', + ], + 'InsName' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'rm-uf6zix1z2jh1y6fe5', + ], + 'AccountName' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'edu_admin', + ], + 'HostAddress' => [ + 'description' => '', + 'type' => 'string', + 'example' => '172.23.142.178', + ], + 'QueryStartTime' => [ + 'description' => '', + 'type' => 'string', + 'example' => '2024-12-25T03:00:00Z', + ], + 'SQLText' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'SELECT \'Hello, World!\' FROM DUAL', + ], + 'Psql' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'SELECT b?.id,b?.t?,b?.id,b?.t? FROM testtb? b? JOIN testtb? b? ON b?.id=b?.id WHERE b?.t? LIKE ? ORDER BY b?.id DESC', + ], + 'DBName' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'member_score', + ], + 'QueryTime' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '272.444', + ], + 'ReturnItemNumbers' => [ + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + 'DocsExamined' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'KeysExamined' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20000'."\n", + ], + 'TableName' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'users\\nifconfig\\n', + ], + 'LockTime' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '-', + ], + 'RowsExamined' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2444081', + ], + 'RowsSent' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '772', + ], + 'ThreadId' => [ + 'title' => '仅 PolarDB MySQL 有thread_id', + 'description' => '', + 'type' => 'string', + 'example' => '1', + ], + 'Timestamp' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1708568930', + ], + 'AvgLockTime' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '-', + ], + 'AvgRowsSent' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '2.0', + ], + 'LockTimeSeconds' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '0.0', + ], + 'QueryTimeSeconds' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '25.472', + ], + 'AvgLockTimeSeconds' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '0.0', + ], + 'MaxLockTimeSeconds' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '0.0', + ], + 'MaxQueryTimeSeconds' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '14.402', + ], + 'AvgQueryTimeSeconds' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '6.211', + ], + 'SqlType' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'LOGIN', + ], + 'QueryId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'sq-1pzcdMwRb', + ], + 'NodeType' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'DLNode', + ], + 'HostInsId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'mongo-abc123456', + ], + 'InsRole' => [ + 'description' => '', + 'type' => 'string', + 'example' => '__system', + ], + 'OpType' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'Insert', + ], + 'Namespace' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'database.collection', + ], + 'AvgKeysExamined' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '20000', + ], + 'AvgDocExamined' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '10000', + ], + 'AvgReturnNum' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '1', + ], + 'MaxKeysExamined' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2000000', + ], + 'MaxDocExamined' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1000000', + ], + 'MaxReturnNum' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'ReturnNum' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'DocExamined' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2000000', + ], + 'Command' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'SELECT b?.id,b?.t?,b?.id,b?.t? FROM testtb? b? JOIN testtb? b? ON b?.id=b?.id WHERE b?.t? LIKE ? ORDER BY b?.t? DESC', + ], + 'IOWrites' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1000', + ], + 'MaxIOWrites' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1000', + ], + 'LastRowsCountAffected' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1000', + ], + 'MaxLastRowsCountAffected' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1000', + ], + 'LogicalIOReads' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1000', + ], + 'MaxLogicalIOReads' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1000', + ], + 'PhysicalIOReads' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1000', + ], + 'MaxPhysicalIOReads' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1000', + ], + 'RowsCountAffected' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1000', + ], + 'MaxRowsCountAffected' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1000', + ], + 'CPUTime' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '-', + ], + 'AvgCPUTime' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '-'."\n", + ], + 'MaxCPUTime' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '-'."\n", + ], + 'AvgIOWrites' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '1000', + ], + 'AvgLastRowsCountAffected' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '1000', + ], + 'AvgLogicalIOReads' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '1000', + ], + 'AvgPhysicalIOReads' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '1000', + ], + 'AvgRowsCountAffected' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '1000', + ], + 'AvgCPUTimeSeconds' => [ + 'type' => 'number', + 'format' => 'double', + ], + 'MaxCPUTimeSeconds' => [ + 'type' => 'number', + 'format' => 'double', + ], + 'CPUTimeSeconds' => [ + 'type' => 'number', + 'format' => 'double', + ], + 'Rows' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + 'AvgRows' => [ + 'type' => 'number', + 'format' => 'double', + ], + 'MaxRows' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + 'Frows' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + 'AvgFrows' => [ + 'type' => 'number', + 'format' => 'double', + ], + 'MaxFrows' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + 'Scnt' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + 'AvgScnt' => [ + 'type' => 'number', + 'format' => 'double', + ], + 'MaxScnt' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + 'RuleId' => [ + 'type' => 'string', + ], + 'AvgRt' => [ + 'type' => 'number', + 'format' => 'double', + ], + 'MaxRt' => [ + 'type' => 'number', + 'format' => 'double', + ], + 'AvgRequestSize' => [ + 'type' => 'number', + 'format' => 'double', + ], + 'MaxRequestSize' => [ + 'type' => 'number', + 'format' => 'double', + ], + 'AvgResponseSize' => [ + 'type' => 'number', + 'format' => 'double', + ], + 'MaxResponseSize' => [ + 'type' => 'number', + 'format' => 'double', + ], + 'TotalCount' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + 'Cmd' => [ + 'type' => 'string', + ], + 'ClientIp' => [ + 'type' => 'string', + ], + 'DbId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + 'ErrorCode' => [ + 'title' => '错误码', + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10910', + ], + 'Message' => [ + 'title' => '错误信息', + 'description' => '', + 'type' => 'string', + 'example' => 'Successful', + ], + 'Timestamp' => [ + 'title' => '请求时间', + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1735104224250', + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"52D540CF-C517-1F57-BB42-9035F96******\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"RequestKey\\": \\"123456789\\",\\n \\"ResultId\\": \\"async__665ee69612f1627c7fd9f3c85075****\\",\\n \\"State\\": \\"SUCCESS\\",\\n \\"IsFinish\\": true,\\n \\"Data\\": {\\n \\"DbInstanceName\\": \\"0\\",\\n \\"NodeId\\": \\"pi-wz99g5rn7w1x8h0sf\\",\\n \\"ItemsNumbers\\": 10,\\n \\"StartTime\\": \\"2024-10-08T02:01:00Z\\",\\n \\"EndTime\\": \\"2024-08-08T02:15:00Z\\",\\n \\"DbInstanceId\\": 0,\\n \\"TotalRecords\\": 13,\\n \\"PageNumbers\\": 1,\\n \\"MaxRecordsPerPage\\": 10,\\n \\"Logs\\": [\\n {\\n \\"Count\\": 12,\\n \\"MaxLockTime\\": 0,\\n \\"MaxQueryTime\\": 0,\\n \\"MaxRowsExamined\\": 318613,\\n \\"MaxRowsSent\\": 256,\\n \\"AvgQueryTime\\": 0,\\n \\"QueryTimeRate\\": 0.1018,\\n \\"CountRate\\": 0.2034,\\n \\"AvgRowsExamined\\": 53421,\\n \\"OriginAlias\\": \\"order-1\\",\\n \\"User\\": \\"user-1\\",\\n \\"SqlTag\\": {\\n \\"SqlId\\": \\"a3931d8c3a9315dd5ed016d71cf*****\\",\\n \\"Tags\\": \\"DAS_IN_PLAN\\",\\n \\"Comments\\": \\"dba 归档\\"\\n },\\n \\"Trend\\": [\\n {\\n \\"Timestamp\\": 1723775362,\\n \\"Value\\": \\"tf-testacc-oos-parameter\\"\\n }\\n ],\\n \\"Database\\": \\"work-wechat-api\\",\\n \\"Histogram\\": {\\n \\"Total\\": 7,\\n \\"Count\\": [\\n 100\\n ],\\n \\"Ts\\": [\\n 1715220818\\n ],\\n \\"TsEnd\\": [\\n 0\\n ],\\n \\"Item\\": [\\n {\\n \\"NodeId\\": \\"r-bp1s1m8hwzrm77kfvz-db-0\\",\\n \\"Count\\": [\\n 100\\n ]\\n }\\n ],\\n \\"Rt\\": [\\n 1854\\n ],\\n \\"AvgRt\\": [\\n 3709\\n ],\\n \\"MaxRt\\": [\\n 2516\\n ],\\n \\"LockTime\\": [\\n 300\\n ],\\n \\"AvgLockTime\\": [\\n 15\\n ],\\n \\"MaxLockTime\\": [\\n 1051\\n ],\\n \\"RowsExamined\\": [\\n 641057\\n ],\\n \\"AvgRowsExamined\\": [\\n 222189\\n ],\\n \\"MaxRowsExamined\\": [\\n 878511\\n ],\\n \\"RowsSent\\": [\\n 4\\n ],\\n \\"AvgRowsSent\\": [\\n 2\\n ],\\n \\"MaxRowsSent\\": [\\n 256\\n ]\\n },\\n \\"SqlId\\": \\"2dca88762ec6b3812504ab8a4b******\\",\\n \\"Scheme\\": \\"HTTP\\",\\n \\"SubInstanceId\\": \\"r-8vba51c588ba3a94\\",\\n \\"DbInstanceName\\": \\"0\\",\\n \\"InsName\\": \\"rm-uf6zix1z2jh1y6fe5\\",\\n \\"AccountName\\": \\"edu_admin\\",\\n \\"HostAddress\\": \\"172.23.142.178\\",\\n \\"QueryStartTime\\": \\"2024-12-25T03:00:00Z\\",\\n \\"SQLText\\": \\"SELECT \'Hello, World!\' FROM DUAL\\",\\n \\"Psql\\": \\"SELECT b?.id,b?.t?,b?.id,b?.t? FROM testtb? b? JOIN testtb? b? ON b?.id=b?.id WHERE b?.t? LIKE ? ORDER BY b?.id DESC\\",\\n \\"DBName\\": \\"member_score\\",\\n \\"QueryTime\\": 272.444,\\n \\"ReturnItemNumbers\\": \\"暂无\\",\\n \\"DocsExamined\\": 1,\\n \\"KeysExamined\\": 20000,\\n \\"TableName\\": \\"users\\\\\\\\nifconfig\\\\\\\\n\\",\\n \\"LockTime\\": 0,\\n \\"RowsExamined\\": 2444081,\\n \\"RowsSent\\": 772,\\n \\"ThreadId\\": \\"1\\",\\n \\"Timestamp\\": 1708568930,\\n \\"AvgLockTime\\": 0,\\n \\"AvgRowsSent\\": 2,\\n \\"LockTimeSeconds\\": 0,\\n \\"QueryTimeSeconds\\": 25.472,\\n \\"AvgLockTimeSeconds\\": 0,\\n \\"MaxLockTimeSeconds\\": 0,\\n \\"MaxQueryTimeSeconds\\": 14.402,\\n \\"AvgQueryTimeSeconds\\": 6.211,\\n \\"SqlType\\": \\"LOGIN\\",\\n \\"QueryId\\": \\"sq-1pzcdMwRb\\",\\n \\"NodeType\\": \\"DLNode\\",\\n \\"HostInsId\\": \\"mongo-abc123456\\",\\n \\"InsRole\\": \\"__system\\",\\n \\"OpType\\": \\"Insert\\",\\n \\"Namespace\\": \\"database.collection\\",\\n \\"AvgKeysExamined\\": 20000,\\n \\"AvgDocExamined\\": 10000,\\n \\"AvgReturnNum\\": 1,\\n \\"MaxKeysExamined\\": 2000000,\\n \\"MaxDocExamined\\": 1000000,\\n \\"MaxReturnNum\\": 1,\\n \\"ReturnNum\\": 1,\\n \\"DocExamined\\": 2000000,\\n \\"Command\\": \\"SELECT b?.id,b?.t?,b?.id,b?.t? FROM testtb? b? JOIN testtb? b? ON b?.id=b?.id WHERE b?.t? LIKE ? ORDER BY b?.t? DESC\\",\\n \\"IOWrites\\": 1000,\\n \\"MaxIOWrites\\": 1000,\\n \\"LastRowsCountAffected\\": 1000,\\n \\"MaxLastRowsCountAffected\\": 1000,\\n \\"LogicalIOReads\\": 1000,\\n \\"MaxLogicalIOReads\\": 1000,\\n \\"PhysicalIOReads\\": 1000,\\n \\"MaxPhysicalIOReads\\": 1000,\\n \\"RowsCountAffected\\": 1000,\\n \\"MaxRowsCountAffected\\": 1000,\\n \\"CPUTime\\": 0,\\n \\"AvgCPUTime\\": 0,\\n \\"MaxCPUTime\\": 0,\\n \\"AvgIOWrites\\": 1000,\\n \\"AvgLastRowsCountAffected\\": 1000,\\n \\"AvgLogicalIOReads\\": 1000,\\n \\"AvgPhysicalIOReads\\": 1000,\\n \\"AvgRowsCountAffected\\": 1000,\\n \\"AvgCPUTimeSeconds\\": 456,\\n \\"MaxCPUTimeSeconds\\": 456,\\n \\"CPUTimeSeconds\\": 456,\\n \\"Rows\\": 105,\\n \\"AvgRows\\": 10,\\n \\"MaxRows\\": 10,\\n \\"Frows\\": 10,\\n \\"AvgFrows\\": 10,\\n \\"MaxFrows\\": 10,\\n \\"Scnt\\": 10,\\n \\"AvgScnt\\": 10,\\n \\"MaxScnt\\": 10,\\n \\"RuleId\\": \\"181**47\\",\\n \\"AvgRt\\": 0,\\n \\"MaxRt\\": 0,\\n \\"AvgRequestSize\\": 0,\\n \\"MaxRequestSize\\": 0,\\n \\"AvgResponseSize\\": 0,\\n \\"MaxResponseSize\\": 0,\\n \\"TotalCount\\": 0,\\n \\"Cmd\\": \\"\\",\\n \\"ClientIp\\": \\"\\",\\n \\"DbId\\": \\"\\"\\n }\\n ]\\n },\\n \\"ErrorCode\\": 10910,\\n \\"Message\\": \\"Successful\\",\\n \\"Timestamp\\": 1735104224250\\n }\\n}","type":"json"}]', + 'title' => 'DescribeSlowLogStatistic', + ], + 'DescribeSlowLogRecords' => [ + 'summary' => 'Queries the slow logs of a database instance. You can filter and sort data by multiple conditions.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '236528', + 'abilityTreeNodes' => [ + 'FEATUREhdmR88NLD', + ], + 'autoTest' => true, + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'rm-8vbk4xz99su8****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'pi-d9j9fe7wq7t9i****'."\n", + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1596177993000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1634972640000', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'Filters', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'title' => '过滤参数', + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + 'Value' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 100, + ], + ], + [ + 'name' => 'OrderBy', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'QueryTimeSeconds', + ], + ], + [ + 'name' => 'Asc', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => '', + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'A1C79EE2-D04D-571B-8C60-961FAF8E****', + ], + 'Success' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'true', + ], + 'Data' => [ + 'title' => 'DBLogRecords<SlowLogItem>', + 'description' => 'DBLogRecords<SlowLogItem>', + 'type' => 'object', + 'properties' => [ + 'DbInstanceName' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'rm-bp157g54vy772****', + ], + 'NodeId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'node123', + ], + 'ItemsNumbers' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'StartTime' => [ + 'description' => '', + 'type' => 'string', + 'example' => '1672531200000', + ], + 'EndTime' => [ + 'description' => '', + 'type' => 'string', + 'example' => '1672617600000', + ], + 'DbInstanceId' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + ], + 'TotalRecords' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + ], + 'PageNumbers' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'MaxRecordsPerPage' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + ], + 'Logs' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'SqlId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'sqlId', + ], + 'Scheme' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'HTTPS', + ], + 'SubInstanceId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'r-8vb219d10038****', + ], + 'DbInstanceName' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'rm-2zebg30mk056g****', + ], + 'InsName' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'test', + ], + 'AccountName' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'user1', + ], + 'HostAddress' => [ + 'description' => '', + 'type' => 'string', + 'example' => '192.168.1.1', + ], + 'QueryStartTime' => [ + 'description' => '', + 'type' => 'string', + 'example' => '2024-04-01 11:00:00', + ], + 'SQLText' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'SELECT * FROM my_table WHERE ROWNUM <= 10', + ], + 'Psql' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'SELECT * FROM my_table WHERE ROWNUM <= 10'."\n", + ], + 'DBName' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'test', + ], + 'QueryTime' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '121', + ], + 'ReturnItemNumbers' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'test', + ], + 'DocsExamined' => [ + 'description' => '', + 'type' => 'string', + 'example' => '100', + ], + 'KeysExamined' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'valueA', + ], + 'TableName' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'tableNameExample', + ], + 'LockTime' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '100', + ], + 'RowsExamined' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + ], + 'RowsSent' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'ThreadId' => [ + 'title' => '仅 PolarDB MySQL 有thread_id', + 'description' => '', + 'type' => 'string', + 'example' => '57472578', + ], + 'Timestamp' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1747118812', + ], + 'SqlTag' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'SqlId' => [ + 'description' => 'sqlid。', + 'type' => 'string', + 'example' => '8ad7069f236bcdaaa9b3ae4b6299****', + ], + 'Tags' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'DAS_IMPORTANT,DAS_IN_PLAN', + ], + 'Comments' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'test', + ], + ], + ], + 'LockTimeSeconds' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '100', + ], + 'QueryTimeSeconds' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '100', + ], + 'SqlType' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'SELECT', + ], + 'CPUTime' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '50', + ], + 'IOWrites' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'LastRowsCountAffected' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'LogicalIOReads' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'PhysicalIOReads' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'RowsCountAffected' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'Command' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'SELECT', + ], + 'Namespace' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'pro-test', + ], + 'QueryId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'sq-1pzcdMwRb', + ], + 'ReturnNum' => [ + 'description' => '', + 'type' => 'string', + 'example' => '20', + ], + 'ApplicationName' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'MyApp', + ], + 'CPUTimeSeconds' => [ + 'description' => '', + 'type' => 'number', + 'format' => 'double', + 'example' => '100', + ], + 'Rows' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + 'Frows' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'Scnt' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'TraceId' => [ + 'description' => '', + 'type' => 'string', + 'example' => '074ce334-5247-40b9-b0c1-158aea5d****', + ], + 'TemplateId' => [ + 'description' => '', + 'type' => 'string', + 'example' => '6a63b6ac4572abfaef7d1163f684****', + ], + 'NodeId' => [ + 'type' => 'string', + ], + 'Cmd' => [ + 'type' => 'string', + ], + 'Rt' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + 'RequestSize' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + 'ResponseSize' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + 'ClientIp' => [ + 'type' => 'string', + ], + 'DbId' => [ + 'type' => 'string', + ], + 'OriginTime' => [ + 'type' => 'string', + ], + 'OpType' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"A1C79EE2-D04D-571B-8C60-961FAF8E****\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"DbInstanceName\\": \\"rm-bp157g54vy772****\\",\\n \\"NodeId\\": \\"node123\\",\\n \\"ItemsNumbers\\": 10,\\n \\"StartTime\\": \\"1672531200000\\",\\n \\"EndTime\\": \\"1672617600000\\",\\n \\"DbInstanceId\\": 100,\\n \\"TotalRecords\\": 100,\\n \\"PageNumbers\\": 1,\\n \\"MaxRecordsPerPage\\": 20,\\n \\"Logs\\": [\\n {\\n \\"SqlId\\": \\"sqlId\\",\\n \\"Scheme\\": \\"HTTPS\\",\\n \\"SubInstanceId\\": \\"r-8vb219d10038****\\",\\n \\"DbInstanceName\\": \\"rm-2zebg30mk056g****\\",\\n \\"InsName\\": \\"test\\",\\n \\"AccountName\\": \\"user1\\",\\n \\"HostAddress\\": \\"192.168.1.1\\",\\n \\"QueryStartTime\\": \\"2024-04-01 11:00:00\\",\\n \\"SQLText\\": \\"SELECT * FROM my_table WHERE ROWNUM <= 10\\",\\n \\"Psql\\": \\"SELECT * FROM my_table WHERE ROWNUM <= 10\\\\n\\",\\n \\"DBName\\": \\"test\\",\\n \\"QueryTime\\": 121,\\n \\"ReturnItemNumbers\\": \\"test\\",\\n \\"DocsExamined\\": \\"100\\",\\n \\"KeysExamined\\": \\"valueA\\",\\n \\"TableName\\": \\"tableNameExample\\",\\n \\"LockTime\\": 100,\\n \\"RowsExamined\\": 100,\\n \\"RowsSent\\": 10,\\n \\"ThreadId\\": \\"57472578\\",\\n \\"Timestamp\\": 1747118812,\\n \\"SqlTag\\": {\\n \\"SqlId\\": \\"8ad7069f236bcdaaa9b3ae4b6299****\\",\\n \\"Tags\\": \\"DAS_IMPORTANT,DAS_IN_PLAN\\",\\n \\"Comments\\": \\"test\\"\\n },\\n \\"LockTimeSeconds\\": 100,\\n \\"QueryTimeSeconds\\": 100,\\n \\"SqlType\\": \\"SELECT\\",\\n \\"CPUTime\\": 50,\\n \\"IOWrites\\": 1,\\n \\"LastRowsCountAffected\\": 10,\\n \\"LogicalIOReads\\": 1,\\n \\"PhysicalIOReads\\": 1,\\n \\"RowsCountAffected\\": 10,\\n \\"Command\\": \\"SELECT\\",\\n \\"Namespace\\": \\"pro-test\\",\\n \\"QueryId\\": \\"sq-1pzcdMwRb\\",\\n \\"ReturnNum\\": \\"20\\",\\n \\"ApplicationName\\": \\"MyApp\\",\\n \\"CPUTimeSeconds\\": 100,\\n \\"Rows\\": 20,\\n \\"Frows\\": 10,\\n \\"Scnt\\": 10,\\n \\"TraceId\\": \\"074ce334-5247-40b9-b0c1-158aea5d****\\",\\n \\"TemplateId\\": \\"6a63b6ac4572abfaef7d1163f684****\\",\\n \\"NodeId\\": \\"\\",\\n \\"Cmd\\": \\"\\",\\n \\"Rt\\": 0,\\n \\"RequestSize\\": 0,\\n \\"ResponseSize\\": 0,\\n \\"ClientIp\\": \\"\\",\\n \\"DbId\\": \\"\\",\\n \\"OriginTime\\": \\"\\",\\n \\"OpType\\": \\"\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'DescribeSlowLogRecords', + ], + 'UpdateAutoThrottleRulesAsync' => [ + 'summary' => 'Asynchronously configures parameters related to the automatic SQL throttling feature for multiple database instances at a time.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREhdmTFSOG0', + ], + ], + 'parameters' => [ + [ + 'name' => 'ConsoleContext', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'InstanceIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database instance IDs.'."\n" + ."\n" + .'> Set this parameter to a JSON array that consists of multiple instance IDs. Separate instance IDs with commas (,). Example: `[\'Instance ID1\', \'Instance ID2\']`.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '[\'rm-2ze8g2am97624****\',\'rm-2ze9xrhze0709****\']', + ], + ], + [ + 'name' => 'CpuUsage', + 'in' => 'query', + 'schema' => [ + 'description' => 'The threshold for CPU utilization. Valid values: 70% to 100%.'."\n", + 'type' => 'number', + 'format' => 'double', + 'required' => true, + 'example' => '70', + ], + ], + [ + 'name' => 'CpuSessionRelation', + 'in' => 'query', + 'schema' => [ + 'title' => '[AND | OR]', + 'description' => 'The logical relationship between the CPU utilization threshold and the maximum number of active sessions. Valid values:'."\n" + ."\n" + .'* **AND**'."\n" + .'* **OR**'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [], + 'example' => 'OR', + ], + ], + [ + 'name' => 'ActiveSessions', + 'in' => 'query', + 'schema' => [ + 'description' => 'The threshold for the number of active sessions.'."\n" + ."\n" + .'* If this parameter and CpuUsage are in the **OR** relationship, set this parameter to an integer that is greater than or equal to 16.'."\n" + .'* If this parameter and CpuUsage are in the **AND** relationship, set this parameter to an integer that is greater than or equal to 2.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '16', + ], + ], + [ + 'name' => 'AbnormalDuration', + 'in' => 'query', + 'schema' => [ + 'description' => 'The duration threshold for triggering automatic SQL throttling. Set this parameter to an integer that is greater than or equal to 2. Unit: minutes.'."\n", + 'type' => 'number', + 'format' => 'double', + 'required' => true, + 'example' => '2', + ], + ], + [ + 'name' => 'MaxThrottleTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The maximum throttling duration. Set this parameter to a positive integer. Unit: minutes.'."\n", + 'type' => 'number', + 'format' => 'double', + 'required' => true, + 'example' => '10', + ], + ], + [ + 'name' => 'AllowThrottleStartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start time of the throttling window. The time must be in UTC.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '00:00Z', + ], + ], + [ + 'name' => 'AllowThrottleEndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end time of the throttling window. The time must be in UTC.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '23:59Z', + ], + ], + [ + 'name' => 'AutoKillSession', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to terminate abnormal SQL statements in execution at the same time. Valid values:'."\n" + ."\n" + .'> Abnormal SQL statements use the same template as the SQL statements to be throttled.'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'required' => true, + 'example' => 'true', + ], + ], + [ + 'name' => 'ResultId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the asynchronous request.'."\n" + ."\n" + .'> You can leave this parameter empty when you call the operation to initiate the request for the first time, and use the value of this parameter contained in the response to the first request for subsequent requests.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'async__507044db6c4eadfa2dab9b084e80****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'Fail' => [ + 'description' => 'Indicates whether the asynchronous request failed. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'ConfigResponse' => [ + 'description' => 'The returned data of the configuration.'."\n" + ."\n" + .'> The data is returned only if the value of isFinish is **true**. This value indicates that the asynchronous request is complete.'."\n", + 'type' => 'object', + 'properties' => [ + 'TotalInstanceCount' => [ + 'description' => 'The total number of database instances.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'ConfigSuccessInstanceCount' => [ + 'description' => 'The number of database instances for which the parameters are configured.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'ConfigFailInstanceCount' => [ + 'description' => 'The number of database instances for which the parameters failed to be configured.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'ConfigSuccessInstanceList' => [ + 'description' => 'The database instances for which the parameters are configured.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ConfigSuccess' => [ + 'description' => 'Indicates whether the parameters are configured. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + ."\n" + .'* **false**', + 'type' => 'boolean', + 'example' => 'true', + ], + 'InstanceId' => [ + 'description' => 'The database instance ID.', + 'type' => 'string', + 'example' => 'rm-2ze8g2am97624****', + ], + ], + ], + ], + 'ConfigFailInstanceList' => [ + 'description' => 'The database instances for which the parameters failed to be configured.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ConfigSuccess' => [ + 'description' => 'Indicates whether the parameters are configured. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + ."\n" + .'* **false**', + 'type' => 'boolean', + 'example' => 'false', + ], + 'InstanceId' => [ + 'description' => 'The database instance ID.', + 'type' => 'string', + 'example' => 'rm-2ze9xrhze0709****', + ], + 'ErrorMessage' => [ + 'description' => 'The error message returned.', + 'type' => 'string', + 'example' => 'instance das autonomy service is off or can not find instance', + ], + ], + ], + ], + ], + ], + 'ResultId' => [ + 'description' => 'The ID of the asynchronous request.'."\n", + 'type' => 'string', + 'example' => 'async__665ee69612f1627c7fd9f3c85075****', + ], + 'IsFinish' => [ + 'description' => 'Indicates whether the asynchronous request was complete. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'State' => [ + 'description' => 'The state of the asynchronous request. Valid values:'."\n" + ."\n" + .'* **RUNNING**'."\n" + .'* **SUCCESS**'."\n" + .'* **FAIL**'."\n", + 'type' => 'string', + 'example' => 'SUCCESS', + ], + 'Complete' => [ + 'description' => 'Indicates whether the asynchronous request was complete. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Timestamp' => [ + 'description' => 'The time when the asynchronous request was made. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1645668213000', + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"Fail\\": false,\\n \\"ConfigResponse\\": {\\n \\"TotalInstanceCount\\": 2,\\n \\"ConfigSuccessInstanceCount\\": 1,\\n \\"ConfigFailInstanceCount\\": 1,\\n \\"ConfigSuccessInstanceList\\": [\\n {\\n \\"ConfigSuccess\\": true,\\n \\"InstanceId\\": \\"rm-2ze8g2am97624****\\"\\n }\\n ],\\n \\"ConfigFailInstanceList\\": [\\n {\\n \\"ConfigSuccess\\": false,\\n \\"InstanceId\\": \\"rm-2ze9xrhze0709****\\",\\n \\"ErrorMessage\\": \\"instance das autonomy service is off or can not find instance\\"\\n }\\n ]\\n },\\n \\"ResultId\\": \\"async__665ee69612f1627c7fd9f3c85075****\\",\\n \\"IsFinish\\": true,\\n \\"State\\": \\"SUCCESS\\",\\n \\"Complete\\": true,\\n \\"Timestamp\\": 1645668213000\\n },\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateAutoThrottleRulesAsyncResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>\\n <Fail>false</Fail>\\n <ConfigResponse>\\n <TotalInstanceCount>2</TotalInstanceCount>\\n <ConfigSuccessInstanceCount>1</ConfigSuccessInstanceCount>\\n <ConfigFailInstanceCount>1</ConfigFailInstanceCount>\\n <ConfigSuccessInstanceList>\\n <ConfigSuccess>true</ConfigSuccess>\\n <InstanceId>rm-2ze8g2am97624****</InstanceId>\\n </ConfigSuccessInstanceList>\\n <ConfigFailInstanceList>\\n <ConfigSuccess>false</ConfigSuccess>\\n <InstanceId>rm-2ze9xrhze0709****</InstanceId>\\n <ErrorMessage>instance das autonomy service is off or can not find instance</ErrorMessage>\\n </ConfigFailInstanceList>\\n </ConfigResponse>\\n <ResultId>async__665ee69612f1627c7fd9f3c85075****</ResultId>\\n <IsFinish>true</IsFinish>\\n <State>SUCCESS</State>\\n <Complete>true</Complete>\\n <Timestamp>1645668213000</Timestamp>\\n </Data>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n</UpdateAutoThrottleRulesAsyncResponse>","errorExample":""}]', + 'title' => 'UpdateAutoThrottleRulesAsync', + 'description' => '> Asynchronous calls do not immediately return the complete results. To obtain the complete results, you must use the value of **ResultId** returned in the response to re-initiate the call until the value of **isFinish** is **true**.**** In this case, you must call this operation at least twice.'."\n" + ."\n" + .'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an SDK to call API operations of Database Autonomy Service (DAS), you must set the region ID to cn-shanghai.'."\n" + ."\n" + .'* The autonomy service must be enabled for the database instance that you want to manage. For more information, see [Autonomy center](~~152139~~).'."\n" + ."\n" + .'* The database instance that you want to manage must be of one of the following types:'."\n" + ."\n" + .' * ApsaraDB RDS for MySQL High-availability Edition or Enterprise Edition that runs MySQL 5.6, MySQL 5.7, or MySQL 8.0'."\n" + .' * PolarDB for MySQL Cluster Edition that runs MySQL 5.6, MySQL 5.7, or MySQL 8.0'."\n", + ], + 'DisableAutoThrottleRules' => [ + 'summary' => 'Disables the automatic SQL throttling feature for multiple database instances at a time.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREhdmDSULQV', + ], + ], + 'parameters' => [ + [ + 'name' => 'ConsoleContext', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'InstanceIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database instance IDs.'."\n" + ."\n" + .'> Set this parameter to a JSON array that consists of multiple instance IDs. Separate instance IDs with commas (,). Example: `[\'Instance ID1\',\'Instance ID2\']`.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '[\'rm-2ze8g2am97624****\',\'rm-2ze9xrhze0709****\']', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'TotalInstanceCount' => [ + 'description' => 'The total number of database instances.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'ConfigSuccessInstanceCount' => [ + 'description' => 'The number of database instances for which the automatic SQL throttling feature is disabled.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'ConfigFailInstanceCount' => [ + 'description' => 'The number of database instances for which the automatic SQL throttling feature failed to be disabled.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'ConfigSuccessInstanceList' => [ + 'description' => 'The database instances for which the automatic SQL throttling feature is disabled.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ConfigSuccess' => [ + 'description' => 'Indicates whether the automatic SQL throttling feature is disabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + ."\n" + .'* **false**', + 'type' => 'boolean', + 'example' => 'true', + ], + 'InstanceId' => [ + 'description' => 'The database instance ID.', + 'type' => 'string', + 'example' => 'rm-2ze8g2am97624****', + ], + ], + ], + ], + 'ConfigFailInstanceList' => [ + 'description' => 'The database instances for which the automatic SQL throttling feature failed to be disabled.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ConfigSuccess' => [ + 'description' => 'Indicates whether the automatic SQL throttling feature is disabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + ."\n" + .'* **false**', + 'type' => 'boolean', + 'example' => 'false', + ], + 'InstanceId' => [ + 'description' => 'The database instance ID.', + 'type' => 'string', + 'example' => 'rm-2ze9xrhze0709****', + ], + 'ErrorMessage' => [ + 'description' => 'The error message returned.', + 'type' => 'string', + 'example' => 'cannot found instance by rm-2ze9xrhze0709****', + ], + ], + ], + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"TotalInstanceCount\\": 2,\\n \\"ConfigSuccessInstanceCount\\": 1,\\n \\"ConfigFailInstanceCount\\": 1,\\n \\"ConfigSuccessInstanceList\\": [\\n {\\n \\"ConfigSuccess\\": true,\\n \\"InstanceId\\": \\"rm-2ze8g2am97624****\\"\\n }\\n ],\\n \\"ConfigFailInstanceList\\": [\\n {\\n \\"ConfigSuccess\\": false,\\n \\"InstanceId\\": \\"rm-2ze9xrhze0709****\\",\\n \\"ErrorMessage\\": \\"cannot found instance by rm-2ze9xrhze0709****\\"\\n }\\n ]\\n },\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DisableAutoThrottleRulesResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>\\n <TotalInstanceCount>2</TotalInstanceCount>\\n <ConfigSuccessInstanceCount>1</ConfigSuccessInstanceCount>\\n <ConfigFailInstanceCount>1</ConfigFailInstanceCount>\\n <ConfigSuccessInstanceList>\\n <ConfigSuccess>true</ConfigSuccess>\\n <InstanceId>rm-2ze8g2am97624****</InstanceId>\\n </ConfigSuccessInstanceList>\\n <ConfigFailInstanceList>\\n <ConfigSuccess>false</ConfigSuccess>\\n <InstanceId>rm-2ze9xrhze0709****</InstanceId>\\n <ErrorMessage>cannot found instance by rm-2ze9xrhze0709****</ErrorMessage>\\n </ConfigFailInstanceList>\\n </Data>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n</DisableAutoThrottleRulesResponse>","errorExample":""}]', + 'title' => 'DisableAutoThrottleRules', + 'description' => 'If you use an SDK to call operations of Database Autonomy Service (DAS), you must set the region ID to cn-shanghai.'."\n", + ], + 'GetAutoThrottleRules' => [ + 'summary' => 'Queries the automatic SQL throttling rules of a database instance.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'ConsoleContext', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'InstanceIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database instance IDs.'."\n" + ."\n" + .'* Set this parameter to a JSON array that consists of multiple instance IDs. Separate instance IDs with commas (,). Example: `[\'Instance ID1\',\'Instance ID2\']`.'."\n" + ."\n" + .'* By default, if you leave this parameter empty, all database instances for which the automatic SQL throttling feature has been enabled within the current Alibaba Cloud account are returned. The following types of database instances are returned:'."\n" + ."\n" + .' * Database instances for which the automatic SQL throttling feature is currently enabled.'."\n" + .' * Database instances for which the automatic SQL throttling feature was once enabled but is currently disabled. Released database instances are not included.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '[\'rm-2ze8g2am97624****\',\'rm-2vc54m2a6pd6p****\',\'rm-2ze9xrhze0709****\']', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message that contains information such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'TotalAutoThrottleRulesCount' => [ + 'description' => 'The number of databases for which the automatic SQL throttling feature has been enabled.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '3', + ], + 'EnableAutoThrottleCount' => [ + 'description' => 'The number of database instances for which the automatic SQL throttling feature is currently enabled.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'TurnOffAutoThrottleCount' => [ + 'description' => 'The number of database instances for which the automatic SQL throttling feature was once enabled but is currently disabled.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'NeverEnableAutoThrottleOrReleasedInstanceCount' => [ + 'description' => 'The number of database instances that do not exist or for which the automatic SQL throttling feature has never been enabled.'."\n" + ."\n" + .'> If a database instance does not exist, the instance has been released or the specified instance ID is invalid.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'EnableAutoThrottleList' => [ + 'description' => 'The database instances for which the automatic SQL throttling feature is currently enabled.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'AbnormalDuration' => [ + 'description' => 'The maximum period of time during which an exception occurs when automatic SQL throttling is triggered. Unit: minutes.', + 'type' => 'number', + 'format' => 'double', + 'example' => '2', + ], + 'CpuUsage' => [ + 'description' => 'The CPU utilization threshold.', + 'type' => 'number', + 'format' => 'double', + 'example' => '70', + ], + 'CpuSessionRelation' => [ + 'description' => 'The logical relationship between the CPU utilization threshold and the maximum number of active sessions. Valid values:'."\n" + ."\n" + .'* **AND**'."\n" + .'* **OR**', + 'type' => 'string', + 'example' => 'AND', + ], + 'ActiveSessions' => [ + 'description' => 'The maximum number of active sessions.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '32', + ], + 'MaxThrottleTime' => [ + 'description' => 'The maximum throttling duration. Unit: minutes.', + 'type' => 'number', + 'format' => 'double', + 'example' => '10', + ], + 'AllowThrottleStartTime' => [ + 'description' => 'The start time of the throttling window. The value of this parameter is in UTC.', + 'type' => 'string', + 'example' => '00:00Z', + ], + 'AllowThrottleEndTime' => [ + 'description' => 'The end time of the throttling window. The value of this parameter is in UTC.', + 'type' => 'string', + 'example' => '23:59Z', + ], + 'Visible' => [ + 'description' => 'Indicates whether the automatic SQL throttling feature is enabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**', + 'type' => 'boolean', + 'example' => 'true', + ], + 'AutoKillSession' => [ + 'description' => 'Indicates whether abnormal SQL statements in execution are terminated at a time. Valid values:'."\n" + ."\n" + .'> Abnormal SQL statements use the same template as the SQL statements that need to be throttled.'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**', + 'type' => 'boolean', + 'example' => 'true', + ], + 'InstanceId' => [ + 'description' => 'The database instance ID.', + 'type' => 'string', + 'example' => 'rm-2ze8g2am97624****', + ], + 'UserId' => [ + 'description' => 'The ID of the Alibaba Cloud account that is used to create the database instance.', + 'type' => 'string', + 'example' => '140692647406****', + ], + ], + ], + ], + 'TurnOffAutoThrottleList' => [ + 'description' => 'The database instances for which the automatic SQL throttling feature was once enabled but is currently disabled.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'AbnormalDuration' => [ + 'description' => 'The maximum period of time during which the automatic SQL throttling feature is triggered. Unit: minutes.', + 'type' => 'number', + 'format' => 'double', + 'example' => '2', + ], + 'CpuUsage' => [ + 'description' => 'The CPU utilization threshold.', + 'type' => 'number', + 'format' => 'double', + 'example' => '80', + ], + 'AllowThrottleEndTime' => [ + 'description' => 'The end time of the throttling window. The value of this parameter is in UTC.', + 'type' => 'string', + 'example' => '23:59Z', + ], + 'InstanceId' => [ + 'description' => 'The database instance ID.', + 'type' => 'string', + 'example' => 'rm-2ze9xrhze0709****', + ], + 'Visible' => [ + 'description' => 'Indicates whether the automatic SQL throttling feature is enabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**', + 'type' => 'boolean', + 'example' => 'false', + ], + 'CpuSessionRelation' => [ + 'description' => 'The logical relationship between the CPU utilization threshold and the maximum number of active sessions. Valid values:'."\n" + ."\n" + .'* **AND**'."\n" + .'* **OR**', + 'type' => 'string', + 'example' => 'OR', + ], + 'AutoKillSession' => [ + 'description' => 'Indicates whether abnormal SQL statements in execution are terminated at a time. Valid values:'."\n" + ."\n" + .'> Abnormal SQL statements use the same template as the SQL statements that need to be throttled.'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**', + 'type' => 'boolean', + 'example' => 'true', + ], + 'ActiveSessions' => [ + 'description' => 'The maximum number of active sessions.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '64', + ], + 'MaxThrottleTime' => [ + 'description' => 'The maximum throttling duration. Unit: minutes.', + 'type' => 'number', + 'format' => 'double', + 'example' => '10', + ], + 'UserId' => [ + 'description' => 'The ID of the Alibaba Cloud account that is used to create the database instance.', + 'type' => 'string', + 'example' => '140692647406****', + ], + 'AllowThrottleStartTime' => [ + 'description' => 'The start time of the throttling window. The value of this parameter is in UTC.', + 'type' => 'string', + 'example' => '00:00Z', + ], + ], + ], + ], + 'NeverEnableAutoThrottleOrReleasedInstanceIdList' => [ + 'description' => 'The number of database instances that do not exist or for which the automatic SQL throttling feature has never been enabled.'."\n" + ."\n" + .'> If a database instance does not exist, the instance has been released or the specified instance ID is invalid.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The database instance ID.'."\n", + 'type' => 'string', + 'example' => 'rm-2vc54m2a6pd6p****', + ], + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '7172BECE-588A-5961-8126-C216E16B****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"TotalAutoThrottleRulesCount\\": 3,\\n \\"EnableAutoThrottleCount\\": 1,\\n \\"TurnOffAutoThrottleCount\\": 1,\\n \\"NeverEnableAutoThrottleOrReleasedInstanceCount\\": 1,\\n \\"EnableAutoThrottleList\\": [\\n {\\n \\"AbnormalDuration\\": 2,\\n \\"CpuUsage\\": 70,\\n \\"CpuSessionRelation\\": \\"AND\\",\\n \\"ActiveSessions\\": 32,\\n \\"MaxThrottleTime\\": 10,\\n \\"AllowThrottleStartTime\\": \\"00:00Z\\",\\n \\"AllowThrottleEndTime\\": \\"23:59Z\\",\\n \\"Visible\\": true,\\n \\"AutoKillSession\\": true,\\n \\"InstanceId\\": \\"rm-2ze8g2am97624****\\",\\n \\"UserId\\": \\"140692647406****\\"\\n }\\n ],\\n \\"TurnOffAutoThrottleList\\": [\\n {\\n \\"AbnormalDuration\\": 2,\\n \\"CpuUsage\\": 80,\\n \\"AllowThrottleEndTime\\": \\"23:59Z\\",\\n \\"InstanceId\\": \\"rm-2ze9xrhze0709****\\",\\n \\"Visible\\": false,\\n \\"CpuSessionRelation\\": \\"OR\\",\\n \\"AutoKillSession\\": true,\\n \\"ActiveSessions\\": 64,\\n \\"MaxThrottleTime\\": 10,\\n \\"UserId\\": \\"140692647406****\\",\\n \\"AllowThrottleStartTime\\": \\"00:00Z\\"\\n }\\n ],\\n \\"NeverEnableAutoThrottleOrReleasedInstanceIdList\\": [\\n \\"rm-2vc54m2a6pd6p****\\"\\n ]\\n },\\n \\"RequestId\\": \\"7172BECE-588A-5961-8126-C216E16B****\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<GetAutoThrottleRulesResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>\\n <TotalAutoThrottleRulesCount>3</TotalAutoThrottleRulesCount>\\n <EnableAutoThrottleCount>1</EnableAutoThrottleCount>\\n <TurnOffAutoThrottleCount>1</TurnOffAutoThrottleCount>\\n <NeverEnableAutoThrottleOrReleasedInstanceCount>1</NeverEnableAutoThrottleOrReleasedInstanceCount>\\n <EnableAutoThrottleList>\\n <AbnormalDuration>2</AbnormalDuration>\\n <CpuUsage>70</CpuUsage>\\n <CpuSessionRelation>AND</CpuSessionRelation>\\n <ActiveSessions>32</ActiveSessions>\\n <MaxThrottleTime>10</MaxThrottleTime>\\n <AllowThrottleStartTime>00:00Z</AllowThrottleStartTime>\\n <AllowThrottleEndTime>23:59Z</AllowThrottleEndTime>\\n <Visible>true</Visible>\\n <AutoKillSession>true</AutoKillSession>\\n <InstanceId>rm-2ze8g2am97624****</InstanceId>\\n <UserId>140692647406****</UserId>\\n </EnableAutoThrottleList>\\n <TurnOffAutoThrottleList>\\n <AbnormalDuration>2</AbnormalDuration>\\n <CpuUsage>80</CpuUsage>\\n <AllowThrottleEndTime>23:59Z</AllowThrottleEndTime>\\n <InstanceId>rm-2ze9xrhze0709****</InstanceId>\\n <Visible>false</Visible>\\n <CpuSessionRelation>OR</CpuSessionRelation>\\n <AutoKillSession>true</AutoKillSession>\\n <ActiveSessions>64</ActiveSessions>\\n <MaxThrottleTime>10</MaxThrottleTime>\\n <UserId>140692647406****</UserId>\\n <AllowThrottleStartTime>00:00Z</AllowThrottleStartTime>\\n </TurnOffAutoThrottleList>\\n <NeverEnableAutoThrottleOrReleasedInstanceIdList>rm-2vc54m2a6pd6p****</NeverEnableAutoThrottleOrReleasedInstanceIdList>\\n </Data>\\n <RequestId>7172BECE-588A-5961-8126-C216E16B****</RequestId>\\n <Success>true</Success>\\n</GetAutoThrottleRulesResponse>","errorExample":""}]', + 'title' => 'GetAutoThrottleRules', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an SDK to call API operations of Database Autonomy Service (DAS), you must set the region ID to cn-shanghai.'."\n" + ."\n" + .'* The database instance that you want to manage must be of one of the following types:'."\n" + ."\n" + .' * ApsaraDB RDS for MySQL High-availability Edition or Enterprise Edition that runs MySQL 5.6, MySQL 5.7, or MySQL 8.0'."\n" + .' * PolarDB for MySQL Cluster Edition that runs MySQL 5.6, MySQL 5.7, or MySQL 8.0'."\n", + ], + 'UpdateAutoSqlOptimizeStatus' => [ + 'summary' => 'Enables, modifies, or disables the automatic SQL optimization feature for multiple database instances at a time.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'Instances', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database instance IDs. Separate multiple IDs with commas (,).'."\n" + ."\n" + .'> You can specify up to 50 instance IDs.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-bp10usoc1erj7****,rm-bp10usoc1erj7****', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'description' => 'The status of the automatic SQL optimization feature. Valid values:'."\n" + ."\n" + .'* **0**: The automatic SQL optimization feature is disabled.'."\n" + .'* **1**: **SQL diagnosis and automatic index creation** is specified.'."\n" + .'* **3**: **SQL diagnosis only** is specified.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'Success' => [ + 'description' => 'Indicates whether the request initiated to configure the automatic SQL optimization feature was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'false', + ], + 'ErrorCode' => [ + 'description' => 'The error code. Valid values:'."\n" + ."\n" + .'* **-1001**: indicates that the specified parameter is invalid.'."\n" + .'* **-91029**: indicates that a system error occurred.'."\n", + 'type' => 'string', + 'example' => '-1001', + ], + 'ErrorMsg' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'invalid param', + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'A52AD37C-35ED-581A-AC23-2232BE54****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"Success\\": \\"false\\",\\n \\"ErrorCode\\": \\"-1001\\",\\n \\"ErrorMsg\\": \\"invalid param\\"\\n },\\n \\"RequestId\\": \\"A52AD37C-35ED-581A-AC23-2232BE54****\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<UpdateAutoSqlOptimizeStatusResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>\\n <Success>false</Success>\\n <ErrorCode>-1001</ErrorCode>\\n <ErrorMsg>invalid param</ErrorMsg>\\n </Data>\\n <RequestId>A52AD37C-35ED-581A-AC23-2232BE54****</RequestId>\\n <Success>true</Success>\\n</UpdateAutoSqlOptimizeStatusResponse>","errorExample":""}]', + 'title' => 'UpdateAutoSqlOptimizeStatus', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an SDK to call API operations of Database Autonomy Service (DAS), you must set the region ID to cn-shanghai.'."\n" + ."\n" + .'* DAS Enterprise Edition must be enabled for the database instance that you want to manage. To enable DAS Enterprise Edition for a database instance, you can call the [EnableDasPro](~~411645~~) operation.'."\n" + ."\n" + .'* The autonomy service must be enabled for the database instance. For more information, see [Autonomy center](~~152139~~).'."\n" + ."\n" + .'* This operation supports the following database engines:'."\n" + ."\n" + .' * ApsaraDB RDS for MySQL High-availability Edition or Enterprise Edition'."\n" + .' * PolarDB for MySQL Cluster Edition'."\n", + ], + 'GetSqlOptimizeAdvice' => [ + 'summary' => 'Queries optimization suggestions that are generated by the SQL diagnostics feature of Database Autonomy Service (DAS).', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'ConsoleContext', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'Engine', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database engine. Valid values:'."\n" + ."\n" + .'* **MySQL**: ApsaraDB RDS for MySQL.'."\n" + .'* **PolarDBMySQL**: PolarDB for MySQL.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'MySQL', + ], + ], + [ + 'name' => 'InstanceIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n" + ."\n" + .'> You must specify the instance ID only if your database instance is an ApsaraDB RDS for MySQL instance or a PolarDB for MySQL cluster.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rm-2ze1jdv45i7l6****', + ], + ], + [ + 'name' => 'StartDt', + 'in' => 'query', + 'schema' => [ + 'description' => 'The start date of the time range to query. Specify the date in the *yyyyMMdd* format. The time must be in UTC.'."\n" + ."\n" + .'* The default value of this parameter is one day before the current day.'."\n" + .'* The value must be earlier than the current day.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '20210916', + ], + ], + [ + 'name' => 'EndDt', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end date of the time range to query. Specify the date in the *yyyyMMdd* format. The time must be in UTC.'."\n" + ."\n" + .'* The default value of this parameter is one day before the current day.'."\n" + .'* The value must be earlier than the current day. The interval between the start date and the end date cannot exceed 30 days.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '20210917', + ], + ], + [ + 'name' => 'Region', + 'in' => 'query', + 'schema' => [ + 'description' => 'The region in which the instance resides. Valid values:'."\n" + ."\n" + .'* **cn-china**: Chinese mainland.'."\n" + .'* **cn-hongkong**: China (Hong Kong).'."\n" + .'* **ap-southeast-1**: Singapore.'."\n" + ."\n" + .'This parameter takes effect only if **InstanceIds** is left empty. If you leave **InstanceIds** empty, the system obtains data from the region specified by **Region**. By default, Region is set to **cn-china**. If you specify **InstanceIds**, **Region** does not take effect, and the system obtains data from the region in which the first specified instance resides.****'."\n" + ."\n" + .'> If your instances reside in the regions inside the Chinese mainland, set this parameter to **cn-china**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-china', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, Successful is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The detailed information, including the error codes and the number of entries that are returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => 'The status of the task. Valid values:'."\n" + ."\n" + .'* **INIT**: The task is being initialized.'."\n" + .'* **RUNNING**: The task is running.'."\n" + .'* **FINISH**: The task is complete.'."\n" + .'* **FAILED**: The task failed.'."\n", + 'type' => 'string', + 'example' => 'FINISH', + ], + 'StatusCode' => [ + 'description' => 'The status code of the task. Valid values:'."\n" + ."\n" + .'* **NO_DATA**: No data is returned.'."\n" + .'* **INTERNAL_ERROR**: An internal error occurred.'."\n" + .'* **SUCCESS**: The task is successful.'."\n", + 'type' => 'string', + 'example' => 'SUCCESS', + ], + 'DownloadUrl' => [ + 'description' => 'The URL that is used to download the file.'."\n", + 'type' => 'string', + 'example' => 'https://das-sql-optimize.oss-cn-shanghai.aliyuncs.com/adb/oss_sql_optimize_advice/1083*******', + ], + 'CreateTime' => [ + 'description' => 'The time when the task was created. The value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'string', + 'example' => '1632303861000', + ], + 'ExpireTime' => [ + 'description' => 'The time when the file expires. The value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The file expires three days after the task is created.'."\n", + 'type' => 'string', + 'example' => '1632563061000', + ], + 'TaskId' => [ + 'description' => 'The task ID.'."\n", + 'type' => 'string', + 'example' => '2021091710461519216****', + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"Status\\": \\"FINISH\\",\\n \\"StatusCode\\": \\"SUCCESS\\",\\n \\"DownloadUrl\\": \\"https://das-sql-optimize.oss-cn-shanghai.aliyuncs.com/adb/oss_sql_optimize_advice/1083*******\\",\\n \\"CreateTime\\": \\"1632303861000\\",\\n \\"ExpireTime\\": \\"1632563061000\\",\\n \\"TaskId\\": \\"2021091710461519216****\\"\\n },\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<GetSqlOptimizeAdviceResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>\\n <Status>FINISH</Status>\\n <StatusCode>SUCCESS</StatusCode>\\n <DownloadUrl>https://das-sql-optimize.oss-cn-shanghai.aliyuncs.com/adb/oss_sql_optimize_advice/1083*******</DownloadUrl>\\n <CreateTime>1632303861000</CreateTime>\\n <ExpireTime>1632563061000</ExpireTime>\\n <TaskId>2021091710461519216****</TaskId>\\n </Data>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n</GetSqlOptimizeAdviceResponse>","errorExample":""}]', + 'title' => 'GetSqlOptimizeAdvice', + 'description' => 'The SQL diagnostics feature provides optimization suggestions for instances based on diagnostics results. You can use the optimization suggestions to optimize instance indexes. For more information, see [Automatic SQL optimization](~~167895~~).'."\n" + ."\n" + .'> You can call this operation to query only the optimization suggestions that are automatically generated by the SQL diagnostics feature.'."\n" + ."\n" + .'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* This operation is applicable to ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters.'."\n" + .'* If you use an Alibaba Cloud SDK or DAS SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n", + ], + 'GetInstanceSqlOptimizeStatistic' => [ + 'summary' => 'Queries statistics on automatic SQL optimization events within a period of time, such as the total number of optimization events and the maximum improvement.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'title' => '实例ID', + 'description' => 'The database instance ID.'."\n" + ."\n" + .'> The database instance must be an ApsaraDB RDS for MySQL instance or a PolarDB for MySQL cluster.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'pc-wz90h9560rvdz****', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'title' => '开始时间', + 'description' => 'The beginning of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1661308902060', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'title' => '结束时间', + 'description' => 'The end of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '1662518540764', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'query', + 'schema' => [ + 'title' => '子节点ID', + 'description' => 'The node ID.'."\n" + ."\n" + .'> For ApsaraDB RDS for MySQL Cluster Edition instances or PolarDB for MySQL clusters, you must specify the node ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'pi-bp12v7243x012****', + ], + ], + [ + 'name' => 'Threshold', + 'in' => 'query', + 'schema' => [ + 'title' => '阈值', + 'description' => 'The duration threshold for automatic SQL optimization events. After this parameter is specified, the system collects statistics on automatic SQL optimization events whose duration does not exceed the specified threshold.'."\n" + ."\n" + .'> This parameter is a reserved parameter and does not take effect.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'FilterEnable', + 'in' => 'query', + 'schema' => [ + 'title' => '是否过滤专业版', + 'description' => 'Specifies whether to filter instances for which DAS Enterprise Edition is enabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n" + ."\n" + .'> If you set this parameter to **true**, only database instances for which DAS Enterprise Edition is disabled are queried. If you set this parameter to **false**, all database instances are queried.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [], + 'example' => 'false', + ], + ], + [ + 'name' => 'UseMerging', + 'in' => 'query', + 'schema' => [ + 'title' => '是否合并事件', + 'description' => 'Specifies whether to merge automatic SQL optimization events. Valid values:'."\n" + ."\n" + .'* **true**: merges automatic SQL optimization events.'."\n" + .'* **false**: does not merge automatic SQL optimization events.'."\n" + ."\n" + .'> This parameter is a reserved parameter and does not take effect.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [], + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The details of the automatic SQL optimization events.'."\n", + 'type' => 'object', + 'properties' => [ + 'count' => [ + 'title' => 'SQL自动优化事件总数', + 'description' => 'The total number of automatic SQL optimization events.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '16', + ], + 'improvement' => [ + 'title' => '收益倍数', + 'description' => 'The multiple of the maximum improvement for returned automatic SQL optimization events.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '1003', + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**: The request was successful.'."\n" + .'* **false**: The request failed.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"count\\": 16,\\n \\"improvement\\": 1003\\n },\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<GetInstanceSqlOptimizeStatisticResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>\\n <count>16</count>\\n <improvement>1003</improvement>\\n </Data>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n</GetInstanceSqlOptimizeStatisticResponse>","errorExample":""}]', + 'title' => 'GetInstanceSqlOptimizeStatistic', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an Alibaba Cloud SDK or a Database Autonomy Service (DAS) SDK to call this API operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n" + .'* The database engine is ApsaraDB RDS for MySQL or PolarDB for MySQL.'."\n", + ], + 'UpdateAutoResourceOptimizeRulesAsync' => [ + 'summary' => 'Asynchronously configures parameters related to the automatic fragment recycling feature for multiple database instances at a time.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREhdm3TU4OK', + ], + ], + 'parameters' => [ + [ + 'name' => 'ConsoleContext', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'InstanceIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database instance IDs.'."\n" + ."\n" + .'> Set this parameter to a JSON array that consists of multiple instance IDs. Separate instance IDs with commas (,). Example: `[\'Instance ID1\', \'Instance ID2\']`.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '[\'rm-2ze8g2am97624****\',\'rm-2ze9xrhze0709****\']', + ], + ], + [ + 'name' => 'TableSpaceSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The minimum storage usage that triggers automatic fragment recycling of a single physical table. Valid values: **5** to **100**. Unit: GB.'."\n", + 'type' => 'number', + 'format' => 'double', + 'required' => true, + 'example' => '10', + ], + ], + [ + 'name' => 'TableFragmentationRatio', + 'in' => 'query', + 'schema' => [ + 'description' => 'The fragmentation rate that triggers automatic fragment recycling of a single physical table. Valid values: **0.10** to **0.99**.'."\n", + 'type' => 'number', + 'format' => 'double', + 'required' => true, + 'example' => '0.2', + ], + ], + [ + 'name' => 'ResultId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the asynchronous request.'."\n" + ."\n" + .'> Asynchronous calls do not immediately return the complete results. To obtain the complete results, you must use the value of **ResultId** returned in the response to re-initiate the call until the value of **isFinish** is **true**.**** In this case, you must call this operation at least twice.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'async__507044db6c4eadfa2dab9b084e80****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'Fail' => [ + 'description' => 'Indicates whether the asynchronous request failed. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'ConfigResponse' => [ + 'description' => 'The returned data of the configuration.'."\n" + ."\n" + .'> The data is returned only if the value of isFinish is **true**. This value indicates that the asynchronous request is complete.'."\n", + 'type' => 'object', + 'properties' => [ + 'TotalInstanceCount' => [ + 'description' => 'The total number of database instances.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'ConfigSuccessInstanceCount' => [ + 'description' => 'The number of database instances for which the parameters are configured.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'ConfigFailInstanceCount' => [ + 'description' => 'The number of database instances for which the parameters failed to be configured.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'ConfigSuccessInstanceList' => [ + 'description' => 'The database instances for which the parameters are configured.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ConfigSuccess' => [ + 'description' => 'Indicates whether the parameters are configured. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + ."\n" + .'* **false**', + 'type' => 'boolean', + 'example' => 'true', + ], + 'InstanceId' => [ + 'description' => 'The database instance ID.', + 'type' => 'string', + 'example' => 'rm-2ze8g2am97624****', + ], + ], + ], + ], + 'ConfigFailInstanceList' => [ + 'description' => 'The database instances for which the parameters failed to be configured.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ConfigSuccess' => [ + 'description' => 'Indicates whether the parameters are configured. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + ."\n" + .'* **false**', + 'type' => 'boolean', + 'example' => 'false', + ], + 'InstanceId' => [ + 'description' => 'The database instance ID.', + 'type' => 'string', + 'example' => 'rm-2ze9xrhze0709****', + ], + 'ErrorMessage' => [ + 'description' => 'The error message returned.', + 'type' => 'string', + 'example' => 'Only Support DAS Pro High-availability Edition RDS MySQL 5.6, 5.7, 8.0 instance, and CPU cores >= 4, innodb_file_per_table=ON', + ], + ], + ], + ], + ], + ], + 'ResultId' => [ + 'description' => 'The ID of the asynchronous request.'."\n", + 'type' => 'string', + 'example' => 'async__20ee808e72257f16a4fe024057ca****', + ], + 'IsFinish' => [ + 'description' => 'Indicates whether the asynchronous request was complete. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'State' => [ + 'description' => 'The state of the asynchronous request. Valid values:'."\n" + ."\n" + .'* **RUNNING**'."\n" + .'* **SUCCESS**'."\n" + .'* **FAIL**'."\n", + 'type' => 'string', + 'example' => 'SUCCESS', + ], + 'Complete' => [ + 'description' => 'Indicates whether the asynchronous request was complete. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Timestamp' => [ + 'description' => 'The time when the asynchronous request was made. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1645668213000', + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '9CB97BC4-6479-55D0-B9D0-EA925AFE****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"Fail\\": false,\\n \\"ConfigResponse\\": {\\n \\"TotalInstanceCount\\": 2,\\n \\"ConfigSuccessInstanceCount\\": 1,\\n \\"ConfigFailInstanceCount\\": 1,\\n \\"ConfigSuccessInstanceList\\": [\\n {\\n \\"ConfigSuccess\\": true,\\n \\"InstanceId\\": \\"rm-2ze8g2am97624****\\"\\n }\\n ],\\n \\"ConfigFailInstanceList\\": [\\n {\\n \\"ConfigSuccess\\": false,\\n \\"InstanceId\\": \\"rm-2ze9xrhze0709****\\",\\n \\"ErrorMessage\\": \\"Only Support DAS Pro High-availability Edition RDS MySQL 5.6, 5.7, 8.0 instance, and CPU cores >= 4, innodb_file_per_table=ON\\"\\n }\\n ]\\n },\\n \\"ResultId\\": \\"async__20ee808e72257f16a4fe024057ca****\\",\\n \\"IsFinish\\": true,\\n \\"State\\": \\"SUCCESS\\",\\n \\"Complete\\": true,\\n \\"Timestamp\\": 1645668213000\\n },\\n \\"RequestId\\": \\"9CB97BC4-6479-55D0-B9D0-EA925AFE****\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateAutoResourceOptimizeRulesAsyncResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>\\n <Fail>false</Fail>\\n <ConfigResponse>\\n <TotalInstanceCount>2</TotalInstanceCount>\\n <ConfigSuccessInstanceCount>1</ConfigSuccessInstanceCount>\\n <ConfigFailInstanceCount>1</ConfigFailInstanceCount>\\n <ConfigSuccessInstanceList>\\n <ConfigSuccess>true</ConfigSuccess>\\n <InstanceId>rm-2ze8g2am97624****</InstanceId>\\n </ConfigSuccessInstanceList>\\n <ConfigFailInstanceList>\\n <ConfigSuccess>false</ConfigSuccess>\\n <InstanceId>rm-2ze9xrhze0709****</InstanceId>\\n <ErrorMessage>Only Support DAS Pro High-availability Edition RDS MySQL 5.6, 5.7, 8.0 instance, and CPU cores >= 4, innodb_file_per_table=ON</ErrorMessage>\\n </ConfigFailInstanceList>\\n </ConfigResponse>\\n <ResultId>async__20ee808e72257f16a4fe024057ca****</ResultId>\\n <IsFinish>true</IsFinish>\\n <State>SUCCESS</State>\\n <Complete>true</Complete>\\n <Timestamp>1645668213000</Timestamp>\\n </Data>\\n <RequestId>9CB97BC4-6479-55D0-B9D0-EA925AFE****</RequestId>\\n <Success>true</Success>\\n</UpdateAutoResourceOptimizeRulesAsyncResponse>","errorExample":""}]', + 'title' => 'UpdateAutoResourceOptimizeRulesAsync', + 'description' => '> Asynchronous calls do not immediately return the complete results. To obtain the complete results, you must use the value of **ResultId** returned in the response to re-initiate the call until the value of **isFinish** is **true**.**** In this case, you must call this operation at least twice.'."\n" + ."\n" + .'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an SDK to call the API operations of Database Autonomy Service (DAS), you must set the region ID to cn-shanghai.'."\n" + .'* The database instances must be an ApsaraDB RDS for MySQL High-availability Edition instance.'."\n" + .'* DAS Enterprise Edition must be enabled for the database instance. You can call the call [DescribeInstanceDasPro](~~413866~~) operation to query whether DAS Enterprise Edition is enabled.'."\n" + .'* The database instance has four or more CPU cores, and **innodb_file_per_table** is set to **ON**.'."\n", + ], + 'DisableAutoResourceOptimizeRules' => [ + 'summary' => 'Disables the automatic tablespace fragment recycling feature for database instances at a time.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREhdmTFSOG0', + ], + ], + 'parameters' => [ + [ + 'name' => 'ConsoleContext', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'InstanceIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database instance ID.'."\n" + ."\n" + .'> Set this parameter to a JSON array that consists of multiple instance IDs. Separate instance IDs with commas (,). Example: `[\'Instance ID1\', \'Instance ID2\']`.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '[\'rm-2ze8g2am97624****\',\'rm-2ze9xrhze0709****\']', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'TotalInstanceCount' => [ + 'description' => 'The total number of database instances.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'ConfigSuccessInstanceCount' => [ + 'description' => 'The number of database instances for which the automatic tablespace fragment recycling feature is disabled.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'ConfigFailInstanceCount' => [ + 'description' => 'The number of database instances for which the automatic tablespace fragment recycling feature failed to be disabled.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'ConfigSuccessInstanceList' => [ + 'description' => 'The list of database instances for which the automatic tablespace fragment recycling feature is disabled.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ConfigSuccess' => [ + 'description' => 'Indicates whether the automatic tablespace fragment recycling feature is disabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + ."\n" + .'* **false**', + 'type' => 'boolean', + 'example' => 'true', + ], + 'InstanceId' => [ + 'description' => 'The database instance ID.', + 'type' => 'string', + 'example' => 'rm-2ze8g2am97624****', + ], + ], + ], + ], + 'ConfigFailInstanceList' => [ + 'description' => 'The list of database instances for which the automatic tablespace fragment recycling feature failed to be disabled.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ConfigSuccess' => [ + 'description' => 'Indicates whether the automatic tablespace fragment recycling feature is disabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + ."\n" + .'* **false**', + 'type' => 'boolean', + 'example' => 'false', + ], + 'InstanceId' => [ + 'description' => 'The database instance ID.', + 'type' => 'string', + 'example' => 'rm-2ze9xrhze0709****', + ], + 'ErrorMessage' => [ + 'description' => 'The error message returned if the request failed.', + 'type' => 'string', + 'example' => 'cannot found instance by rm-2ze9xrhze0709****', + ], + ], + ], + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"TotalInstanceCount\\": 2,\\n \\"ConfigSuccessInstanceCount\\": 1,\\n \\"ConfigFailInstanceCount\\": 1,\\n \\"ConfigSuccessInstanceList\\": [\\n {\\n \\"ConfigSuccess\\": true,\\n \\"InstanceId\\": \\"rm-2ze8g2am97624****\\"\\n }\\n ],\\n \\"ConfigFailInstanceList\\": [\\n {\\n \\"ConfigSuccess\\": false,\\n \\"InstanceId\\": \\"rm-2ze9xrhze0709****\\",\\n \\"ErrorMessage\\": \\"cannot found instance by rm-2ze9xrhze0709****\\"\\n }\\n ]\\n },\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DisableAutoResourceOptimizeRulesResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>\\n <TotalInstanceCount>2</TotalInstanceCount>\\n <ConfigSuccessInstanceCount>1</ConfigSuccessInstanceCount>\\n <ConfigFailInstanceCount>1</ConfigFailInstanceCount>\\n <ConfigSuccessInstanceList>\\n <ConfigSuccess>true</ConfigSuccess>\\n <InstanceId>rm-2ze8g2am97624****</InstanceId>\\n </ConfigSuccessInstanceList>\\n <ConfigFailInstanceList>\\n <ConfigSuccess>false</ConfigSuccess>\\n <InstanceId>rm-2ze9xrhze0709****</InstanceId>\\n <ErrorMessage>cannot found instance by rm-2ze9xrhze0709****</ErrorMessage>\\n </ConfigFailInstanceList>\\n </Data>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n</DisableAutoResourceOptimizeRulesResponse>","errorExample":""}]', + 'title' => 'DisableAutoResourceOptimizeRules', + 'description' => 'If you use an SDK to call API operations of Database Autonomy Service (DAS), you must set the region ID to cn-shanghai.'."\n", + ], + 'GetAutoResourceOptimizeRules' => [ + 'summary' => 'Queries the automatic fragment recycling rules of database instances.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'ConsoleContext', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'InstanceIds', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database instance IDs.'."\n" + ."\n" + .'* Specify the parameter value as a JSON array, such as `[\'Database account 1\',\'Database account 2\']`. Separate database instance IDs with commas (,).'."\n" + ."\n" + .'* By default, if you leave this parameter empty, all database instances for which the automatic fragment recycling feature has been enabled within the current Alibaba Cloud account are returned. The following types of database instances are returned:'."\n" + ."\n" + .' * Database instances for which the automatic fragment recycling feature is currently enabled.'."\n" + .' * Database instances for which the automatic fragment recycling feature was once enabled but is currently disabled, including those for which DAS Enterprise Edition has been disabled but excluding those that have been released.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '[\'rm-2ze8g2am97624****\',\'rm-2vc54m2a6pd6p****\',\'rm-2ze9xrhze0709****\',\'rm-2ze8g2am97627****\']', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'TotalAutoResourceOptimizeRulesCount' => [ + 'description' => 'The number of database instances for which the automatic fragment recycling feature has been enabled.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '3', + ], + 'EnableAutoResourceOptimizeCount' => [ + 'description' => 'The number of database instances for which the automatic fragment recycling feature is currently enabled.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'TurnOffAutoResourceOptimizeCount' => [ + 'description' => 'The number of database instances for which the automatic fragment recycling feature was once enabled but is currently disabled.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'HasEnableRuleButNotDasProCount' => [ + 'description' => 'The number of database instances for which the automatic fragment recycling feature is enabled and DAS Enterprise Edition is disabled.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'EnableAutoResourceOptimizeList' => [ + 'description' => 'The database instances for which the automatic fragment recycling feature is currently enabled.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'InstanceId' => [ + 'description' => 'The database instance ID.'."\n", + 'type' => 'string', + 'example' => 'rm-2ze8g2am97624****', + ], + 'AutoDefragment' => [ + 'description' => 'Indicates whether the automatic fragment recycling feature is enabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'TableSpaceSize' => [ + 'description' => 'The minimum storage usage of a single physical table for which the automatic fragment recycling feature is enabled. Unit: GB.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '10', + ], + 'DasProOn' => [ + 'description' => 'Indicates whether DAS Enterprise Edition is enabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'TableFragmentationRatio' => [ + 'description' => 'The fragmentation rate of a single physical table for which the automatic fragment recycling feature is enabled.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '0.2', + ], + 'UserId' => [ + 'description' => 'The ID of the Alibaba Cloud account that is used to create the database instance.'."\n", + 'type' => 'string', + 'example' => '140692647406****', + ], + ], + ], + ], + 'TurnOffAutoResourceOptimizeList' => [ + 'description' => 'The database instances for which the automatic fragment recycling feature was once enabled but is currently disabled.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'InstanceId' => [ + 'description' => 'The database instance ID.'."\n", + 'type' => 'string', + 'example' => 'rm-2vc54m2a6pd6p****', + ], + 'AutoDefragment' => [ + 'description' => 'Indicates whether the automatic fragment recycling feature is enabled. Valid values:'."\n" + ."\n" + .'* **true**:'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'TableSpaceSize' => [ + 'description' => 'The minimum storage usage of a single physical table for which the automatic fragment recycling feature is enabled. Unit: GB.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '10', + ], + 'DasProOn' => [ + 'description' => 'Indicates whether DAS Enterprise Edition is enabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'TableFragmentationRatio' => [ + 'description' => 'The fragmentation rate of a single physical table for which the automatic fragment recycling feature is enabled.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '0.2', + ], + 'UserId' => [ + 'description' => 'The ID of the Alibaba Cloud account that is used to create the database instance.'."\n", + 'type' => 'string', + 'example' => '140692647406****', + ], + ], + ], + ], + 'HasEnableRuleButNotDasProList' => [ + 'description' => 'The database instances for which the automatic fragment recycling feature is enabled and DAS Enterprise Edition is disabled.'."\n" + ."\n" + .'> Automatic fragment recycling tasks are run on this type of database instances only if DAS Enterprise Edition is enabled for the database instances again.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'InstanceId' => [ + 'description' => 'The database instance ID.'."\n", + 'type' => 'string', + 'example' => 'rm-2ze9xrhze0709****', + ], + 'AutoDefragment' => [ + 'description' => 'Indicates whether the automatic fragment recycling feature is enabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'TableSpaceSize' => [ + 'description' => 'The minimum storage usage of a single physical table for which the automatic fragment recycling feature is enabled. Unit: GB.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '10', + ], + 'DasProOn' => [ + 'description' => 'Indicates whether DAS Enterprise Edition is enabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'TableFragmentationRatio' => [ + 'description' => 'The fragmentation rate of a single physical table for which the automatic fragment recycling feature is enabled.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '0.2', + ], + 'UserId' => [ + 'description' => 'The ID of the Alibaba Cloud account that is used to create the database instance.'."\n", + 'type' => 'string', + 'example' => '140692647406****', + ], + ], + ], + ], + 'NeverEnableAutoResourceOptimizeOrReleasedInstanceCount' => [ + 'description' => 'The number of database instances that do not exist or for which the automatic fragment recycling feature has never been enabled.'."\n" + ."\n" + .'> If a database instance does not exist, the instance has been released or the specified instance ID is invalid.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'NeverEnableAutoResourceOptimizeOrReleasedInstanceIdList' => [ + 'description' => 'The database instances that do not exist or for which the automatic fragment recycling feature has never been enabled.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The database instance ID.'."\n", + 'type' => 'string', + 'example' => 'rm-2ze8g2am97624****', + ], + ], + ], + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": {\\n \\"TotalAutoResourceOptimizeRulesCount\\": 3,\\n \\"EnableAutoResourceOptimizeCount\\": 1,\\n \\"TurnOffAutoResourceOptimizeCount\\": 1,\\n \\"HasEnableRuleButNotDasProCount\\": 1,\\n \\"EnableAutoResourceOptimizeList\\": [\\n {\\n \\"InstanceId\\": \\"rm-2ze8g2am97624****\\",\\n \\"AutoDefragment\\": true,\\n \\"TableSpaceSize\\": 10,\\n \\"DasProOn\\": true,\\n \\"TableFragmentationRatio\\": 0.2,\\n \\"UserId\\": \\"140692647406****\\"\\n }\\n ],\\n \\"TurnOffAutoResourceOptimizeList\\": [\\n {\\n \\"InstanceId\\": \\"rm-2vc54m2a6pd6p****\\",\\n \\"AutoDefragment\\": false,\\n \\"TableSpaceSize\\": 10,\\n \\"DasProOn\\": true,\\n \\"TableFragmentationRatio\\": 0.2,\\n \\"UserId\\": \\"140692647406****\\"\\n }\\n ],\\n \\"HasEnableRuleButNotDasProList\\": [\\n {\\n \\"InstanceId\\": \\"rm-2ze9xrhze0709****\\",\\n \\"AutoDefragment\\": true,\\n \\"TableSpaceSize\\": 10,\\n \\"DasProOn\\": false,\\n \\"TableFragmentationRatio\\": 0.2,\\n \\"UserId\\": \\"140692647406****\\"\\n }\\n ],\\n \\"NeverEnableAutoResourceOptimizeOrReleasedInstanceCount\\": 1,\\n \\"NeverEnableAutoResourceOptimizeOrReleasedInstanceIdList\\": [\\n \\"rm-2ze8g2am97624****\\"\\n ]\\n },\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<GetAutoResourceOptimizeRulesResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>\\n <TotalAutoResourceOptimizeRulesCount>3</TotalAutoResourceOptimizeRulesCount>\\n <EnableAutoResourceOptimizeCount>1</EnableAutoResourceOptimizeCount>\\n <TurnOffAutoResourceOptimizeCount>1</TurnOffAutoResourceOptimizeCount>\\n <HasEnableRuleButNotDasProCount>1</HasEnableRuleButNotDasProCount>\\n <EnableAutoResourceOptimizeList>\\n <InstanceId>rm-2ze8g2am97624****</InstanceId>\\n <AutoDefragment>true</AutoDefragment>\\n <TableSpaceSize>10</TableSpaceSize>\\n <DasProOn>true</DasProOn>\\n <TableFragmentationRatio>0.2</TableFragmentationRatio>\\n <UserId>140692647406****</UserId>\\n </EnableAutoResourceOptimizeList>\\n <TurnOffAutoResourceOptimizeList>\\n <InstanceId>rm-2vc54m2a6pd6p****</InstanceId>\\n <AutoDefragment>false</AutoDefragment>\\n <TableSpaceSize>10</TableSpaceSize>\\n <DasProOn>true</DasProOn>\\n <TableFragmentationRatio>0.2</TableFragmentationRatio>\\n <UserId>140692647406****</UserId>\\n </TurnOffAutoResourceOptimizeList>\\n <HasEnableRuleButNotDasProList>\\n <InstanceId>rm-2ze9xrhze0709****</InstanceId>\\n <AutoDefragment>true</AutoDefragment>\\n <TableSpaceSize>10</TableSpaceSize>\\n <DasProOn>false</DasProOn>\\n <TableFragmentationRatio>0.2</TableFragmentationRatio>\\n <UserId>140692647406****</UserId>\\n </HasEnableRuleButNotDasProList>\\n <NeverEnableAutoResourceOptimizeOrReleasedInstanceCount>1</NeverEnableAutoResourceOptimizeOrReleasedInstanceCount>\\n <NeverEnableAutoResourceOptimizeOrReleasedInstanceIdList>rm-2ze8g2am97624****</NeverEnableAutoResourceOptimizeOrReleasedInstanceIdList>\\n </Data>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n</GetAutoResourceOptimizeRulesResponse>","errorExample":""}]', + 'title' => 'GetAutoResourceOptimizeRules', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an SDK to call API operations of Database Autonomy Service (DAS), you must set the region ID to cn-shanghai.'."\n" + .'* The database instance is an ApsaraDB RDS for MySQL instance of High-availability Edition.'."\n" + .'* The database instance has four or more cores, and **innodb_file_per_table** is set to **ON**.'."\n", + ], + 'ModifyAutoScalingConfig' => [ + 'summary' => 'Modifies the auto scaling configurations of an instance.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze8g2am97624****', + ], + ], + [ + 'name' => 'Spec', + 'in' => 'query', + 'style' => 'flat', + 'schema' => [ + 'description' => 'The configuration item of the specification auto scaling feature.'."\n", + 'type' => 'object', + 'properties' => [ + 'Apply' => [ + 'description' => 'Specifies whether to apply the **Spec** configuration of the specification auto scaling feature. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'default' => 'false', + ], + 'Upgrade' => [ + 'description' => 'Specifies whether to enable automatic specification scale-up. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'default' => 'false', + ], + 'CpuUsageUpperThreshold' => [ + 'description' => 'The average CPU utilization threshold that triggers automatic specification scale-up. Unit: %. Valid values:'."\n" + ."\n" + .'* **50**'."\n" + .'* **60**'."\n" + .'* **70**'."\n" + .'* **80**'."\n" + .'* **90**'."\n" + ."\n" + .'> This parameter must be specified if the database instance is a PolarDB for MySQL Cluster Edition instance or an ApsaraDB RDS for MySQL High-availability Edition instance that uses standard SSDs or ESSDs.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '70', + 'enum' => [ + '50', + '60', + '70', + '80', + '90', + ], + ], + 'MemUsageUpperThreshold' => [ + 'description' => 'The average memory usage threshold that triggers automatic specification scale-up. Unit: %. Valid values:'."\n" + ."\n" + .'* **50**'."\n" + .'* **60**'."\n" + .'* **70**'."\n" + .'* **80**'."\n" + .'* **90**'."\n" + ."\n" + .'> This parameter must be specified if the database instance is a Tair (Redis OSS-compatible) Community Edition cloud-native instance on the China site (aliyun.com).'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '70', + 'enum' => [ + '50', + '60', + '70', + '80', + '90', + ], + ], + 'MaxSpec' => [ + 'description' => 'The maximum specifications to which the database instance can be scaled up. The database instance can be upgraded only to a database instance of the same edition with higher specifications. For information about the specifications of different database instances, see the following topics:'."\n" + ."\n" + .'* PolarDB for MySQL Cluster Edition instances: [Specifications of compute nodes](~~102542~~)'."\n" + .'* ApsaraDB RDS for MySQL High-availability Edition instances that use standard SSDs or ESSDs: [Specifications](~~276974~~)'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'polar.mysql.x8.12xlarge'."\n", + ], + 'MaxReadOnlyNodes' => [ + 'description' => 'The maximum number of read-only nodes of the instance.'."\n" + ."\n" + .'> This parameter must be specified if the database instance is a PolarDB for MySQL Cluster Edition instance.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '15', + 'minimum' => '1', + 'example' => '10', + ], + 'ObservationWindowSize' => [ + 'description' => 'The observation window. The value of this parameter consists of a numeric value and a time unit suffix. The **m** time unit suffix specifies the minute and the **h** time unit suffix specifies the hour.'."\n" + ."\n" + .'* Valid values for PolarDB for MySQL Cluster Edition instances: **5m**, **10m**, **15m**, and **30m**.'."\n" + .'* Valid values for ApsaraDB RDS for MySQL High-availability Edition instances that use standard SSDs or ESSDs: **5m**, **20m**, **30m**, **40m**, and **1h**.'."\n" + .'* Valid values for Tair (Redis OSS-compatible) Community Edition cloud-native instances: **5m**, **10m**, **15m**, and **30m**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '5m', + ], + 'CoolDownTime' => [ + 'description' => 'The quiescent period. The value of this parameter consists of a numeric value and a time unit suffix. The **m** time unit suffix specifies the minute, the **h** time unit suffix specifies the hour, and the **d** time unit suffix specifies the day.'."\n" + ."\n" + .'* Valid values for PolarDB for MySQL Cluster Edition instances: **5m**, **10m**, **30m**, **1h**, **2h**, **3h**, **1d**, and **7d**.'."\n" + .'* Valid values for ApsaraDB RDS for MySQL High-availability Edition instances that use standard SSDs or Enterprise SSDs (ESSDs): **5m**, **10m**, **30m**, **1h**, **2h**, **3h**, **1d**, and **7d**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '5m', + ], + 'Downgrade' => [ + 'description' => 'Specifies whether to enable automatic specification scale-down. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n" + ."\n" + .'> This parameter must be specified if the database instance is a PolarDB for MySQL Cluster Edition instance or an ApsaraDB RDS for MySQL High-availability Edition instance that uses standard SSDs or ESSDs.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'default' => 'false', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'Storage', + 'in' => 'query', + 'style' => 'flat', + 'schema' => [ + 'description' => 'The configuration item of the automatic storage expansion feature.'."\n", + 'type' => 'object', + 'properties' => [ + 'Apply' => [ + 'description' => 'Specifies whether to apply the **Storage** configuration of the automatic storage expansion feature. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'default' => 'false', + ], + 'Upgrade' => [ + 'description' => 'Specifies whether to enable automatic storage expansion. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'default' => 'false', + ], + 'DiskUsageUpperThreshold' => [ + 'description' => 'The average storage usage threshold that triggers automatic storage expansion. Unit: %. Valid values:'."\n" + ."\n" + .'* **50**'."\n" + .'* **60**'."\n" + .'* **70**'."\n" + .'* **80**'."\n" + .'* **90**'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '70', + 'enum' => [ + '50', + '60', + '70', + '80', + '90', + ], + ], + 'MaxStorage' => [ + 'description' => 'The maximum storage size of the database instance. Unit: GB. The value must be greater than or equal to the total storage size of the instance.'."\n" + ."\n" + .'* If the instance uses ESSDs, the maximum value of this parameter can be 32000.'."\n" + .'* If the instance uses standard SSDs, the maximum value of this parameter can be 6000.'."\n" + ."\n" + .'> The standard SSD storage type is phased out. We recommend that you [upgrade the storage type of your instance from standard SSDs to ESSDs](~~314678~~).'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '32000', + 'minimum' => '20', + 'example' => '32000', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'Bandwidth', + 'in' => 'query', + 'style' => 'flat', + 'schema' => [ + 'description' => 'The configuration item of the bandwidth auto scaling feature.'."\n", + 'type' => 'object', + 'properties' => [ + 'Apply' => [ + 'description' => 'Specifies whether to apply the **Bandwidth** configuration of the bandwidth auto scaling feature. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'default' => 'false', + ], + 'Upgrade' => [ + 'description' => 'Specifies whether to enable automatic bandwidth upgrade. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'default' => 'false', + ], + 'BandwidthUsageUpperThreshold' => [ + 'description' => 'The average bandwidth usage threshold that triggers automatic bandwidth upgrade. Unit: %. Valid values:'."\n" + ."\n" + .'* **50**'."\n" + .'* **60**'."\n" + .'* **70**'."\n" + .'* **80**'."\n" + .'* **90**'."\n" + .'* **95**'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '95', + 'minimum' => '50', + 'example' => '70', + 'enum' => [], + ], + 'ObservationWindowSize' => [ + 'description' => 'The observation window of the bandwidth auto scaling feature. The value of this parameter consists of a numeric value and a time unit suffix. The **m** time unit suffix specifies the minute. Valid values:'."\n" + ."\n" + .'* **1m**'."\n" + .'* **5m**'."\n" + .'* **10m**'."\n" + .'* **15m**'."\n" + .'* **30m**'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '5m', + 'enum' => [ + '1m', + '5m', + '10m', + '15m', + '30m', + ], + ], + 'Downgrade' => [ + 'description' => 'Specifies whether to enable automatic bandwidth downgrade. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'default' => 'false', + ], + 'BandwidthUsageLowerThreshold' => [ + 'description' => 'The average bandwidth usage threshold that triggers automatic bandwidth downgrade. Unit: %. Valid values:'."\n" + ."\n" + .'* **10**'."\n" + .'* **20**'."\n" + .'* **30**'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '70', + 'minimum' => '10', + 'example' => '30', + 'enum' => [], + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'Shard', + 'in' => 'query', + 'style' => 'flat', + 'schema' => [ + 'description' => 'The configuration item of the shard auto scaling feature.'."\n", + 'type' => 'object', + 'properties' => [ + 'Apply' => [ + 'description' => 'Specifies whether to apply the **Shard** configuration of the shard auto scaling feature. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n" + ."\n" + .'> The shard auto scaling feature is available only for Tair (Redis OSS-compatible) cloud-native cluster instances on the China site (aliyun.com).'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'default' => 'false', + ], + 'Upgrade' => [ + 'description' => 'Specifies whether to enable automatic shard addition. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'default' => 'false', + ], + 'MemUsageUpperThreshold' => [ + 'description' => 'The average memory usage threshold that triggers automatic shard addition. Unit: %. Valid values:'."\n" + ."\n" + .'* **50**'."\n" + .'* **60**'."\n" + .'* **70**'."\n" + .'* **80**'."\n" + .'* **90**'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '70', + 'enum' => [ + '50', + '60', + '70', + '80', + '90', + ], + ], + 'MaxShards' => [ + 'description' => 'The maximum number of shards in the instance. The value must be a positive integer. Valid values: 4 to 32.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '64', + 'minimum' => '2', + 'example' => '16', + ], + 'UpgradeObservationWindowSize' => [ + 'description' => 'The observation window of the automatic shard addition feature. The value of this parameter consists of a numeric value and a time unit suffix. The **m** time unit suffix specifies the minute. Valid values:'."\n" + ."\n" + .'* **5m**'."\n" + .'* **10m**'."\n" + .'* **15m**'."\n" + .'* **30m**'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '5m', + 'enum' => [ + '5m', + '10m', + '15m', + '30m', + ], + ], + 'Downgrade' => [ + 'description' => 'Specifies whether to enable automatic shard removal. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n" + ."\n" + .'> The automatic shard removal feature is in a canary release.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'default' => 'false', + ], + 'MemUsageLowerThreshold' => [ + 'description' => 'The average memory usage threshold that triggers automatic shard removal. Unit: %. Valid values:'."\n" + ."\n" + .'* **10**'."\n" + .'* **20**'."\n" + .'* **30**'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '30', + 'enum' => [ + '10', + '20', + '30', + ], + ], + 'MinShards' => [ + 'description' => 'The minimum number of shards in the instance. The value must be a positive integer. Valid values: 4 to 32.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '64', + 'minimum' => '2', + 'example' => '4', + ], + 'DowngradeObservationWindowSize' => [ + 'description' => 'The observation window of the automatic shard removal feature. The value of this parameter consists of a numeric value and a time unit suffix. The **h** time unit suffix specifies the hour. The **d** time unit suffix specifies the day. Valid values:'."\n" + ."\n" + .'* **1h**'."\n" + .'* **2h**'."\n" + .'* **3h**'."\n" + .'* **1d**'."\n" + .'* **7d**'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1h', + 'enum' => [ + '1h', + '2h', + '3h', + '1d', + '7d', + ], + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'Resource', + 'in' => 'query', + 'style' => 'flat', + 'schema' => [ + 'description' => 'The configuration item of the resource auto scaling feature.'."\n", + 'type' => 'object', + 'properties' => [ + 'Apply' => [ + 'description' => 'Specifies whether to apply the **Resource** configuration of the resource auto scaling feature. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'default' => 'false', + ], + 'Enable' => [ + 'description' => 'Specifies whether to enable resource auto scaling. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'default' => 'false', + ], + 'CpuUsageUpperThreshold' => [ + 'description' => 'The average CPU utilization threshold that triggers automatic resource scale-out. Unit: %. Valid values:'."\n" + ."\n" + .'* **70**'."\n" + .'* **80**'."\n" + .'* **90**'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '70', + 'enum' => [ + '70', + '80', + '90', + ], + ], + 'UpgradeObservationWindowSize' => [ + 'description' => 'The observation window of the automatic resource scale-out feature. The value of this parameter consists of a numeric value and a time unit suffix. The **m** time unit suffix specifies the minute. Valid values:'."\n" + ."\n" + .'* **1m**'."\n" + .'* **3m**'."\n" + .'* **5m**'."\n" + .'* **10m**'."\n" + .'* **20m**'."\n" + .'* **30m**'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + '30m' => '30m', + '5m' => '5m', + '3m' => '3m', + '1m' => '1m', + '10m' => '10m', + '20m' => '20m', + ], + 'example' => '5m', + 'enum' => [ + '1m', + '3m', + '5m', + '10m', + '20m', + '30m', + ], + ], + 'DowngradeObservationWindowSize' => [ + 'description' => 'The observation window of the automatic resource scale-in feature. The value of this parameter consists of a numeric value and a time unit suffix. The **m** time unit suffix specifies the minute. Valid values:'."\n" + ."\n" + .'* **1m**'."\n" + .'* **3m**'."\n" + .'* **5m**'."\n" + .'* **10m**'."\n" + .'* **20m**'."\n" + .'* **30m**'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '5m', + 'enum' => [ + '1m', + '3m', + '5m', + '10m', + '20m', + '30m', + ], + ], + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyAutoScalingConfigResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n</ModifyAutoScalingConfigResponse>","errorExample":""}]', + 'title' => 'ModifyAutoScalingConfig', + 'description' => 'You can call this operation to modify the following auto scaling configurations of an instance: **auto scaling for specifications**, **automatic storage expansion**, **automatic bandwidth adjustment**, and **auto scaling for resources**.'."\n" + ."\n" + .'* You can modify the configurations of the **auto scaling feature for specifications** for the following types of database instances:'."\n" + ."\n" + .' * PolarDB for MySQL Cluster Edition instances. For more information about the feature and the billing rules, see [Automatic performance scaling](~~169686~~).'."\n" + .' * ApsaraDB RDS for MySQL High-availability Edition instances that use standard SSDs or enhanced SSDs (ESSDs). For more information about the feature and the billing rules, see [Automatic performance scaling](~~169686~~).'."\n" + ."\n" + .'* You can modify the configurations of the **automatic storage expansion** feature for the following types of database instances:'."\n" + ."\n" + .' * ApsaraDB RDS for MySQL High-availability Edition instances that use standard SSDs or ESSDs. For more information about the feature and the billing rules, see [Automatic space expansion](~~173345~~).'."\n" + ."\n" + .'* You can modify the configurations of the **automatic bandwidth adjustment** feature for the following types of database instances:'."\n" + ."\n" + .' * ApsaraDB for Redis Classic (Local Disk-based) Edition instances. For more information about the feature and the billing rules, see [Automatic bandwidth adjustment](~~216312~~).'."\n" + ."\n" + .'* You can modify the configurations of the **auto scaling feature for resources** for the following types of database instances:'."\n" + ."\n" + .' * General-purpose ApsaraDB RDS for MySQL Enterprise Edition instances. For more information about the feature and the billing rules, see [Automatic performance scaling](~~169686~~).'."\n" + ."\n" + .'* If you use an Alibaba Cloud SDK or Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + ."\n" + .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n", + ], + 'DescribeAutoScalingConfig' => [ + 'summary' => 'Queries the configurations of the auto scaling feature for an instance.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'pc-2ze1prap1k46r****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The configurations of the auto scaling feature for instances.'."\n", + 'type' => 'object', + 'properties' => [ + 'Spec' => [ + 'description' => 'The configurations of the auto scaling feature for specifications.'."\n", + 'type' => 'object', + 'properties' => [ + 'Upgrade' => [ + 'description' => 'Indicates whether the automatic specification scale-up feature is enabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'CpuUsageUpperThreshold' => [ + 'description' => 'The average CPU utilization threshold that triggers automatic specification scale-up. Unit: %.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '70', + ], + 'MemUsageUpperThreshold' => [ + 'description' => 'The average memory usage threshold that triggers automatic specification scale-up. Unit: %.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '70', + ], + 'MaxSpec' => [ + 'description' => 'The maximum specifications to which the cluster can be scaled up. For more information about the specifications of each type of supported database instances, see the following topics:'."\n" + ."\n" + .'* PolarDB for MySQL Cluster Edition instances: [Compute node specifications of PolarDB for MySQL Enterprise Edition](~~102542~~)'."\n" + .'* ApsaraDB RDS for MySQL High-availability Edition instances that use standard SSDs or ESSDs: [Specifications](~~276974~~)'."\n", + 'type' => 'string', + 'example' => 'polar.mysql.x8.12xlarge', + ], + 'MaxReadOnlyNodes' => [ + 'description' => 'The maximum number of read-only nodes of the instance.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'ObservationWindowSize' => [ + 'description' => 'The observation window. The return value consists of a numeric value and a time unit suffix. Valid values of the time unit suffix:'."\n" + ."\n" + .'* **s**: seconds.'."\n" + .'* **m**: minutes.'."\n" + .'* **h**: hours.'."\n" + .'* **d**: days.'."\n" + ."\n" + .'> A value of **5m** indicates 5 minutes.'."\n", + 'type' => 'string', + 'example' => '5m', + ], + 'CoolDownTime' => [ + 'description' => 'The quiescent period. The return value consists of a numeric value and a time unit suffix. Valid values of the time unit suffix:'."\n" + ."\n" + .'* **s**: seconds.'."\n" + .'* **m**: minutes.'."\n" + .'* **h**: hours.'."\n" + .'* **d**: days.'."\n" + ."\n" + .'> A value of **5m** indicates 5 minutes.'."\n", + 'type' => 'string', + 'example' => '5m', + ], + 'Downgrade' => [ + 'description' => 'Indicates whether the automatic specification scale-down feature is enabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + 'Storage' => [ + 'description' => 'The configurations of the automatic storage expansion feature.'."\n", + 'type' => 'object', + 'properties' => [ + 'Upgrade' => [ + 'description' => 'Indicates whether the automatic storage expansion feature is enabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'DiskUsageUpperThreshold' => [ + 'description' => 'The average storage usage threshold that triggers automatic storage expansion. Unit: %.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '70', + ], + 'MaxStorage' => [ + 'description' => 'The maximum storage size. Unit: GB.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '32000', + ], + ], + ], + 'Resource' => [ + 'description' => 'The configurations of the auto scaling feature for local resources.'."\n", + 'type' => 'object', + 'properties' => [ + 'Enable' => [ + 'description' => 'Indicates whether the auto scaling feature is enabled for local resources. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'CpuUsageUpperThreshold' => [ + 'description' => 'The average CPU utilization threshold that triggers automatic scale-out of local resources. Unit: %.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '70', + ], + 'CpuStep' => [ + 'description' => 'The scale-out step size of CPU.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'UpgradeObservationWindowSize' => [ + 'description' => 'The observation window of the automatic scale-out feature for local resources. The return value consists of a numeric value and a time unit suffix. Valid values of the time unit suffix:'."\n" + ."\n" + .'* **s**: seconds.'."\n" + .'* **m**: minutes.'."\n" + .'* **h**: hours.'."\n" + .'* **d**: days.'."\n" + ."\n" + .'> A value of **5m** indicates 5 minutes.'."\n", + 'type' => 'string', + 'example' => '5m', + ], + 'DowngradeObservationWindowSize' => [ + 'description' => 'The observation window of the automatic scale-in feature for local resources. The return value consists of a numeric value and a time unit suffix. Valid values of the time unit suffix:'."\n" + ."\n" + .'* **s**: seconds.'."\n" + .'* **m**: minutes.'."\n" + .'* **h**: hours.'."\n" + .'* **d**: days.'."\n" + ."\n" + .'> A value of **5m** indicates 5 minutes.'."\n", + 'type' => 'string', + 'example' => '5m', + ], + ], + ], + 'Shard' => [ + 'description' => 'The configurations of the auto scaling feature for shards.'."\n", + 'type' => 'object', + 'properties' => [ + 'Upgrade' => [ + 'description' => 'Indicates whether the feature of automatically adding shards is enabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'MemUsageUpperThreshold' => [ + 'description' => 'The average memory usage threshold that triggers automatic adding of shards. Unit: %.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '70', + ], + 'MaxShards' => [ + 'description' => 'The maximum number of shards in the instance.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '16', + ], + 'UpgradeObservationWindowSize' => [ + 'description' => 'The observation window of the feature of automatically adding shards. The return value consists of a numeric value and a time unit suffix. Valid values of the time unit suffix:'."\n" + ."\n" + .'* **s**: seconds.'."\n" + .'* **m**: minutes.'."\n" + .'* **h**: hours.'."\n" + .'* **d**: days.'."\n" + ."\n" + .'> A value of **5m** indicates 5 minutes.'."\n", + 'type' => 'string', + 'example' => '5m', + ], + 'Downgrade' => [ + 'description' => 'Indicates whether the feature of automatically removing shards is enabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'MemUsageLowerThreshold' => [ + 'description' => 'The average memory usage threshold that triggers automatic removal of shards. Unit: %.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '30', + ], + 'MinShards' => [ + 'description' => 'The minimum number of shards in the instance.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '4', + ], + 'DowngradeObservationWindowSize' => [ + 'description' => 'The observation window of the feature of automatically removing shards. The return value consists of a numeric value and a time unit suffix. Valid values of the time unit suffix:'."\n" + ."\n" + .'* **s**: seconds.'."\n" + .'* **m**: minutes.'."\n" + .'* **h**: hours.'."\n" + .'* **d**: days.'."\n" + ."\n" + .'> A value of **1d** indicates one day.'."\n", + 'type' => 'string', + 'example' => '1d', + ], + ], + ], + 'Bandwidth' => [ + 'description' => 'The configurations of the automatic bandwidth adjustment feature.'."\n", + 'type' => 'object', + 'properties' => [ + 'Upgrade' => [ + 'description' => 'Indicates whether the automatic bandwidth adjustment feature is enabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'BandwidthUsageUpperThreshold' => [ + 'description' => 'The average bandwidth usage threshold that triggers automatic bandwidth adjustment. Unit: %.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '70', + ], + 'ObservationWindowSize' => [ + 'description' => 'The observation window of the automatic bandwidth adjustment feature. The return value consists of a numeric value and a time unit suffix. Valid values of the time unit suffix:'."\n" + ."\n" + .'* **s**: seconds.'."\n" + .'* **m**: minutes.'."\n" + .'* **h**: hours.'."\n" + .'* **d**: days.'."\n" + ."\n" + .'> A value of **5m** indicates 5 minutes.'."\n", + 'type' => 'string', + 'example' => '5m', + ], + 'Downgrade' => [ + 'description' => 'Indicates whether the automatic bandwidth downgrade feature is enabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'BandwidthUsageLowerThreshold' => [ + 'description' => 'The average bandwidth usage threshold that triggers automatic bandwidth downgrade. Unit: %.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '30', + ], + ], + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"Spec\\": {\\n \\"Upgrade\\": true,\\n \\"CpuUsageUpperThreshold\\": 70,\\n \\"MemUsageUpperThreshold\\": 70,\\n \\"MaxSpec\\": \\"polar.mysql.x8.12xlarge\\",\\n \\"MaxReadOnlyNodes\\": 10,\\n \\"ObservationWindowSize\\": \\"5m\\",\\n \\"CoolDownTime\\": \\"5m\\",\\n \\"Downgrade\\": true\\n },\\n \\"Storage\\": {\\n \\"Upgrade\\": true,\\n \\"DiskUsageUpperThreshold\\": 70,\\n \\"MaxStorage\\": 32000\\n },\\n \\"Resource\\": {\\n \\"Enable\\": true,\\n \\"CpuUsageUpperThreshold\\": 70,\\n \\"CpuStep\\": 2,\\n \\"UpgradeObservationWindowSize\\": \\"5m\\",\\n \\"DowngradeObservationWindowSize\\": \\"5m\\"\\n },\\n \\"Shard\\": {\\n \\"Upgrade\\": true,\\n \\"MemUsageUpperThreshold\\": 70,\\n \\"MaxShards\\": 16,\\n \\"UpgradeObservationWindowSize\\": \\"5m\\",\\n \\"Downgrade\\": true,\\n \\"MemUsageLowerThreshold\\": 30,\\n \\"MinShards\\": 4,\\n \\"DowngradeObservationWindowSize\\": \\"1d\\"\\n },\\n \\"Bandwidth\\": {\\n \\"Upgrade\\": true,\\n \\"BandwidthUsageUpperThreshold\\": 70,\\n \\"ObservationWindowSize\\": \\"5m\\",\\n \\"Downgrade\\": true,\\n \\"BandwidthUsageLowerThreshold\\": 30\\n }\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeAutoScalingConfigResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n <Data>\\n <Spec>\\n <Upgrade>true</Upgrade>\\n <CpuUsageUpperThreshold>70</CpuUsageUpperThreshold>\\n <MemUsageUpperThreshold>70</MemUsageUpperThreshold>\\n <MaxSpec>polar.mysql.x8.12xlarge</MaxSpec>\\n <MaxReadOnlyNodes>10</MaxReadOnlyNodes>\\n <ObservationWindowSize>5m</ObservationWindowSize>\\n <CoolDownTime>5m</CoolDownTime>\\n <Downgrade>true</Downgrade>\\n </Spec>\\n </Data>\\n</DescribeAutoScalingConfigResponse>","errorExample":""}]', + 'title' => 'DescribeAutoScalingConfig', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an Alibaba Cloud SDK or a Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n", + ], + 'DescribeAutoScalingHistory' => [ + 'summary' => 'Queries the auto scaling history of an instance.', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'https', + 'http', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n" + ."\n" + .'> Only ApsaraDB RDS for MySQL instances are supported.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze8g2am97624****', + ], + ], + [ + 'name' => 'AutoScalingTaskType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the auto scaling task that you want to query. Set the value to **SPEC**, which indicates that you can query the history of only automatic performance scaling tasks.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'SPEC', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The maximum time range that can be specified is 45 days.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1675833788056', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The end time must be later than the start time.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1676605305796', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned. The status code 200 indicates that the request was successful.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. Otherwise, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Data' => [ + 'title' => 'AutoScalingInstanceHistory', + 'description' => 'The history of auto scaling.'."\n", + 'type' => 'object', + 'properties' => [ + 'InstanceId' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'example' => 'rm-2ze1jdv45i7l6****', + ], + 'SpecHistory' => [ + 'description' => 'The history of automatic performance scaling.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'ScaleType' => [ + 'description' => 'The type of the automatic performance scaling task. Valid values:'."\n" + ."\n" + .'* **SCALE_UP**: automatic instance type scale-up task.'."\n" + .'* **SCALE_DOWN**: automatic instance type scale-down task.'."\n", + 'type' => 'string', + 'example' => 'SCALE_UP', + ], + 'TaskExcuteStatus' => [ + 'description' => 'The status of the task. Valid values:'."\n" + ."\n" + .'* **true**: The task was successful.'."\n" + .'* **false**: The task failed.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'ErrorCode' => [ + 'description' => 'The error code returned by the scaling task. Valid values:'."\n" + ."\n" + .'* **Insufficient_Balance**: The account has insufficient balance or an unpaid order.'."\n" + .'* **REACH_SPEC_UPPERBOUND**: The instance type reaches the upper limit.'."\n" + .'* **Control_Error_Timeout_Msg**: The management task timed out.'."\n" + .'* **Invoke_Rds_Api_Error_Msg**: Failed to call the ApsaraDB RDS API.'."\n", + 'type' => 'string', + 'example' => 'Insufficient_Balance', + ], + 'OriginInstanceClass' => [ + 'description' => 'The original instance type.'."\n", + 'type' => 'string', + 'example' => 'mysql.n2.large.2c', + ], + 'TargetInstanceClass' => [ + 'description' => 'The destination instance type.'."\n", + 'type' => 'string', + 'example' => 'mysql.n2.xlarge.2c', + ], + 'OriginCore' => [ + 'description' => 'The original number of CPU cores of the instance.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '4', + ], + 'OriginMemory' => [ + 'description' => 'The original memory size of the instance. Unit: GB.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '8', + ], + 'TargetCore' => [ + 'description' => 'The destination number of CPU cores of the instance.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '8', + ], + 'TargetMemory' => [ + 'description' => 'The destination memory size of the instance. Unit: GB.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '16', + ], + 'TaskTime' => [ + 'description' => 'The time when the task was run. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1684830763000', + ], + ], + ], + ], + 'Storage' => [ + 'description' => 'The history of storage expansion. This feature is not supported.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The history of storage expansion of the instance.'."\n", + 'type' => 'object', + 'example' => 'None', + ], + ], + 'Resource' => [ + 'description' => 'The history of resource scale-out of ApsaraDB for Redis instances. This feature is not supported.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The history of resource scale-out of the ApsaraDB for Redis instance.'."\n", + 'type' => 'object', + 'example' => 'None', + ], + ], + 'Shard' => [ + 'description' => 'The history of automatic shard scale-out of ApsaraDB for Redis instances. This feature is not supported.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The history of automatic shard scale-out of the ApsaraDB for Redis instance.'."\n", + 'type' => 'object', + 'example' => 'None', + ], + ], + 'Bandwidth' => [ + 'description' => 'The history of automatic bandwidth scaling of ApsaraDB for Redis instances. This feature is not supported.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The history of automatic bandwidth scaling of the ApsaraDB for Redis instance.'."\n", + 'type' => 'object', + 'example' => 'None', + ], + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"InstanceId\\": \\"rm-2ze1jdv45i7l6****\\",\\n \\"SpecHistory\\": [\\n {\\n \\"ScaleType\\": \\"SCALE_UP\\",\\n \\"TaskExcuteStatus\\": true,\\n \\"ErrorCode\\": \\"Insufficient_Balance\\",\\n \\"OriginInstanceClass\\": \\"mysql.n2.large.2c\\",\\n \\"TargetInstanceClass\\": \\"mysql.n2.xlarge.2c\\",\\n \\"OriginCore\\": 4,\\n \\"OriginMemory\\": 8,\\n \\"TargetCore\\": 8,\\n \\"TargetMemory\\": 16,\\n \\"TaskTime\\": 1684830763000\\n }\\n ],\\n \\"Storage\\": [\\n {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n }\\n ],\\n \\"Resource\\": [\\n {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n }\\n ],\\n \\"Shard\\": [\\n {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n }\\n ],\\n \\"Bandwidth\\": [\\n {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'DescribeAutoScalingHistory', + 'description' => '* You can call this operation to query the history information about the automatic performance scaling only of ApsaraDB RDS for MySQL High-availability Edition instances.'."\n" + .'* If you use an Alibaba Cloud SDK or Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n", + 'requestParamsDescription' => 'If you set AutoScalingTaskType to SPEC, the history of automatic performance scaling tasks is queried. Only SPEC is supported.'."\n", + ], + 'DisableInstanceDasConfig' => [ + 'summary' => 'Disables the auto scaling feature for a database instance.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'r-bp1nti25tc7bq5****', + ], + ], + [ + 'name' => 'Engine', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database engine. Set the value to Redis.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'Redis', + ], + ], + [ + 'name' => 'ScaleType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of auto scaling. Valid values:'."\n" + ."\n" + .'* **specScale**: The specifications of a database instance are automatically scaled up or down.'."\n" + .'* **shardScale**: The number of shards for a database instance is automatically increased or decreased.'."\n" + .'* **bandwidthScale**: The bandwidth of a database instance is automatically increased or decreased.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'bandwidthScale', + 'enum' => [ + 'specScale', + 'shardScale', + 'bandwidthScale', + ], + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The result of disabling the auto scaling feature for the database instance.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '7172BECE-588A-5961-8126-C216E16B****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": \\"success\\",\\n \\"RequestId\\": \\"7172BECE-588A-5961-8126-C216E16B****\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<DisableInstanceDasConfigResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>success</Data>\\n <RequestId>7172BECE-588A-5961-8126-C216E16B****</RequestId>\\n <Success>true</Success>\\n</DisableInstanceDasConfigResponse>","errorExample":""}]', + 'title' => 'DisableInstanceDasConfig', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use Alibaba Cloud SDK or Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n" + .'* This operation is applicable only to ApsaraDB for Redis instances.'."\n", + ], + 'GetPartitionsHeatmap' => [ + 'summary' => 'Queries access frequency statistics and hot data on partitions of a PolarDB-X 2.0 instance.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'ConsoleContext', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'pxc-hzrciqy62c****', + ], + ], + [ + 'name' => 'TimeRange', + 'in' => 'query', + 'schema' => [ + 'description' => 'The time range to be queried. Valid values:'."\n" + ."\n" + .'* **LAST_ONE_HOURS**: the last hour.'."\n" + .'* **LAST_SIX_HOURS**: the last six hours.'."\n" + .'* **LAST_ONE_DAYS**: the last day.'."\n" + .'* **LAST_THREE_DAYS**: the last three days.'."\n" + .'* **LAST_SEVEN_DAYS**: the last seven days.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'LAST_SIX_HOURS', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the data to be queried. Valid values:'."\n" + ."\n" + .'* **READ_ROWS**: the read rows.'."\n" + .'* **WRITTEN_ROWS**: the written rows.'."\n" + .'* **READ_WRITTEN_ROWS**: the read and written rows.'."\n" + .'* **UPDATE_ROWS**: the updated rows.'."\n" + .'* **INSERTED_ROWS**: the inserted rows.'."\n" + .'* **DELETED_ROWS**: the deleted rows.'."\n" + .'* **READ_ROWS_WITH_DN**: the read rows returned from a data node.'."\n" + .'* **WRITTEN_ROWS_WITH_DN**: the written rows returned from a data node.'."\n" + .'* **READ_WRITTEN_ROWS_WITH_DN**: the read and written rows returned from a data node.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'WRITTEN_ROWS_WITH_DN', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message that contains information such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The hot data of the PolarDB-X 2.0 instance. The data is returned in JSON format.'."\n", + 'type' => 'string', + 'example' => '{'."\n" + .' "boundAxis": ['."\n" + .' {'."\n" + .' "bound": "A,B,C,D",'."\n" + .' "labels": ['."\n" + .' "L1",'."\n" + .' "L2",'."\n" + .' "L3",'."\n" + .' "L4"'."\n" + .' ],'."\n" + .' "rows": 3171'."\n" + .' },'."\n" + .' {'."\n" + .' "bound": "A,B,C,D",'."\n" + .' "labels": ['."\n" + .' "L1",'."\n" + .' "L2",'."\n" + .' "L3",'."\n" + .' "L4"'."\n" + .' ],'."\n" + .' "rows": 277128'."\n" + .' }'."\n" + .' ],'."\n" + .' "dataMap": {'."\n" + .' "READ_WRITTEN_ROWS": ['."\n" + .' ['."\n" + .' 0,'."\n" + .' 0,'."\n" + .' 0'."\n" + .' ],'."\n" + .' ['."\n" + .' 0,'."\n" + .' 0,'."\n" + .' 0'."\n" + .' ]'."\n" + .' ]'."\n" + .' },'."\n" + .' "timeAxis": ['."\n" + .' 1671701056070,'."\n" + .' 1671701116551,'."\n" + .' 1671701177020'."\n" + .' ]'."\n" + .'}', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'D00DB161-FEF6-5428-B37A-8D29A4C2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": \\"{\\\\n \\\\\\"boundAxis\\\\\\": [\\\\n {\\\\n \\\\\\"bound\\\\\\": \\\\\\"A,B,C,D\\\\\\",\\\\n \\\\\\"labels\\\\\\": [\\\\n \\\\\\"L1\\\\\\",\\\\n \\\\\\"L2\\\\\\",\\\\n \\\\\\"L3\\\\\\",\\\\n \\\\\\"L4\\\\\\"\\\\n ],\\\\n \\\\\\"rows\\\\\\": 3171\\\\n },\\\\n {\\\\n \\\\\\"bound\\\\\\": \\\\\\"A,B,C,D\\\\\\",\\\\n \\\\\\"labels\\\\\\": [\\\\n \\\\\\"L1\\\\\\",\\\\n \\\\\\"L2\\\\\\",\\\\n \\\\\\"L3\\\\\\",\\\\n \\\\\\"L4\\\\\\"\\\\n ],\\\\n \\\\\\"rows\\\\\\": 277128\\\\n }\\\\n ],\\\\n \\\\\\"dataMap\\\\\\": {\\\\n \\\\\\"READ_WRITTEN_ROWS\\\\\\": [\\\\n [\\\\n 0,\\\\n 0,\\\\n 0\\\\n ],\\\\n [\\\\n 0,\\\\n 0,\\\\n 0\\\\n ]\\\\n ]\\\\n },\\\\n \\\\\\"timeAxis\\\\\\": [\\\\n 1671701056070,\\\\n 1671701116551,\\\\n 1671701177020\\\\n ]\\\\n}\\",\\n \\"RequestId\\": \\"D00DB161-FEF6-5428-B37A-8D29A4C2****\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<GetPartitionsHeatmapResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>{\\n \\"boundAxis\\": [\\n {\\n \\"bound\\": \\"A,B,C,D\\",\\n \\"labels\\": [\\n \\"L1\\",\\n \\"L2\\",\\n \\"L3\\",\\n \\"L4\\"\\n ],\\n \\"rows\\": 3171\\n },\\n {\\n \\"bound\\": \\"A,B,C,D\\",\\n \\"labels\\": [\\n \\"L1\\",\\n \\"L2\\",\\n \\"L3\\",\\n \\"L4\\"\\n ],\\n \\"rows\\": 277128\\n }\\n ],\\n \\"dataMap\\": {\\n \\"READ_WRITTEN_ROWS\\": [\\n [\\n 0,\\n 0,\\n 0\\n ],\\n [\\n 0,\\n 0,\\n 0\\n ]\\n ]\\n },\\n \\"timeAxis\\": [\\n 1671701056070,\\n 1671701116551,\\n 1671701177020\\n ]\\n}</Data>\\n <RequestId>D00DB161-FEF6-5428-B37A-8D29A4C2****</RequestId>\\n <Success>true</Success>\\n</GetPartitionsHeatmapResponse>","errorExample":""}]', + 'title' => 'GetPartitionsHeatmap', + 'description' => 'We recommend that you do not call this operation. The data is returned in a special format and is complex to parse. You can use the [heatmap](~~470302~~) feature of Database Autonomy Service (DAS) to query the data.'."\n", + ], + 'GetPfsSqlSample' => [ + 'summary' => 'Queries the SQL sample data for the new version of the performance insight feature of a database instance.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '152860', + 'abilityTreeNodes' => [ + 'FEATUREhdmFT57I0', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The instance ID.'."\n" + ."\n" + .'> Only ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters are supported'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze1jdv45i7l6****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The node ID.'."\n" + ."\n" + .'> For ApsaraDB RDS for MySQL Cluster Edition instances or PolarDB for MySQL clusters, you must specify the node ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'r-x****-db-0', + ], + ], + [ + 'name' => 'SqlId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The SQL ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '651b56fe9418d48edb8fdf0980ec****', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The beginning of the time range to query. The value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1676511134614', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The end of the time range to query. The value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The end time must be later than the start time. You can view the data of up to seven days in the previous 30 days.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1678074351197', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '9CB97BC4-6479-55D0-B9D0-EA925AFE****', + ], + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**: The request was successful.'."\n" + .'* **false**: The request failed.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The SQL sample data.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'UserId' => [ + 'description' => 'The user ID.'."\n", + 'type' => 'string', + 'example' => '196278346919****', + ], + 'InstanceId' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'example' => 'rm-2ze1jdv45i7l6****', + ], + 'NodeId' => [ + 'description' => 'The node ID.'."\n" + ."\n" + .'> This parameter is returned only for ApsaraDB RDS for MySQL Cluster Edition instances or PolarDB for MySQL clusters.'."\n", + 'type' => 'string', + 'example' => 'r-x****-db-0', + ], + 'LogicId' => [ + 'description' => 'The ID of the logical database.'."\n", + 'type' => 'string', + 'example' => 'xxxxx', + ], + 'Timestamp' => [ + 'description' => 'The time when the SQL statement was executed. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1660100753556', + ], + 'SqlId' => [ + 'description' => 'The SQL statement ID.'."\n", + 'type' => 'string', + 'example' => '651b56fe9418d48edb8fdf0980ec****', + ], + 'Sql' => [ + 'description' => 'The sample SQL statement.'."\n", + 'type' => 'string', + 'example' => 'select * from xxxx where ****', + ], + 'ThreadId' => [ + 'description' => 'The thread ID.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '81751940', + ], + 'EventId' => [ + 'description' => 'The event ID.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '63735293', + ], + 'EndEventId' => [ + 'description' => 'The end ID of the event. By default, the value of this parameter is NULL when the event starts and is changed to the event ID when the event ends.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'EventName' => [ + 'description' => 'The name of the event.'."\n", + 'type' => 'string', + 'example' => 'statement/sql/select', + ], + 'Latency' => [ + 'description' => 'The execution duration. Unit: millisecond.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '0.199', + ], + 'LockLatency' => [ + 'description' => 'The lock wait duration. Unit: millisecond.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '0.09', + ], + 'Errors' => [ + 'description' => 'The number of errors returned for the SQL statement.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'Warnings' => [ + 'description' => 'The number of warnings returned for the SQL statement.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'RowsAffected' => [ + 'description' => 'The number of rows affected by the SQL statement.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'RowsSent' => [ + 'description' => 'The number of rows returned by the SQL statement.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'RowsExamined' => [ + 'description' => 'The number of rows scanned by the SQL statement.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2048576', + ], + 'CreateTmpDiskTables' => [ + 'description' => 'The number of internal on-disk temporary tables that were created when the SQL statement was executed.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'CreateTmpTables' => [ + 'description' => 'The number of internal temporary tables that were created when the SQL statement was executed.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'SelectFullJoin' => [ + 'description' => 'The number of joins that are used to perform table scans without using indexes.'."\n" + ."\n" + .'> : This parameter is used for the scenario in which indexes are not used in a union query. If the returned value is not 0, check the indexes of tables.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'SelectFullRangeJoin' => [ + 'description' => 'The number of joins that used ranges on referenced tables.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'SelectRange' => [ + 'description' => 'The number of joins that used ranges on the first table.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'SelectRangeCheck' => [ + 'description' => 'The number of joins that did not have key values. The keys and values were checked for each row of data.'."\n" + ."\n" + .'> : This parameter is used for the scenario in which indexes are not used in a union query. If the returned value is not 0, check the indexes of tables.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'SelectScan' => [ + 'description' => 'The number of scans.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'SortMergePasses' => [ + 'description' => 'The number of merges that the sorting algorithm must perform.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'SortRange' => [ + 'description' => 'The number of times the data was sorted by using ranges.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'SortRows' => [ + 'description' => 'The number of sorted rows.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'SortScan' => [ + 'description' => 'The number of sorts that were performed during table scans.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'NoIndexUsed' => [ + 'description' => 'Indicates whether table scans were performed when indexes were not used. Valid values:'."\n" + ."\n" + .'* **1**: yes.'."\n" + .'* **0**: no.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'NoGoodIndexUsed' => [ + 'description' => 'Indicates whether the server failed to find an index that can be used for the SQL statement. Valid values:'."\n" + ."\n" + .'* **1**: yes.'."\n" + .'* **0**: no.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'Db' => [ + 'description' => 'The name of the database.'."\n", + 'type' => 'string', + 'example' => 'testDB', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"9CB97BC4-6479-55D0-B9D0-EA925AFE****\\",\\n \\"Code\\": 200,\\n \\"Success\\": true,\\n \\"Data\\": [\\n {\\n \\"UserId\\": \\"196278346919****\\",\\n \\"InstanceId\\": \\"rm-2ze1jdv45i7l6****\\",\\n \\"NodeId\\": \\"r-x****-db-0\\",\\n \\"LogicId\\": \\"xxxxx\\",\\n \\"Timestamp\\": 1660100753556,\\n \\"SqlId\\": \\"651b56fe9418d48edb8fdf0980ec****\\",\\n \\"Sql\\": \\"select * from xxxx where ****\\",\\n \\"ThreadId\\": 81751940,\\n \\"EventId\\": 63735293,\\n \\"EndEventId\\": 0,\\n \\"EventName\\": \\"statement/sql/select\\",\\n \\"Latency\\": 0.199,\\n \\"LockLatency\\": 0.09,\\n \\"Errors\\": 0,\\n \\"Warnings\\": 0,\\n \\"RowsAffected\\": 0,\\n \\"RowsSent\\": 0,\\n \\"RowsExamined\\": 2048576,\\n \\"CreateTmpDiskTables\\": 0,\\n \\"CreateTmpTables\\": 0,\\n \\"SelectFullJoin\\": 0,\\n \\"SelectFullRangeJoin\\": 0,\\n \\"SelectRange\\": 0,\\n \\"SelectRangeCheck\\": 0,\\n \\"SelectScan\\": 0,\\n \\"SortMergePasses\\": 0,\\n \\"SortRange\\": 0,\\n \\"SortRows\\": 0,\\n \\"SortScan\\": 1,\\n \\"NoIndexUsed\\": 1,\\n \\"NoGoodIndexUsed\\": 1,\\n \\"Db\\": \\"testDB\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<GetPfsSqlSampleResponse>\\n <Message>Successful</Message>\\n <RequestId>9CB97BC4-6479-55D0-B9D0-EA925AFE****</RequestId>\\n <Code>200</Code>\\n <Success>true</Success>\\n <Data>\\n <UserId>196278346919****</UserId>\\n <InstanceId>rm-2ze1jdv45i7l6****</InstanceId>\\n <NodeId>r-x****-db-0</NodeId>\\n <LogicId>xxxxx</LogicId>\\n <Timestamp>1660100753556</Timestamp>\\n <SqlId>651b56fe9418d48edb8fdf0980ec****</SqlId>\\n <Sql>select * from xxxx where ****</Sql>\\n <ThreadId>81751940</ThreadId>\\n <EventId>63735293</EventId>\\n <EndEventId>0</EndEventId>\\n <EventName>statement/sql/select</EventName>\\n <Latency>0.199</Latency>\\n <LockLatency>0.09</LockLatency>\\n <Errors>0</Errors>\\n <Warnings>0</Warnings>\\n <RowsAffected>0</RowsAffected>\\n <RowsSent>0</RowsSent>\\n <RowsExamined>2048576</RowsExamined>\\n <CreateTmpDiskTables>0</CreateTmpDiskTables>\\n <CreateTmpTables>0</CreateTmpTables>\\n <SelectFullJoin>0</SelectFullJoin>\\n <SelectFullRangeJoin>0</SelectFullRangeJoin>\\n <SelectRange>0</SelectRange>\\n <SelectRangeCheck>0</SelectRangeCheck>\\n <SelectScan>0</SelectScan>\\n <SortMergePasses>0</SortMergePasses>\\n <SortRange>0</SortRange>\\n <SortRows>0</SortRows>\\n <SortScan>1</SortScan>\\n <NoIndexUsed>1</NoIndexUsed>\\n <NoGoodIndexUsed>1</NoGoodIndexUsed>\\n <Db>testDB</Db>\\n </Data>\\n</GetPfsSqlSampleResponse>","errorExample":""}]', + 'title' => 'GetPfsSqlSample', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an Alibaba Cloud SDK or a Database Autonomy Service (DAS) SDK to call this API operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n" + .'* An ApsaraDB RDS for MySQL instance or a PolarDB for MySQL cluster is connected to DAS.'."\n" + .'* The new version of the performance insight feature is enabled for the database instance. For more information, see [Performance insight (new version)](~~469117~~).'."\n", + ], + 'GetPfsMetricTrends' => [ + 'summary' => 'Queries the trend of a metric for the new version of the performance insight feature of a database instance.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREhdmF0MV2I', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rm-m5ea73876ukci****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The node ID.'."\n" + ."\n" + .'> This parameter is required if the database instance is an ApsaraDB RDS for MySQL Cluster Edition instance or a PolarDB for MySQL clusters.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'r-x****-db-0', + ], + ], + [ + 'name' => 'Metric', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The metric whose trend you want to query. Valid values:'."\n" + ."\n" + .'* **count**: the number of executions.'."\n" + .'* **avgRt**: the average execution duration.'."\n" + .'* **rtRate**: the execution duration percentage.'."\n" + .'* **rowsExamined**: the total number of scanned rows.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Count', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1677461663092', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The end of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The end time must be later than the start time. You can view the data of up to seven days in the previous 30 days.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1678432430967', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Timestamp' => [ + 'type' => 'string', + 'example' => '1681975870000', + 'description' => 'The timestamp. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.', + ], + 'Value' => [ + 'type' => 'any', + 'description' => 'The value of the metric.', + 'example' => '478.28', + ], + ], + 'description' => '', + ], + 'description' => 'The details of the data returned.', + ], + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'F4C27966-284E-51C4-9407-DB50CAB8****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"Data\\": {\\n \\"key\\": [\\n {\\n \\"Timestamp\\": \\"1681975870000\\",\\n \\"Value\\": \\"478.28\\"\\n }\\n ]\\n },\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"F4C27966-284E-51C4-9407-DB50CAB8****\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<GetPfsMetricTrendsResponse>\\n <Message>Successful</Message>\\n <RequestId>F4C27966-284E-51C4-9407-DB50CAB8****</RequestId>\\n <Data>\\n <Timestamp>1681975870000</Timestamp>\\n <Value>478.28</Value>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</GetPfsMetricTrendsResponse>","errorExample":""}]', + 'title' => 'GetPfsMetricTrends', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an Alibaba Cloud SDK or a Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n" + .'* An ApsaraDB RDS for MySQL instance or a PolarDB for MySQL cluster is connected to DAS.'."\n" + .'* The new version of the performance insight feature is enabled for the database instance. For more information, see [Performance insight (new version)](~~469117~~).'."\n", + ], + 'GetPfsSqlSummaries' => [ + 'summary' => 'Queries the full request data generated by the new version of the performance insight feature of a database instance based on the SQL ID.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREhdmFT57I0', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The instance ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rm-uf61swc4cru0b****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The node ID.'."\n" + ."\n" + .'> This parameter is required if the database instance is an ApsaraDB RDS for MySQL Cluster Edition instance or a PolarDB for MySQL cluster.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'r-****-db-0', + ], + ], + [ + 'name' => 'SqlId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The SQL ID.'."\n" + ."\n" + .'> If this parameter is specified, the full request statistics of the specified SQL query are collected. If this parameter is left empty, the full request statistics of the entire database instance are collected.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '651b56fe9418d48edb8fdf0980ec****', + ], + ], + [ + 'name' => 'Keywords', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The keywords of the SQL template. Separate multiple keywords with spaces.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'select update', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1675833788056', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The end of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The end time must be later than the start time. You can view the data of up to seven days within the last month.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1679297005999', + ], + ], + [ + 'name' => 'OrderBy', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The field by which to sort the returned entries. Default value: **count**.'."\n" + ."\n" + .'* **count**: the number of executions.'."\n" + .'* **avgRt**: the average execution duration.'."\n" + .'* **rtRate**: the execution duration percentage.'."\n" + .'* **rowsExamined**: the total number of scanned rows.'."\n" + .'* **avgRowsExamined**: the average number of scanned rows.'."\n" + .'* **avgRowsReturned**: the average number of returned rows.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'count', + ], + ], + [ + 'name' => 'Asc', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Specifies whether to sort the returned entries in ascending order. Default value: **false**. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 10. Valid values: 1 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'ListResult<PfsSqlSummary>', + 'description' => 'ListResult'."\n", + 'type' => 'object', + 'properties' => [ + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '54F3DBAE-9420-511A-9C29-265E8C04****', + ], + 'Data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'Total' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '264', + ], + 'List' => [ + 'description' => 'The details of the data returned.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The details of the data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'UserId' => [ + 'description' => 'The user ID.', + 'type' => 'string', + 'example' => '196278346919****', + ], + 'Psql' => [ + 'description' => 'The SQL template.', + 'type' => 'string', + 'example' => 'select ?', + ], + 'InstanceId' => [ + 'description' => 'The instance ID.', + 'type' => 'string', + 'example' => 'rm-2ze8g2am97624****', + ], + 'NodeId' => [ + 'description' => 'The node ID.'."\n" + ."\n" + .'> This parameter is returned only if the database instance is an ApsaraDB RDS for MySQL Cluster Edition instance or a PolarDB for MySQL cluster.'."\n", + 'type' => 'string', + 'example' => 'r-x****-db-0', + ], + 'SqlType' => [ + 'description' => 'The type of the SQL statement. Valid values:'."\n" + ."\n" + .'* **SELECT**'."\n" + .'* **UPDATE**'."\n" + .'* **DELETE**', + 'type' => 'string', + 'example' => 'SELECT', + ], + 'LogicId' => [ + 'description' => 'The logical database ID.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '58275984', + ], + 'SqlId' => [ + 'description' => 'The SQL template ID.', + 'type' => 'string', + 'example' => '2e8147b5ca2dfc640dfd5e43d96a****', + ], + 'Timestamp' => [ + 'description' => 'The data timestamp. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1643040000000', + ], + 'RtRate' => [ + 'title' => '耗时占比', + 'description' => 'The execution duration percentage.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0.1384', + ], + 'CountRate' => [ + 'title' => '执行次数占比', + 'description' => 'The percentage of the number of executions.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0.0586', + ], + 'FullScan' => [ + 'description' => 'Indicates whether full table scan was enabled. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**', + 'type' => 'boolean', + 'example' => 'true', + ], + 'Count' => [ + 'description' => 'The total number of executions.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100000', + ], + 'ErrCount' => [ + 'description' => 'The number of errors.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'WarnCount' => [ + 'description' => 'The number of warnings.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'TotalLatency' => [ + 'description' => 'The execution latency. Unit: millisecond.', + 'type' => 'number', + 'format' => 'double', + 'example' => '60913.256', + ], + 'MaxLatency' => [ + 'description' => 'The maximum execution latency. Unit: millisecond.', + 'type' => 'number', + 'format' => 'double', + 'example' => '36.233', + ], + 'AvgLatency' => [ + 'description' => 'The average execution latency. Unit: millisecond.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0.1717', + ], + 'RowsSent' => [ + 'description' => 'The number of rows returned by the SQL statement.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'RowsSendAvg' => [ + 'description' => 'The average number of returned rows.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0', + ], + 'RowsExamined' => [ + 'description' => 'The total number of scanned rows.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + ], + 'RowsExaminedAvg' => [ + 'description' => 'The average number of scanned rows.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0', + ], + 'RowsAffected' => [ + 'description' => 'The number of rows that are affected by the SQL statement.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'RowsAffectedAvg' => [ + 'description' => 'The average number of rows affected by the SQL statement.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0', + ], + 'TmpTables' => [ + 'description' => 'The number of temporary tables.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'TmpDiskTables' => [ + 'description' => 'The number of on-disk temporary tables.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'RowsSorted' => [ + 'description' => 'The number of sorted rows.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'SortMergePasses' => [ + 'description' => 'The number of merges that the sorting algorithm must perform.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'PhysicalReads' => [ + 'description' => 'The number of physical nodes.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'PhysicalAsyncReads' => [ + 'description' => 'The number of physical asynchronous nodes.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'SemisyncDelayTime' => [ + 'description' => 'The semi-synchronous replication latency. Unit: millisecond.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0.12', + ], + 'RowsSentAvg' => [ + 'description' => 'The average number of rows returned for the SQL statement.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0.52', + ], + 'LogicReads' => [ + 'description' => 'The number of logical nodes.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'RedoWrites' => [ + 'description' => 'The number of redo nodes.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'DataWriteTime' => [ + 'description' => 'The data write duration. Unit: millisecond.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0', + ], + 'DataWrites' => [ + 'description' => 'The number of nodes to which data can be written.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'DataReadTime' => [ + 'description' => 'The data read duration. Unit: millisecond.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0', + ], + 'DataReads' => [ + 'description' => 'The number of nodes from which data can be read.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'RwlockOsWaits' => [ + 'description' => 'Indicates whether read/write splitting was enabled. Valid values:'."\n" + ."\n" + .'* **0:** Read/write splitting was disabled.'."\n" + .'* **1:** Read/write splitting was enabled.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'RwlockSpinRounds' => [ + 'description' => 'The read/write splitting parameters.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'RwlockSpinWaits' => [ + 'description' => 'Indices whether multi-index scanning was enabled. Valid values:'."\n" + ."\n" + .'* **0:** Multi-index scanning was disabled.'."\n" + .'* **1:** Multi-index scanning was enabled.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'MutexWaits' => [ + 'description' => 'The number of mutex waits.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'MutexSpins' => [ + 'description' => 'The number of mutex spins.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'TransactionLockTime' => [ + 'description' => 'The amount of time consumed for locking the storage transaction. Unit: millisecond.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0', + ], + 'ServerLockTime' => [ + 'description' => 'The amount of time consumed for locking the server. Unit: millisecond.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0', + ], + 'CpuTime' => [ + 'description' => 'The CPU execution duration. Unit: millisecond.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0', + ], + 'ElapsedTime' => [ + 'description' => 'The execution duration. Unit: millisecond.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0', + ], + 'Id' => [ + 'title' => '主键', + 'description' => 'The primary key ID.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '26186357', + ], + 'SelectScanAvg' => [ + 'description' => 'The average number of scanned rows.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0', + ], + 'SelectRangeAvg' => [ + 'description' => 'The average selected range.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0', + ], + 'SelectFullJoinAvg' => [ + 'description' => 'The average number of joins that performed table scans without using indexes.'."\n" + ."\n" + .'> If the value of this parameter is not 0, check the table indexes.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0', + ], + 'SelectFullRangeJoinAvg' => [ + 'description' => 'The average number of joins that selected a range.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0', + ], + 'SortScanAvg' => [ + 'description' => 'The average number of sorts that were performed during table scans.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0', + ], + 'SortRowsAvg' => [ + 'description' => 'The average number of sorted rows.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0', + ], + 'TmpTablesAvg' => [ + 'description' => 'The average number of temporary tables.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0', + ], + 'TmpDiskTablesAvg' => [ + 'description' => 'The average number of on-disk temporary tables.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0', + ], + 'FirstTime' => [ + 'description' => 'The time when the SQL statement was executed for the first time. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1659308149000', + ], + 'LastTime' => [ + 'description' => 'The time when the SQL statement was last modified. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1661306520000', + ], + 'LockLatencyAvg' => [ + 'description' => 'The average lock wait latency. Unit: millisecond.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0', + ], + 'TimerWaitAvg' => [ + 'description' => 'The reserved parameter.', + 'type' => 'number', + 'format' => 'double', + 'example' => 'None', + ], + 'SortRangeAvg' => [ + 'description' => 'The average number of sorts that were performed by using a range.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0', + ], + 'CpuRate' => [ + 'description' => 'The ratio of the CPU execution duration to the total execution duration of the SQL statement.', + 'type' => 'number', + 'format' => 'double', + 'example' => '0', + ], + 'Db' => [ + 'description' => 'The name of the database.', + 'type' => 'string', + 'example' => 'testDB', + ], + 'Tables' => [ + 'description' => 'The names of tables in the database.', + 'type' => 'array', + 'items' => [ + 'description' => 'The names of tables in the database.', + 'type' => 'string', + 'example' => 'test_table', + ], + ], + ], + ], + ], + 'PageNo' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'Extra' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'any', + 'example' => 'None', + ], + ], + ], + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"54F3DBAE-9420-511A-9C29-265E8C04****\\",\\n \\"Data\\": {\\n \\"Total\\": 264,\\n \\"List\\": [\\n {\\n \\"UserId\\": \\"196278346919****\\",\\n \\"Psql\\": \\"select ?\\",\\n \\"InstanceId\\": \\"rm-2ze8g2am97624****\\",\\n \\"NodeId\\": \\"r-x****-db-0\\",\\n \\"SqlType\\": \\"SELECT\\",\\n \\"LogicId\\": 58275984,\\n \\"SqlId\\": \\"2e8147b5ca2dfc640dfd5e43d96a****\\",\\n \\"Timestamp\\": 1643040000000,\\n \\"RtRate\\": 0.1384,\\n \\"CountRate\\": 0.0586,\\n \\"FullScan\\": true,\\n \\"Count\\": 100000,\\n \\"ErrCount\\": 0,\\n \\"WarnCount\\": 0,\\n \\"TotalLatency\\": 60913.256,\\n \\"MaxLatency\\": 36.233,\\n \\"AvgLatency\\": 0.1717,\\n \\"RowsSent\\": 0,\\n \\"RowsSendAvg\\": 0,\\n \\"RowsExamined\\": 100,\\n \\"RowsExaminedAvg\\": 0,\\n \\"RowsAffected\\": 0,\\n \\"RowsAffectedAvg\\": 0,\\n \\"TmpTables\\": 0,\\n \\"TmpDiskTables\\": 0,\\n \\"RowsSorted\\": 0,\\n \\"SortMergePasses\\": 0,\\n \\"PhysicalReads\\": 0,\\n \\"PhysicalAsyncReads\\": 0,\\n \\"SemisyncDelayTime\\": 0.12,\\n \\"RowsSentAvg\\": 0.52,\\n \\"LogicReads\\": 0,\\n \\"RedoWrites\\": 0,\\n \\"DataWriteTime\\": 0,\\n \\"DataWrites\\": 0,\\n \\"DataReadTime\\": 0,\\n \\"DataReads\\": 0,\\n \\"RwlockOsWaits\\": 0,\\n \\"RwlockSpinRounds\\": 0,\\n \\"RwlockSpinWaits\\": 0,\\n \\"MutexWaits\\": 1,\\n \\"MutexSpins\\": 1,\\n \\"TransactionLockTime\\": 0,\\n \\"ServerLockTime\\": 0,\\n \\"CpuTime\\": 0,\\n \\"ElapsedTime\\": 0,\\n \\"Id\\": 26186357,\\n \\"SelectScanAvg\\": 0,\\n \\"SelectRangeAvg\\": 0,\\n \\"SelectFullJoinAvg\\": 0,\\n \\"SelectFullRangeJoinAvg\\": 0,\\n \\"SortScanAvg\\": 0,\\n \\"SortRowsAvg\\": 0,\\n \\"TmpTablesAvg\\": 0,\\n \\"TmpDiskTablesAvg\\": 0,\\n \\"FirstTime\\": 1659308149000,\\n \\"LastTime\\": 1661306520000,\\n \\"LockLatencyAvg\\": 0,\\n \\"TimerWaitAvg\\": 0,\\n \\"SortRangeAvg\\": 0,\\n \\"CpuRate\\": 0,\\n \\"Db\\": \\"testDB\\",\\n \\"Tables\\": [\\n \\"test_table\\"\\n ]\\n }\\n ],\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 10,\\n \\"Extra\\": \\"None\\"\\n },\\n \\"Code\\": 200,\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<GetPfsSqlSummariesResponse>\\n <Message>Successful</Message>\\n <RequestId>54F3DBAE-9420-511A-9C29-265E8C04****</RequestId>\\n <Data>\\n <Total>264</Total>\\n <List>\\n <UserId>196278346919****</UserId>\\n <Psql>select ?</Psql>\\n <SqlFeature>None</SqlFeature>\\n <InstanceId>rm-2ze8g2am97624****</InstanceId>\\n <NodeId>r-x****-db-0</NodeId>\\n <SqlType>SELECT</SqlType>\\n <LogicId>58275984</LogicId>\\n <SqlId>2e8147b5ca2dfc640dfd5e43d96a****</SqlId>\\n <Timestamp>1643040000000</Timestamp>\\n <RtRate>0.1384</RtRate>\\n <CountRate>0.0586</CountRate>\\n <FullScan>true</FullScan>\\n <Count>100000</Count>\\n <ErrCount>0</ErrCount>\\n <WarnCount>0</WarnCount>\\n <TotalLatency>60913.256</TotalLatency>\\n <MaxLatency>36.233</MaxLatency>\\n <AvgLatency>0.1717</AvgLatency>\\n <RowsSent>0</RowsSent>\\n <RowsSendAvg>0</RowsSendAvg>\\n <RowsExamined>100</RowsExamined>\\n <RowsExaminedAvg>0</RowsExaminedAvg>\\n <RowsAffected>0</RowsAffected>\\n <RowsAffectedAvg>0</RowsAffectedAvg>\\n <TmpTables>0</TmpTables>\\n <TmpDiskTables>0</TmpDiskTables>\\n <RowsSorted>0</RowsSorted>\\n <SortMergePasses>0</SortMergePasses>\\n <PhysicalReads>0</PhysicalReads>\\n <PhysicalAsyncReads>0</PhysicalAsyncReads>\\n <SemisyncDelayTime>0.12</SemisyncDelayTime>\\n <RowsSentAvg>0.52</RowsSentAvg>\\n <LogicReads>0</LogicReads>\\n <RedoWrites>0</RedoWrites>\\n <DataWriteTime>0</DataWriteTime>\\n <DataWrites>0</DataWrites>\\n <DataReadTime>0</DataReadTime>\\n <DataReads>0</DataReads>\\n <RwlockOsWaits>0</RwlockOsWaits>\\n <RwlockSpinRounds>0</RwlockSpinRounds>\\n <RwlockSpinWaits>0</RwlockSpinWaits>\\n <MutexWaits>1</MutexWaits>\\n <MutexSpins>1</MutexSpins>\\n <TransactionLockTime>0</TransactionLockTime>\\n <ServerLockTime>0</ServerLockTime>\\n <CpuTime>0</CpuTime>\\n <ElapsedTime>0</ElapsedTime>\\n <Id>26186357</Id>\\n <SelectScanAvg>0</SelectScanAvg>\\n <SelectRangeAvg>0</SelectRangeAvg>\\n <SelectFullJoinAvg>0</SelectFullJoinAvg>\\n <SelectFullRangeJoinAvg>0</SelectFullRangeJoinAvg>\\n <SortScanAvg>0</SortScanAvg>\\n <SortRowsAvg>0</SortRowsAvg>\\n <TmpTablesAvg>0</TmpTablesAvg>\\n <TmpDiskTablesAvg>0</TmpDiskTablesAvg>\\n <FirstTime>1659308149000</FirstTime>\\n <LastTime>1661306520000</LastTime>\\n <LockLatencyAvg>0</LockLatencyAvg>\\n <SortRangeAvg>0</SortRangeAvg>\\n <CpuRate>0</CpuRate>\\n <Db>testDB</Db>\\n <Tables>test_table</Tables>\\n </List>\\n <PageNo>1</PageNo>\\n <PageSize>10</PageSize>\\n <Extra>None</Extra>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</GetPfsSqlSummariesResponse>","errorExample":""}]', + 'title' => 'GetPfsSqlSummaries', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an Alibaba Cloud SDK or a Database Autonomy Service (DAS) SDK to call this API operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n" + .'* An ApsaraDB RDS for MySQL instance or a PolarDB for MySQL cluster is connected to DAS.'."\n" + .'* The new version of the performance insight feature is enabled for the database instance. For more information, see [Performance insight (new version)](~~469117~~).'."\n", + ], + 'DescribeErrorLogRecords' => [ + 'summary' => '查询实例错误日志', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '235508', + 'abilityTreeNodes' => [ + 'FEATUREhdmR88NLD', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'pc-bp1u5mas9exx7****', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'pi-bp16v3824rt73****', + ], + ], + [ + 'name' => 'Role', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'db', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1731983066000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1732069466000', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'Filters', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'title' => '过滤参数', + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'filters', + ], + 'Value' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'deadlock'."\n", + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 100, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Message' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'AAA17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => '', + 'type' => 'boolean', + 'example' => 'true', + ], + 'Data' => [ + 'title' => 'ListResult<VariableInspectionStrategy>', + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'ItemsNumbers' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'StartTime' => [ + 'description' => '', + 'type' => 'string', + 'example' => '2025-07-22T05:48:43Z', + ], + 'EndTime' => [ + 'description' => '', + 'type' => 'string', + 'example' => '2025-07-23T05:48:43Z', + ], + 'TotalRecords' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + ], + 'PageNumbers' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'MaxRecordsPerPage' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'Logs' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'CreateTime' => [ + 'description' => '', + 'type' => 'string', + 'example' => '1731983067000', + ], + 'DBInstanceName' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'd-bp128a003436****'."\n", + ], + 'Category' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'NETWORK', + ], + 'ConnInfo' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'conn18xxxxxx', + ], + 'Content' => [ + 'description' => '', + 'type' => 'string', + 'example' => '2025-07-15T15:14:27.175188+08:00 0 [Note] [MY-012468] [InnoDB] Transactions deadlock detected, dumping detailed information.', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"AAA17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": true,\\n \\"Data\\": {\\n \\"ItemsNumbers\\": 10,\\n \\"StartTime\\": \\"2025-07-22T05:48:43Z\\",\\n \\"EndTime\\": \\"2025-07-23T05:48:43Z\\",\\n \\"TotalRecords\\": 100,\\n \\"PageNumbers\\": 1,\\n \\"MaxRecordsPerPage\\": 10,\\n \\"Logs\\": [\\n {\\n \\"CreateTime\\": \\"1731983067000\\",\\n \\"DBInstanceName\\": \\"d-bp128a003436****\\\\n\\",\\n \\"Category\\": \\"NETWORK\\",\\n \\"ConnInfo\\": \\"conn18xxxxxx\\",\\n \\"Content\\": \\"2025-07-15T15:14:27.175188+08:00 0 [Note] [MY-012468] [InnoDB] Transactions deadlock detected, dumping detailed information.\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'GetDasAgentSSE' => [ + 'summary' => 'DAS大模型能力异步逻辑接口', + 'path' => '/getDasAgentSSE', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + 'sse', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREhdmB8MM4L', + 'FEATUREhdmROFBLE', + 'FEATUREhdm1XKIXR', + 'FEATUREhdmR88NLD', + 'FEATUREhdm3TU4OK', + ], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'Query', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'Are there any issues or abnormalities with my instance rm-xxx?', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'rm-xxxx', + ], + ], + [ + 'name' => 'SessionId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'xxx-xxx-xxx', + ], + ], + [ + 'name' => 'AgentId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'ag-472T0DxtmjIxxxxx', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'xxx-xxx-xxx', + ], + 'Answer' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'rm-xxxx', + ], + 'Metadata' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + ], + 'CharCount' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1403', + ], + 'ToolName' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'SqlFilter', + ], + 'ToolParams' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'string', + 'example' => '["--instanceId", "rm-*****", "--sqlText", "select~from~das~where~name~das1"]', + ], + ], + 'RequestId' => [ + 'description' => '', + 'type' => 'string', + 'example' => '04930480-9404-50CB-8252-Axxxxxxxx', + ], + ], + ], + 'Event' => [ + 'description' => '', + 'type' => 'string', + 'enumValueTitles' => [ + 'summary' => '', + ' error ' => '', + 'agent_message ' => '', + ], + 'example' => 'summary', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + [ + [ + 'errorCode' => 'InstanceNotFound', + 'errorMessage' => 'Requested instance not found.', + ], + ], + 500 => [ + [ + 'errorCode' => 'Timeout', + 'errorMessage' => 'The request processing has failed due to timeout.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Id\\": \\"123e4567-e89b-12d3-a456-xxxxxxxxxxxx\\",\\n \\"Answer\\": \\"rm-xxxx\\",\\n \\"Metadata\\": {\\n \\"Code\\": -1810001,\\n \\"CharCount\\": 1403,\\n \\"ToolName\\": \\"SqlFilter\\",\\n \\"ToolParams\\": [\\n \\"[\\\\\\"--instanceId\\\\\\", \\\\\\"rm-*****\\\\\\", \\\\\\"--sqlText\\\\\\", \\\\\\"select~from~das~where~name~das1\\\\\\"]\\"\\n ],\\n \\"RequestId\\": \\"04930480-9404-50CB-8252-Axxxxxxxx\\"\\n },\\n \\"Event\\": \\"summary\\"\\n}","type":"json"}]', + ], + 'GetInstanceGroupInspectReportList' => [ + 'summary' => '查询实例组的报告信息', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREhdmJC65CS', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'GroupId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'null', + ], + ], + [ + 'name' => 'AgentId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'ag-472T0DxtmjIxxxxx', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'formData', + 'schema' => [ + 'title' => '开始时间戳', + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1596177993000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'formData', + 'schema' => [ + 'title' => '结束时间戳', + 'description' => '', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1655427625000', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => '', + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'true', + ], + 'Data' => [ + 'title' => 'List<ReportStatus>', + 'description' => 'List<ReportStatus>', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'ReportId' => [ + 'description' => '', + 'type' => 'string', + 'example' => '13f52040-5a6e-42c3-bb84-051f5d6d****', + ], + 'Status' => [ + 'title' => '任务状态 WAITING_UNREADY = 0 WAITING_READY = 1 PROCESSING = 2 FINISHED = 3 ERROR = 4 STOPPED = -1', + 'description' => '', + 'type' => 'string', + 'example' => '3', + ], + 'ReportDate' => [ + 'title' => '诊断的日期', + 'description' => '', + 'type' => 'string', + 'example' => '2025-12-10', + ], + 'CreateTime' => [ + 'description' => '', + 'type' => 'string', + 'example' => '2025-12-11 00:39:00', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": [\\n {\\n \\"ReportId\\": \\"13f52040-5a6e-42c3-bb84-051f5d6d****\\",\\n \\"Status\\": \\"3\\",\\n \\"ReportDate\\": \\"2025-12-10\\",\\n \\"CreateTime\\": \\"2025-12-11 00:39:00\\"\\n }\\n ]\\n}","type":"json"}]', + ], + 'GetInstanceGroupInspectReportDetail' => [ + 'summary' => '获取实例组日报详情', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREhdmJC65CS', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'ReportId', + 'in' => 'formData', + 'schema' => [ + 'title' => '报告ID', + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => '13f52040-5a6e-42c3-bb84-051f5d6d****', + ], + ], + [ + 'name' => 'AgentId', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => '', + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'true', + ], + 'Data' => [ + 'title' => 'ReportDetail', + 'description' => 'ReportDetail', + 'type' => 'object', + 'properties' => [ + 'ReportId' => [ + 'description' => '', + 'type' => 'string', + 'example' => '13f52040-5a6e-42c3-bb84-051f5d6d****'."\n", + ], + 'ReportDetail' => [ + 'description' => '', + 'type' => 'string', + 'example' => '', + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"ReportId\\": \\"13f52040-5a6e-42c3-bb84-051f5d6d****\\\\n\\",\\n \\"ReportDetail\\": \\"\\\\\\"### 概要\\\\\\\\n\\\\\\\\n报告日期:2025-12-10 \\\\\\\\n对比周期:[昨日日期] → 2025-12-10 以下省略\\\\\\"\\"\\n }\\n}","type":"json"}]', + ], + 'CreateSecurityIPGroup' => [ + 'summary' => '创建用户跨产品白名单模板', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '247410', + 'abilityTreeNodes' => [ + 'FEATUREhdmQULC0I', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'RegionName', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'cn-beijing', + ], + ], + [ + 'name' => 'GlobalIgName', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'test_123', + ], + ], + [ + 'name' => 'GIpList', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => '192.168.0.1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => '', + 'type' => 'string', + 'example' => '200', + ], + 'Data' => [ + 'title' => 'ListResult<InstanceSSL>', + 'description' => 'ListResult<InstanceSSL>', + 'type' => 'object', + 'properties' => [ + 'GlobalSecurityIPGroup' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'SecurityIpType' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'ipv4', + ], + 'RegionId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'cn-shenzhen', + ], + 'GlobalIgName' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'test', + ], + 'GlobalSecurityGroupId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'g-2uztsd6yvhmsqyjXXX', + ], + 'WhitelistNetType' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'mix', + ], + 'GIpList' => [ + 'description' => '', + 'type' => 'string', + 'example' => '192.168.0.0/24', + ], + ], + ], + ], + ], + ], + 'Message' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'D578DB3C-06BF-54F2-A78F-C6C25Exxxxxx', + ], + 'Success' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'true', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Data\\": {\\n \\"GlobalSecurityIPGroup\\": [\\n {\\n \\"SecurityIpType\\": \\"ipv4\\",\\n \\"RegionId\\": \\"cn-shenzhen\\",\\n \\"GlobalIgName\\": \\"test\\",\\n \\"GlobalSecurityGroupId\\": \\"g-2uztsd6yvhmsqyjXXX\\",\\n \\"WhitelistNetType\\": \\"mix\\",\\n \\"GIpList\\": \\"192.168.0.0/24\\"\\n }\\n ]\\n },\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"D578DB3C-06BF-54F2-A78F-C6C25Exxxxxx\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]', + ], + 'DescribeSecurityIPGroup' => [ + 'summary' => '展示用户跨产品白名单模板具体信息', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '247410', + 'abilityTreeNodes' => [ + 'FEATUREhdmQULC0I', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'RegionName', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'cn-shanghai', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => '', + 'type' => 'string', + 'example' => '200', + ], + 'Data' => [ + 'title' => 'ListResult<InstanceSSL>', + 'description' => 'ListResult<InstanceSSL>', + 'type' => 'object', + 'properties' => [ + 'SecurityIpGroups' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'DbInstances' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'string', + 'example' => '["r-2ze9g6mnhu1***",'."\n" + .'"pc-2zew5qn1m***",'."\n" + .'"r-2ze9g6mn****",'."\n" + .'"pc-2zew5qh41*****"]', + ], + ], + 'SecurityIpType' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'ipv4', + ], + 'Uid' => [ + 'description' => '', + 'type' => 'string', + 'example' => '160-79abe3f4****', + ], + 'RegionId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'GEcsSgIdList' => [ + 'description' => '', + 'type' => 'string', + 'example' => ' ', + ], + 'GlobalIgName' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'test_123', + ], + 'GlobalSecurityGroupId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'g-1no2rzybnqcv****', + ], + 'WhitelistNetType' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'mix', + ], + 'EngineInfoList' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'InstanceNum' => [ + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'EngineName' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'PolarDBMySQL', + ], + 'InstanceIds' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'rm-2ze8ygcc****', + ], + ], + ], + ], + ], + 'UserId' => [ + 'description' => '', + 'type' => 'string', + 'example' => '641***', + ], + 'GIpList' => [ + 'description' => '', + 'type' => 'string', + 'example' => '192.168.1.28/32', + ], + ], + ], + ], + ], + ], + 'Message' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'CAC553F1-C669-53F1-A295-2CF050E****', + ], + 'Success' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'true', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Data\\": {\\n \\"SecurityIpGroups\\": [\\n {\\n \\"DbInstances\\": [\\n \\"[\\\\\\"r-2ze9g6mnhu1***\\\\\\",\\\\n\\\\\\"pc-2zew5qn1m***\\\\\\",\\\\n\\\\\\"r-2ze9g6mn****\\\\\\",\\\\n\\\\\\"pc-2zew5qh41*****\\\\\\"]\\"\\n ],\\n \\"SecurityIpType\\": \\"ipv4\\",\\n \\"Uid\\": \\"160-79abe3f4****\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"GEcsSgIdList\\": \\" null\\",\\n \\"GlobalIgName\\": \\"test_123\\",\\n \\"GlobalSecurityGroupId\\": \\"g-1no2rzybnqcv****\\",\\n \\"WhitelistNetType\\": \\"mix\\",\\n \\"EngineInfoList\\": [\\n {\\n \\"InstanceNum\\": 10,\\n \\"EngineName\\": \\"PolarDBMySQL\\",\\n \\"InstanceIds\\": [\\n \\"rm-2ze8ygcc****\\"\\n ]\\n }\\n ],\\n \\"UserId\\": \\"641***\\",\\n \\"GIpList\\": \\"192.168.1.28/32\\"\\n }\\n ]\\n },\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"CAC553F1-C669-53F1-A295-2CF050E****\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]', + ], + 'DescribeSecurityIPGroupRelation' => [ + 'summary' => '展示用户跨产品白名单模板与实例绑定信息', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '247410', + 'abilityTreeNodes' => [ + 'FEATUREhdmQULC0I', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'RegionName', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'cn-shanghai', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2zegsc57ofexxxxx', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => '', + 'type' => 'string', + 'example' => '200', + ], + 'Data' => [ + 'title' => 'ListResult<InstanceSSL>', + 'description' => 'ListResult<InstanceSSL>', + 'type' => 'object', + 'properties' => [ + 'GlobalSecurityIPGroupRel' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'RegionId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'cn-shenzhen', + ], + 'GlobalIgName' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'test2', + ], + 'GlobalSecurityGroupId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'g-1no2rzybnqcv0xxxxxx', + ], + 'GIpList' => [ + 'description' => '', + 'type' => 'string', + 'example' => '192.168.1.28/32', + ], + ], + ], + ], + 'InstanceId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'rm-2ze1jdv45i7l6****', + ], + ], + ], + 'Message' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'A6D1C8EE-013C-541F-83EB-B13C8xxxxxx', + ], + 'Success' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'true', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Data\\": {\\n \\"GlobalSecurityIPGroupRel\\": [\\n {\\n \\"RegionId\\": \\"cn-shenzhen\\",\\n \\"GlobalIgName\\": \\"test2\\",\\n \\"GlobalSecurityGroupId\\": \\"g-1no2rzybnqcv0xxxxxx\\",\\n \\"GIpList\\": \\"192.168.1.28/32\\"\\n }\\n ],\\n \\"InstanceId\\": \\"rm-2ze1jdv45i7l6****\\"\\n },\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"A6D1C8EE-013C-541F-83EB-B13C8xxxxxx\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]', + ], + 'ModifySecurityIPGroup' => [ + 'summary' => '修改用户跨产品白名单模板', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '247410', + 'abilityTreeNodes' => [ + 'FEATUREhdmQULC0I', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'RegionName', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'cn-shanghai', + ], + ], + [ + 'name' => 'GlobalIgName', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'test_123', + ], + ], + [ + 'name' => 'GIpList', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => '192.168.0.1', + ], + ], + [ + 'name' => 'GlobalSecurityGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'g-9ubyrqeoko****,g-pdxlrvn13k****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => '', + 'type' => 'string', + 'example' => '200', + ], + 'Data' => [ + 'title' => 'ListResult<InstanceSSL>', + 'description' => 'ListResult<InstanceSSL>', + 'type' => 'object', + 'properties' => [ + 'GlobalSecurityIPGroup' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'SecurityIpType' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'ipv4', + ], + 'RegionId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'cn-beijing', + ], + 'GlobalIgName' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'test', + ], + 'GlobalSecurityGroupId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'g-b1asblm5ae****', + ], + 'WhitelistNetType' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'mix', + ], + 'GIpList' => [ + 'description' => '', + 'type' => 'string', + 'example' => '192.168.0.1', + ], + ], + ], + ], + ], + ], + 'Message' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'true', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Data\\": {\\n \\"GlobalSecurityIPGroup\\": [\\n {\\n \\"SecurityIpType\\": \\"ipv4\\",\\n \\"RegionId\\": \\"cn-beijing\\",\\n \\"GlobalIgName\\": \\"test\\",\\n \\"GlobalSecurityGroupId\\": \\"g-b1asblm5ae****\\",\\n \\"WhitelistNetType\\": \\"mix\\",\\n \\"GIpList\\": \\"192.168.0.1\\"\\n }\\n ]\\n },\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]', + ], + 'ModifySecurityIPGroupRelation' => [ + 'summary' => '绑定/解绑用户跨产品白名单模板', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '247410', + 'abilityTreeNodes' => [ + 'FEATUREhdmQULC0I', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'RegionName', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'cn-shanghai', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'pc-bp1u5mas9exx7****', + ], + ], + [ + 'name' => 'GlobalSecurityGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'g-ggh7qvrrwikyxe****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => '', + 'type' => 'string', + 'example' => '200', + ], + 'Data' => [ + 'title' => 'ListResult<InstanceSSL>', + 'description' => 'ListResult<InstanceSSL>', + 'type' => 'object', + 'properties' => [ + 'GlobalSecurityIPGroupRel' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'RegionId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'cn-shanghai', + ], + 'GlobalIgName' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'saas_jump', + ], + 'GlobalSecurityGroupId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'g-v8kwereyd6u7kx****', + ], + 'GIpList' => [ + 'description' => '', + 'type' => 'string', + 'example' => '192.168.0.1,192.168.100.0/24', + ], + ], + ], + ], + 'InstanceId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'rm-2ze1jdv45i7l6****', + ], + ], + ], + 'Message' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => '', + 'type' => 'string', + 'example' => '840F51F7-9C01-538D-94F6-AE712905****', + ], + 'Success' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'true', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Data\\": {\\n \\"GlobalSecurityIPGroupRel\\": [\\n {\\n \\"RegionId\\": \\"cn-shanghai\\",\\n \\"GlobalIgName\\": \\"saas_jump\\",\\n \\"GlobalSecurityGroupId\\": \\"g-v8kwereyd6u7kx****\\",\\n \\"GIpList\\": \\"192.168.0.1,192.168.100.0/24\\"\\n }\\n ],\\n \\"InstanceId\\": \\"rm-2ze1jdv45i7l6****\\"\\n },\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"840F51F7-9C01-538D-94F6-AE712905****\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]', + ], + 'DeleteSecurityIPGroup' => [ + 'summary' => '删除用户跨产品白名单模板', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '247410', + 'abilityTreeNodes' => [ + 'FEATUREhdmQULC0I', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'RegionName', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'cn-shanghai', + ], + ], + [ + 'name' => 'GlobalSecurityGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'g-rcge12hbfooad3m****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => '', + 'type' => 'string', + 'example' => '200', + ], + 'Data' => [ + 'title' => 'ListResult<InstanceSSL>', + 'description' => 'ListResult<InstanceSSL>', + 'type' => 'object', + 'properties' => [ + 'GlobalSecurityIPGroup' => [ + 'description' => '', + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'GlobalSecurityGroupId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'g-1no2rzybnqcv0m****'."\n", + ], + ], + ], + ], + ], + ], + 'Message' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'true', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Data\\": {\\n \\"GlobalSecurityIPGroup\\": [\\n {\\n \\"GlobalSecurityGroupId\\": \\"g-1no2rzybnqcv0m****\\\\n\\"\\n }\\n ]\\n },\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]', + ], + 'GetHDMAliyunResourceSyncResult' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'Uid', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'accessKey', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'signature', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'timestamp', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => '__context', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'skipAuth', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + 'default' => 'true', + ], + ], + [ + 'name' => 'UserId', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'TaskId', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Message' => [ + 'type' => 'string', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'Synchro' => [ + 'type' => 'string', + ], + 'Data' => [ + 'type' => 'object', + 'properties' => [ + 'SyncStatus' => [ + 'type' => 'string', + ], + 'ErrorMsg' => [ + 'type' => 'string', + ], + 'SubResults' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'ResourceSyncSubResult' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'SyncCount' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'ResourceType' => [ + 'type' => 'string', + ], + 'Success' => [ + 'type' => 'boolean', + ], + 'ErrMsg' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + 'Results' => [ + 'type' => 'string', + ], + ], + ], + 'Code' => [ + 'type' => 'string', + ], + 'Success' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => null, + ], + 'GetEndpointSwitchTask' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'Uid', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'accessKey', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'signature', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'timestamp', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => '__context', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'skipAuth', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + 'default' => 'true', + ], + ], + [ + 'name' => 'UserId', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'TaskId', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Message' => [ + 'type' => 'string', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'Synchro' => [ + 'type' => 'string', + ], + 'Data' => [ + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'type' => 'string', + ], + 'Uuid' => [ + 'type' => 'string', + ], + 'OriUuid' => [ + 'type' => 'string', + ], + 'AccountId' => [ + 'type' => 'string', + ], + 'ErrMsg' => [ + 'type' => 'string', + ], + 'TaskId' => [ + 'type' => 'string', + ], + 'DbLinkId' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + ], + ], + 'Code' => [ + 'type' => 'string', + ], + 'Success' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => null, + ], + 'GetHDMLastAliyunResourceSyncResult' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'Uid', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'accessKey', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'signature', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'timestamp', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => '__context', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'skipAuth', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + 'default' => 'true', + ], + ], + [ + 'name' => 'UserId', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Message' => [ + 'type' => 'string', + ], + 'RequestId' => [ + 'type' => 'string', + ], + 'Synchro' => [ + 'type' => 'string', + ], + 'Data' => [ + 'type' => 'object', + 'properties' => [ + 'SyncStatus' => [ + 'type' => 'string', + ], + 'ErrorMsg' => [ + 'type' => 'string', + ], + 'SubResults' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'ResourceSyncSubResult' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'SyncCount' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'ResourceType' => [ + 'type' => 'string', + ], + 'Success' => [ + 'type' => 'boolean', + ], + 'ErrMsg' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + 'Results' => [ + 'type' => 'string', + ], + ], + ], + 'Code' => [ + 'type' => 'string', + ], + 'Success' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => null, + ], + 'DescribeSqlLogRecords' => [ + 'summary' => 'Queries the log details of a database instance for which Database Autonomy Service (DAS) Enterprise Edition is enabled.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '199697', + 'abilityTreeNodes' => [ + 'FEATUREhdmFT57I0', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The database instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'pc-2ze8g2am97624****'."\n", + 'title' => '实例ID', + ], + ], + [ + 'name' => 'NodeId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The node ID.'."\n" + ."\n" + .'* For ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters, this parameter is valid only for instances of the Cluster Edition. If you do not specify this parameter, the log details of the primary node is queried by default.'."\n" + .'* For PolarDB-X 2.0 instances, set this parameter to **polarx_cn** if the node is a compute node, or **polarx_dn** if the node is a data node.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'pi-uf6k5f6g3912i****', + ], + ], + [ + 'name' => 'Role', + 'in' => 'query', + 'schema' => [ + 'description' => 'The role of the node of the PolarDB-X 2.0 instance. Valid values:'."\n" + ."\n" + .'* \\*\\*polarx_cn\\*\\*: compute node'."\n" + .'* \\*\\*polarx_dn\\*\\*: data node'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'polarx_cn ', + ], + ], + [ + 'name' => 'Filters', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The filter conditions.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'title' => '过滤参数', + 'description' => 'The filter parameter.'."\n" + ."\n" + .'> For more information about the supported filter parameters and their valid values, see the **Supported parameters and values for Key** section of this topic.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'keyWords', + ], + 'Value' => [ + 'description' => 'The value of the filter parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'select', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 100, + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The beginning of the time range to query. This value is a UNIX timestamp. Unit: millisecond.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1596177993000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The end of the time range to query. This value is a UNIX timestamp. Unit: millisecond.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1608888296000', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The number of entries per page. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code that is returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The message that is returned.'."\n" + ."\n" + .'> If the request is successful, **Successful** is returned. If the request fails, an error message that contains information such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'F43E7FB3-CE67-5FFD-A59C-EFD278BCD7BE', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Data' => [ + 'title' => 'SqlLogDetailResult', + 'description' => 'The data that is returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'StartTime' => [ + 'description' => 'The beginning of the time range to query. This value is a UNIX timestamp. Unit: millisecond.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1596177993000', + ], + 'EndTime' => [ + 'description' => 'The end of the time range to query. This value is a UNIX timestamp. Unit: millisecond.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1608888296000', + ], + 'TotalRecords' => [ + 'description' => 'The total number of entries.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Items' => [ + 'description' => 'The data.'."\n", + 'type' => 'object', + 'properties' => [ + 'SQLLogRecord' => [ + 'description' => 'The SQL log data.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Ext' => [ + 'description' => 'The extended information. This parameter is a reserved parameter.'."\n", + 'type' => 'string', + 'example' => 'None', + ], + 'ExecuteTime' => [ + 'description' => 'The time when the SQL statement was executed. The time follows the ISO 8601 standard in the `yyyy-MM-ddTHH:mm:ssZ` format. The time is displayed in UTC.'."\n", + 'type' => 'string', + 'example' => '2023-12-07T02:15:32Z', + ], + 'OriginTime' => [ + 'description' => 'The timestamp generated when the SQL statement was executed. The value of this parameter is a UNIX timestamp. Unit: millisecond.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1701886532000', + ], + 'HostAddress' => [ + 'description' => 'The IP address of the client.'."\n", + 'type' => 'string', + 'example' => '11.197.XX.XX', + ], + 'UpdateRows' => [ + 'description' => 'The number of rows that are updated.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'LogicRead' => [ + 'description' => 'The number of logical reads.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'SqlText' => [ + 'description' => 'The SQL statement.'."\n", + 'type' => 'string', + 'example' => 'select resource_id as cluster_id, tpl_name \\n\\tfrom dbfree_alert_resource_tpl_ref\\n\\twhere user_id=? and type=\'cluster\' group by resource_id, tpl_name', + ], + 'LockTime' => [ + 'description' => 'The lock wait duration. Unit: millisecond.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'ScanRows' => [ + 'description' => 'The number of scanned rows.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'ThreadId' => [ + 'description' => 'The thread ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => 'None', + ], + 'State' => [ + 'description' => 'The execution status of the SQL statement.'."\n" + ."\n" + .'* **0**: The execution was successful.'."\n" + .'* **1**: The execution failed.'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'DBName' => [ + 'description' => 'The database name.'."\n", + 'type' => 'string', + 'example' => 'testdb', + ], + 'SqlType' => [ + 'description' => 'The type of the SQL statement.'."\n", + 'type' => 'string', + 'example' => 'select', + ], + 'AccountName' => [ + 'description' => 'The account of the database.'."\n", + 'type' => 'string', + 'example' => 'testname', + ], + 'PhysicSyncRead' => [ + 'description' => 'The number of physical synchronous reads.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'PhysicAsyncRead' => [ + 'description' => 'The number of physical asynchronous reads.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'TrxId' => [ + 'description' => 'The transaction ID.'."\n", + 'type' => 'string', + 'example' => '200000', + ], + 'ReturnRows' => [ + 'description' => 'The number of rows returned by the SQL statement.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'Consume' => [ + 'description' => 'The amount of time that is consumed to execute the SQL statement. Unit: millisecond.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '58', + ], + 'Vip' => [ + 'description' => 'The IP address that is resolved from the endpoint of the query link.'."\n", + 'type' => 'string', + 'example' => '100.115.XX.XX', + ], + 'NodeId' => [ + 'description' => 'The node ID.'."\n", + 'type' => 'string', + 'example' => 'pi-uf6k5f6g3912i****', + ], + 'SqlId' => [ + 'description' => 'The SQL statement ID.'."\n", + 'type' => 'string', + 'example' => 'c67649d4a7fb62c4f8c7a447c52b5b17', + ], + 'UseImciEngine' => [ + 'description' => 'Indicates whether the In-Memory Column Index (IMCI) feature is enabled for the PolarDB for MySQL cluster. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'ParallelQueueTime' => [ + 'description' => 'The parallelism of the PolarDB for MySQL cluster.'."\n", + 'type' => 'string', + 'example' => '2', + ], + 'ParallelDegree' => [ + 'description' => 'The parallel queue time of the PolarDB for MySQL instance. Unit: millisecond.'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'Scnt' => [ + 'description' => 'The number of requests that are sent from the compute nodes to the data nodes of the PolarDB-X 2.0 instance.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'Rows' => [ + 'description' => 'The total number of rows that are updated or returned by the compute nodes of the PolarDB-X 2.0 instance.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'Frows' => [ + 'description' => 'The number of rows that are pulled by the compute nodes of the PolarDB-X 2.0 instance.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'TraceId' => [ + 'description' => 'The trace ID of the PolarDB-X 2.0 instance. The value is the execution ID of the SQL statement on the data node.'."\n", + 'type' => 'string', + 'example' => '14c93b7c7bf00000 ', + ], + 'PhysicRead' => [ + 'description' => 'The total number of physical reads.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '0', + ], + 'CpuTime' => [ + 'description' => 'The CPU execution duration. Unit: microsecond.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100', + ], + 'Writes' => [ + 'description' => 'The number of writes to the ApsaraDB RDS for SQL Server instance.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'Collection' => [ + 'description' => 'A reserved parameter.'."\n", + 'type' => 'string', + 'example' => 'None', + ], + 'TableName' => [ + 'title' => 'SQL日志记录中的表名', + 'type' => 'string', + 'example' => 'das', + ], + 'ConnectionId' => [ + 'title' => 'SQL日志记录的连接ID', + 'type' => 'string', + 'example' => 'ld-******', + ], + 'Protocol' => [ + 'title' => 'SQL日志记录的协议类型', + 'type' => 'string', + 'example' => 'MySQL', + ], + 'Params' => [ + 'title' => 'SQL日志记录的参数', + 'type' => 'string', + 'example' => '[1, "das"]', + ], + 'ClientIp' => [ + 'title' => 'SQL日志记录中的客户端IP'."\n" + .'SQL日志记录中客户端的IP地址', + 'type' => 'string', + 'example' => '10.0.0.1xx', + ], + 'ClientPort' => [ + 'title' => '客户端端口号', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '3306', + ], + 'RowKey' => [ + 'title' => 'SQL日志记录的行键', + 'type' => 'string', + 'example' => '23', + ], + 'AffectColumns' => [ + 'title' => '受影响的列', + 'type' => 'string', + 'example' => '["col1"]', + ], + ], + ], + ], + ], + ], + 'Finish' => [ + 'description' => 'Indicates whether the task was complete. Valid values:'."\n" + ."\n" + .'* **0**: no'."\n" + .'* **1**: yes'."\n" + ."\n" + .'> If the value of **Finish** is 0 and the value of **JobId** is returned, the request is an asynchronous request and the return result cannot be directly obtained. You must query the return result based on the value of **JobId**. Specify JobId as the key of **Filters** and the value of **JobId** as the value of Filters. Example: `Filters=[{"Key": "JobId", "Value": "******"}]`.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'JobId' => [ + 'description' => 'The ID of the asynchronous task.'."\n", + 'type' => 'string', + 'example' => 'MzI4NTZfUUlOR0RBT19DTTlfTlUyMF9NWVNRTF9PREJTX0xWU18zMjg1Nl9teXNxbF9XZWQgTWFyIDA2IDE0OjUwOjQ3IENTVCAyMDI0XzBfMzBfRXhlY3V0ZVRpbWVfREVTQ19XZWQgTWFyIDA2IDE0OjM1OjQ3IENTVCAyMDI0Xw==_1709708406465', + ], + ], + ], + ], + 'description' => '', + 'title' => '根节点或根目录', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"F43E7FB3-CE67-5FFD-A59C-EFD278BCD7BE\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"StartTime\\": 1596177993000,\\n \\"EndTime\\": 1608888296000,\\n \\"TotalRecords\\": 1,\\n \\"Items\\": {\\n \\"SQLLogRecord\\": [\\n {\\n \\"Ext\\": \\"None\\",\\n \\"ExecuteTime\\": \\"2023-12-07T02:15:32Z\\",\\n \\"OriginTime\\": 1701886532000,\\n \\"HostAddress\\": \\"11.197.XX.XX\\",\\n \\"UpdateRows\\": 0,\\n \\"LogicRead\\": 0,\\n \\"SqlText\\": \\"select resource_id as cluster_id, tpl_name \\\\\\\\n\\\\\\\\tfrom dbfree_alert_resource_tpl_ref\\\\\\\\n\\\\\\\\twhere user_id=? and type=\'cluster\' group by resource_id, tpl_name\\",\\n \\"LockTime\\": 0,\\n \\"ScanRows\\": 0,\\n \\"ThreadId\\": 0,\\n \\"State\\": \\"0\\",\\n \\"DBName\\": \\"testdb\\",\\n \\"SqlType\\": \\"select\\",\\n \\"AccountName\\": \\"testname\\",\\n \\"PhysicSyncRead\\": 0,\\n \\"PhysicAsyncRead\\": 0,\\n \\"TrxId\\": \\"200000\\",\\n \\"ReturnRows\\": 0,\\n \\"Consume\\": 58,\\n \\"Vip\\": \\"100.115.XX.XX\\",\\n \\"NodeId\\": \\"pi-uf6k5f6g3912i****\\",\\n \\"SqlId\\": \\"c67649d4a7fb62c4f8c7a447c52b5b17\\",\\n \\"UseImciEngine\\": \\"true\\",\\n \\"ParallelQueueTime\\": \\"2\\",\\n \\"ParallelDegree\\": \\"10\\",\\n \\"Scnt\\": 10,\\n \\"Rows\\": 10,\\n \\"Frows\\": 10,\\n \\"TraceId\\": \\"14c93b7c7bf00000 \\",\\n \\"PhysicRead\\": 0,\\n \\"CpuTime\\": 100,\\n \\"Writes\\": 10,\\n \\"Collection\\": \\"None\\",\\n \\"TableName\\": \\"das\\",\\n \\"ConnectionId\\": \\"ld-******\\",\\n \\"Protocol\\": \\"MySQL\\",\\n \\"Params\\": \\"[1, \\\\\\"das\\\\\\"]\\",\\n \\"ClientIp\\": \\"10.0.0.1xx\\",\\n \\"ClientPort\\": 3306,\\n \\"RowKey\\": \\"23\\",\\n \\"AffectColumns\\": \\"[\\\\\\"col1\\\\\\"]\\"\\n }\\n ]\\n },\\n \\"Finish\\": \\"1\\",\\n \\"JobId\\": \\"MzI4NTZfUUlOR0RBT19DTTlfTlUyMF9NWVNRTF9PREJTX0xWU18zMjg1Nl9teXNxbF9XZWQgTWFyIDA2IDE0OjUwOjQ3IENTVCAyMDI0XzBfMzBfRXhlY3V0ZVRpbWVfREVTQ19XZWQgTWFyIDA2IDE0OjM1OjQ3IENTVCAyMDI0Xw==_1709708406465\\"\\n }\\n}","type":"json"}]', + 'title' => 'DescribeSqlLogRecords', + 'description' => 'Before you call this operation, take note of the following items:'."\n" + ."\n" + .'* If you use an Alibaba Cloud SDK or DAS SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n", + 'requestParamsDescription' => 'Supported parameters and values for **Key**'."\n" + ."\n" + .'* **KeyWords**: the keywords. Separate multiple keywords with spaces.'."\n" + .'* **LogicalOperator**: the logical operation between keywords. Valid values: and and or.'."\n" + .'* **AccountName**: the username.'."\n" + .'* **DBName**: the database name.'."\n" + .'* **HostAddress**: the IP address of the client.'."\n" + .'* **MaxConsume**: the maximum amount of time that is consumed. Unit: millisecond.'."\n" + .'* **MinConsume**: the minimum amount of time that is consumed. Unit: millisecond.'."\n" + .'* **MaxScanRows**: the maximum number of rows that are scanned.'."\n" + .'* **MinScanRows**: the minimum number of rows that are scanned.'."\n" + .'* **SqlType**: the type SQL statement. Valid values: select, update, insert, and delete.'."\n" + .'* **State**: the execution result. Valid values: 0 and 1. A value of 0 indicates that the SQL statement execution is successful. A value of 1 indicates that the SQL statement fails to be executed.'."\n" + .'* **ThreadId**: the thread ID.'."\n" + .'* **SortKey**: the name of the column that is used for sorting. Valid values: ScanRows, UpdateRows, Consume, ExecuteTime, ReturnRows, LockTime, Frows, Scnt, CpuTime, and PhysicalRead. A value of ScanRows indicates the number of rows that are scanned. A value of UpdateRows indicates the number of rows that are updated. A value of Consume indicates the amount of time that is consumed. A value of ExecuteTime indicates the time when the SQL statement was executed. A value of ReturnRows indicates the number of rows that are returned. A value of LockTime indicates the lock wait duration. A value of Frows indicates the number of rows that are pulled by the compute nodes of the PolarDB-X 2.0 instance. A value of Scnt indicates the number of requests that are sent from the compute nodes to the data nodes of the PolarDB-X 2.0 instance. A value of CpuTime indicates the CPU execution duration. A value of PhysicalRead indicates the number of physical reads.'."\n" + .'* **SortMethod**: the order in which the queried logs are sorted. Valid values: DESC and ASC. A value of DESC indicates the descending order. A value of ASC indicates the ascending order. Default value: DESC.'."\n" + .'* **TraceId**: the trace ID of the PolarDB-X 2.0 instance.'."\n" + .'* **MinRows**: the minimum number of rows that are updated.'."\n" + .'* **MaxRows**: the maximum number of rows that are updated.'."\n" + .'* **MinScnt**: the minimum number of requests that are sent from the compute nodes to the data nodes of the PolarDB-X 2.0 instance.'."\n" + .'* **MaxScnt**: the maximum number of requests that are sent from the compute nodes to the data nodes of the PolarDB-X 2.0 instance.'."\n" + .'* **TrxId**: the transaction ID.'."\n" + .'* **Fail**: the error code.'."\n" + .'* **sqlId**: the SQL statement ID.'."\n" + .'* **JobId**: the asynchronous task ID. For a database instance for which DAS Enterprise Edition V0 or DAS Enterprise Edition V1 is enabled, you can specify this parameter to query task results.'."\n", + ], + 'EnableDasPro' => [ + 'summary' => 'Activates Database Autonomy Service (DAS) Professional Edition.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'create', + 'abilityTreeCode' => '23825', + 'abilityTreeNodes' => [ + 'FEATUREhdm543Z01', + ], + ], + 'parameters' => [ + [ + 'name' => 'UserId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the Alibaba Cloud account that is used to create the database instance.'."\n" + ."\n" + .'> This parameter is optional. The system can automatically obtain the account ID based on the value of InstanceId when you call this operation.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '196278346919****', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze8g2am97624****', + ], + ], + [ + 'name' => 'SqlRetention', + 'in' => 'query', + 'schema' => [ + 'description' => 'The storage duration of SQL Explorer data. Unit: day. Default value: **30**. Valid values:'."\n" + ."\n" + .'* **30**'."\n" + .'* **180**'."\n" + .'* **365**'."\n" + .'* **1095**'."\n" + .'* **1825**'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '30', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '7172BECE-588A-5961-8126-C216E16B****', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message that contains information such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Synchro' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'example' => 'None', + ], + 'Data' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'example' => 'None', + ], + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"7172BECE-588A-5961-8126-C216E16B****\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Synchro\\": \\"None\\",\\n \\"Data\\": \\"None\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<EnableDasProResponse>\\n <RequestId>7172BECE-588A-5961-8126-C216E16B****</RequestId>\\n <Message>Successful</Message>\\n <Code>200</Code>\\n <Success>true</Success>\\n</EnableDasProResponse>","errorExample":""}]', + 'title' => 'EnableDasPro', + 'description' => '* If you use an SDK to call the API operations of DAS, you must set the region ID to cn-shanghai.'."\n" + .'* This operation is applicable only to DAS Enterprise Edition V1.'."\n" + ."\n" + .'> We recommend that you call the [ModifySqlLogConfig](~~2778835~~) operation to activate or deactivate DAS Enterprise Edition for a database instance. For more information about the databases and regions supported by each version of DAS Enterprise Edition, see [DAS editions and supported features](~~156204~~).'."\n", + ], + 'DisableDasPro' => [ + 'summary' => 'Deactivates Database Autonomy Service (DAS) Professional Edition.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'delete', + ], + 'parameters' => [ + [ + 'name' => 'UserId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the Alibaba Cloud account that is used to create the database instance.'."\n" + ."\n" + .'> This parameter is optional. The system can automatically obtain the account ID based on the value of InstanceId that you set when you call this operation.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '196278346919****', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze8g2am97624****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '7172BECE-588A-5961-8126-C216E16B****', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Synchro' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'example' => 'None', + ], + 'Data' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'example' => 'None', + ], + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**: The request was successful.'."\n" + .'* **false**: The request failed.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + [ + 'errorCode' => '-1020004', + 'errorMessage' => 'the dbconfig is applying', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"7172BECE-588A-5961-8126-C216E16B****\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Synchro\\": \\"None\\",\\n \\"Data\\": \\"None\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<DisableDasProResponse>\\n <RequestId>7172BECE-588A-5961-8126-C216E16B****</RequestId>\\n <Message>Successful</Message>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DisableDasProResponse>","errorExample":""}]', + 'title' => 'DisableDasPro', + 'description' => '* For more information about the database instances that support DAS Enterprise Edition, see [Overview](~~190912~~).'."\n" + .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n" + .'* This operation is applicable only to DAS Enterprise Edition V1.'."\n" + ."\n" + .'> We recommend that you call the [ModifySqlLogConfig](~~2778835~~) operation to enable or disable DAS Enterprise Edition for a database instance. For more information about the databases and regions supported by each version of DAS Enterprise Edition, see [Editions and supported features](~~156204~~).'."\n", + ], + 'DescribeInstanceDasPro' => [ + 'summary' => 'Queries whether Database Autonomy Service (DAS) Enterprise Edition V1 or V2 is enabled for a database instance.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREhdm543Z01', + ], + ], + 'parameters' => [ + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze8g2am97624****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '9CB97BC4-6479-55D0-B9D0-EA925AFE****', + ], + 'Data' => [ + 'description' => 'Indicates whether DAS Enterprise Edition is enabled for the database instance. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"9CB97BC4-6479-55D0-B9D0-EA925AFE****\\",\\n \\"Data\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeInstanceDasProResponse>\\n <Message>Successful</Message>\\n <RequestId>9CB97BC4-6479-55D0-B9D0-EA925AFE****</RequestId>\\n <Data>true</Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DescribeInstanceDasProResponse>","errorExample":""}]', + 'title' => 'DescribeInstanceDasPro', + 'description' => '* For more information about the database instances that support DAS Enterprise Edition, see [Overview of DAS Enterprise Edition](~~190912~~).'."\n" + .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n" + .'* This operation is applicable only to DAS Enterprise Edition V1 and V2.'."\n" + ."\n" + .'> We recommend that you call the [DescribeSqlLogConfig](~~2778837~~) operation to query the DAS Enterprise Edition configurations of a database instance.'."\n", + ], + 'GetDasProServiceUsage' => [ + 'summary' => 'Queries the storage usage of a database instance for which Database Autonomy Service (DAS) Enterprise Edition V1 or V2 is enabled.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'UserId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the Alibaba Cloud account that is used to create the database instance.'."\n" + ."\n" + .'> This parameter is optional. The system can automatically obtain the account ID based on the value of InstanceId when you call this operation.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '196278346919****', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The database instance ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze8g2am97624****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '7172BECE-588A-5961-8126-C216E16B****', + ], + 'Data' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'storageFreeQuotaInMB' => [ + 'description' => 'The SQL Explorer storage space that is offered free-of-charge. Unit: MB.'."\n", + 'type' => 'number', + 'format' => 'double', + 'example' => '5120', + ], + 'ip' => [ + 'description' => 'The endpoint of the database instance.'."\n", + 'type' => 'string', + 'example' => 'rm-2ze8g2am97624****.mysql.****.com', + ], + 'userId' => [ + 'description' => 'The ID of the Alibaba Cloud account that is used to create the database instance.'."\n", + 'type' => 'string', + 'example' => '196278346919****', + ], + 'expireTime' => [ + 'description' => 'The point of time when DAS Enterprise Edition for the database instance expires. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1648742400000', + ], + 'instanceId' => [ + 'description' => 'The database instance ID.'."\n", + 'type' => 'string', + 'example' => 'rm-2ze8g2am97624****', + ], + 'storageUsed' => [ + 'description' => 'The storage usage of SQL Explorer of the database instance. Unit: bytes.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '35903498', + ], + 'engine' => [ + 'description' => 'The type of the database engine.'."\n", + 'type' => 'string', + 'example' => 'MySQL', + ], + 'instanceAlias' => [ + 'description' => 'The name of the database instance.'."\n", + 'type' => 'string', + 'example' => 'TESTDB01', + ], + 'port' => [ + 'description' => 'The port number that is used to connect to the database instance.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '3306', + ], + 'vpcId' => [ + 'description' => 'The virtual private cloud (VPC) ID.'."\n", + 'type' => 'string', + 'example' => 'vpc-2zentqj1sk4qmolci****', + ], + 'commodityInstanceId' => [ + 'description' => 'The ID of the DAS Enterprise Edition instance.'."\n", + 'type' => 'string', + 'example' => 'daspro-cn-v0h1l6i****', + ], + 'startTime' => [ + 'description' => 'The time when DAS Enterprise Edition was enabled for the database instance. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1646100892000', + ], + 'isSpare' => [ + 'description' => 'Indicates whether DAS Enterprise Edition for the database instance has expired. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'region' => [ + 'description' => 'The region in which the database instance resides.'."\n", + 'type' => 'string', + 'example' => 'cn-shanghai', + ], + 'serviceUnitId' => [ + 'description' => 'The service unit ID.'."\n", + 'type' => 'string', + 'example' => '4', + ], + 'sqlRetention' => [ + 'description' => 'The storage duration of SQL Explorer data. Unit: days.'."\n", + 'type' => 'string', + 'example' => '180', + ], + 'migrationPredictRemainingTime' => [ + 'description' => 'The estimated remaining time for migrating the data generated by the SQL Explorer and Audit feature from the previous version to the new version. Unit: milliseconds.'."\n" + ."\n" + .'> This parameter is returned only when the SQL Explorer and Audit feature is migrated from the previous version to the new version.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '60000', + ], + ], + 'example' => '{ "storageFreeQuotaInMB": 5120, "ip": "rm-2ze8g2am97624****.mysql.****.com", "custinsId": 12448331, "userId": "196278346919****", "uuid": "hdm_b0ae36343407609bf3e8df8709d8****", "expireTime": 1924963200000, "instanceId": "rm-2ze8g2am97624****", "storageUsed": 10773752667393, "engine": "MySQL", "instanceAlias": "TESTDB01_PROD", "port": 3310, "vpcId": "hdm_****", "commodityInstanceId": "daspro-****", "startTime": 1606381940000, "isSpare": false, "region": "cn-shanghai", "serviceUnitId": "5", "sqlRetention": 30 }', + ], + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"7172BECE-588A-5961-8126-C216E16B****\\",\\n \\"Data\\": {\\n \\"storageFreeQuotaInMB\\": 5120,\\n \\"ip\\": \\"rm-2ze8g2am97624****.mysql.****.com\\",\\n \\"userId\\": \\"196278346919****\\",\\n \\"expireTime\\": 1648742400000,\\n \\"instanceId\\": \\"rm-2ze8g2am97624****\\",\\n \\"storageUsed\\": 35903498,\\n \\"engine\\": \\"MySQL\\",\\n \\"instanceAlias\\": \\"TESTDB01\\",\\n \\"port\\": 3306,\\n \\"vpcId\\": \\"vpc-2zentqj1sk4qmolci****\\",\\n \\"commodityInstanceId\\": \\"daspro-cn-v0h1l6i****\\",\\n \\"startTime\\": 1646100892000,\\n \\"isSpare\\": false,\\n \\"region\\": \\"cn-shanghai\\",\\n \\"serviceUnitId\\": \\"4\\",\\n \\"sqlRetention\\": \\"180\\",\\n \\"migrationPredictRemainingTime\\": 60000\\n },\\n \\"Code\\": 200,\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<GetDasProServiceUsageResponse>\\n <Message>Successful</Message>\\n <RequestId>7172BECE-588A-5961-8126-C216E16B****</RequestId>\\n <Data>\\n <storageFreeQuotaInMB>5120</storageFreeQuotaInMB>\\n <ip>rm-2ze8g2am97624****.mysql.****.com</ip>\\n <userId>196278346919****</userId>\\n <expireTime>1648742400000</expireTime>\\n <instanceId>rm-2ze8g2am97624****</instanceId>\\n <storageUsed>35903498</storageUsed>\\n <engine>MySQL</engine>\\n <instanceAlias>TESTDB01</instanceAlias>\\n <port>3306</port>\\n <vpcId>vpc-2zentqj1sk4qmolci****</vpcId>\\n <commodityInstanceId>daspro-cn-v0h1l6i****</commodityInstanceId>\\n <startTime>1646100892000</startTime>\\n <isSpare>false</isSpare>\\n <region>cn-shanghai</region>\\n <serviceUnitId>4</serviceUnitId>\\n <sqlRetention>180</sqlRetention>\\n </Data>\\n <Code>200</Code>\\n <Success>true</Success>\\n</GetDasProServiceUsageResponse>","errorExample":""}]', + 'title' => 'GetDasProServiceUsage', + 'description' => '* For information about the database instances that support this operation, see [Overview of DAS Enterprise Edition](~~190912~~).'."\n" + .'* If you use an Alibaba Cloud SDK or DAS SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n" + .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n" + .'* This operation is applicable only to DAS Enterprise Edition V1 and V2.'."\n" + ."\n" + .'> We recommend that you call the [DescribeSqlLogStatistic](~~2778836~~) operation to query the data statistics of a database instance for which DAS Enterprise Edition is enabled.'."\n", + ], + 'RunCloudBenchTask' => [ + 'summary' => 'Runs a stress testing task.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'TaskId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The stress testing task ID. You can call the [DescribeCloudBenchTasks](~~230670~~) operation to query the task ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'e5cec704-0518-430f-8263-76f4dcds****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'PreCheckItem' => [ + 'description' => 'The detailed information, including the error codes and the number of returned entries.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => 'The status of the task. Valid values:'."\n" + ."\n" + .'* **SUCCESS**: The task is successful.'."\n" + .'* **IGNORED**: The task is ignored.'."\n" + .'* **RUNNING**: The task is running.'."\n" + .'* **EXCEPTION**: An error occurred.', + 'type' => 'string', + 'example' => 'SUCCESS', + ], + 'Order' => [ + 'description' => 'The sequence number of the check item. Valid values: **0** to **10**.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'Code' => [ + 'description' => 'The HTTP status code returned.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Name' => [ + 'description' => 'The name of the check item. Valid values:'."\n" + ."\n" + .'* **SqlArchiveStatusChecker**: checks whether SQL Explorer is available.'."\n" + .'* **BenchClientEnvChecker**: checks whether the runtime environment for programs on the stress testing client is available.'."\n" + .'* **SpecChecker**: checks whether the destination instance type and the instance type of the stress testing client support this API operation.'."\n" + .'* **SourceInstanceChecker**: checks whether the account of the source instance is available and whether the source instance is connected to the destination instance.'."\n" + .'* **BenchTargetChecker**: checks whether the account of the destination instance is available and whether the source instance is connected to the destination instance.', + 'type' => 'string', + 'example' => 'BenchTargetChecker', + ], + 'Details' => [ + 'description' => 'The detailed information of the check item.', + 'type' => 'string', + 'example' => '"Data": { "total": 1, "list":[...] }, "Code": 200, "Success": true }', + ], + ], + ], + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"PreCheckItem\\": [\\n {\\n \\"Status\\": \\"SUCCESS\\",\\n \\"Order\\": 0,\\n \\"Code\\": 200,\\n \\"Message\\": \\"Successful\\",\\n \\"Name\\": \\"BenchTargetChecker\\",\\n \\"Details\\": \\"\\\\\\"Data\\\\\\": { \\\\\\"total\\\\\\": 1, \\\\\\"list\\\\\\":[...] }, \\\\\\"Code\\\\\\": 200, \\\\\\"Success\\\\\\": true }\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<RunCloudBenchTaskResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n <Data>\\n <Status>SUCCESS</Status>\\n <Order>0</Order>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Name>BenchTarget</Name>\\n <Details>\\"Data\\": { \\"total\\": 1, \\"list\\":[...] }, \\"Code\\": 200, \\"Success\\": true }</Details>\\n </Data>\\n</RunCloudBenchTaskResponse>","errorExample":""}]', + 'title' => 'RunCloudBenchTask', + 'description' => 'Database Autonomy Service (DAS) provides the intelligent stress testing feature. This feature helps you check whether your instance needs to be scaled up to effectively handle traffic spikes. For more information, see [Intelligent stress testing](~~155068~~).'."\n", + ], + 'DescribeCloudbenchTask' => [ + 'summary' => 'Queries a stress testing task.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'TaskId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the stress testing task. You can call the [DescribeCloudBenchTasks](~~230670~~) operation to query the ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'e5cec704-0518-430f-8263-76f4dcds****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**: The request was successful.'."\n" + .'* **false**: The request failed.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The detailed information, including the error codes and the number of entries that are returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'DtsJobName' => [ + 'description' => 'The name of the Data Transmission Service (DTS) task.'."\n", + 'type' => 'string', + 'example' => 'RDS_TO_RDS_MIGRATION', + ], + 'ErrorMessage' => [ + 'description' => 'The error message returned if the request failed.'."\n", + 'type' => 'string', + 'example' => 'DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\n\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].', + ], + 'External' => [ + 'description' => 'The additional information.'."\n", + 'type' => 'string', + 'example' => 'Null', + ], + 'BackupType' => [ + 'description' => 'The backup type. Valid values:'."\n" + ."\n" + .'* **TIMESTAMP**'."\n" + .'* **BACKUPID**'."\n", + 'type' => 'string', + 'example' => 'TIMESTAMP', + ], + 'UserId' => [ + 'description' => 'The ID of the Alibaba Cloud account.'."\n", + 'type' => 'string', + 'example' => '109141182625****', + ], + 'DstType' => [ + 'description' => 'The type of the identifier that is used to indicate the destination instance. Valid values:'."\n" + ."\n" + .'* **Instance** (default): the instance ID.'."\n" + .'* **ConnectionString**: the endpoint of the instance.'."\n", + 'type' => 'string', + 'example' => 'Instance', + ], + 'EcsInstanceId' => [ + 'description' => 'The ID of the Elastic Compute Service (ECS) instance.'."\n", + 'type' => 'string', + 'example' => 'i-bp1ecr5go2go1****', + ], + 'DstInstanceUuid' => [ + 'description' => 'The UUID of the destination instance.'."\n", + 'type' => 'string', + 'example' => 'hdm_d887b5ccf99fa0dc9a1e5aaac368****', + ], + 'TaskType' => [ + 'description' => 'The type of the stress testing task. Valid values:'."\n" + ."\n" + .'* **pressure test** (default): A task of this type replays the traffic that is captured from the source instance on the destination instance at the maximum playback rate that is supported by the destination instance.'."\n" + .'* **smart pressure test**: A task of this type analyzes the traffic that is captured from the source instance over a short period of time and generates traffic on the destination instance for continuous stress testing. The business model based on which the traffic is generated on the destination instance and the traffic distribution are consistent with those on the source instance. Stress testing tasks of this type can help you reduce the amount of time that is consumed to collect data from the source instance and reduce storage costs and performance overheads.'."\n", + 'type' => 'string', + 'example' => 'pressure test', + ], + 'BenchStep' => [ + 'description' => 'The substep in the stress testing task. Valid values:'."\n" + ."\n" + .'* **NEW**: initializes the stress testing task.'."\n" + .'* **WAIT_BUY_ECS**: purchases an ECS instance.'."\n" + .'* **WAIT_START_ECS**: starts an ECS instance.'."\n" + .'* **WAIT_INSTALL_JDK**: installs the Java Development Kit (JDK).'."\n" + .'* **WAIT_INSTALL_DBGATEWAY**: installs the database gateway (DBGateway).'."\n" + .'* **ADD_SECURITY_IPS_STEP**: configure a security group whitelist.'."\n" + .'* **ARCHIVE**: archives the full SQL statistics.'."\n" + .'* **DOWNLOAD**: downloads the file that stores the analysis result of full SQL statistics.'."\n" + .'* **PROCEED**: preprocesses the file that stores the analysis result of full SQL statistics.'."\n" + .'* **PRE_LOAD**: preloads the file that stores the analysis result of full SQL statistics.'."\n" + .'* **VALIDATE**: verifies the functionality of stress testing.'."\n" + .'* **PRESSURE**: starts the stress testing task.'."\n", + 'type' => 'string', + 'example' => 'PROCEED', + ], + 'Version' => [ + 'description' => 'The version of the stress testing task. Valid values:'."\n" + ."\n" + .'* **V2.0**'."\n" + .'* **V3.0**'."\n", + 'type' => 'string', + 'example' => 'V3.0', + ], + 'EndState' => [ + 'description' => 'The state that specifies the last operation that is performed for the stress testing task. Valid values:'."\n" + ."\n" + .'* **WAIT_TARGET**: prepares the destination instance.'."\n" + .'* **WAIT_DBGATEWAY**: prepares the DBGateway.'."\n" + .'* **WAIT_SQL**: prepares the full SQL statistics.'."\n" + .'* **WAIT_LOGIC**: prepares to replay the traffic.'."\n" + ."\n" + .'> When the state of a stress testing task changes to the state that is specified by the EndState parameter, the stress testing task becomes completed.'."\n", + 'type' => 'string', + 'example' => 'WAIT_LOGIC', + ], + 'SrcInstanceUuid' => [ + 'description' => 'The UUID of the source instance.'."\n", + 'type' => 'string', + 'example' => 'a364e414-e68b-4e5c-9166-65b3a153****', + ], + 'ClientType' => [ + 'description' => 'The type of the stress testing client. Valid values:'."\n" + ."\n" + .'* **ECS**: indicates that you must create the [DBGateway](~~64905~~).'."\n" + .'* **DAS_ECS**: indicates that DAS automatically purchases and deploys an ECS instance for stress testing.'."\n", + 'type' => 'string', + 'example' => 'ECS', + ], + 'State' => [ + 'description' => 'The state that indicates the operation performed for the stress testing task. Valid values:'."\n" + ."\n" + .'* **WAIT_TARGET**: prepares the destination instance.'."\n" + .'* **WAIT_DBGATEWAY**: prepares the DBGateway.'."\n" + .'* **WAIT_SQL**: prepares the full SQL statistics.'."\n" + .'* **WAIT_LOGIC**: prepares to replay the traffic.'."\n", + 'type' => 'string', + 'example' => 'WAIT_TARGET', + ], + 'DstIp' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'example' => 'None', + ], + 'SrcPublicIp' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'example' => 'None', + ], + 'BackupId' => [ + 'description' => 'The ID of the backup set. You can call the [DescribeBackups](~~26273~~) operation to query the ID of the backup set.'."\n", + 'type' => 'string', + 'example' => '229132', + ], + 'SqlCompleteReuse' => [ + 'description' => 'The reuse information about the analysis result of full SQL statistics.'."\n", + 'type' => 'string', + 'example' => '{"sqlUuid":"task_a37d2f07-45cb-****-a2a6-c66c62****","metaUuid":"task_211e2561-5c0c-486b-864c-56b511****","sqlFile":"cl-1620057600000-1800626.sc","metaFile":"cl-1620057600000-180****.meta"}', + ], + 'SmartPressureTime' => [ + 'description' => 'The duration of the stress testing task for which the traffic was generated on the destination instance. Unit: milliseconds.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '86400000', + ], + 'ArchiveState' => [ + 'description' => 'The archiving state of the file that stores the analysis result of full SQL statistics. Valid values:'."\n" + ."\n" + .'* **0**: The file archiving is not started.'."\n" + .'* **1**: The file is archived.'."\n" + .'* **2**: An error occurred.'."\n" + .'* **3**: The file is being archived.'."\n" + .'* **4**: The archived file does not need to be downloaded.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'Status' => [ + 'description' => 'The state of the stress testing task. Valid values:'."\n" + ."\n" + .'* **SUCCESS**: The task is successful.'."\n" + .'* **IGNORED**: The task is ignored.'."\n" + .'* **RUNNING**: The task is running.'."\n" + .'* **EXCEPTION**: An error occurred.'."\n", + 'type' => 'string', + 'example' => 'RUNNING', + ], + 'WorkDir' => [ + 'description' => 'The temporary directory generated for stress testing.'."\n", + 'type' => 'string', + 'example' => '/tmp/bench/', + ], + 'ArchiveOssTableName' => [ + 'description' => 'The name of the table that was archived to Object Storage Service (OSS).'."\n", + 'type' => 'string', + 'example' => 'custins15546355_161604665****', + ], + 'DtsJobId' => [ + 'description' => 'The ID of the DTS migration task.'."\n", + 'type' => 'string', + 'example' => 'i03e3zty16i****', + ], + 'DtsJobState' => [ + 'description' => 'The state of the DTS task. Valid values:'."\n" + ."\n" + .'* **NOT_STARTED**: The task is not started.'."\n" + .'* **PRE_CHECKING**: The task is in precheck.'."\n" + .'* **PRE_CHECK_FAILED**: The precheck failed.'."\n" + .'* **CHECKING**: The task is being checked.'."\n" + .'* **MIGRATING**: The data is being migrated.'."\n" + .'* **CATCHED**: The data is migrated from the source instance to the destination instance.'."\n" + .'* **SUSPENDING**: The task is suspended.'."\n" + .'* **MIGRATION_FAILED**: The data failed to be migrated.'."\n" + .'* **FINISHED**: The task is complete.'."\n" + .'* **INITIALIZING**: The synchronization is being initialized.'."\n" + .'* **INITIALIZE_FAILED**: The synchronization failed to be initialized.'."\n" + .'* **SYNCHRONIZING**: The data is being synchronized.'."\n" + .'* **MODIFYING**: The objects to be synchronized are being changed.'."\n" + .'* **SWITCHING**: The roles of the instances are being switched.'."\n" + .'* **FAILED**: The task failed.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => 'CHECKING', + ], + 'DstPort' => [ + 'description' => 'The port number of the destination instance.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '3306', + ], + 'DtsJobClass' => [ + 'description' => 'The specification of the DTS task.'."\n", + 'type' => 'string', + 'example' => 'medium', + ], + 'ClientGatewayId' => [ + 'description' => 'The DBGateway ID of the stress testing client.'."\n", + 'type' => 'string', + 'example' => '58598b2af48a0193dfc16fc6964ef****', + ], + 'Description' => [ + 'description' => 'The description of the stress testing task.'."\n", + 'type' => 'string', + 'example' => 'test-das-bench-0501', + ], + 'ErrorCode' => [ + 'description' => 'The error code returned for the substep of the stress testing task.'."\n", + 'type' => 'string', + 'example' => '10910', + ], + 'TableSchema' => [ + 'description' => 'The name of the table that is used for stress testing.'."\n", + 'type' => 'string', + 'example' => '[{"TABLE_NAME":"customer1","TABLE_SCHEMA":"tpcc"}]', + ], + 'DtsJobStatus' => [ + 'description' => 'The state of the DTS task. Valid values:'."\n" + ."\n" + .'* **NOT_STARTED**: The task is not started.'."\n" + .'* **PRE_CHECKING**: The task is in precheck.'."\n" + .'* **PRE_CHECK_FAILED**: The precheck failed.'."\n" + .'* **CHECKING**: The task is being checked.'."\n" + .'* **MIGRATING**: The data is being migrated.'."\n" + .'* **CATCHED**: The data is migrated from the source instance to the destination instance.'."\n" + .'* **SUSPENDING**: The task is suspended.'."\n" + .'* **MIGRATION_FAILED**: The data failed to be migrated.'."\n" + .'* **FINISHED**: The task is complete.'."\n" + .'* **INITIALIZING**: The synchronization is being initialized.'."\n" + .'* **INITIALIZE_FAILED**: The synchronization failed to be initialized.'."\n" + .'* **SYNCHRONIZING**: The data is being synchronized.'."\n" + .'* **MODIFYING**: The objects to be synchronized are being changed.'."\n" + .'* **SWITCHING**: The roles of the instances are being switched.'."\n" + .'* **FAILED**: The task failed.'."\n", + 'type' => 'string', + 'example' => 'PRE_CHECKING', + ], + 'SrcInstanceArea' => [ + 'description' => 'The database type of the source instance. Valid values:'."\n", + 'type' => 'string', + 'example' => 'RDS', + ], + 'BenchStepStatus' => [ + 'description' => 'The status that indicates the substep performed on the stress testing task. Valid values:'."\n" + ."\n" + .'* **NEW**: The task is being initialized.'."\n" + .'* **RUNNING**: The task is running.'."\n" + .'* **FAILED**: The task failed.'."\n" + .'* **FINISHED**: The task is complete.'."\n" + .'* **Terminated**: The task is terminated.'."\n" + .'* **Deleted**: The task is deleted.'."\n", + 'type' => 'string', + 'example' => 'FINISHED', + ], + 'Source' => [ + 'description' => 'The source of the task. Valid values:'."\n" + ."\n" + .'* **DAS**'."\n" + .'* **OPEN_API**'."\n", + 'type' => 'string', + 'example' => 'DAS', + ], + 'ArchiveJobId' => [ + 'description' => 'The ID of the archiving task.'."\n", + 'type' => 'string', + 'example' => '\'202105211430070112231480820340758****', + ], + 'Topic' => [ + 'description' => 'The topic that contains the consumed data. This topic is a topic in Message Queue for Apache Kafka.'."\n", + 'type' => 'string', + 'example' => 'das', + ], + 'RequestDuration' => [ + 'description' => 'The duration of the stress testing task for which traffic was captured from the source instance.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '864000', + ], + 'TaskId' => [ + 'description' => 'The task ID.'."\n", + 'type' => 'string', + 'example' => 'e5cec704-0518-430f-8263-76f4dcds****', + ], + 'Rate' => [ + 'description' => 'The rate at which the stress testing task replayed the traffic. The value is a positive integer. Valid values:**1** to **30**. Default value: **1**.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"DtsJobName\\": \\"RDS间迁移\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\\\\\\\n\\\\\\\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].\\",\\n \\"External\\": \\"Null\\",\\n \\"BackupType\\": \\"TIMESTAMP\\",\\n \\"UserId\\": \\"109141182625****\\",\\n \\"DstType\\": \\"Instance\\",\\n \\"EcsInstanceId\\": \\"i-bp1ecr5go2go1****\\",\\n \\"DstInstanceUuid\\": \\"hdm_d887b5ccf99fa0dc9a1e5aaac368****\\",\\n \\"TaskType\\": \\"pressure test\\",\\n \\"BenchStep\\": \\"PROCEED\\",\\n \\"Version\\": \\"V3.0\\",\\n \\"EndState\\": \\"WAIT_LOGIC\\",\\n \\"SrcInstanceUuid\\": \\"a364e414-e68b-4e5c-9166-65b3a153****\\",\\n \\"ClientType\\": \\"ECS\\",\\n \\"State\\": \\"WAIT_TARGET\\",\\n \\"DstIp\\": \\"None\\",\\n \\"SrcPublicIp\\": \\"None\\",\\n \\"BackupId\\": \\"229132\\",\\n \\"SqlCompleteReuse\\": \\"{\\\\\\"sqlUuid\\\\\\":\\\\\\"task_a37d2f07-45cb-****-a2a6-c66c62****\\\\\\",\\\\\\"metaUuid\\\\\\":\\\\\\"task_211e2561-5c0c-486b-864c-56b511****\\\\\\",\\\\\\"sqlFile\\\\\\":\\\\\\"cl-1620057600000-1800626.sc\\\\\\",\\\\\\"metaFile\\\\\\":\\\\\\"cl-1620057600000-180****.meta\\\\\\"}\\",\\n \\"SmartPressureTime\\": 86400000,\\n \\"ArchiveState\\": 1,\\n \\"Status\\": \\"RUNNING\\",\\n \\"WorkDir\\": \\"/tmp/bench/\\",\\n \\"ArchiveOssTableName\\": \\"custins15546355_161604665****\\",\\n \\"DtsJobId\\": \\"i03e3zty16i****\\",\\n \\"DtsJobState\\": 0,\\n \\"DstPort\\": 3306,\\n \\"DtsJobClass\\": \\"medium\\",\\n \\"ClientGatewayId\\": \\"58598b2af48a0193dfc16fc6964ef****\\",\\n \\"Description\\": \\"test-das-bench-0501\\",\\n \\"ErrorCode\\": \\"10910\\",\\n \\"TableSchema\\": \\"[{\\\\\\"TABLE_NAME\\\\\\":\\\\\\"customer1\\\\\\",\\\\\\"TABLE_SCHEMA\\\\\\":\\\\\\"tpcc\\\\\\"}]\\",\\n \\"DtsJobStatus\\": \\"PRE_CHECKING\\",\\n \\"SrcInstanceArea\\": \\"RDS\\",\\n \\"BenchStepStatus\\": \\"FINISHED\\",\\n \\"Source\\": \\"DAS\\",\\n \\"ArchiveJobId\\": \\"\'202105211430070112231480820340758****\\",\\n \\"Topic\\": \\"das\\",\\n \\"RequestDuration\\": 864000,\\n \\"TaskId\\": \\"e5cec704-0518-430f-8263-76f4dcds****\\",\\n \\"Rate\\": 1\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeCloudbenchTaskResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n <Data>\\n <DtsJobName>RDS间迁移</DtsJobName>\\n <ErrorMessage>DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\\\n\\\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].</ErrorMessage>\\n <External>Null</External>\\n <BackupType>TIMESTAMP</BackupType>\\n <UserId>109141182625****</UserId>\\n <DstType>Instance</DstType>\\n <EcsInstanceId>i-bp1ecr5go2go1****</EcsInstanceId>\\n <DstInstanceUuid>hdm_d887b5ccf99fa0dc9a1e5aaac368****</DstInstanceUuid>\\n <TaskType>pressure test</TaskType>\\n <BenchStep>PROCEED</BenchStep>\\n <Version>V3.0</Version>\\n <EndState>WAIT_LOGIC</EndState>\\n <SrcInstanceUuid>a364e414-e68b-4e5c-9166-65b3a153****</SrcInstanceUuid>\\n <ClientType>ECS</ClientType>\\n <State>WAIT_TARGET</State>\\n <DstIp>None</DstIp>\\n <SrcPublicIp>None</SrcPublicIp>\\n <BackupId>229132</BackupId>\\n <SqlCompleteReuse>{\\"sqlUuid\\":\\"task_a37d2f07-45cb-****-a2a6-c66c62****\\",\\"metaUuid\\":\\"task_211e2561-5c0c-486b-864c-56b511****\\",\\"sqlFile\\":\\"cl-1620057600000-1800626.sc\\",\\"metaFile\\":\\"cl-1620057600000-180****.meta\\"}</SqlCompleteReuse>\\n <SmartPressureTime>86400000</SmartPressureTime>\\n <ArchiveState>1</ArchiveState>\\n <Status>RUNNING</Status>\\n <WorkDir>/tmp/bench/</WorkDir>\\n <ArchiveOssTableName>custins15546355_161604665****</ArchiveOssTableName>\\n <DtsJobId>i03e3zty16i****</DtsJobId>\\n <DstPort>3306</DstPort>\\n <DtsJobClass>medium</DtsJobClass>\\n <ClientGatewayId>58598b2af48a0193dfc16fc6964ef****</ClientGatewayId>\\n <Description>test-das-bench-0501</Description>\\n <ErrorCode>10910</ErrorCode>\\n <TableSchema>[{\\"TABLE_NAME\\":\\"customer1\\",\\"TABLE_SCHEMA\\":\\"tpcc\\"}]</TableSchema>\\n <DtsJobStatus>PRE_CHECKING</DtsJobStatus>\\n <SrcInstanceArea>RDS</SrcInstanceArea>\\n <BenchStepStatus>FINISHED</BenchStepStatus>\\n <Source>DAS</Source>\\n <ArchiveJobId>\'202105211430070112231480820340758****</ArchiveJobId>\\n <Topic>das</Topic>\\n <RequestDuration>864000</RequestDuration>\\n <TaskId>e5cec704-0518-430f-8263-76f4dcds****</TaskId>\\n <Rate>1</Rate>\\n </Data>\\n</DescribeCloudbenchTaskResponse>","errorExample":""}]', + 'title' => 'DescribeCloudbenchTask', + 'description' => 'Database Autonomy Service (DAS) provides the intelligent stress testing feature. This feature helps you check whether you need to scale up your database instance to handle workloads during peak hours. For more information, see [Intelligent stress testing](~~155068~~).'."\n", + ], + 'DescribeCloudBenchTasks' => [ + 'summary' => 'Queries stress testing tasks.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '29456', + 'abilityTreeNodes' => [ + 'FEATUREhdmB8MM4L', + ], + ], + 'parameters' => [ + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'description' => 'The status of the stress testing task. Valid values:'."\n" + ."\n" + .'* **SUCCESS**: The task is successful.'."\n" + .'* **IGNORED**: The task is ignored.'."\n" + .'* **RUNNING**: The task is running.'."\n" + .'* **EXCEPTION**: The task is abnormal.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'SUCCESS', + ], + ], + [ + 'name' => 'TaskType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the stress testing task. Valid values:'."\n" + ."\n" + .'* **pressure test** (default): A task of this type replays the traffic that is captured from the source instance on the destination instance at the maximum playback rate that is supported by the destination instance.'."\n" + .'* **smart pressure test**: A task of this type analyzes the traffic that is captured from the source instance over a short period of time and generates traffic on the destination instance for continuous stress testing. The business model based on which the traffic is generated on the destination instance and the traffic distribution are consistent with those on the source instance. Stress testing tasks of this type can help you reduce the amount of time that is consumed to collect data from the source instance and reduce storage costs and performance overheads.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'pressure test', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The beginning of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1596177993000', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The end of the time range to query. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n" + ."\n" + .'> The end time must be later than the start time.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1596177993001', + ], + ], + [ + 'name' => 'PageNo', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. The value must be a positive integer. Default value: 1.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. The value must be a positive integer. Default value: 10.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The detailed information, including the error codes and the number of entries that are returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'PageNo' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'Extra' => [ + 'description' => ' The reserved parameter. '."\n", + 'type' => 'string', + 'example' => 'None', + ], + 'Total' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'List' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'cloudbenchTasks' => [ + 'description' => 'The detailed information of the stress testing task.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'DtsJobName' => [ + 'description' => 'The name of the Data Transmission Service (DTS) migration task.', + 'type' => 'string', + 'example' => 'RDS_TO_RDS_MIGRATION', + ], + 'ErrorMessage' => [ + 'description' => 'The error message returned if the task failed.', + 'type' => 'string', + 'example' => 'DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\n\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].', + ], + 'External' => [ + 'description' => 'The additional information.', + 'type' => 'string', + 'example' => 'Null', + ], + 'BackupType' => [ + 'description' => 'The backup type. Valid values:'."\n" + ."\n" + .'* **TIMESTAMP**: Data is restored to the state at a specific point in time.'."\n" + .'* **BACKUPID**: Data is restored from a backup set that is identified by an ID.', + 'type' => 'string', + 'example' => 'TIMESTAMP', + ], + 'UserId' => [ + 'description' => 'The Alibaba Cloud account ID.', + 'type' => 'string', + 'example' => '1091411816252****', + ], + 'DstType' => [ + 'description' => 'The type of the identifier that is used to indicate the destination instance. Valid values:'."\n" + ."\n" + .'* **Instance** (default): the instance ID.'."\n" + .'* **ConnectionString**: the endpoint of the instance.', + 'type' => 'string', + 'example' => 'Instance', + ], + 'EcsInstanceId' => [ + 'description' => 'The ID of the Elastic Compute Service (ECS) instance.', + 'type' => 'string', + 'example' => 'i-bp1ecr5go2go1****', + ], + 'DstInstanceUuid' => [ + 'description' => 'The UUID of the destination instance.', + 'type' => 'string', + 'example' => 'hdm_d887b5ccf99fa0dc9a1e5aaac368****', + ], + 'TaskType' => [ + 'description' => 'The type of the stress testing task. Valid values:'."\n" + ."\n" + .'* **pressure test** (default): A task of this type replays the traffic that is captured from the source instance on the destination instance at the maximum playback rate that is supported by the destination instance.'."\n" + .'* **smart pressure test**: A task of this type analyzes the traffic that is captured from the source instance over a short period of time and generates traffic on the destination instance for continuous stress testing. The business model based on which the traffic is generated on the destination instance and the traffic distribution are consistent with those on the source instance. Stress testing tasks of this type can help you reduce the amount of time that is consumed to collect data from the source instance and reduce storage costs and performance overheads.', + 'type' => 'string', + 'example' => 'pressure test', + ], + 'BenchStep' => [ + 'description' => 'The substep in the stress testing task. Valid values:'."\n" + ."\n" + .'* **NEW**: Initialize the stress testing task.'."\n" + .'* **WAIT_BUY_ECS**: Purchase an ECS instance.'."\n" + .'* **WAIT_START_ECS**: Start the ECS instance.'."\n" + .'* **WAIT_INSTALL_JDK**: Install the Java Development Kit (JDK).'."\n" + .'* **WAIT_INSTALL_DBGATEWAY**: Install the database gateway (DBGateway).'."\n" + .'* **ADD_SECURITY_IPS_STEP**: Configure the whitelist of the security group.'."\n" + .'* **ARCHIVE**: Archive the file that stores the analysis results of full SQL statistics.'."\n" + .'* **DOWNLOAD**: Download the file that stores the analysis result of full SQL statistics.'."\n" + .'* **PROCEED**: Preprocess the file that stores the analysis result of full SQL statistics.'."\n" + .'* **PRE_LOAD**: Preload the file that stores the analysis result of full SQL statistics.'."\n" + .'* **VALIDATE**: Verify the functionality of stress testing.'."\n" + .'* **PRESSURE**: Start the stress testing task.', + 'type' => 'string', + 'example' => 'PROCEED', + ], + 'Version' => [ + 'description' => 'The version of the stress testing task. Valid values:'."\n" + ."\n" + .'* **V2.0**'."\n" + .'* **V3.0**', + 'type' => 'string', + 'example' => 'V3.0', + ], + 'EndState' => [ + 'description' => 'The state that indicates the last operation performed for the stress testing task. Valid values:'."\n" + ."\n" + .'* **WAIT_TARGET**: prepares the destination instance.'."\n" + .'* **WAIT_DBGATEWAY**: prepares the DBGateway.'."\n" + .'* **WAIT_SQL**: prepares the full SQL statistics.'."\n" + .'* **WAIT_LOGIC**: prepares to replay the traffic.'."\n" + ."\n" + .'> When the state of a stress testing task changes to the state that is specified by the EndState parameter, the stress testing task is complete.', + 'type' => 'string', + 'example' => 'WAIT_TARGET', + ], + 'SrcInstanceUuid' => [ + 'description' => 'The UUID of the source instance.', + 'type' => 'string', + 'example' => 'hdm_3063db6792965c080a4bcb6e6304****', + ], + 'ClientType' => [ + 'description' => 'The type of the stress testing client. Valid values:'."\n" + ."\n" + .'* **ECS**: indicates that you must prepare the DBGateway.'."\n" + .'* **DAS_ECS**: indicates that DAS automatically purchases and deploys an ECS instance for stress testing.', + 'type' => 'string', + 'example' => 'ECS', + ], + 'State' => [ + 'description' => 'The state that indicates the operation performed for the stress testing task. Valid values:'."\n" + ."\n" + .'* **WAIT_TARGET**: prepares the destination instance.'."\n" + .'* **WAIT_DBGATEWAY**: prepares the DBGateway.'."\n" + .'* **WAIT_SQL**: prepares the full SQL statistics.'."\n" + .'* **WAIT_LOGIC**: prepares to replay the traffic.', + 'type' => 'string', + 'example' => 'WAIT_TARGET', + ], + 'DstIp' => [ + 'description' => 'The reserved parameter.', + 'type' => 'string', + 'example' => 'None', + ], + 'SrcPublicIp' => [ + 'description' => 'The reserved parameter.', + 'type' => 'string', + 'example' => 'None', + ], + 'BackupId' => [ + 'description' => 'The ID of the backup set. You can call the [DescribeBackups](~~26273~~) operation to query the ID of the backup set.', + 'type' => 'string', + 'example' => '229132', + ], + 'SqlCompleteReuse' => [ + 'description' => 'The reused information about the analysis result of full SQL statistics.', + 'type' => 'string', + 'example' => '{"sqlUuid":"task_a37d2f07-45cb-4413-a2a6-c66c68****","metaUuid":"task_211e2561-5c0c-486b-864c-56b511****","sqlFile":"cl-1620057600000-1800626.sc","metaFile":"cl-1620057600000-1800626.meta"}', + ], + 'SmartPressureTime' => [ + 'description' => 'The duration of the stress testing task of the smart pressure test type. Unit: millisecond.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '86400000', + ], + 'ArchiveState' => [ + 'description' => 'The archiving status of the file that stores the analysis result of full SQL statistics. Valid values:'."\n" + ."\n" + .'* **0**: The file archiving is not started.'."\n" + .'* **1**: The file is archived.'."\n" + .'* **2**: An error occurred.'."\n" + .'* **3**: The file is being archived.'."\n" + .'* **4**: The archived file does not need to be downloaded.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'Status' => [ + 'description' => 'The status of the stress testing task. Valid values:'."\n" + ."\n" + .'* **SUCCESS**: The task was successful.'."\n" + .'* **IGNORED**: The task was ignored.'."\n" + .'* **RUNNING**: The task is running.'."\n" + .'* **EXCEPTION**: The task is abnormal.', + 'type' => 'string', + 'example' => 'RUNNING', + ], + 'WorkDir' => [ + 'description' => 'The path of the temporary directory that is generated for stress testing.', + 'type' => 'string', + 'example' => '/tmp/bench/', + ], + 'ArchiveOssTableName' => [ + 'description' => 'The name of the table that was archived to Object Storage Service (OSS).', + 'type' => 'string', + 'example' => 'custins15546355_161604665****', + ], + 'DtsJobId' => [ + 'description' => 'The ID of the DTS migration task.', + 'type' => 'string', + 'example' => 'i03e3zty16i****', + ], + 'DtsJobState' => [ + 'description' => 'The status of the DTS migration task. Valid values:'."\n" + ."\n" + .'* **NOT_STARTED**: The task is not started.'."\n" + .'* **PRE_CHECKING**: The task is in precheck.'."\n" + .'* **PRE_CHECK_FAILED**: The precheck failed.'."\n" + .'* **CHECKING**: The task is being checked.'."\n" + .'* **MIGRATING**: The data is being migrated.'."\n" + .'* **CATCHED**: The data is migrated from the source instance to the destination instance.'."\n" + .'* **SUSPENDING**: The task is suspended.'."\n" + .'* **MIGRATION_FAILED**: The data failed to be migrated.'."\n" + .'* **FINISHED**: The task is complete.'."\n" + .'* **INITIALIZING**: The synchronization is being initialized.'."\n" + .'* **INITIALIZE_FAILED**: The synchronization failed to be initialized.'."\n" + .'* **SYNCHRONIZING**: The data is being synchronized.'."\n" + .'* **MODIFYING**: The roles of the instances are being changed.'."\n" + .'* **SWITCHING**: The roles of the instances are being switched.'."\n" + .'* **FAILED**: The task failed.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => 'CHECKING', + ], + 'DstPort' => [ + 'description' => 'The port number of the destination instance.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '3306', + ], + 'DtsJobClass' => [ + 'description' => 'The specification of the DTS instance.'."\n" + ."\n" + .'> For more information about the specifications of DTS instances and the test performance of each instance, see [Specifications of data migration instances](~~26606~~).', + 'type' => 'string', + 'example' => 'medium', + ], + 'ClientGatewayId' => [ + 'description' => 'The DBGateway ID of the stress testing client.', + 'type' => 'string', + 'example' => '58598b2af48a0193dfc16fc6964ef****', + ], + 'Description' => [ + 'description' => 'The description of the stress testing task.', + 'type' => 'string', + 'example' => 'test-das-bench-0501', + ], + 'ErrorCode' => [ + 'description' => 'The error code returned for the substep of the stress testing task.', + 'type' => 'string', + 'example' => '10109', + ], + 'TableSchema' => [ + 'description' => 'The name of the table that is used for stress testing.', + 'type' => 'string', + 'example' => '[{"TABLE_NAME":"customer1","TABLE_SCHEMA":"tpcc"}]', + ], + 'DtsJobStatus' => [ + 'description' => 'The status of the DTS migration task. Valid values:'."\n" + ."\n" + .'* **NOT_STARTED**: The task is not started.'."\n" + .'* **PRE_CHECKING**: The task is in precheck.'."\n" + .'* **PRE_CHECK_FAILED**: The precheck failed.'."\n" + .'* **CHECKING**: The task is being checked.'."\n" + .'* **MIGRATING**: The data is being migrated.'."\n" + .'* **CATCHED**: The data is migrated from the source instance to the destination instance.'."\n" + .'* **SUSPENDING**: The task is suspended.'."\n" + .'* **MIGRATION_FAILED**: The data failed to be migrated.'."\n" + .'* **FINISHED**: The task is complete.'."\n" + .'* **INITIALIZING**: The synchronization is being initialized.'."\n" + .'* **INITIALIZE_FAILED**: The synchronization failed to be initialized.'."\n" + .'* **SYNCHRONIZING**: The data is being synchronized.'."\n" + .'* **MODIFYING**: The roles of the instances are being changed.'."\n" + .'* **SWITCHING**: The roles of the instances are being switched.'."\n" + .'* **FAILED**: The task failed.', + 'type' => 'string', + 'example' => 'PRE_CHECK_FAILED', + ], + 'SrcInstanceArea' => [ + 'description' => 'The database engine of the source instance. Valid values:', + 'type' => 'string', + 'example' => 'RDS', + ], + 'BenchStepStatus' => [ + 'description' => 'The status that indicates the substep performed for the stress testing task. Valid values:'."\n" + ."\n" + .'* **NEW**: The task is being initialized.'."\n" + .'* **RUNNING**: The task is running.'."\n" + .'* **FAILED**: The task failed.'."\n" + .'* **FINISHED**: The task is complete.'."\n" + .'* **Terminated**: The task is terminated.'."\n" + .'* **Deleted**: The task is deleted.', + 'type' => 'string', + 'example' => 'FINISHED', + ], + 'Source' => [ + 'description' => 'The source of the task. Valid values:'."\n" + ."\n" + .'* **DAS**'."\n" + .'* **OPEN_API**', + 'type' => 'string', + 'example' => 'DAS', + ], + 'ArchiveJobId' => [ + 'description' => 'The archiving task ID.', + 'type' => 'string', + 'example' => '\'202105211430070112231480820340758****', + ], + 'Topic' => [ + 'description' => 'The topic that contains the consumed data. This topic is a topic in Message Queue for Apache Kafka.', + 'type' => 'string', + 'example' => 'das', + ], + 'RequestDuration' => [ + 'description' => 'The duration of the stress testing task. Unit: millisecond.', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '86400000', + ], + 'TaskId' => [ + 'description' => 'The task ID.', + 'type' => 'string', + 'example' => 'e5cec704-0518-430f-8263-76f4dcds****', + ], + 'Rate' => [ + 'description' => 'The rate at which the stress testing task replayed the traffic. This value is a positive integer. Valid values: **0** to **30**. Default value: **1**.', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 10,\\n \\"Extra\\": \\"None\\",\\n \\"Total\\": 2,\\n \\"List\\": {\\n \\"cloudbenchTasks\\": [\\n {\\n \\"DtsJobName\\": \\"RDS间迁移\\",\\n \\"ErrorMessage\\": \\"DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\\\\\\\n\\\\\\\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].\\",\\n \\"External\\": \\"Null\\",\\n \\"BackupType\\": \\"TIMESTAMP\\",\\n \\"UserId\\": \\"1091411816252****\\",\\n \\"DstType\\": \\"Instance\\",\\n \\"EcsInstanceId\\": \\"i-bp1ecr5go2go1****\\",\\n \\"DstInstanceUuid\\": \\"hdm_d887b5ccf99fa0dc9a1e5aaac368****\\",\\n \\"TaskType\\": \\"pressure test\\",\\n \\"BenchStep\\": \\"PROCEED\\",\\n \\"Version\\": \\"V3.0\\",\\n \\"EndState\\": \\"WAIT_TARGET\\",\\n \\"SrcInstanceUuid\\": \\"hdm_3063db6792965c080a4bcb6e6304****\\",\\n \\"ClientType\\": \\"ECS\\",\\n \\"State\\": \\"WAIT_TARGET\\",\\n \\"DstIp\\": \\"None\\",\\n \\"SrcPublicIp\\": \\"None\\",\\n \\"BackupId\\": \\"229132\\",\\n \\"SqlCompleteReuse\\": \\"{\\\\\\"sqlUuid\\\\\\":\\\\\\"task_a37d2f07-45cb-4413-a2a6-c66c68****\\\\\\",\\\\\\"metaUuid\\\\\\":\\\\\\"task_211e2561-5c0c-486b-864c-56b511****\\\\\\",\\\\\\"sqlFile\\\\\\":\\\\\\"cl-1620057600000-1800626.sc\\\\\\",\\\\\\"metaFile\\\\\\":\\\\\\"cl-1620057600000-1800626.meta\\\\\\"}\\",\\n \\"SmartPressureTime\\": 86400000,\\n \\"ArchiveState\\": 1,\\n \\"Status\\": \\"RUNNING\\",\\n \\"WorkDir\\": \\"/tmp/bench/\\",\\n \\"ArchiveOssTableName\\": \\"custins15546355_161604665****\\",\\n \\"DtsJobId\\": \\"i03e3zty16i****\\",\\n \\"DtsJobState\\": 0,\\n \\"DstPort\\": 3306,\\n \\"DtsJobClass\\": \\"medium\\",\\n \\"ClientGatewayId\\": \\"58598b2af48a0193dfc16fc6964ef****\\",\\n \\"Description\\": \\"test-das-bench-0501\\",\\n \\"ErrorCode\\": \\"10109\\",\\n \\"TableSchema\\": \\"[{\\\\\\"TABLE_NAME\\\\\\":\\\\\\"customer1\\\\\\",\\\\\\"TABLE_SCHEMA\\\\\\":\\\\\\"tpcc\\\\\\"}]\\",\\n \\"DtsJobStatus\\": \\"PRE_CHECK_FAILED\\",\\n \\"SrcInstanceArea\\": \\"RDS\\",\\n \\"BenchStepStatus\\": \\"FINISHED\\",\\n \\"Source\\": \\"DAS\\",\\n \\"ArchiveJobId\\": \\"\'202105211430070112231480820340758****\\",\\n \\"Topic\\": \\"das\\",\\n \\"RequestDuration\\": 86400000,\\n \\"TaskId\\": \\"e5cec704-0518-430f-8263-76f4dcds****\\",\\n \\"Rate\\": 1\\n }\\n ]\\n }\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeCloudBenchTasksResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n <Data>\\n <PageNo>1</PageNo>\\n <PageSize>10</PageSize>\\n <Extra>None</Extra>\\n <Total>2</Total>\\n <List>\\n <DtsJobName>RDS间迁移</DtsJobName>\\n <ErrorMessage>DTS-070211: Connect Source DB failed. cause by [com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Could not create connection to database server. Attempted reconnect 3 times. Giving up.][com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure\\\\n\\\\nThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.][java.net.ConnectException:Connection timed out (Connection timed out)] About more information in [https://yq.aliyun.com/articles/499178].</ErrorMessage>\\n <External>Null</External>\\n <BackupType>TIMESTAMP</BackupType>\\n <UserId>1091411816252****</UserId>\\n <DstType>Instance</DstType>\\n <EcsInstanceId>i-bp1ecr5go2go1****</EcsInstanceId>\\n <DstInstanceUuid>hdm_d887b5ccf99fa0dc9a1e5aaac368****</DstInstanceUuid>\\n <TaskType>pressure test</TaskType>\\n <BenchStep>PROCEED</BenchStep>\\n <Version>V3.0</Version>\\n <EndState>WAIT_TARGET</EndState>\\n <SrcInstanceUuid>hdm_3063db6792965c080a4bcb6e6304****</SrcInstanceUuid>\\n <ClientType>ECS</ClientType>\\n <State>WAIT_TARGET</State>\\n <DstIp>None</DstIp>\\n <SrcPublicIp>None</SrcPublicIp>\\n <BackupId>229132</BackupId>\\n <SqlCompleteReuse>{\\"sqlUuid\\":\\"task_a37d2f07-45cb-4413-a2a6-c66c68****\\",\\"metaUuid\\":\\"task_211e2561-5c0c-486b-864c-56b511****\\",\\"sqlFile\\":\\"cl-1620057600000-1800626.sc\\",\\"metaFile\\":\\"cl-1620057600000-1800626.meta\\"}</SqlCompleteReuse>\\n <SmartPressureTime>86400000</SmartPressureTime>\\n <ArchiveState>1</ArchiveState>\\n <Status>RUNNING</Status>\\n <WorkDir>/tmp/bench/</WorkDir>\\n <ArchiveOssTableName>custins15546355_161604665****</ArchiveOssTableName>\\n <DtsJobId>i03e3zty16i****</DtsJobId>\\n <DstPort>3306</DstPort>\\n <DtsJobClass>medium</DtsJobClass>\\n <ClientGatewayId>58598b2af48a0193dfc16fc6964ef****</ClientGatewayId>\\n <Description>test-das-bench-0501</Description>\\n <ErrorCode>10109</ErrorCode>\\n <TableSchema>[{\\"TABLE_NAME\\":\\"customer1\\",\\"TABLE_SCHEMA\\":\\"tpcc\\"}]</TableSchema>\\n <DtsJobStatus>PRE_CHECK_FAILED</DtsJobStatus>\\n <SrcInstanceArea>RDS</SrcInstanceArea>\\n <BenchStepStatus>FINISHED</BenchStepStatus>\\n <Source>DAS</Source>\\n <ArchiveJobId>\'202105211430070112231480820340758****</ArchiveJobId>\\n <Topic>das</Topic>\\n <RequestDuration>86400000</RequestDuration>\\n <TaskId>e5cec704-0518-430f-8263-76f4dcds****</TaskId>\\n <Rate>1</Rate>\\n </List>\\n </Data>\\n</DescribeCloudBenchTasksResponse>","errorExample":""}]', + 'title' => 'DescribeCloudBenchTasks', + 'description' => 'Database Autonomy Service (DAS) provides the intelligent stress testing feature. This feature helps you check whether your instance needs to be scaled up to effectively handle traffic spikes. For more information, see [Intelligent stress testing](~~155068~~).'."\n", + ], + 'CreateCloudBenchTasks' => [ + 'summary' => 'Creates stress testing tasks.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'TaskType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the stress testing task. Valid values:'."\n" + ."\n" + .'* **pressure test** (default): A task of this type replays the traffic that is captured from the source instance on the destination instance at the maximum playback rate that is supported by the destination instance.'."\n" + .'* **smart pressure test**: A task of this type analyzes the traffic that is captured from the source instance over a short period of time and generates traffic on the destination instance for continuous stress testing. The business model based on which the traffic is generated on the destination instance and the traffic distribution are consistent with those on the source instance. Stress testing tasks of this type can help you reduce the amount of time that is consumed to collect data from the source instance and reduce storage costs and performance overheads.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'pressure test', + ], + ], + [ + 'name' => 'SrcInstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the source instance. The instance must be an ApsaraDB RDS for MySQL instance or a PolarDB for MySQL instance. You can call the [GetInstanceInspections](~~202857~~) operation to query the ID.'."\n" + ."\n" + .'> This parameter must be specified if you set **DstType** to **Instance**.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'rm-2ze1jdv45i7l6****', + ], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'description' => 'The description of the stress testing task.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'test-das-bench-0501', + ], + ], + [ + 'name' => 'SrcPublicIp', + 'in' => 'query', + 'schema' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'None', + ], + ], + [ + 'name' => 'DstInstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the destination instance. The instance must be an ApsaraDB RDS for MySQL instance or a PolarDB for MySQL instance. You can call the [GetInstanceInspections](~~202857~~) operation to query the ID.'."\n" + ."\n" + .'> This parameter must be specified if you set **DstType** to **Instance**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rm-2ze1jdv45i7l6****', + ], + ], + [ + 'name' => 'GatewayVpcId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the virtual private cloud (VPC) in which the database gateway (DBGateway) is deployed.'."\n" + ."\n" + .'> This parameter must be specified if you set **ClientType** to **ECS**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'vpc-t4nsnwvpbc1h76ja4****', + ], + ], + [ + 'name' => 'GatewayVpcIp', + 'in' => 'query', + 'schema' => [ + 'description' => 'The IP address or domain name of the DBGateway.'."\n" + ."\n" + .'> This parameter must be specified if you set **ClientType** to **ECS**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '172.30.XX.XX', + ], + ], + [ + 'name' => 'ClientType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the stress testing client. Valid values:'."\n" + ."\n" + .'* **ECS**: indicates that you must create the [DBGateway](~~64905~~).'."\n" + .'* **DAS_ECS**: indicates that DAS automatically purchases and deploys an Elastic Compute Service (ECS) instance for stress testing.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'ECS', + ], + ], + [ + 'name' => 'RequestStartTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The time when the stress testing task starts. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1608888296000', + ], + ], + [ + 'name' => 'RequestEndTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The time when the stress testing task ends. Set this parameter to a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1608888296001', + ], + ], + [ + 'name' => 'RequestDuration', + 'in' => 'query', + 'schema' => [ + 'description' => 'The duration of the stress testing task for which the traffic is captured from the source instance. Unit: milliseconds.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '86400000', + ], + ], + [ + 'name' => 'Rate', + 'in' => 'query', + 'schema' => [ + 'description' => 'The rate at which the traffic captured from the source instance is replayed on the destination instance. The value must be a positive integer. Valid values: **1** to **30**. Default value: **1**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'SmartPressureTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The duration within which the traffic generation stressing test takes effect. Unit: milliseconds.'."\n" + ."\n" + .'> This parameter must be specified if you set **TaskType** to **smart pressure test**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '86400000', + ], + ], + [ + 'name' => 'DtsJobClass', + 'in' => 'query', + 'schema' => [ + 'description' => 'The specification of the Data Transmission Service (DTS) migration task. You can call the [DescribeCloudbenchTask](~~230669~~) operation to query the specification.'."\n" + ."\n" + .'> You must migrate the basic data in the source instance to the destination instance before you start a stress testing task. When you create a DTS migration task, you must specify this parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'medium', + ], + ], + [ + 'name' => 'DtsJobId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the DTS migration task. You can call the [ConfigureDtsJob](~~208399~~) operation to query the ID.'."\n" + ."\n" + .'> After a DTS migration task is created in the DTS console, you must specify this parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '23127', + ], + ], + [ + 'name' => 'SrcSuperAccount', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the privileged account for the source instance. Set the value to **admin**.'."\n" + ."\n" + .'> This parameter must be specified if you set **DstType** to **Instance**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'admin', + ], + ], + [ + 'name' => 'SrcSuperPassword', + 'in' => 'query', + 'schema' => [ + 'description' => 'The password of the privileged account for the source instance.'."\n" + ."\n" + .'> This parameter must be specified if you set **DstType** to **Instance**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test123', + ], + ], + [ + 'name' => 'DstSuperAccount', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the privileged account for the destination instance.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'root', + ], + ], + [ + 'name' => 'DstSuperPassword', + 'in' => 'query', + 'schema' => [ + 'description' => 'The password of the privileged account for the destination instance.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test123', + ], + ], + [ + 'name' => 'DstType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the identifier that is used to indicate the destination instance. Valid values:'."\n" + ."\n" + .'* **Instance**: the instance ID. This is the default value.'."\n" + .'* **ConnectionString**: the endpoint of the instance.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Instance', + ], + ], + [ + 'name' => 'DstConnectionString', + 'in' => 'query', + 'schema' => [ + 'description' => 'The endpoint of the destination instance. The specified endpoint must be the endpoint of an ApsaraDB RDS for MySQL instance or a PolarDB for MySQL instance.'."\n" + ."\n" + .'> This parameter takes effect only if you set **DstType** to **ConnectionString**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rm-de21209****.mysql.rds.aliyuncs.com', + ], + ], + [ + 'name' => 'DstPort', + 'in' => 'query', + 'schema' => [ + 'description' => 'The port number of the instance that you want to access.'."\n" + ."\n" + .'> This parameter takes effect only if you set **DstType** to **ConnectionString**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '3306', + ], + ], + [ + 'name' => 'WorkDir', + 'in' => 'query', + 'schema' => [ + 'description' => 'The temporary directory generated for stress testing.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '/tmp/bench/', + ], + ], + [ + 'name' => 'BackupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the backup set. You can call the [DescribeBackups](~~26273~~) operation to query the ID of the backup set.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '229132', + ], + ], + [ + 'name' => 'BackupTime', + 'in' => 'query', + 'schema' => [ + 'description' => 'The time when the backup starts. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2021-04-23T13:22:14Z', + ], + ], + [ + 'name' => 'Amount', + 'in' => 'query', + 'schema' => [ + 'description' => 'The total number of stress testing tasks that you want to create. Valid values: **0** to **30**. Default value: **1**.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'EndState', + 'in' => 'query', + 'schema' => [ + 'description' => 'The state that specifies the last operation that is performed for the stress testing task. Valid values:'."\n" + ."\n" + .'* **WAIT_TARGET**: prepares the destination instance'."\n" + .'* **WAIT_DBGATEWAY**: prepares the DBGateway'."\n" + .'* **WAIT_SQL**: prepares the full SQL statistics'."\n" + .'* **WAIT_LOGIC**: prepares to replay the traffic'."\n" + ."\n" + .'> When the state of a stress testing task changes to the state that is specified by the EndState parameter, the stress testing task becomes completed.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'WAIT_TARGET', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**: The request was successful.'."\n" + .'* **false**: The request failed.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'taskIds' => [ + 'description' => 'The detailed information.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The detailed information, including the error codes and the number of entries that are returned.'."\n", + 'type' => 'string', + 'example' => '"Data": { "total": 1, "list":[...] }, "Code": 200, "Success": true }', + ], + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"taskIds\\": [\\n \\"\\\\\\"Data\\\\\\": { \\\\\\"total\\\\\\": 1, \\\\\\"list\\\\\\":[...] }, \\\\\\"Code\\\\\\": 200, \\\\\\"Success\\\\\\": true }\\"\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<CreateCloudBenchTasksResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n <Data>\\"Data\\": { \\"total\\": 1, \\"list\\":[...] }, \\"Code\\": 200, \\"Success\\": true }</Data>\\n</CreateCloudBenchTasksResponse>","errorExample":""}]', + 'title' => 'CreateCloudBenchTasks', + 'description' => 'Database Autonomy Service (DAS) provides the intelligent stress testing feature. This feature helps you check whether your instance needs to be scaled up to effectively handle traffic spikes. For more information, see [Intelligent stress testing](~~155068~~). Before you call this API operation, make sure that your database instances meet the following requirements:'."\n" + ."\n" + .'* The source database instance is an ApsaraDB RDS for MySQL High-availability Edition or Enterprise Edition instance, or a PolarDB for MySQL Cluster Edition cluster.'."\n" + .'* The destination database instance is an ApsaraDB RDS for MySQL instance or a PolarDB for MySQL cluster.'."\n" + .'* The source and destination database instances are connected to DAS. For information about how to connect database instances to DAS, see [Connect an Alibaba Cloud database instance to DAS](~~65405~~).'."\n" + .'* DAS Enterprise Edition is enabled for the source and destination database instances. For more information, see [Overview](~~190912~~).'."\n", + ], + 'DescribeCloudbenchTaskConfig' => [ + 'summary' => 'Queries the configurations of a stress testing task.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'TaskId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The task ID. You can call the [DescribeCloudBenchTasks](~~230670~~) operation to query the task ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'e5cec704-0518-430f-8263-76f4dcds****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**'."\n" + .'* **false**'."\n", + 'type' => 'string', + 'example' => 'true', + ], + 'Data' => [ + 'description' => 'The detailed information, including the error codes and the number of entries that are returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'WorkDir' => [ + 'description' => 'The path of the temporary directory that is generated for stress testing.'."\n", + 'type' => 'string', + 'example' => '/tmp/bench/', + ], + 'ArchiveFolder' => [ + 'description' => 'The path in which the files are archived.'."\n", + 'type' => 'string', + 'example' => '/tmp/das/cloudbench/archive-sqls/', + ], + 'MetaFilePath' => [ + 'description' => 'The path to the metadata file.'."\n", + 'type' => 'string', + 'example' => '/tmp/das/cloudbench/cl-1621353601000-360****.meta', + ], + 'MetaFileName' => [ + 'description' => 'The name of the metadata file.'."\n", + 'type' => 'string', + 'example' => 'cl-1621353601000-360****.meta', + ], + 'MetaFileOnOss' => [ + 'description' => 'The name of the metadata file stored in Object Storage Service (OSS).'."\n", + 'type' => 'string', + 'example' => '"https://cb-rm-bp1w9g06h560l****.oss-cn-hangzhou.aliyuncs.com/cl-1621353601000-360****.meta?OSSAccessKeyId=LTAI5tKj8B4wikkVtupK****&Expires=1622441372&Signature=Qsehg3tzeA57M%2BIixAbWPWAtvl****', + ], + 'UserId' => [ + 'description' => 'The Alibaba Cloud account ID.'."\n", + 'type' => 'string', + 'example' => '1091411816252****', + ], + 'BenchCmd' => [ + 'description' => 'The command that was run to start the stress testing task.'."\n", + 'type' => 'string', + 'example' => 'java -jar /tmp/das/cloudbench/CloudBenchClient.jar --bench --rocksdb /tmp/das/cloudbench/rocksdb --meta /tmp/das/cloudbench/cl-1621353601000-360****.meta --task_name 2777bba9-a836-49e6-9f70-1c3822fc9239 --result_file /tmp/das/cloudbench/null.result --user cloudb**** --pwd \\"cloudbench@****\\" --host rm-bp1j5f8s5x26kq79216****.mysql.rds.aliyuncs.com --port 3306 --charset utf8mb4 --interval 1 --bench_time 3600 --rate_factor 1.0 --start_time 1621353601 --rt > /tmp/das/cloudbench/null.log', + ], + 'SqlFileOnOss' => [ + 'description' => 'The name of the file that stores the analysis result of full SQL statistics and that is stored in OSS.'."\n", + 'type' => 'string', + 'example' => 'https://cb-rm-bp1w9g06h560l****.oss-cn-hangzhou.aliyuncs.com/cl-1621353601000-360****.sc?OSSAccessKeyId=LTAI5tKj8B4wikkVtupK****&Expires=1622441372&Signature=LYMADwo%2BRrJeqR3e4d8OlIkVmw****', + ], + 'LoadCmd' => [ + 'description' => 'The command that was run to preload the file that stores the analysis result of full SQL statistics.'."\n", + 'type' => 'string', + 'example' => 'java -jar /tmp/das/cloudbench/CloudBenchClient.jar --load --out /tmp/das/cloudbench/cl-1621353601000-360****.sc --meta /tmp/das/cloudbench/cl-1621353601000-360****.meta --task_name 2777bba9-****-49e6-9f70-1c3822fc**** --rocksdb /tmp/das/cloudbench/rocksdb', + ], + 'RocksDbPath' => [ + 'description' => 'The location where the RocksDB storage system is deployed in the stress testing client.'."\n", + 'type' => 'string', + 'example' => '/tmp/das/cloudbench/rocksdb', + ], + 'ParseCmd' => [ + 'description' => 'The command that was run to parse the file that stores the analysis result of full SQL statistics.'."\n", + 'type' => 'string', + 'example' => 'cd /tmp/das/cloudbench && java -jar CloudBenchClient.jar --parse --threads 32 --file /tmp/das/cloudbench/2777bba9-a836-49e6-9f70-1c3822fc9239.archiveSql --meta /tmp/das/cloudbench/cl-1621353601000-360****.meta --out /tmp/das/cloudbench/cl-1621353601000-360****.sc --parent_patmp/das/cloudbench --source RDS --h /thost rm-bp1j5f8s5x266****.mysql.rds.aliyuncs.com --port 3306 --user cloudb**** --pwd \\"cloudbench@****\\" --cutSqlLen 8192 --db_black_list=information_schema,test,unknow,null', + ], + 'SqlFileName' => [ + 'description' => 'The name of the file that stores the analysis result of full SQL statistics.'."\n", + 'type' => 'string', + 'example' => 'cl-1621353601000-360****.sc', + ], + 'ClientJarPath' => [ + 'description' => 'The path to the JAR file that is used for stress testing.'."\n", + 'type' => 'string', + 'example' => '/tmp/das/cloudbench/CloudBenchClient.jar', + ], + 'SqlFilePath' => [ + 'description' => 'The path to the file that stores the analysis result of full SQL statistics.'."\n", + 'type' => 'string', + 'example' => '/tmp/das/cloudbench/cl-1621353601000-360****.sc', + ], + 'ParseFilePath' => [ + 'description' => 'The path to the file that is parsed. The file stores the analysis result of full SQL statistics.'."\n", + 'type' => 'string', + 'example' => '/tmp/das/cloudbench/2777bba9-a836-49e6-9f70-1c3822fc****.archiveSql', + ], + 'JarOnOss' => [ + 'description' => 'The path to the JAR file that is stored in OSS. The JAR file is used for stress testing.'."\n", + 'type' => 'string', + 'example' => 'https://cloudbench-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/CloudBenchClient.jar?OSSAccessKeyId=LTAI5tKj8B4wikkVtupK****&Expires=1622441372&Signature=28p%2BCe4tNHpr9VPOcHc3Si9iOb****', + ], + 'TaskId' => [ + 'description' => 'The task ID.'."\n", + 'type' => 'string', + 'example' => 'e5cec704-0518-430f-8263-76f4dcds****', + ], + ], + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"WorkDir\\": \\"/tmp/bench/\\",\\n \\"ArchiveFolder\\": \\"/tmp/das/cloudbench/archive-sqls/\\",\\n \\"MetaFilePath\\": \\"/tmp/das/cloudbench/cl-1621353601000-360****.meta\\",\\n \\"MetaFileName\\": \\"cl-1621353601000-360****.meta\\",\\n \\"MetaFileOnOss\\": \\"\\\\\\"https://cb-rm-bp1w9g06h560l****.oss-cn-hangzhou.aliyuncs.com/cl-1621353601000-360****.meta?OSSAccessKeyId=LTAI5tKj8B4wikkVtupK****&Expires=1622441372&Signature=Qsehg3tzeA57M%2BIixAbWPWAtvl****\\",\\n \\"UserId\\": \\"1091411816252****\\",\\n \\"BenchCmd\\": \\"java -jar /tmp/das/cloudbench/CloudBenchClient.jar --bench --rocksdb /tmp/das/cloudbench/rocksdb --meta /tmp/das/cloudbench/cl-1621353601000-360****.meta --task_name 2777bba9-a836-49e6-9f70-1c3822fc9239 --result_file /tmp/das/cloudbench/null.result --user cloudb**** --pwd \\\\\\\\\\\\\\"cloudbench@****\\\\\\\\\\\\\\" --host rm-bp1j5f8s5x26kq79216****.mysql.rds.aliyuncs.com --port 3306 --charset utf8mb4 --interval 1 --bench_time 3600 --rate_factor 1.0 --start_time 1621353601 --rt > /tmp/das/cloudbench/null.log\\",\\n \\"SqlFileOnOss\\": \\"https://cb-rm-bp1w9g06h560l****.oss-cn-hangzhou.aliyuncs.com/cl-1621353601000-360****.sc?OSSAccessKeyId=LTAI5tKj8B4wikkVtupK****&Expires=1622441372&Signature=LYMADwo%2BRrJeqR3e4d8OlIkVmw****\\",\\n \\"LoadCmd\\": \\"java -jar /tmp/das/cloudbench/CloudBenchClient.jar --load --out /tmp/das/cloudbench/cl-1621353601000-360****.sc --meta /tmp/das/cloudbench/cl-1621353601000-360****.meta --task_name 2777bba9-****-49e6-9f70-1c3822fc**** --rocksdb /tmp/das/cloudbench/rocksdb\\",\\n \\"RocksDbPath\\": \\"/tmp/das/cloudbench/rocksdb\\",\\n \\"ParseCmd\\": \\"cd /tmp/das/cloudbench && java -jar CloudBenchClient.jar --parse --threads 32 --file /tmp/das/cloudbench/2777bba9-a836-49e6-9f70-1c3822fc9239.archiveSql --meta /tmp/das/cloudbench/cl-1621353601000-360****.meta --out /tmp/das/cloudbench/cl-1621353601000-360****.sc --parent_patmp/das/cloudbench --source RDS --h /thost rm-bp1j5f8s5x266****.mysql.rds.aliyuncs.com --port 3306 --user cloudb**** --pwd \\\\\\\\\\\\\\"cloudbench@****\\\\\\\\\\\\\\" --cutSqlLen 8192 --db_black_list=information_schema,test,unknow,null\\",\\n \\"SqlFileName\\": \\"cl-1621353601000-360****.sc\\",\\n \\"ClientJarPath\\": \\"/tmp/das/cloudbench/CloudBenchClient.jar\\",\\n \\"SqlFilePath\\": \\"/tmp/das/cloudbench/cl-1621353601000-360****.sc\\",\\n \\"ParseFilePath\\": \\"/tmp/das/cloudbench/2777bba9-a836-49e6-9f70-1c3822fc****.archiveSql\\",\\n \\"JarOnOss\\": \\"https://cloudbench-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/CloudBenchClient.jar?OSSAccessKeyId=LTAI5tKj8B4wikkVtupK****&Expires=1622441372&Signature=28p%2BCe4tNHpr9VPOcHc3Si9iOb****\\",\\n \\"TaskId\\": \\"e5cec704-0518-430f-8263-76f4dcds****\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeCloudbenchTaskConfigResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Success>true</Success>\\n <Data>\\n <WorkDir>/tmp/bench/</WorkDir>\\n <ArchiveFolder>/tmp/das/cloudbench/archive-sqls/</ArchiveFolder>\\n <MetaFilePath>/tmp/das/cloudbench/cl-1621353601000-360****.meta</MetaFilePath>\\n <MetaFileName>cl-1621353601000-360****.meta</MetaFileName>\\n <MetaFileOnOss>\\"https://cb-rm-bp1w9g06h560l****.oss-cn-hangzhou.aliyuncs.com/cl-1621353601000-360****.meta?OSSAccessKeyId=LTAI5tKj8B4wikkVtupK****&Expires=1622441372&Signature=Qsehg3tzeA57M%2BIixAbWPWAtvl****</MetaFileOnOss>\\n <UserId>1091411816252****</UserId>\\n <BenchCmd>java -jar /tmp/das/cloudbench/CloudBenchClient.jar --bench --rocksdb /tmp/das/cloudbench/rocksdb --meta /tmp/das/cloudbench/cl-1621353601000-360****.meta --task_name 2777bba9-a836-49e6-9f70-1c3822fc9239 --result_file /tmp/das/cloudbench/null.result --user cloudb**** --pwd \\\\\\"cloudbench@****\\\\\\" --host rm-bp1j5f8s5x26kq79216****.mysql.rds.aliyuncs.com --port 3306 --charset utf8mb4 --interval 1 --bench_time 3600 --rate_factor 1.0 --start_time 1621353601 --rt > /tmp/das/cloudbench/null.log</BenchCmd>\\n <SqlFileOnOss>https://cb-rm-bp1w9g06h560l****.oss-cn-hangzhou.aliyuncs.com/cl-1621353601000-360****.sc?OSSAccessKeyId=LTAI5tKj8B4wikkVtupK****&Expires=1622441372&Signature=LYMADwo%2BRrJeqR3e4d8OlIkVmw****</SqlFileOnOss>\\n <LoadCmd>java -jar /tmp/das/cloudbench/CloudBenchClient.jar --load --out /tmp/das/cloudbench/cl-1621353601000-360****.sc --meta /tmp/das/cloudbench/cl-1621353601000-360****.meta --task_name 2777bba9-****-49e6-9f70-1c3822fc**** --rocksdb /tmp/das/cloudbench/rocksdb</LoadCmd>\\n <RocksDbPath>/tmp/das/cloudbench/rocksdb</RocksDbPath>\\n <ParseCmd>cd /tmp/das/cloudbench && java -jar CloudBenchClient.jar --parse --threads 32 --file /tmp/das/cloudbench/2777bba9-a836-49e6-9f70-1c3822fc9239.archiveSql --meta /tmp/das/cloudbench/cl-1621353601000-360****.meta --out /tmp/das/cloudbench/cl-1621353601000-360****.sc --parent_patmp/das/cloudbench --source RDS --h /thost rm-bp1j5f8s5x266****.mysql.rds.aliyuncs.com --port 3306 --user cloudb**** --pwd \\\\\\"cloudbench@****\\\\\\" --cutSqlLen 8192 --db_black_list=information_schema,test,unknow,null</ParseCmd>\\n <SqlFileName>cl-1621353601000-360****.sc</SqlFileName>\\n <ClientJarPath>/tmp/das/cloudbench/CloudBenchClient.jar</ClientJarPath>\\n <SqlFilePath>/tmp/das/cloudbench/cl-1621353601000-360****.sc</SqlFilePath>\\n <ParseFilePath>/tmp/das/cloudbench/2777bba9-a836-49e6-9f70-1c3822fc****.archiveSql</ParseFilePath>\\n <JarOnOss>https://cloudbench-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/CloudBenchClient.jar?OSSAccessKeyId=LTAI5tKj8B4wikkVtupK****&Expires=1622441372&Signature=28p%2BCe4tNHpr9VPOcHc3Si9iOb****</JarOnOss>\\n <TaskId>e5cec704-0518-430f-8263-76f4dcds****</TaskId>\\n </Data>\\n</DescribeCloudbenchTaskConfigResponse>","errorExample":""}]', + 'title' => 'DescribeCloudbenchTaskConfig', + 'description' => 'Database Autonomy Service (DAS) provides the intelligent stress testing feature. This feature helps you check whether your instance needs to be scaled up to effectively handle traffic spikes. For more information, see [Intelligent stress testing](~~155068~~).'."\n", + ], + 'DeleteCloudBenchTask' => [ + 'summary' => 'Deletes a stress testing task.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'delete', + ], + 'parameters' => [ + [ + 'name' => 'TaskId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the stress testing task. You can call the [DescribeCloudBenchTasks](~~230670~~) operation to query the ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'e5cec704-0518-430f-8263-76f4dcds****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The reserved parameter.'."\n", + 'type' => 'string', + 'example' => 'None', + ], + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**: The request was successful.'."\n" + .'* **false**: The request failed.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": \\"None\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteCloudBenchTaskResponse>\\n <RequestId>B6D17591-B48B-4D31-9CD6-9B9796B2****</RequestId>\\n <Message>Successful</Message>\\n <Code>200</Code>\\n <Success>true</Success>\\n</DeleteCloudBenchTaskResponse>","errorExample":""}]', + 'title' => 'DeleteCloudBenchTask', + 'description' => 'Database Autonomy Service (DAS) provides the intelligent stress testing feature. This feature helps you check whether your instance needs to be scaled up to handle traffic spikes in an effective manner. For more information, see [Intelligent stress testing](~~155068~~).'."\n", + ], + 'DeleteStopGateway' => [ + 'summary' => 'Deletes the metadata of a stopped DBGateway.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'systemTags' => [ + 'operationType' => 'delete', + ], + 'parameters' => [ + [ + 'name' => 'GatewayId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID that can uniquely identify the DBGateway. You can obtain the DBGateway ID by calling the [DescribeCloudbenchTask](~~230669~~) operation. The DBGateway ID is the value of the **ClientGatewayId** field in the response.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '22938c83fcfbced4b4869b9695e3****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The HTTP status code returned.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The returned message.'."\n" + ."\n" + .'> If the request was successful, **Successful** is returned. If the request failed, an error message such as an error code is returned.'."\n", + 'type' => 'string', + 'example' => 'Successful', + ], + 'Data' => [ + 'description' => 'The result of the DeleteStopGateway operation. Valid values:'."\n" + ."\n" + .'* **0**: The metadata of the DBGateway is deleted.'."\n" + .'* **-1**: A system error occurs.'."\n" + .'* **-2**: The DBGateway does not exist.'."\n" + .'* **-3**: The DBGateway is not stopped and the metadata cannot be deleted.'."\n" + .'* **-4**: The metadata of the DBGateway fails to be deleted.'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => 'FC6C0929-29E1-59FD-8DFE-70D9D41E****', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* **true**: The request was successful.'."\n" + .'* **false**: The request failed.'."\n", + 'type' => 'string', + 'example' => 'true', + ], + ], + 'description' => '', + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParams', + 'errorMessage' => 'The request parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'NoPermission', + 'errorMessage' => 'You are not authorized to do this action.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": \\"0\\",\\n \\"RequestId\\": \\"FC6C0929-29E1-59FD-8DFE-70D9D41E****\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteStopGatewayResponse>\\n <Code>200</Code>\\n <Message>Successful</Message>\\n <Data>0</Data>\\n <RequestId>FC6C0929-29E1-59FD-8DFE-70D9D41E****</RequestId>\\n <Success>true</Success>\\n</DeleteStopGatewayResponse>","errorExample":""}]', + 'title' => 'DeleteStopGateway', + 'description' => '* This operation is used to delete the metadata of a DBGateway that is released in a stress testing task created by calling the [CreateCloudBenchTasks](~~230665~~) operation.'."\n" + .'* If you use an SDK to call API operations of Database Autonomy Service (DAS), you must set the region ID to cn-shanghai.'."\n" + ."\n" + .'> If the heartbeat is lost between a DBGateway and the access point for more than 20 seconds, the DBGateway is considered stopped.'."\n", + ], + ], + 'endpoints' => [ + [ + 'regionId' => 'cn-shanghai', + 'endpoint' => 'das.cn-shanghai.aliyuncs.com', + ], + [ + 'regionId' => 'ap-northeast-2-pop', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-beijing-finance-pop', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-beijing-gov-1', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-beijing-nu16-b01', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-edge-1', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-fujian', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-haidian-cm12-c01', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-hangzhou-bj-b01', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-hangzhou-internal-prod-1', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-hangzhou-internal-test-1', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-hangzhou-internal-test-2', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-hangzhou-internal-test-3', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-hangzhou-test-306', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-hongkong-finance-pop', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-huhehaote-nebula-1', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-north-2-gov-1', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-qingdao-nebula', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shanghai-et15-b01', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shanghai-et2-b01', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shanghai-inner', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shanghai-internal-test-1', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shenzhen-inner', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shenzhen-st4-d01', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shenzhen-su18-b01', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-wuhan', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-yushanfang', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-zhangbei', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-zhangbei-na61-b01', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-zhangjiakou-na62-a01', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'cn-zhengzhou-nebula-1', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'eu-west-1-oxs', + 'endpoint' => 'das.aliyuncs.com', + ], + [ + 'regionId' => 'rus-west-1-pop', + 'endpoint' => 'das.aliyuncs.com', + ], + ], +]; |
