summaryrefslogtreecommitdiff
path: root/data/en_us/das/2020-01-16
diff options
context:
space:
mode:
authorZhineng Li <im@zhineng.li>2026-07-12 17:11:17 +0800
committerZhineng Li <im@zhineng.li>2026-07-12 17:11:17 +0800
commit1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634 (patch)
tree5f0857666365b7e40cdaa3733ebe1f3ba9e13c67 /data/en_us/das/2020-01-16
parent7347bac4ab7e136157fc94777e6cf87ef9e08599 (diff)
downloadafterglow-metadata-full-1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634.tar.gz
afterglow-metadata-full-1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634.zip
update APIs 20260712
Diffstat (limited to 'data/en_us/das/2020-01-16')
-rw-r--r--data/en_us/das/2020-01-16/api-docs.php41469
1 files changed, 17194 insertions, 24275 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
index a6dfccc..6b96b12 100644
--- a/data/en_us/das/2020-01-16/api-docs.php
+++ b/data/en_us/das/2020-01-16/api-docs.php
@@ -1,303 +1,131 @@
<?php return [
'version' => '1.0',
- 'info' => [
- 'style' => 'RPC',
- 'product' => 'DAS',
- 'version' => '2020-01-16',
- ],
+ 'info' => ['style' => 'RPC', 'product' => 'DAS', 'version' => '2020-01-16'],
'directories' => [
[
- 'id' => 400976,
- 'title' => null,
+ 'children' => ['AddHDMInstance'],
'type' => 'directory',
- 'children' => [
- 'AddHDMInstance',
- ],
+ 'title' => 'Instance access',
],
[
- 'id' => 400978,
- 'title' => null,
+ 'children' => ['GetInstanceInspections'],
'type' => 'directory',
- 'children' => [
- 'GetInstanceInspections',
- ],
+ 'title' => 'Inspection and scoring',
],
[
- 'id' => 400980,
- 'title' => null,
+ 'children' => ['SetEventSubscription', 'GetEventSubscription', 'GetAutonomousNotifyEventContent', 'GetAutonomousNotifyEventsInRange'],
'type' => 'directory',
- 'children' => [
- 'SetEventSubscription',
- 'GetEventSubscription',
- 'GetAutonomousNotifyEventContent',
- 'GetAutonomousNotifyEventsInRange',
- ],
+ 'title' => 'Event notification',
],
[
- 'id' => 400985,
- 'title' => null,
+ 'children' => ['CreateDiagnosticReport', 'DescribeDiagnosticReportList'],
'type' => 'directory',
- 'children' => [
- 'CreateDiagnosticReport',
- 'DescribeDiagnosticReportList',
- 'GetDBInstanceConnectivityDiagnosis',
- ],
+ 'title' => 'Diagnostic report',
],
[
- 'id' => 400989,
- 'title' => null,
+ 'children' => ['CreateCacheAnalysisJob', 'DescribeCacheAnalysisJob', 'DescribeCacheAnalysisJobs'],
'type' => 'directory',
- 'children' => [
- 'CreateCacheAnalysisJob',
- 'DescribeCacheAnalysisJob',
- 'DescribeCacheAnalysisJobs',
- ],
+ 'title' => 'Cache analysis',
],
[
- 'id' => 400993,
- 'title' => null,
+ 'children' => ['EnableSqlConcurrencyControl', 'DisableSqlConcurrencyControl', 'DisableAllSqlConcurrencyControlRules', 'GetRunningSqlConcurrencyControlRules', 'GetSqlConcurrencyControlRulesHistory', 'GetSqlConcurrencyControlKeywordsFromSqlText'],
'type' => 'directory',
- 'children' => [
- 'EnableSqlConcurrencyControl',
- 'DisableSqlConcurrencyControl',
- 'DisableAllSqlConcurrencyControlRules',
- 'GetRunningSqlConcurrencyControlRules',
- 'GetSqlConcurrencyControlRulesHistory',
- 'GetSqlConcurrencyControlKeywordsFromSqlText',
- ],
+ 'title' => 'SQL throttling',
],
[
- 'id' => 401000,
- 'title' => null,
+ 'children' => ['CreateRequestDiagnosis', 'GetRequestDiagnosisResult', 'GetRequestDiagnosisPage', 'DescribeQueryExplain'],
'type' => 'directory',
- 'children' => [
- 'CreateRequestDiagnosis',
- 'GetRequestDiagnosisResult',
- 'GetRequestDiagnosisPage',
- 'DescribeQueryExplain',
- ],
+ 'title' => 'SQL diagnostics',
],
[
- 'id' => 401005,
- 'title' => null,
+ 'children' => ['DescribeHotBigKeys', 'DescribeTopHotKeys', 'DescribeTopBigKeys', 'DescribeHotKeys'],
'type' => 'directory',
- 'children' => [
- 'DescribeHotBigKeys',
- 'DescribeTopHotKeys',
- 'DescribeTopBigKeys',
- 'DescribeHotKeys',
- ],
+ 'title' => 'Key analysis',
],
[
- 'id' => 401010,
- 'title' => null,
+ 'children' => ['CreateQueryOptimizeTag', 'GetQueryOptimizeExecErrorStats', 'GetQueryOptimizeExecErrorSample', 'GetQueryOptimizeSolution', 'GetQueryOptimizeRuleList', 'GetQueryOptimizeDataTrend', 'GetQueryOptimizeDataTop', 'GetQueryOptimizeDataStats', 'GetQueryOptimizeTag', 'GetQueryOptimizeShareUrl'],
'type' => 'directory',
- 'children' => [
- 'CreateQueryOptimizeTag',
- 'GetQueryOptimizeExecErrorStats',
- 'GetQueryOptimizeExecErrorSample',
- 'GetQueryOptimizeSolution',
- 'GetQueryOptimizeRuleList',
- 'GetQueryOptimizeDataTrend',
- 'GetQueryOptimizeDataTop',
- 'GetQueryOptimizeDataStats',
- 'GetQueryOptimizeTag',
- 'GetQueryOptimizeShareUrl',
- ],
+ 'title' => 'Query governance',
],
[
- 'id' => 401021,
- 'title' => null,
+ 'children' => ['GetErrorRequestSample', 'GetAsyncErrorRequestStatResult', 'GetAsyncErrorRequestListByCode', 'GetAsyncErrorRequestStatByCode', 'GetFullRequestOriginStatByInstanceId', 'GetFullRequestStatResultByInstanceId', 'GetFullRequestSampleByInstanceId'],
'type' => 'directory',
- 'children' => [
- 'GetErrorRequestSample',
- 'GetAsyncErrorRequestStatResult',
- 'GetAsyncErrorRequestListByCode',
- 'GetAsyncErrorRequestStatByCode',
- 'GetFullRequestOriginStatByInstanceId',
- 'GetFullRequestStatResultByInstanceId',
- 'GetFullRequestSampleByInstanceId',
- ],
+ 'title' => 'SQL explorer',
],
[
- 'id' => 401029,
- 'title' => null,
+ 'children' => ['DescribeSqlLogConfig', 'ModifySqlLogConfig', 'DescribeSqlLogStatistic', 'GetDasSQLLogHotData', 'CreateSqlLogTask', 'DescribeSqlLogTask', 'DescribeSqlLogTasks'],
'type' => 'directory',
- 'children' => [
- 'DescribeSqlLogConfig',
- 'ModifySqlLogConfig',
- 'DescribeSqlLogStatistic',
- 'GetDasSQLLogHotData',
- 'CreateSqlLogTask',
- 'DescribeSqlLogTask',
- 'DescribeSqlLogTasks',
- ],
+ 'title' => 'Enterprise edition management',
],
[
- 'id' => 401037,
- 'title' => null,
+ 'children' => ['GetRedisAllSession', 'GetMongoDBCurrentOp', 'KillInstanceAllSession', 'CreateKillInstanceSessionTask', 'GetKillInstanceSessionTaskResult', 'GetMySQLAllSessionAsync'],
'type' => 'directory',
- 'children' => [
- 'GetRedisAllSession',
- 'GetMongoDBCurrentOp',
- 'KillInstanceAllSession',
- 'CreateKillInstanceSessionTask',
- 'GetKillInstanceSessionTaskResult',
- 'GetMySQLAllSessionAsync',
- ],
+ 'title' => 'Instance session',
],
[
- 'id' => 401044,
- 'title' => null,
+ 'children' => ['CreateStorageAnalysisTask', 'GetStorageAnalysisResult', 'GetAutoIncrementUsageStatistic'],
'type' => 'directory',
- 'children' => [
- 'CreateStorageAnalysisTask',
- 'GetStorageAnalysisResult',
- 'GetAutoIncrementUsageStatistic',
- ],
+ 'title' => 'Storage analysis',
],
[
- 'id' => 401048,
- 'title' => null,
+ 'children' => ['GetDeadLockDetailList', 'GetBlockingDetailList', 'CreateLatestDeadLockAnalysis', 'GetDeadLockHistory', 'GetDeadLockDetail', 'GetDeadlockHistogram'],
'type' => 'directory',
- 'children' => [
- 'GetDeadLockDetailList',
- 'GetBlockingDetailList',
- 'CreateLatestDeadLockAnalysis',
- 'GetDeadLockHistory',
- 'GetDeadLockDetail',
- 'GetDeadlockHistogram',
- ],
+ 'title' => 'Locking optimization',
],
[
- 'id' => 401055,
- 'title' => null,
+ 'children' => ['GetInstanceMissingIndexList'],
'type' => 'directory',
- 'children' => [
- 'GetInstanceMissingIndexList',
- ],
+ 'title' => 'Index diagnostics',
],
[
- 'id' => 401057,
- 'title' => null,
+ 'children' => ['DescribeSlowLogHistogramAsync', 'DescribeSlowLogStatistic', 'DescribeSlowLogRecords'],
'type' => 'directory',
- 'children' => [
- 'DescribeSlowLogHistogramAsync',
- 'DescribeSlowLogStatistic',
- 'DescribeSlowLogRecords',
- ],
+ 'title' => 'Slow log',
],
[
- 'id' => 401061,
- 'title' => null,
+ 'children' => ['UpdateAutoThrottleRulesAsync', 'DisableAutoThrottleRules', 'GetAutoThrottleRules'],
'type' => 'directory',
- 'children' => [
- 'UpdateAutoThrottleRulesAsync',
- 'DisableAutoThrottleRules',
- 'GetAutoThrottleRules',
- ],
- ],
- [
- 'id' => 401065,
- 'title' => null,
- 'type' => 'directory',
- 'children' => [
- 'UpdateAutoSqlOptimizeStatus',
- 'GetSqlOptimizeAdvice',
- 'GetInstanceSqlOptimizeStatistic',
- ],
+ 'title' => 'Automatic SQL throttling',
],
[
- 'id' => 401069,
- 'title' => null,
+ 'children' => ['UpdateAutoSqlOptimizeStatus', 'GetSqlOptimizeAdvice', 'GetInstanceSqlOptimizeStatistic'],
'type' => 'directory',
- 'children' => [
- 'UpdateAutoResourceOptimizeRulesAsync',
- 'DisableAutoResourceOptimizeRules',
- 'GetAutoResourceOptimizeRules',
- ],
+ 'title' => 'Automatic SQL optimization',
],
[
- 'id' => 401073,
- 'title' => null,
+ 'children' => ['UpdateAutoResourceOptimizeRulesAsync', 'DisableAutoResourceOptimizeRules', 'GetAutoResourceOptimizeRules'],
'type' => 'directory',
- 'children' => [
- 'ModifyAutoScalingConfig',
- 'DescribeAutoScalingConfig',
- 'DescribeAutoScalingHistory',
- 'DisableInstanceDasConfig',
- ],
+ 'title' => 'Automatic space optimization',
],
[
- 'id' => 401078,
- 'title' => null,
+ 'children' => ['ModifyAutoScalingConfig', 'DescribeAutoScalingConfig', 'DescribeAutoScalingHistory', 'DisableInstanceDasConfig'],
'type' => 'directory',
- 'children' => [
- 'GetPartitionsHeatmap',
- ],
+ 'title' => 'Automatic elastic scaling',
],
[
- 'id' => 401080,
- 'title' => null,
+ 'children' => ['GetPfsSqlSample', 'GetPfsMetricTrends', 'GetPfsSqlSummaries'],
'type' => 'directory',
- 'children' => [
- 'GetPfsSqlSample',
- 'GetPfsMetricTrends',
- 'GetPfsSqlSummaries',
- ],
+ 'title' => 'Performance insight (New version)',
],
[
- 'id' => 401084,
- 'title' => null,
+ 'children' => ['DescribeErrorLogRecords'],
'type' => 'directory',
- 'children' => [
- 'DescribeErrorLogRecords',
- ],
+ 'title' => 'Error log',
],
[
- 'id' => 401086,
- 'title' => null,
+ 'children' => ['Chat', 'GetInstanceGroupInspectReportList', 'GetInstanceGroupInspectReportDetail'],
'type' => 'directory',
- 'children' => [
- 'GetDasAgentSSE',
- 'GetInstanceGroupInspectReportList',
- 'GetInstanceGroupInspectReportDetail',
- ],
+ 'title' => 'DAS Agent',
],
[
- 'id' => 401090,
- 'title' => null,
+ 'children' => ['CreateSecurityIPGroup', 'DescribeSecurityIPGroup', 'DescribeSecurityIPGroupRelation', 'ModifySecurityIPGroup', 'ModifySecurityIPGroupRelation', 'DeleteSecurityIPGroup'],
'type' => 'directory',
- 'children' => [
- 'CreateSecurityIPGroup',
- 'DescribeSecurityIPGroup',
- 'DescribeSecurityIPGroupRelation',
- 'ModifySecurityIPGroup',
- 'ModifySecurityIPGroupRelation',
- 'DeleteSecurityIPGroup',
- ],
+ 'title' => 'Cross-product whitelist',
],
[
- 'id' => 401097,
- 'title' => null,
+ 'children' => ['GetDasAgentSSE', 'GetHDMAliyunResourceSyncResult', 'DescribeSqlLogRecords', 'EnableDasPro', 'DisableDasPro', 'DescribeInstanceDasPro', 'GetDasProServiceUsage', 'RunCloudBenchTask', 'DescribeCloudbenchTask', 'DescribeCloudBenchTasks', 'CreateCloudBenchTasks', 'DescribeCloudbenchTaskConfig', 'DeleteCloudBenchTask', 'DeleteStopGateway', 'GetYaoChiAgent', 'DescribeAuditLogs', 'GetDBInstanceConnectivityDiagnosis', 'GetPartitionsHeatmap'],
'type' => 'directory',
- 'children' => [
- 'GetHDMAliyunResourceSyncResult',
- 'GetEndpointSwitchTask',
- 'GetHDMLastAliyunResourceSyncResult',
- 'DescribeSqlLogRecords',
- 'EnableDasPro',
- 'DisableDasPro',
- 'DescribeInstanceDasPro',
- 'GetDasProServiceUsage',
- 'RunCloudBenchTask',
- 'DescribeCloudbenchTask',
- 'DescribeCloudBenchTasks',
- 'CreateCloudBenchTasks',
- 'DescribeCloudbenchTaskConfig',
- 'DeleteCloudBenchTask',
- 'DeleteStopGateway',
- ],
+ 'title' => 'Others',
],
],
'components' => [
@@ -306,14 +134,8 @@
'apis' => [
'AddHDMInstance' => [
'summary' => 'Adds a database instance to Database Autonomy Service (DAS).',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -321,155 +143,98 @@
],
'operationType' => 'readAndWrite',
'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'create',
- ],
+ 'systemTags' => ['operationType' => 'create'],
'parameters' => [
[
'name' => '__context',
'in' => 'query',
- 'schema' => [
- 'description' => 'The reserved parameter.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'None',
- ],
+ 'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
'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',
- ],
+ 'schema' => ['description' => 'The type of the instance on which the database is deployed. Valid values:'."\n"
+ ."\n"
+ .'- **RDS**: an Alibaba Cloud database instance.'."\n"
+ ."\n"
+ .'- **ECS**: an Elastic Compute Service (ECS) instance on which a self-managed database is deployed.'."\n"
+ ."\n"
+ .'- **IDC**: a self-managed database instance that is not deployed on Alibaba Cloud.'."\n"
+ ."\n"
+ .'> IDC refers to your data center.', 'type' => 'string', 'required' => true, 'example' => 'ECS', 'title' => ''],
],
[
'name' => 'InstanceId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'rm-2ze1jdv45i7l6****',
- ],
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
],
[
'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',
- ],
+ 'schema' => ['description' => 'The endpoint that is used to access the instance over internal networks.', 'type' => 'string', 'required' => false, 'example' => 'rm-2ze1jdv45i7l6****.mysql.rds.aliyuncs.com', 'title' => ''],
],
[
'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',
- ],
+ 'schema' => ['description' => 'The port that is used to access the instance over internal networks.', 'type' => 'string', 'required' => false, 'example' => '3306', 'title' => ''],
],
[
'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',
- ],
+ 'schema' => ['description' => 'The database engine. Valid values:'."\n"
+ ."\n"
+ .'- **MySQL**'."\n"
+ ."\n"
+ .'- **PostgreSQL**'."\n"
+ ."\n"
+ .'- **SQLServer**'."\n"
+ ."\n"
+ .'- **PolarDBMySQL**'."\n"
+ ."\n"
+ .'- **PolarDBPostgreSQL**'."\n"
+ ."\n"
+ .'- **Redis**'."\n"
+ ."\n"
+ .'- **MongoDB**'."\n"
+ ."\n"
+ .'- **PolarDBOracle**'."\n"
+ ."\n"
+ .'- **PolarDBX**', 'type' => 'string', 'required' => false, 'example' => 'MySQL', 'title' => ''],
],
[
'name' => 'Username',
'in' => 'query',
- 'schema' => [
- 'description' => 'The username that is used to log on to the database.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'test****',
- ],
+ 'schema' => ['description' => 'The username that is used to log on to the database.', 'type' => 'string', 'required' => false, 'example' => 'test****', 'title' => ''],
],
[
'name' => 'Password',
'in' => 'query',
- 'schema' => [
- 'description' => 'The password for the username.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '122****',
- ],
+ 'schema' => ['description' => 'The password for the username.', 'type' => 'string', 'required' => false, 'example' => '122****', 'title' => ''],
],
[
'name' => 'InstanceAlias',
'in' => 'query',
- 'schema' => [
- 'description' => 'The name of the instance.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'yuecq--test****',
- ],
+ 'schema' => ['description' => 'The name of the instance.', 'type' => 'string', 'required' => false, 'example' => 'yuecq--test****', 'title' => ''],
],
[
'name' => 'NetworkType',
'in' => 'query',
- 'schema' => [
- 'description' => 'The network type of the instance.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'VPC',
- ],
+ 'schema' => ['description' => 'The network type of the instance.', 'type' => 'string', 'required' => false, 'example' => 'VPC', 'title' => ''],
],
[
'name' => 'VpcId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The virtual private cloud (VPC) ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'vpc-m5e666n89m2bx8jar****',
- ],
+ 'schema' => ['description' => 'The virtual private cloud (VPC) ID.', 'type' => 'string', 'required' => false, 'example' => 'vpc-m5e666n89m2bx8jar****', 'title' => ''],
],
[
'name' => 'Region',
'in' => 'query',
- 'schema' => [
- 'description' => 'The ID of the region in which the instance resides.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cn-hangzhou',
- ],
+ 'schema' => ['description' => 'The ID of the region in which the instance resides.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''],
],
[
'name' => 'FlushAccount',
'in' => 'query',
- 'schema' => [
- 'description' => 'The reserved parameter.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'None',
- ],
+ 'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
],
'responses' => [
@@ -477,140 +242,84 @@
'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',
- ],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Synchro' => ['description' => 'The reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
'Data' => [
- 'description' => 'The detailed information, including the error codes and the number of entries that are returned.'."\n",
+ 'description' => 'The detailed information, including the error codes and the number of entries that are returned.',
'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*****',
- ],
+ 'VpcId' => ['description' => 'The VPC ID.', 'type' => 'string', 'example' => 'vpc-m5e666n89m2bx8jar****', 'title' => ''],
+ 'Token' => ['description' => 'The client token that is used to ensure the idempotence of the request.', 'type' => 'string', 'example' => 'tokenID', 'title' => ''],
+ 'Ip' => ['description' => 'The endpoint of the instance.', 'type' => 'string', 'example' => 'rm-de21209****.mysql.rds.aliyuncs.com', 'title' => ''],
+ 'CallerUid' => ['description' => 'The user ID of the caller.', 'type' => 'string', 'example' => '31063db679****', 'title' => ''],
+ 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
+ 'Port' => ['description' => 'The port number of the instance that you want to access.', 'type' => 'integer', 'format' => 'int32', 'example' => '3306', 'title' => ''],
+ 'OwnerId' => ['description' => 'The ID of the instance owner.', 'type' => 'string', 'example' => '325352345', 'title' => ''],
+ 'Uuid' => ['description' => 'The unique identifier of the instance.', 'type' => 'string', 'example' => 'hdm_3063db6792965c080a4bcb6e6304****', 'title' => ''],
+ 'Error' => ['description' => 'The error message returned if the request failed.', 'type' => 'string', 'example' => 'InvalidRequestURL', 'title' => ''],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
+ 'Role' => ['description' => 'The role of the current API caller.', 'type' => 'string', 'example' => 'master', 'title' => ''],
+ 'TenantId' => ['description' => 'The tenant ID.', 'type' => 'string', 'example' => 'L0EPfLS****=SCE00000*****', 'title' => ''],
],
+ 'title' => '',
+ '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**: The request was successful.'."\n"
- .'* **false**: The request failed.'."\n",
- 'type' => 'string',
- 'example' => 'true',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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":""}]',
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
'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',
+ .'- 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"
+ ."\n"
+ .'- If you use an SDK to call DAS, you must set the region to cn-shanghai.',
+ 'changeSet' => [],
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'hdm:AddHDMInstance',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- 'schemes' => [
- 'http',
- 'https',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'AddHDMInstance'],
+ ],
],
+ ],
+ 'Chat' => [
+ 'summary' => 'An asynchronous API to access the large language model capabilities of DAS.',
+ 'path' => '/chat',
+ 'methods' => ['post'],
+ 'schemes' => ['https', 'sse'],
'security' => [
[
'AK' => [],
@@ -620,113 +329,143 @@
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
- 'abilityTreeCode' => '24190',
- 'abilityTreeNodes' => [
- 'FEATUREhdmB8MM4L',
- ],
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => ['FEATUREhdmB8MM4L', 'FEATUREhdmROFBLE', 'FEATUREhdm1XKIXR', 'FEATUREhdmR88NLD', 'FEATUREhdm3TU4OK'],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'tenant',
],
'parameters' => [
[
- 'name' => 'Engine',
+ 'name' => 'Message',
'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',
- ],
+ 'schema' => ['description' => 'The message object.', 'type' => 'string', 'required' => true, 'example' => '{"id":"68fe0321-37fe-4c75-a118-b61b33156f6a","role":"user","content":[{"type":"text","text":"hello"}]}', 'title' => ''],
],
[
- 'name' => 'StartTime',
+ 'name' => 'SessionId',
'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',
- ],
+ 'schema' => ['description' => 'Optional. The session ID, which must be a UUID. If unspecified, a new session is created. To maintain conversational context, use the same session ID for all subsequent requests.', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-xxxxxxxxxxxx', 'title' => ''],
],
[
- 'name' => 'EndTime',
+ 'name' => 'AgentId',
'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',
- ],
+ 'schema' => ['description' => 'Optional. The agent ID. You can use the ID of an agent that is automatically generated when you enable DAS Agent, or the ID of a custom agent. If this parameter is omitted, the default agent is used.', 'type' => 'string', 'required' => false, 'example' => 'ag-472T0DxtmjIxxxxx', 'title' => ''],
],
[
- 'name' => 'PageNo',
+ 'name' => 'Summary',
'in' => 'query',
+ 'schema' => ['description' => 'Specifies whether to return summary information.', 'type' => 'string', 'required' => false, 'example' => 'false', 'title' => ''],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => 'The page number. The value must be a positive integer. Default value: 1.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => '1',
+ 'type' => 'object',
+ 'properties' => [
+ 'Type' => ['description' => 'The event type.', 'type' => 'string', 'example' => 'TEXT_MESSAGE_CONTENT', 'title' => ''],
+ 'MessageId' => ['description' => 'The message ID.', 'type' => 'string', 'example' => '61820b594664275c4429****', 'title' => ''],
+ 'Role' => ['description' => 'The role in the conversation.', 'type' => 'string', 'example' => 'assistant', 'title' => ''],
+ 'Delta' => ['description' => 'The incremental content of the response.', 'type' => 'string', 'example' => 'hello', 'title' => ''],
+ 'ActivityType' => ['description' => 'Indicates the current activity status of the agent.', 'type' => 'string', 'example' => 'waiting_for_agent_thinking', 'title' => ''],
+ 'ToolCallId' => ['description' => 'The tool call ID.', 'type' => 'string', 'example' => 'call_edf9cdb69e0e4c9796a6a5a6', 'title' => ''],
+ 'ToolCallName' => ['description' => 'The name of the tool.', 'type' => 'string', 'example' => 'das_api', 'title' => ''],
+ 'Content' => ['description' => 'The content of the response.', 'type' => 'string', 'example' => 'I see you have several PolarDB instances, and I will query them for you shortly', 'title' => ''],
+ 'ParentMessageId' => ['description' => 'The ID of the parent message.', 'type' => 'string', 'example' => '76bee207-31ee-4707-8851-6b9d4da033aa', 'title' => ''],
+ 'ThreadId' => ['description' => 'The thread ID.', 'type' => 'string', 'example' => '8e481be1-21d5-4a92-a2fb-fb54be0ab4f6', 'title' => ''],
+ 'StepName' => ['description' => 'The name of the execution step.', 'type' => 'string', 'example' => 'sub_agent_performance_diagnose_mysql', 'title' => ''],
+ 'RunId' => ['description' => 'The run ID.', 'type' => 'string', 'example' => 'ed7cb7b1-ddc8-45d7-9ff3-b315726cb5f7', 'title' => ''],
+ 'TaskTrackerId' => ['description' => 'The identifier of the callback tool.', 'type' => 'string', 'example' => 'das_api', 'title' => ''],
+ 'Name' => ['description' => 'The key for the additional information.', 'type' => 'string', 'example' => 'summary', 'title' => ''],
+ 'Value' => ['description' => 'The value of the additional information.', 'type' => 'any', 'example' => '{"CharCount":393,"End":1777428785996,"RequestId":"BE59AED5-D831-5811-BBAD-590B917B2089","SessionId":"123e4567-e89b-12d3-a456-xxxxxxxxxxxx","Start":1777428707927}', 'title' => ''],
+ ],
+ 'title' => '',
+ 'description' => 'Schema of Response',
+ 'example' => '',
],
],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
+ ],
+ 403 => [
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
+ ],
[
- 'name' => 'PageSize',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The number of entries per page. Default value: 10.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => '10',
+ ['errorCode' => 'InstanceNotFound', 'errorMessage' => 'Requested instance not found.', 'description' => 'The corresponding instance ID cannot be found.'],
+ ],
+ 500 => [
+ ['errorCode' => 'Timeout', 'errorMessage' => 'The request processing has failed due to timeout.', 'description' => 'Request processing failed due to timeout.'],
+ ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Chat',
+ 'description' => 'Prerequisites:'."\n"
+ ."\n"
+ .'- Use the latest version of the Alibaba Cloud SDK or the DAS SDK.'."\n"
+ ."\n"
+ .'- When you use an SDK to call the DAS service, you must specify the region as cn-shanghai.'."\n"
+ ."\n"
+ .'- You can create offline tasks only for database instances that have DAS Enterprise Edition enabled. For information about the databases and regions that are supported by different versions of DAS Enterprise Edition, see [DAS product editions and features](~~156204~~).'."\n"
+ ."\n"
+ .'For more information about using the Chat API with DAS Agent, see [Best practices for DAS Agent interaction (integrating with the Chat API)](https://help.aliyun.com/zh/das/developer-reference/chat-api-best-practice).',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:Chat',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Type\\": \\"TEXT_MESSAGE_CONTENT\\",\\n \\"MessageId\\": \\"61820b594664275c4429****\\",\\n \\"Role\\": \\"assistant\\",\\n \\"Delta\\": \\"hello\\",\\n \\"ActivityType\\": \\"waiting_for_agent_thinking\\",\\n \\"ToolCallId\\": \\"call_edf9cdb69e0e4c9796a6a5a6\\",\\n \\"ToolCallName\\": \\"das_api\\",\\n \\"Content\\": \\"I see you have several PolarDB instances, and I will query them for you shortly\\",\\n \\"ParentMessageId\\": \\"76bee207-31ee-4707-8851-6b9d4da033aa\\",\\n \\"ThreadId\\": \\"8e481be1-21d5-4a92-a2fb-fb54be0ab4f6\\",\\n \\"StepName\\": \\"sub_agent_performance_diagnose_mysql\\",\\n \\"RunId\\": \\"ed7cb7b1-ddc8-45d7-9ff3-b315726cb5f7\\",\\n \\"TaskTrackerId\\": \\"das_api\\",\\n \\"Name\\": \\"summary\\",\\n \\"Value\\": \\"{\\\\\\"CharCount\\\\\\":393,\\\\\\"End\\\\\\":1777428785996,\\\\\\"RequestId\\\\\\":\\\\\\"BE59AED5-D831-5811-BBAD-590B917B2089\\\\\\",\\\\\\"SessionId\\\\\\":\\\\\\"123e4567-e89b-12d3-a456-xxxxxxxxxxxx\\\\\\",\\\\\\"Start\\\\\\":1777428707927}\\"\\n}","type":"json"}]',
+ ],
+ 'CreateCacheAnalysisJob' => [
+ 'summary' => 'Creates a cache analysis task.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => ['operationType' => 'create'],
+ 'parameters' => [
[
- 'name' => 'InstanceArea',
+ 'name' => 'InstanceId',
'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',
- ],
+ 'schema' => ['description' => 'The ID of the ApsaraDB for Redis instance.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'r-bp18ff4a195d****', 'title' => ''],
],
[
- 'name' => 'SearchMap',
+ 'name' => 'NodeId',
'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****"}',
- ],
+ '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', 'title' => ''],
],
[
- 'name' => 'ResourceGroupId',
+ 'name' => 'BackupSetId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The resource group ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'rg-aek2eil6npi****',
- ],
+ '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"
+ ."\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', 'title' => ''],
+ ],
+ [
+ '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: `: ; , _ - + @ = | #`', 'type' => 'string', 'required' => false, 'example' => '&', 'title' => ''],
],
],
'responses' => [
@@ -734,1009 +473,638 @@
'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****',
- ],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
'Data' => [
- 'description' => 'The details.'."\n",
+ 'description' => 'The detailed information.',
'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",
+ 'TaskState' => ['description' => 'The state of the cache analysis task. Valid values:'."\n"
+ ."\n"
+ .'- **BACKUP**: The data is being backed up.'."\n"
+ ."\n"
+ .'- **ANALYZING**: The data is being analyzed.'."\n"
+ ."\n"
+ .'- **FINISHED**: The data is analyzed.'."\n"
+ ."\n"
+ .'- **FAILED**: An error occurred.', 'type' => 'string', 'example' => 'BACKUP', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'sf79-sd99-sa37-****', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'BigKeys' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'KeyInfo' => [
+ 'description' => 'The number of elements in the key.',
+ 'title' => '',
+ 'type' => 'array',
+ 'items' => [
'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',
- ],
+ 'Type' => ['description' => 'The data type of the ApsaraDB for Redis instance.', 'type' => 'string', 'example' => 'hash', 'title' => ''],
+ 'Db' => ['description' => 'The name of the database.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ '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', 'title' => ''],
+ 'Key' => ['description' => 'The name of the key.', 'type' => 'string', 'example' => 'task_x****', 'title' => ''],
+ 'Encoding' => ['description' => 'The data type of the key.', 'type' => 'string', 'example' => 'hashtable', 'title' => ''],
+ 'Bytes' => ['description' => 'The number of bytes that are occupied by the key.', 'type' => 'integer', 'format' => 'int64', 'example' => '12345', 'title' => ''],
+ 'NodeId' => ['description' => 'The ID of the data node on the instance.', 'type' => 'string', 'example' => 'r-x****-db-0', 'title' => ''],
+ 'Count' => ['description' => 'The number of elements in the key.', 'type' => 'integer', 'format' => 'int64', 'example' => '127', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'example' => '',
],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'r-bp18ff4a195d****', 'title' => ''],
+ 'NodeId' => ['description' => 'The ID of the data node on the instance.', 'type' => 'string', 'example' => 'r-x****-db-0', 'title' => ''],
],
+ 'title' => '',
+ '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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ 'title' => 'CreateCacheAnalysisJob',
+ 'description' => 'Before you call this operation, take note of the following items:'."\n"
."\n"
- .'Before you call this operation, take note of the following items:'."\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"
- .'* 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',
+ .'- If you use an SDK to call the API operations of DAS, you must set the region ID to cn-shanghai.'."\n"
+ ."\n"
+ .'- Analyzes the data structures of ApsaraDB for Redis and the following self-developed Tair data structures: TairString, TairHash, TairGIS, TairBloom, TairDoc, TairCpc, and TairZset. Other self-developed Tair data structures are not supported.'."\n"
+ ."\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"
+ ."\n"
+ .'- Tair ESSD/SSD-based instances are not supported.',
+ 'changeSet' => [],
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'hdm:CreateCacheAnalysisJob',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- 'schemes' => [
- 'http',
- 'https',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateCacheAnalysisJob'],
+ ],
],
+ ],
+ 'CreateCloudBenchTasks' => [
+ 'summary' => 'You can call the CreateCloudBenchTasks operation to create a stress testing task.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
- 'systemTags' => [
- 'operationType' => 'update',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREhdmETIPZF',
- ],
- ],
+ 'systemTags' => ['operationType' => 'create'],
'parameters' => [
[
- 'name' => 'InstanceId',
+ 'name' => 'TaskType',
'in' => 'query',
- 'schema' => [
- 'title' => '实例ID',
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-2ze8g2am97624****',
- ],
+ 'schema' => ['description' => 'The type of stress testing task. Valid values:'."\n"
+ ."\n"
+ .'- **pressure test** (default): Intelligent stress testing, which replays the traffic captured from the source instance on the target instance at the maximum speed supported by the target instance type.'."\n"
+ ."\n"
+ .'- **smart pressure test**: Generated stress testing, which analyzes and learns from the traffic captured from the source instance in a short period of time, generates traffic that is consistent with the business model and traffic distribution of the original traffic for continuous stress testing, reduces the time for collecting data from the source instance, and reduces storage costs and performance overhead.', 'type' => 'string', 'required' => true, 'example' => 'pressure test', 'title' => ''],
],
[
- 'name' => 'EventContext',
+ 'name' => 'SrcInstanceId',
'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',
- ],
+ 'schema' => ['description' => 'The ID of the source instance. Only RDS MySQL and PolarDB MySQL instances are supported. You can call the [GetInstanceInspections](~~202857~~) operation to obtain the ID.'."\n"
+ ."\n"
+ .'> This parameter is required when **DstType** is set to **Instance**.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
],
[
- 'name' => 'Lang',
+ 'name' => 'Description',
'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',
- ],
+ 'allowEmptyValue' => false,
+ 'schema' => ['description' => 'The description of the stress testing task.', 'type' => 'string', 'required' => true, 'example' => 'test-das-bench-0501', 'title' => ''],
],
[
- 'name' => 'MinInterval',
+ 'name' => 'SrcPublicIp',
'in' => 'query',
- 'schema' => [
- 'title' => '通知最小间隔',
- 'description' => 'The minimum interval between consecutive event notifications. Unit: seconds.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '60',
- ],
+ 'schema' => ['description' => 'Reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
- 'name' => 'ContactName',
+ 'name' => 'DstInstanceId',
'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',
- ],
+ 'schema' => ['description' => 'The ID of the target instance. Only RDS MySQL and PolarDB MySQL instances are supported. You can call the [GetInstanceInspections](~~202857~~) operation to obtain the ID.'."\n"
+ ."\n"
+ .'> This parameter is required when **DstType** is set to **Instance**.', 'type' => 'string', 'required' => false, 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
],
[
- 'name' => 'ChannelType',
+ 'name' => 'GatewayVpcId',
'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',
- ],
+ 'schema' => ['description' => 'The virtual private cloud (VPC) ID of the Database Gateway.'."\n"
+ ."\n"
+ .'> This parameter is required when **ClientType** is set to **ECS**.', 'type' => 'string', 'required' => false, 'example' => 'vpc-t4nsnwvpbc1h76ja4****', 'title' => ''],
],
[
- 'name' => 'ContactGroupName',
+ 'name' => 'GatewayVpcIp',
'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',
- ],
+ 'schema' => ['description' => 'The IP address or domain name of the Database Gateway.'."\n"
+ ."\n"
+ .'> This parameter is required when **ClientType** is set to **ECS**.', 'type' => 'string', 'required' => false, 'example' => '172.30.XX.XX', 'title' => ''],
],
[
- 'name' => 'Level',
+ 'name' => 'ClientType',
'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',
- ],
+ 'schema' => ['description' => 'The type of stress testing machine. Valid values:'."\n"
+ ."\n"
+ .'- **ECS**: You need to prepare a [Database Gateway](~~64905~~) yourself.'."\n"
+ ."\n"
+ .'- **DAS\\_ECS**: An ECS instance that is automatically purchased and deployed by DAS.', 'type' => 'string', 'required' => true, 'example' => 'ECS', 'title' => ''],
],
[
- 'name' => 'Active',
+ 'name' => 'RequestStartTime',
'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',
- ],
+ 'schema' => ['description' => 'The start time of the stress testing task. The time is in the UNIX timestamp format. Unit: milliseconds.', 'type' => 'string', 'required' => false, 'example' => '1608888296000', 'title' => ''],
],
[
- 'name' => 'Severity',
+ 'name' => 'RequestEndTime',
'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"}',
- ],
+ 'schema' => ['description' => 'The end time of the stress testing task. The time is in the UNIX timestamp format. Unit: milliseconds.', 'type' => 'string', 'required' => false, 'example' => '1608888296001', 'title' => ''],
],
[
- 'name' => 'DispatchRule',
+ 'name' => 'RequestDuration',
'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"}}',
- ],
+ 'schema' => ['description' => 'The duration of the stress testing task. Unit: milliseconds.', 'type' => 'string', 'required' => false, 'example' => '86400000', 'title' => ''],
+ ],
+ [
+ 'name' => 'Rate',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The replay speed of the source instance traffic on the target instance. The replay speed must be a positive integer. Valid values: **1** to **30**. Default value: **1**.', 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''],
+ ],
+ [
+ 'name' => 'SmartPressureTime',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The duration of the generated stress testing. Unit: milliseconds.'."\n"
+ ."\n"
+ .'> This parameter is required when **TaskType** is set to **smart pressure test**.', 'type' => 'string', 'required' => false, 'example' => '86400000', 'title' => ''],
+ ],
+ [
+ 'name' => 'DtsJobClass',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The specification of the DTS migration task. You can call the [DescribeCloudbenchTask](~~230669~~) operation to obtain the specification.'."\n"
+ ."\n"
+ .'> The stress testing task needs to migrate the baseline data from the source instance to the target instance. This parameter is required when you create a new DTS task.', 'type' => 'string', 'required' => false, 'example' => 'medium', 'title' => ''],
+ ],
+ [
+ 'name' => 'DtsJobId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The ID of the DTS migration task. You can call the [ConfigureDtsJob](~~208399~~) operation to obtain the ID.'."\n"
+ ."\n"
+ .'> This parameter is required when a DTS task has been created in the DTS console.', 'type' => 'string', 'required' => false, 'example' => '23127', 'title' => ''],
+ ],
+ [
+ 'name' => 'SrcSuperAccount',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The privileged account of the source instance. Value: **admin**.'."\n"
+ ."\n"
+ .'> This parameter is required when **DstType** is set to **Instance**.', 'type' => 'string', 'required' => false, 'example' => 'admin', 'title' => ''],
+ ],
+ [
+ 'name' => 'SrcSuperPassword',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The password of the privileged account of the source instance.'."\n"
+ ."\n"
+ .'> This parameter is required when **DstType** is set to **Instance**.', 'type' => 'string', 'required' => false, 'example' => 'test123', 'title' => ''],
+ ],
+ [
+ 'name' => 'DstSuperAccount',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The privileged account of the target instance.', 'type' => 'string', 'required' => false, 'example' => 'root', 'title' => ''],
+ ],
+ [
+ 'name' => 'DstSuperPassword',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The password of the privileged account of the target instance.', 'type' => 'string', 'required' => false, 'example' => 'test123', 'title' => ''],
+ ],
+ [
+ 'name' => 'DstType',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The type of the target instance. Valid values:'."\n"
+ ."\n"
+ .'- **Instance** (default): instance ID.'."\n"
+ ."\n"
+ .'- **ConnectionString**: connection address of the instance.', 'type' => 'string', 'required' => false, 'example' => 'Instance', 'title' => ''],
+ ],
+ [
+ 'name' => 'DstConnectionString',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The connection address of the target instance. Only RDS MySQL and PolarDB MySQL instances are supported.'."\n"
+ ."\n"
+ .'> This parameter takes effect when **DstType** is set to **ConnectionString**.', 'type' => 'string', 'required' => false, 'example' => 'rm-de21209****.mysql.rds.aliyuncs.com', 'title' => ''],
+ ],
+ [
+ 'name' => 'DstPort',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The port of the target instance.'."\n"
+ ."\n"
+ .'> This parameter takes effect when **DstType** is set to **ConnectionString**.', 'type' => 'string', 'required' => false, 'example' => '3306', 'title' => ''],
+ ],
+ [
+ 'name' => 'WorkDir',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The temporary directory generated by the stress testing.', 'type' => 'string', 'required' => false, 'example' => '/tmp/bench/', 'title' => ''],
+ ],
+ [
+ 'name' => 'BackupId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The ID of the backup set. You can call the [DescribeBackups](~~26273~~) operation to query the backup list and obtain the ID.', 'type' => 'string', 'required' => false, 'example' => '229132', 'title' => ''],
+ ],
+ [
+ 'name' => 'BackupTime',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The time of the backup. Format: yyyy-MM-ddTHH:mm:ssZ (UTC time).', 'type' => 'string', 'required' => false, 'example' => '2021-04-23T13:22:14Z', 'title' => ''],
+ ],
+ [
+ 'name' => 'Amount',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The total number of stress testing tasks to create. Valid values: **0** to **30**. Default value: **1**.', 'type' => 'string', 'required' => false, 'default' => '1', 'example' => '1', 'title' => ''],
+ ],
+ [
+ 'name' => 'EndState',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The status after the stress testing task ends. Valid values:'."\n"
+ ."\n"
+ .'- **WAIT\\_TARGET**: Prepare the target instance for stress testing.'."\n"
+ ."\n"
+ .'- **WAIT\\_DBGATEWAY**: Prepare the stress testing deployment.'."\n"
+ ."\n"
+ .'- **WAIT\\_SQL**: Prepare the full SQL statements.'."\n"
+ ."\n"
+ .'- **WAIT\\_LOGIC**: Prepare to start replaying the traffic.'."\n"
+ ."\n"
+ .'> When the stress testing task completes the status set by EndState, the task directly reaches the completed status.', 'type' => 'string', 'required' => false, 'example' => 'WAIT_TARGET', 'title' => ''],
],
],
'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',
- ],
+ 'Code' => ['description' => 'The returned status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The returned message.'."\n"
+ ."\n"
+ .'> When the request is successful, **Successful** is returned. When the request fails, exception information such as an error code is returned.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'Data' => [
- 'description' => 'The detailed information.'."\n",
'type' => 'object',
+ 'itemNode' => true,
'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',
+ 'taskIds' => [
+ 'itemNode' => true,
+ 'description' => 'The list of details.',
+ 'title' => '',
+ 'type' => 'array',
+ 'items' => ['description' => 'The list of details, including the total number of information items, error codes, and other information.', 'type' => 'string', 'example' => '"Data": { "total": 1, "list":[...] }, "Code": 200, "Success": true }', 'title' => ''],
+ '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' => '',
+ 'title' => '',
+ 'example' => '',
],
],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'title' => 'CreateCloudBenchTasks',
+ 'description' => 'Database Autonomy Service (DAS) provides intelligent stress testing to help you verify whether your instance type needs to be scaled out to effectively handle service traffic peaks. For more information, see [Intelligent stress testing](~~155068~~). The database must meet the following prerequisites:'."\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",
+ .'- The source database only supports RDS MySQL High Availability Edition or RDS Enterprise Edition, and PolarDB MySQL cluster edition.'."\n"
+ ."\n"
+ .'- The target database instance is RDS MySQL or PolarDB MySQL.'."\n"
+ ."\n"
+ .'- The instance is connected to DAS. For more information, see [Connect to Alibaba Cloud database instances](~~65405~~).'."\n"
+ ."\n"
+ .'- DAS Enterprise Edition must be enabled. For more information, see [DAS Enterprise Edition](~~190912~~).',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateCloudBenchTasks'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'hdm:CreateCloudBenchTasks',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
],
- 'GetEventSubscription' => [
- 'summary' => 'Queries the event subscription settings of a database instance.',
- 'methods' => [
- 'post',
- 'get',
+ 'CreateDiagnosticReport' => [
+ 'summary' => 'Creates a diagnostic report.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
],
- 'schemes' => [
- 'http',
- 'https',
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => ['operationType' => 'create'],
+ 'parameters' => [
+ [
+ 'name' => 'DBInstanceId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
+ ],
+ [
+ '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.', 'type' => 'string', 'required' => true, 'example' => '1596177993000', 'title' => ''],
+ ],
+ [
+ '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.', 'type' => 'string', 'required' => true, 'example' => '1596177993001', 'title' => ''],
+ ],
],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'ac544623-f6ad-45fd-9a74-9be3db65****', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'Data' => ['description' => 'The data returned.', 'type' => 'string', 'example' => '70af71852fcdf2c5dc7b90596e2cf05b', 'title' => ''],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
+ ],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
+ ],
+ 403 => [
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
+ ],
+ ],
+ '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"
+ ."\n"
+ .' - PolarDB for MySQL'."\n"
+ ."\n"
+ .' - Redis',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateDiagnosticReport'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'hdm:CreateDiagnosticReport',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"ac544623-f6ad-45fd-9a74-9be3db65****\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": \\"70af71852fcdf2c5dc7b90596e2cf05b\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]',
+ ],
+ 'CreateKillInstanceSessionTask' => [
+ 'summary' => 'Creates a task that terminates sessions.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
- 'systemTags' => [
- 'operationType' => 'get',
- ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => ['operationType' => 'create'],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'query',
- 'schema' => [
- 'title' => '实例ID。',
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-2ze8g2am97624****'."\n",
- ],
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
+ ],
+ [
+ '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.', 'type' => 'string', 'required' => false, 'example' => 'pi-bp1v203xzzh0a****', 'title' => ''],
+ ],
+ [
+ 'name' => 'DbUser',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The database account that has the permissions to terminate sessions.', 'type' => 'string', 'required' => true, 'example' => 'testUser', 'title' => ''],
+ ],
+ [
+ 'name' => 'DbUserPassword',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The password of the database account.', 'type' => 'string', 'required' => true, 'example' => 'testPassword', 'title' => ''],
+ ],
+ [
+ '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\'].', 'type' => 'string', 'required' => false, 'example' => '[\'db_user1\',\'db_user2\']', 'title' => ''],
+ ],
+ [
+ 'name' => 'KillAllSessions',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Specifies whether to terminate all sessions.'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\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.', 'type' => 'boolean', 'required' => true, 'example' => 'true', 'title' => ''],
+ ],
+ [
+ '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.', 'type' => 'string', 'required' => false, 'example' => '[10805639,10805623,10805645,10805553,10805566,10805616]', 'title' => ''],
],
],
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ '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\\*\\*\\*\\*"].', 'type' => 'string', 'example' => 'f77d535b45405bd462b21caa3ee8****', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": \\"f77d535b45405bd462b21caa3ee8****\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": true\\n}","type":"json"}]',
+ 'title' => 'CreateKillInstanceSessionTask',
+ 'description' => '- This operation is applicable only to ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters.'."\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',
+ .'- 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.',
+ 'changeSet' => [],
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'hdm:CreateKillInstanceSessionTask',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- 'schemes' => [
- 'http',
- 'https',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateKillInstanceSessionTask'],
+ ],
],
+ ],
+ 'CreateLatestDeadLockAnalysis' => [
+ 'summary' => 'Triggers an on-demand analysis of the most recent deadlock event captured by the database instance.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
+ 'operationType' => 'write',
+ 'deprecated' => false,
'systemTags' => [
- 'operationType' => 'get',
+ 'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '23868',
- 'abilityTreeNodes' => [
- 'FEATUREhdmETIPZF',
- ],
+ 'abilityTreeNodes' => ['FEATUREhdm7GLEEO'],
],
'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****',
- ],
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The ID of the database instance.', 'type' => 'string', 'required' => true, 'example' => 'pc-bp1u5mas9exx7****', 'title' => ''],
],
[
- '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****',
- ],
+ 'name' => 'NodeId',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The node ID.'."\n"
+ ."\n"
+ .'> Required for PolarDB for MySQL clusters.', 'type' => 'string', 'required' => false, 'example' => 'pi-bp16v3824rt73****', 'title' => ''],
],
],
'responses' => [
@@ -1744,204 +1112,375 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'The HTTP status code returned.'."\n",
- 'type' => 'string',
- 'example' => '200',
+ 'Code' => ['description' => 'The returned status code.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The message returned.'."\n"
+ ."\n"
+ .'> - When the request is successful, **Successful** is returned.'."\n"
+ .'>'."\n"
+ .'> - When the request fails, error information (such as error codes) is returned.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The ID of the API request.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => [
+ 'description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.',
+ 'enumValueTitles' => ['执行成功' => 'true', '执行失败' => 'false'],
+ 'type' => 'boolean',
+ 'example' => 'true',
+ 'title' => '',
],
'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"
+ 'description' => 'Indicates whether the task is created. Valid values:'."\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"
+ .'- **true**: The task is created.'."\n"
."\n"
- .'* **true**'."\n"
- .'* **false**'."\n",
- 'type' => 'string',
+ .'- **false**: The task fails to be created.',
+ 'enumValueTitles' => ['执行成功' => 'true', '执行失败' => 'false'],
+ 'type' => 'boolean',
'example' => 'true',
+ 'title' => '',
],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'title' => 'CreateLatestDeadLockAnalysis',
+ 'description' => 'Creates a recent deadlock analysis task. Database Autonomy Service (DAS) analyzes the most recent deadlock logs in the results returned by the `SHOW ENGINE INNODB STATUS` statement. If multiple deadlocks occur, DAS analyzes only the most recent one. For more information, see [Recent deadlock analysis](~~2858236~~).'."\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"
+ .'### Prerequisites'."\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',
+ .'Before you call this operation, make sure that the following requirements are met:'."\n"
+ ."\n"
+ .'- **Supported engines**: ApsaraDB RDS for MySQL, PolarDB for MySQL, PolarDB-X 2.0, or a self-managed MySQL database.'."\n"
+ ."\n"
+ .'- **SDK version**: Use the latest version of the Alibaba Cloud SDK.'."\n"
+ ."\n"
+ .'- **Region**: If you call the API via the SDK, set the region ID to cn-shanghai.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateLatestDeadLockAnalysis'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'hdm:CreateLatestDeadLockAnalysis',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ '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"}]',
+ ],
+ 'CreateQueryOptimizeTag' => [
+ 'summary' => 'Adds a tag to a SQL template.',
+ 'methods' => ['post'],
+ 'schemes' => ['https', 'http'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
- 'systemTags' => [
- 'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '23871',
- 'abilityTreeNodes' => [
- 'FEATUREhdm56JBRC',
- ],
- ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => ['operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free'],
'parameters' => [
[
- 'name' => '__context',
+ 'name' => 'Engine',
'in' => 'query',
- 'schema' => [
- 'description' => 'The reserved parameter.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'None',
- ],
+ 'schema' => ['description' => 'The database engine. Valid values:'."\n"
+ ."\n"
+ .'- **MySQL**: ApsaraDB RDS for MySQL'."\n"
+ ."\n"
+ .'- **PolarDBMySQL**: PolarDB for MySQL'."\n"
+ ."\n"
+ .'- **PostgreSQL**: ApsaraDB RDS for PostgreSQL', 'type' => 'string', 'required' => true, 'example' => 'MySQL', 'title' => ''],
],
[
- 'name' => 'InstanceId',
+ 'name' => 'SqlIds',
'in' => 'query',
- 'schema' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'rm-18ff4a195d****',
- ],
+ '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 (,).', 'type' => 'string', 'required' => true, 'example' => '6068ce044e3dc9b903979672fb0b69df,d12515c015fc9f41a0778a9e1de0****', 'title' => ''],
],
[
- 'name' => 'StartTime',
+ 'name' => 'Tags',
'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",
+ 'description' => 'The SQL tags. Separate multiple SQL tags with commas (,). Valid values:'."\n"
+ ."\n"
+ .'- **DAS\\_IMPORTANT**: The SQL template is important.'."\n"
+ ."\n"
+ .'- **DAS\\_NOT\\_IMPORTANT**: The SQL template is unimportant.'."\n"
+ ."\n"
+ .'- **USER\\_IGNORE**: The scheduling of the SQL template does not need to be optimized.'."\n"
+ ."\n"
+ .'- **DAS\\_IN\\_PLAN**: The scheduling of the SQL template needs to be optimized.',
+ 'enumValueTitles' => [],
'type' => 'string',
'required' => true,
- 'example' => '1568269711000',
+ 'example' => 'DAS_IN_PLAN,DAS_NOT_IMPORTANT',
+ 'title' => '',
],
],
[
- 'name' => 'EndTime',
+ '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"
+ ."\n"
+ .'- **1**: adds the tags specified by **Tags** to the SQL templates that are specified by **SqlIds**.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '1', 'title' => ''],
+ ],
+ [
+ 'name' => 'Comments',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The remarks.'."\n"
+ ."\n"
+ .'The remarks can be 1 to 300 characters in length.', 'type' => 'string', 'example' => 'Slow SQL from offline synchronization. No optimization needed.', 'required' => false, 'title' => ''],
+ ],
+ [
+ 'name' => 'InstanceId',
'in' => 'query',
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
'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',
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
+ 'Data' => ['title' => 'Boolean', 'description' => 'Indicates whether the tags were added to the SQL templates.'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true'],
+ ],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
+ ],
+ 403 => [
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
+ ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ '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' => '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"
+ ."\n"
+ .' - PolarDB for MySQL'."\n"
+ ."\n"
+ .' - ApsaraDB RDS for PostgreSQL',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateQueryOptimizeTag'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'hdm:CreateQueryOptimizeTag',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ ],
+ 'translator' => 'manual',
+ ],
+ '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.', 'type' => 'string', 'required' => true, 'example' => 'rm-0iwhhl8gx0ld6****', 'title' => ''],
+ ],
[
'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',
- ],
+ '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.', 'type' => 'string', 'required' => false, 'example' => '202****', 'title' => ''],
],
[
- 'name' => 'EventContext',
+ 'name' => 'Database',
'in' => 'query',
- 'schema' => [
- 'description' => 'The reserved parameter.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'None',
- ],
+ 'schema' => ['description' => 'The name of the database.', 'type' => 'string', 'required' => true, 'example' => 'das', 'title' => ''],
],
[
- 'name' => 'Level',
+ 'name' => 'Sql',
'in' => 'query',
+ 'schema' => ['description' => 'The SQL statement that you want to diagnose.', 'type' => 'string', 'required' => true, 'example' => 'select * from test where name = \'mockUser\'', 'title' => ''],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
'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',
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => '61820b594664275c4429****', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '800FBAF5-A539-5B97-A09E-C63AB2F7****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
+ ],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
+ ],
+ 403 => [
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
+ ],
+ ],
+ '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"
+ ."\n"
+ .' - ApsaraDB RDS for PostgreSQL'."\n"
+ ."\n"
+ .' - ApsaraDB RDS for SQL Server'."\n"
+ ."\n"
+ .' - PolarDB for MySQL'."\n"
+ ."\n"
+ .' - PolarDB for PostgreSQL (compatible with Oracle)'."\n"
+ ."\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~~).',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateRequestDiagnosis'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'hdm:CreateRequestDiagnosis',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": \\"61820b594664275c4429****\\",\\n \\"RequestId\\": \\"800FBAF5-A539-5B97-A09E-C63AB2F7****\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]',
+ ],
+ 'CreateSecurityIPGroup' => [
+ 'summary' => 'Creates a whitelist template that can be used across multiple products.',
+ 'path' => '',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
+ 'security' => [
[
- 'name' => 'MinLevel',
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '247410',
+ 'abilityTreeNodes' => ['FEATUREhdmQULC0I'],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RegionName',
'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',
- ],
+ 'allowEmptyValue' => false,
+ 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing', 'title' => ''],
],
[
- 'name' => 'PageOffset',
+ 'name' => 'GlobalIgName',
'in' => 'query',
- 'schema' => [
- 'description' => 'The page number. The value must be a positive integer. Default value: 1.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '1',
- ],
+ 'schema' => ['description' => 'The name of the IP address whitelist template. The name must meet the following requirements:'."\n"
+ ."\n"
+ .'- Consists of lowercase letters, digits, and underscores (\\_).'."\n"
+ ."\n"
+ .'- Starts with a letter and ends with a letter or a digit.'."\n"
+ ."\n"
+ .'- Is 2 to 120 characters in length.', 'type' => 'string', 'required' => true, 'example' => 'test_123', 'title' => ''],
],
[
- 'name' => 'PageSize',
+ 'name' => 'GIpList',
'in' => 'query',
- 'schema' => [
- 'description' => 'The number of entries per page.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '30',
- ],
+ 'schema' => ['description' => 'The IP addresses in the whitelist template.'."\n"
+ ."\n"
+ .'> Separate multiple IP addresses with commas (,). The IP addresses cannot be repeated. You can add up to 1,000 IP addresses.', 'type' => 'string', 'required' => true, 'example' => '192.168.0.1', 'title' => ''],
],
],
'responses' => [
@@ -1949,155 +1488,192 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'The HTTP status code returned.'."\n",
- 'type' => 'string',
- 'example' => '200',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
'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": []',
- ],
+ 'GlobalSecurityIPGroup' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'SecurityIpType' => ['description' => 'The IP address type.', 'type' => 'string', 'example' => 'ipv4', 'title' => ''],
+ 'RegionId' => ['description' => 'The region ID.'."\n"
+ ."\n"
+ .'Example: cn-hangzhou', 'type' => 'string', 'example' => 'cn-shenzhen', 'title' => ''],
+ 'GlobalIgName' => ['description' => 'The name of the IP address whitelist template. The name must meet the following requirements:'."\n"
+ ."\n"
+ .'- Consists of lowercase letters, digits, and underscores (\\_).'."\n"
+ ."\n"
+ .'- Starts with a letter and ends with a letter or a digit.'."\n"
+ ."\n"
+ .'- Is 2 to 120 characters in length.', 'type' => 'string', 'example' => 'test', 'title' => ''],
+ 'GlobalSecurityGroupId' => ['description' => 'The ID of the IP address whitelist template.', 'type' => 'string', 'example' => 'g-2uztsd6yvhmsqyjXXX', 'title' => ''],
+ 'WhitelistNetType' => ['description' => 'The network type of the whitelist.', 'type' => 'string', 'example' => 'mix', 'title' => ''],
+ 'GIpList' => ['description' => 'The IP addresses in the whitelist template.'."\n"
+ ."\n"
+ .'> Separate multiple IP addresses with commas (,). A cumulative total of 1,000 IP addresses or CIDR blocks can be added to all IP address whitelists.', 'type' => 'string', 'example' => '192.168.0.0/24', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
- ],
- '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',
+ 'description' => 'The information about the cross-product whitelist template.',
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'description' => 'The list of results.',
+ 'example' => '',
],
- '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',
- ],
+ 'Message' => ['description' => 'The message returned for the request.'."\n"
+ ."\n"
+ .'> If the request is successful, Successful is returned. If the request fails, an error message is returned, such as an error code.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'D578DB3C-06BF-54F2-A78F-C6C25Exxxxxx', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'title' => '',
+ 'description' => 'The response parameters.',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'description' => 'The maximum number of concurrent executions is 10.'."\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"
+ .'- Use the latest version of the Alibaba Cloud or DAS SDK.'."\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',
+ .'- When you call the DAS service using an SDK, set the region to cn-shanghai.'."\n"
+ ."\n"
+ .'- Only database instances for which DAS Enterprise Edition is enabled support the creation of offline tasks. For more information about the databases and regions supported by each version of DAS Enterprise Edition, see [DAS editions and supported features](~~156204~~).'."\n"
+ ."\n"
+ .'API limits:'."\n"
+ ."\n"
+ .'The maximum number of concurrent executions is 10.',
+ 'title' => 'CreateSecurityIPGroup',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'hdm:CreateSecurityIPGroup',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ '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"}]',
+ ],
+ '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' => 'DBInstanceId',
+ 'name' => 'InstanceId',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The ID of the database instance.', 'type' => 'string', 'required' => false, 'example' => 'pc-2ze8g2am97624****', 'title' => ''],
+ ],
+ [
+ '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.', 'type' => 'string', 'required' => false, 'example' => 'pi-uf6k5f6g3912i****', 'title' => ''],
+ ],
+ [
+ 'name' => 'Type',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The type of the task. Valid values:'."\n"
+ ."\n"
+ .'- **Export**'."\n"
+ ."\n"
+ .'- **Query**'."\n"
+ ."\n"
+ .'- **Insight**', 'type' => 'string', 'required' => false, 'example' => 'Export', 'title' => ''],
+ ],
+ [
+ 'name' => 'Name',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The name of the task.', 'type' => 'string', 'example' => 'SQL audit export 1', 'required' => false, 'title' => ''],
+ ],
+ [
+ 'name' => 'Filters',
'in' => 'query',
+ 'style' => 'repeatList',
'schema' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-2ze8g2am97624****',
+ 'description' => 'The filter conditions.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => ['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**.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'KeyWords'],
+ 'Value' => ['description' => 'The value of the filter parameter.', 'type' => 'string', 'required' => false, 'example' => 'select', 'title' => ''],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ 'title' => '',
+ 'example' => '',
],
],
[
'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',
- ],
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The beginning of the time range to query. Specify the time in the UNIX timestamp format. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1596177993000'."\n", 'title' => ''],
],
[
'name' => 'EndTime',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The end of the time range to query. Specify the time in the UNIX timestamp format. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1608888296000'."\n", 'title' => ''],
+ ],
+ [
+ 'name' => 'Role',
'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',
- ],
+ 'schema' => ['description' => 'The role of the node of the PolarDB-X 2.0 database instance. Valid values:'."\n"
+ ."\n"
+ .'- **polarx\\_cn**: compute node'."\n"
+ ."\n"
+ .'- **polarx\\_dn**: data node', 'type' => 'string', 'required' => false, 'example' => 'polarx_cn', 'title' => ''],
],
],
'responses' => [
@@ -2105,233 +1681,524 @@
'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',
- ],
+ 'Code' => ['description' => 'The response code.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '83D9D59B-057A-54A9-BFF9-CF2B42F05645', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
'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',
+ 'title' => 'SqlLogTask',
+ 'description' => 'The returned data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => '54f8041743ca3a9ac5cb9342d050527c', 'title' => ''],
+ 'InstanceId' => ['description' => 'The ID of the database instance.', 'type' => 'string', 'title' => '', 'example' => 'pc-2ze8g2am97624****'],
+ 'Name' => ['description' => 'The name of the task.', 'type' => 'string', 'title' => '', 'example' => 'Export_test'],
+ 'Start' => ['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', 'title' => '', 'example' => '1596177993000'],
+ 'End' => ['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.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1608888296000'."\n"],
+ 'Status' => ['description' => 'The state of the task. Valid values:'."\n"
+ ."\n"
+ .'- **INIT**: The task is to be scheduled.'."\n"
+ ."\n"
+ .'- **RUNNING**: The task is running.'."\n"
+ ."\n"
+ .'- **FAILED**: The task failed.'."\n"
+ ."\n"
+ .'- **CANCELED**: The task is canceled.'."\n"
+ ."\n"
+ .'- **COMPLETED**: The task is complete.'."\n"
+ ."\n"
+ .'> You can view the result of a task that is in the **COMPLETED** state.', 'type' => 'string', 'title' => '', 'example' => 'COMPLETED'],
+ 'CreateTime' => ['description' => 'The time when the task was created. This value is a UNIX timestamp. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1681363254423'."\n"],
+ ],
+ 'example' => '',
],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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',
+ '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, make sure that the aliyun-sdk-core version is later than 4.3.3. We recommend that you use the latest version.'."\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"
."\n"
- .'* The version of Database Autonomy Service (DAS) SDK must be 1.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"
."\n"
- .'* If you use an SDK to call DAS, you must set the region 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~~).',
+ 'requestParamsDescription' => 'The following list describes the filter parameters that can be used as **Key** and their valid values:'."\n"
."\n"
- .'* This operation supports the following database engines:'."\n"
+ .'- **KeyWords**: the keywords. You can specify multiple keywords that are separated by spaces.'."\n"
."\n"
- .' * RDS MySQL'."\n"
- .' * PolarDB for MySQL'."\n"
- .' * Redis'."\n",
- ],
- 'DescribeDiagnosticReportList' => [
- 'summary' => 'Queries diagnostics reports.',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
+ .'- **LogicalOperator**: the logical operation between keywords. Valid values: and and or.'."\n"
+ ."\n"
+ .'- **AccountName**: the username.'."\n"
+ ."\n"
+ .'- **DBName**: the database name.'."\n"
+ ."\n"
+ .'- **HostAddress**: the IP address of the client.'."\n"
+ ."\n"
+ .'- **MaxConsume**: the maximum amount of time that is consumed. Unit: milliseconds.'."\n"
+ ."\n"
+ .'- **MinConsume**: the minimum amount of time that is consumed. Unit: milliseconds.'."\n"
+ ."\n"
+ .'- **MaxScanRows**: the maximum number of rows that are scanned.'."\n"
+ ."\n"
+ .'- **MinScanRows**: the minimum number of rows that are scanned.'."\n"
+ ."\n"
+ .'- **SqlType**: the type of the SQL statement. Valid values: select, update, insert, and delete.'."\n"
+ ."\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"
+ ."\n"
+ .'- **ThreadId**: the thread ID.'."\n"
+ ."\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"
+ ."\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"
+ ."\n"
+ .'- **TraceId**: the trace ID of the PolarDB-X 2.0 database instance.'."\n"
+ ."\n"
+ .'- **MinRows**: the minimum number of rows that are updated.'."\n"
+ ."\n"
+ .'- **MaxRows**: the maximum number of rows that are updated.'."\n"
+ ."\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"
+ ."\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"
+ ."\n"
+ .'- **TrxId**: the transaction ID.'."\n"
+ ."\n"
+ .'- **Fail**: the error code.'."\n"
+ ."\n"
+ .'- **sqlId**: the SQL statement ID.'."\n"
+ ."\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.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateSqlLogTask'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'hdm:CreateSqlLogTask',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'translator' => 'manual',
+ ],
+ 'CreateStorageAnalysisTask' => [
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
- 'systemTags' => [
- 'operationType' => 'get',
- ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => ['operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free'],
'parameters' => [
[
- 'name' => 'DBInstanceId',
+ 'name' => 'InstanceId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-2ze8g2am97624****',
- ],
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
],
[
- 'name' => 'PageNo',
+ 'name' => 'NodeId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The page number. The value must be a positive integer. Default value: 1.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '1',
- ],
+ '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"
+ ."\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.', 'type' => 'string', 'required' => false, 'example' => 'd-bp1872fa24d5****', 'title' => ''],
],
[
- 'name' => 'PageSize',
+ 'name' => 'DbName',
'in' => 'query',
- 'schema' => [
- 'description' => 'The number of entries per page. Default value: 10.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '10',
- ],
+ 'schema' => ['description' => 'The database name. If you specify a database, the operation analyzes the storage usage of the specified database.', 'type' => 'string', 'required' => false, 'example' => 'testdb01', 'title' => ''],
],
[
- 'name' => 'StartTime',
+ '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**.', 'type' => 'string', 'required' => false, 'example' => 'test_table', 'title' => ''],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
'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',
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'Data' => [
+ 'description' => 'The returned data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => '910f83f4b96df0524ddc5749f61539f8', 'title' => ''],
+ 'CreateTaskSuccess' => ['description' => 'Indicates whether the task is created. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
+ 'ErrorMessage' => ['description' => 'The error message returned.', 'type' => 'string', 'example' => 'unknown error', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request is successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ ],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
+ ],
+ 403 => [
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
+ ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'CreateStorageAnalysisTask',
+ 'summary' => 'Creates a storage analysis task to query the usage details of one or more databases and tables.',
+ 'description' => '- This operation is applicable only to ApsaraDB RDS for MySQL instances, PolarDB for MySQL clusters, and ApsaraDB for MongoDB instances.'."\n"
+ ."\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"
+ ."\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"
+ ."\n"
+ .'- If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateStorageAnalysisTask'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'hdm:CreateStorageAnalysisTask',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ ],
+ '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"}]',
+ ],
+ 'DeleteCloudBenchTask' => [
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
+ 'security' => [
[
- 'name' => 'EndTime',
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => ['operationType' => 'delete'],
+ 'parameters' => [
+ [
+ 'name' => 'TaskId',
'in' => 'query',
+ 'schema' => ['description' => 'The unique task ID. You can call the [DescribeCloudBenchTasks](~~230670~~) API to get this task ID.', 'type' => 'string', 'required' => true, 'example' => 'e5cec704-0518-430f-8263-76f4dcds****', 'title' => ''],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
'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',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Message' => ['description' => 'The returned message of the request.'."\n"
+ ."\n"
+ .'> When the request is successful, this parameter returns **Successful**. When the request fails, it returns exception information (such as error codes).', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'Data' => ['description' => 'Reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'Code' => ['description' => 'The returned status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
+ ],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
+ ],
+ 403 => [
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
+ ],
+ ],
+ 'title' => 'DeleteCloudBenchTask',
+ 'summary' => 'Deletes a stress testing task.',
+ 'description' => 'Call this API to delete a stress testing task. For more information, see [Intelligent stress testing](~~155068~~).',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteCloudBenchTask'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'hdm:DeleteCloudBenchTask',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": \\"None\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]',
+ ],
+ 'DeleteSecurityIPGroup' => [
+ 'summary' => 'Deletes a cross-product whitelist template.',
+ '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' => 'The region ID.', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai', 'title' => ''],
+ ],
+ [
+ 'name' => 'GlobalSecurityGroupId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The ID of the IP address whitelist template.', 'type' => 'string', 'required' => true, 'example' => 'g-rcge12hbfooad3m****', 'title' => ''],
+ ],
+ ],
'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',
- ],
+ 'Code' => ['description' => 'The status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'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',
+ 'type' => 'object',
+ 'properties' => [
+ 'GlobalSecurityIPGroup' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'GlobalSecurityGroupId' => ['description' => 'The ID of the IP address whitelist template.', 'type' => 'string', 'example' => 'g-1no2rzybnqcv0m****'."\n", 'title' => ''],
+ ],
+ 'description' => 'The details of the cross-product whitelist template.',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'description' => 'The details of the cross-product whitelist template.',
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'description' => 'The returned data.',
+ 'example' => '',
],
+ 'Message' => ['description' => 'The message returned for the request.'."\n"
+ ."\n"
+ .'> If the request is successful, **Successful** is returned. If the request fails, an error message is returned. The error message may include an error code.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'title' => '',
+ 'description' => 'The response parameters.',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'description' => '- This operation deletes the metadata of released database gateways from intelligent stress testing tasks created by the [CreateCloudBenchTasks](~~230665~~) operation.'."\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"
+ .'- When you use an SDK to call the DAS service, set the region to cn-shanghai.'."\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",
+ .'> A database gateway is considered stopped if there is no heartbeat between it and an endpoint for more than 20 seconds.',
+ 'title' => 'DeleteSecurityIPGroup',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'hdm:DeleteSecurityIPGroup',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ ],
+ '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"}]',
],
- 'GetDBInstanceConnectivityDiagnosis' => [
- 'summary' => 'Queries the diagnosis of network connectivity when a user accesses a specific database instance by specifying an IP address.',
- 'methods' => [
- 'get',
- 'post',
+ 'DeleteStopGateway' => [
+ 'summary' => 'Deletes the metadata of a stopped database gateway.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
],
- 'schemes' => [
- 'http',
- 'https',
+ 'systemTags' => ['operationType' => 'delete'],
+ 'parameters' => [
+ [
+ 'name' => 'GatewayId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The unique ID of the database gateway.'."\n"
+ ."\n"
+ .'Note: You can get this ID from the `ClientGatewayId` field in the response of the [DescribeCloudbenchTask](~~230669~~)  API.', 'type' => 'string', 'required' => true, 'example' => '22938c83fcfbced4b4869b9695e3****', 'title' => ''],
+ ],
],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => ['description' => 'The returned status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The returned message.'."\n"
+ ."\n"
+ .'> When the request is successful, this parameter returns **Successful**. When the request fails, this parameter returns exception information such as error codes.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'Data' => ['description' => 'The status code indicating the result of the deletion:'."\n"
+ ."\n"
+ .'- **0**: Success. The metadata was deleted.'."\n"
+ ."\n"
+ .'- **-1**: A system error occurred.'."\n"
+ ."\n"
+ .'- **-2**: The specified database gateway does not exist.'."\n"
+ ."\n"
+ .'- **-3**: The database gateway is still active (not stopped) and its metadata cannot be deleted.'."\n"
+ ."\n"
+ .'- **-4**: Failed to delete the metadata.', 'type' => 'string', 'example' => '0', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'FC6C0929-29E1-59FD-8DFE-70D9D41E****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful:'."\n"
+ ."\n"
+ .'- **true**: The operation is successful.'."\n"
+ ."\n"
+ .'- **false**: The operation failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
+ ],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
+ ],
+ 403 => [
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
+ ],
+ ],
+ 'title' => 'DeleteStopGateway',
+ 'description' => 'Call this API to delete metadata for inactive database gateway instances that were created during stress testing created by the [CreateCloudBenchTasks](~~230665~~) operation.'."\n"
+ ."\n"
+ .'When you use an SDK to call the DAS service, you must specify the region as `cn-shanghai`.'."\n"
+ ."\n"
+ .'> A database gateway is considered "stopped" if it has not sent a heartbeat to the DAS service for more than 20 seconds.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteStopGateway'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'hdm:DeleteStopGateway',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": \\"0\\",\\n \\"RequestId\\": \\"FC6C0929-29E1-59FD-8DFE-70D9D41E****\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]',
+ ],
+ 'DescribeAuditLogs' => [
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -2339,210 +2206,577 @@
],
'operationType' => 'read',
'systemTags' => [
- 'operationType' => 'get',
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '212859',
+ 'abilityTreeNodes' => ['FEATUREhdmQULC0I'],
+ 'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
- 'name' => 'InstanceId',
+ 'name' => 'Lang',
'in' => 'query',
- 'schema' => [
- 'title' => '实例ID',
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-2ze8g2am97624****',
- ],
+ 'schema' => ['description' => 'The language of the request and response. Default value: zh-CN. Valid values:'."\n"
+ ."\n"
+ .'- zh-CN: Chinese.'."\n"
+ ."\n"
+ .'- en-US: English.', 'type' => 'string', 'required' => false, 'example' => 'zh-CN', 'title' => ''],
],
[
- 'name' => 'SrcIp',
+ 'name' => 'UserName',
'in' => 'query',
+ 'schema' => ['description' => 'The username.', 'type' => 'string', 'required' => false, 'example' => 'admin', 'title' => ''],
+ ],
+ [
+ 'name' => 'ClientIp',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The client IP address.', 'type' => 'string', 'required' => false, 'example' => '11.26.118.7', 'title' => ''],
+ ],
+ [
+ 'name' => 'ClientUa',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The client type.', 'type' => 'string', 'required' => false, 'example' => 'mysql', 'title' => ''],
+ ],
+ [
+ 'name' => 'InstanceName',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The name of the instance.', 'type' => 'string', 'required' => false, 'example' => 'rm-t4ni1cezz5y3xxxx', 'title' => ''],
+ ],
+ [
+ 'name' => 'DatabaseName',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The name of the database.', 'type' => 'string', 'required' => false, 'example' => 'TestDB', 'title' => ''],
+ ],
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The start time for the query, specified as a UNIX timestamp in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1608888296000', 'title' => ''],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The end time for the query, specified as a UNIX timestamp in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '15682887991222', 'title' => ''],
+ ],
+ [
+ 'name' => 'ProductCode',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The name of the database service that the data asset belongs to. Examples: **RDS, PolarDB, and PolarDB-X**.', 'type' => 'string', 'required' => false, 'example' => 'RDS', 'title' => ''],
+ ],
+ [
+ 'name' => 'ProductId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The ID of the database service. Valid values:'."\n"
+ ."\n"
+ .'- 3: AnalyticDB for MySQL'."\n"
+ ."\n"
+ .'- 5: RDS'."\n"
+ ."\n"
+ .'- 7: PolarDB-X'."\n"
+ ."\n"
+ .'- 8: PolarDB'."\n"
+ ."\n"
+ .'- 9: AnalyticDB for PostgreSQL'."\n"
+ ."\n"
+ .'- 11: MongoDB'."\n"
+ ."\n"
+ .'- 25: Redis', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '5', 'title' => ''],
+ ],
+ [
+ 'name' => 'SqlText',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The content of the SQL statement.', 'type' => 'string', 'required' => false, 'example' => 'SELECT * FROM test where name = \'das\'', 'title' => ''],
+ ],
+ [
+ 'name' => 'ExecuteTimeRange',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The execution time range, in milliseconds.', 'type' => 'string', 'required' => false, 'example' => 'in[1000 2000]', 'title' => ''],
+ ],
+ [
+ 'name' => 'EffectRowRange',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The range for the number of affected rows.', 'type' => 'string', 'required' => false, 'example' => 'in[1 33]', 'title' => ''],
+ ],
+ [
+ 'name' => 'RuleID',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The rule ID.', 'type' => 'string', 'required' => false, 'example' => '9953411', 'title' => ''],
+ ],
+ [
+ 'name' => 'RuleName',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The rule name.', 'type' => 'string', 'required' => false, 'example' => 'test_rule', 'title' => ''],
+ ],
+ [
+ 'name' => 'OperateType',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The operation type.', 'type' => 'string', 'required' => false, 'example' => 'Insert', 'title' => ''],
+ ],
+ [
+ 'name' => 'OssObjectKey',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The key of the OSS object.', 'type' => 'string', 'required' => false, 'example' => 'N.A', 'title' => ''],
+ ],
+ [
+ 'name' => 'AsyncRequestId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The request ID.', 'type' => 'string', 'required' => false, 'example' => '2c548e83-1473-4fda-b3dc-5a189074ead5', 'title' => ''],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The maximum number of entries to return per page. The default is 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '30', 'title' => ''],
+ ],
+ [
+ 'name' => 'CurrentPage',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The page number to return.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '3', 'title' => ''],
+ ],
+ [
+ 'name' => 'RuleCategory',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The rule type.', 'type' => 'string', 'required' => false, 'example' => '10', 'title' => ''],
+ ],
+ [
+ 'name' => 'LoadWhiteList',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Specifies whether to retrieve the whitelist status.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
+ ],
+ [
+ 'name' => 'IpType',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The network type. Valid values:'."\n"
+ ."\n"
+ .'- **default**: A non-Alibaba Cloud service. This is the default value.'."\n"
+ ."\n"
+ .'- **aliyun**: An Alibaba Cloud service.', 'type' => 'string', 'required' => false, 'example' => 'aliyun', 'title' => ''],
+ ],
+ [
+ 'name' => 'LogSource',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The data source.', 'type' => 'string', 'required' => false, 'example' => 'SLOW_SQL', 'title' => ''],
+ ],
+ [
+ 'name' => 'RuleAggQuery',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Whether to perform an aggregate query.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
+ ],
+ [
+ 'name' => 'RuleId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The rule ID.', 'type' => 'string', 'required' => false, 'example' => '867028', 'title' => ''],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'title' => '源IP',
- 'description' => 'The source IP address.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => '47.110.180.62',
+ 'type' => 'object',
+ 'properties' => [
+ 'AsyncRequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '3926fba5-1774-44f4-af2d-ac7b33e86c3b', 'title' => ''],
+ 'CurrentPage' => ['description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'A7021857-AFD9-5AD6-979D-AA7DFC5AFADF', 'title' => ''],
+ 'TotalCount' => ['description' => 'The total number of entries. This parameter is valid only for Redis.', 'type' => 'integer', 'format' => 'int32', 'example' => '12', 'title' => ''],
+ 'Items' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'CreationTime' => ['description' => 'The time when the alert was generated, as a UNIX timestamp in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1536751124000', 'title' => ''],
+ 'WarnLevel' => ['description' => 'The risk level. Valid values:'."\n"
+ ."\n"
+ .'- **1**: Low'."\n"
+ ."\n"
+ .'- **2**: Medium'."\n"
+ ."\n"
+ .'- **3**: High', 'type' => 'string', 'example' => '1', 'title' => ''],
+ 'ClientPort' => ['description' => 'The client port number.', 'type' => 'string', 'example' => '53815', 'title' => ''],
+ 'TableName' => ['description' => 'The name of the table.', 'type' => 'string', 'example' => 'it_table', 'title' => ''],
+ 'EffectRow' => ['description' => 'The number of affected rows.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'PackageName' => ['description' => 'The name of the MaxCompute package.', 'type' => 'string', 'example' => 'test01', 'title' => ''],
+ 'UserId' => ['description' => 'The user ID (UID).', 'type' => 'string', 'example' => '19********94', 'title' => ''],
+ 'Message' => ['description' => 'The raw log content.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'RuleId' => ['description' => 'The ID of the audit rule.', 'type' => 'string', 'example' => '9953411', 'title' => ''],
+ 'OperateType' => ['description' => 'The operation type.', 'type' => 'string', 'example' => 'Drop', 'title' => ''],
+ 'LogTime' => ['description' => 'The time when the operation was executed, as a UNIX timestamp in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1751870592000', 'title' => ''],
+ 'WarnLevelName' => ['description' => 'The name of the risk level.'."\n"
+ ."\n"
+ .'- Low'."\n"
+ ."\n"
+ .'- Medium'."\n"
+ ."\n"
+ .'- High', 'type' => 'string', 'example' => '1', 'title' => ''],
+ 'InstanceName' => ['description' => 'The alias of the instance.', 'type' => 'string', 'example' => 'test-instance-003', 'title' => ''],
+ 'DatabaseName' => ['description' => 'The name of the database.', 'type' => 'string', 'example' => 'chngc_b2b_migration_sh', 'title' => ''],
+ 'OssObjectKey' => ['description' => 'The key of the OSS object.', 'type' => 'string', 'example' => 'N.A', 'title' => ''],
+ 'ExecuteStatus' => ['description' => 'The execution status, where 0 indicates failure and 1 indicates success.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'ProductId' => ['description' => 'The ID of the database service. Valid values:'."\n"
+ ."\n"
+ .'- 3: AnalyticDB for MySQL'."\n"
+ ."\n"
+ .'- 5: RDS'."\n"
+ ."\n"
+ .'- 7: PolarDB-X'."\n"
+ ."\n"
+ .'- 8: PolarDB'."\n"
+ ."\n"
+ .'- 9: AnalyticDB for PostgreSQL'."\n"
+ ."\n"
+ .'- 11: MongoDB'."\n"
+ ."\n"
+ .'- 25: Redis', 'type' => 'integer', 'format' => 'int64', 'example' => '5', 'title' => ''],
+ 'ExecuteTime' => ['description' => 'The execution duration, in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1751870592000', 'title' => ''],
+ 'UserName' => ['description' => 'The username.', 'type' => 'string', 'example' => 'admin', 'title' => ''],
+ 'InstanceDescription' => ['description' => 'The description of the instance.', 'type' => 'string', 'example' => 'instance dscription', 'title' => ''],
+ 'RuleName' => ['description' => 'The name of the audit rule.', 'type' => 'string', 'example' => 'name', 'title' => ''],
+ 'ColumnName' => ['description' => 'The column name.', 'type' => 'string', 'example' => 'ds', 'title' => ''],
+ 'ClientIp' => ['description' => 'The client\'s IP address.', 'type' => 'string', 'example' => '100.104.16.251', 'title' => ''],
+ 'ClientUa' => ['description' => 'The client\'s user agent.', 'type' => 'string', 'example' => 'mysql', 'title' => ''],
+ 'Id' => ['description' => 'The primary key of the log entry.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'ProductCode' => ['description' => 'The name of the database service, such as RDS, PolarDB, and PolarDB-X 2.0.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
+ 'SqlText' => ['description' => 'The SQL statement.', 'type' => 'string', 'example' => 'select * from test03', 'title' => ''],
+ 'InWhiteList' => ['description' => 'Indicates whether the alert is in the whitelist.', 'type' => 'boolean', 'example' => 'True', 'title' => ''],
+ 'IpType' => ['description' => 'The network type. Valid values:'."\n"
+ ."\n"
+ .'**default**: A non-Alibaba Cloud service. This is the default.'."\n"
+ ."\n"
+ .'**aliyun**: An Alibaba Cloud service.', 'type' => 'string', 'example' => 'aliyun', 'title' => ''],
+ 'RuleCategory' => ['description' => 'The rule category.', 'type' => 'string', 'example' => '10', 'title' => ''],
+ 'LogSource' => ['description' => 'The data source.', 'type' => 'string', 'example' => 'SLOW_SQL', 'title' => ''],
+ 'InstanceAuditStatus' => ['description' => 'The audit status of the instance.', 'type' => 'string', 'example' => '2', 'title' => ''],
+ ],
+ 'description' => 'An audit log entry.',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'description' => 'The details of the audit logs.',
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
+ ],
+ 403 => [
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
+ ],
+ ],
+ 'title' => 'DescribeAuditLogs',
+ 'summary' => 'This API allows you to query data audit alarm logs to find and handle alarms.',
+ 'description' => 'Before calling this API, ensure you meet the following prerequisites:'."\n"
+ ."\n"
+ .'- We recommend using the latest version of the Alibaba Cloud or DAS SDK.'."\n"
+ ."\n"
+ .'- When using an SDK to call the DAS service, set the region to cn-shanghai.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AsyncRequestId\\": \\"3926fba5-1774-44f4-af2d-ac7b33e86c3b\\",\\n \\"CurrentPage\\": 1,\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"A7021857-AFD9-5AD6-979D-AA7DFC5AFADF\\",\\n \\"TotalCount\\": 12,\\n \\"Items\\": [\\n {\\n \\"CreationTime\\": 1536751124000,\\n \\"WarnLevel\\": \\"1\\",\\n \\"ClientPort\\": \\"53815\\",\\n \\"TableName\\": \\"it_table\\",\\n \\"EffectRow\\": 10,\\n \\"PackageName\\": \\"test01\\",\\n \\"UserId\\": \\"19********94\\",\\n \\"Message\\": \\"success\\",\\n \\"RuleId\\": \\"9953411\\",\\n \\"OperateType\\": \\"Drop\\",\\n \\"LogTime\\": 1751870592000,\\n \\"WarnLevelName\\": \\"1\\",\\n \\"InstanceName\\": \\"test-instance-003\\",\\n \\"DatabaseName\\": \\"chngc_b2b_migration_sh\\",\\n \\"OssObjectKey\\": \\"N.A\\",\\n \\"ExecuteStatus\\": 1,\\n \\"ProductId\\": 5,\\n \\"ExecuteTime\\": 1751870592000,\\n \\"UserName\\": \\"admin\\",\\n \\"InstanceDescription\\": \\"instance dscription\\",\\n \\"RuleName\\": \\"name\\",\\n \\"ColumnName\\": \\"ds\\",\\n \\"ClientIp\\": \\"100.104.16.251\\",\\n \\"ClientUa\\": \\"mysql\\",\\n \\"Id\\": 1,\\n \\"ProductCode\\": \\"RDS\\",\\n \\"SqlText\\": \\"select * from test03\\",\\n \\"InWhiteList\\": true,\\n \\"IpType\\": \\"aliyun\\",\\n \\"RuleCategory\\": \\"10\\",\\n \\"LogSource\\": \\"SLOW_SQL\\",\\n \\"InstanceAuditStatus\\": \\"2\\"\\n }\\n ]\\n}","type":"json"}]',
+ ],
+ '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.', 'type' => 'string', 'required' => true, 'example' => 'pc-2ze1prap1k46r****', 'title' => ''],
+ ],
+ ],
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
'Data' => [
- 'description' => 'The detailed information.'."\n",
+ 'description' => 'The configurations of the auto scaling feature for instances.',
'type' => 'object',
'properties' => [
- 'instanceId' => [
- 'title' => '实例ID',
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'example' => 'rm-2ze8g2am97624****',
+ 'Spec' => [
+ 'description' => 'The configurations of the auto scaling feature for specifications.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Upgrade' => ['description' => 'Indicates whether the automatic specification scale-up feature is enabled. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'CpuUsageUpperThreshold' => ['description' => 'The average CPU utilization threshold that triggers automatic specification scale-up. Unit: %.', 'type' => 'integer', 'format' => 'int32', 'example' => '70', 'title' => ''],
+ 'MemUsageUpperThreshold' => ['description' => 'The average memory usage threshold that triggers automatic specification scale-up. Unit: %.', 'type' => 'integer', 'format' => 'int32', 'example' => '70', 'title' => ''],
+ '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"
+ ."\n"
+ .'- ApsaraDB RDS for MySQL High-availability Edition instances that use standard SSDs or ESSDs: [Specifications](~~276974~~)', 'type' => 'string', 'example' => 'polar.mysql.x8.12xlarge', 'title' => ''],
+ 'MaxReadOnlyNodes' => ['description' => 'The maximum number of read-only nodes of the instance.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
+ '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"
+ ."\n"
+ .'- **m**: minutes.'."\n"
+ ."\n"
+ .'- **h**: hours.'."\n"
+ ."\n"
+ .'- **d**: days.'."\n"
+ ."\n"
+ .'> A value of **5m** indicates 5 minutes.', 'type' => 'string', 'example' => '5m', 'title' => ''],
+ '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"
+ ."\n"
+ .'- **m**: minutes.'."\n"
+ ."\n"
+ .'- **h**: hours.'."\n"
+ ."\n"
+ .'- **d**: days.'."\n"
+ ."\n"
+ .'> A value of **5m** indicates 5 minutes.', 'type' => 'string', 'example' => '5m', 'title' => ''],
+ 'Downgrade' => ['description' => 'Indicates whether the automatic specification scale-down feature is enabled. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
- 'success' => [
- 'title' => '是否检测通过',
- 'description' => 'Indicates whether the connectivity test was passed:'."\n"
- ."\n"
- .'* **true**'."\n"
- .'* **false**'."\n",
- 'type' => 'boolean',
- 'enumValueTitles' => [],
- 'example' => 'false',
+ 'Storage' => [
+ 'description' => 'The configurations of the automatic storage expansion feature.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Upgrade' => ['description' => 'Indicates whether the automatic storage expansion feature is enabled. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'DiskUsageUpperThreshold' => ['description' => 'The average storage usage threshold that triggers automatic storage expansion. Unit: %.', 'type' => 'integer', 'format' => 'int32', 'example' => '70', 'title' => ''],
+ 'MaxStorage' => ['description' => 'The maximum storage size. Unit: GB.', 'type' => 'integer', 'format' => 'int32', 'example' => '32000', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
- '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',
+ 'Resource' => [
+ 'description' => 'The configurations of the auto scaling feature for local resources.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Enable' => ['description' => 'Indicates whether the auto scaling feature is enabled for local resources. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'CpuUsageUpperThreshold' => ['description' => 'The average CPU utilization threshold that triggers automatic scale-out of local resources. Unit: %.', 'type' => 'integer', 'format' => 'int32', 'example' => '70', 'title' => ''],
+ 'CpuStep' => ['description' => 'The scale-out step size of CPU.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''],
+ '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"
+ ."\n"
+ .'- **m**: minutes.'."\n"
+ ."\n"
+ .'- **h**: hours.'."\n"
+ ."\n"
+ .'- **d**: days.'."\n"
+ ."\n"
+ .'> A value of **5m** indicates 5 minutes.', 'type' => 'string', 'example' => '5m', 'title' => ''],
+ '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"
+ ."\n"
+ .'- **m**: minutes.'."\n"
+ ."\n"
+ .'- **h**: hours.'."\n"
+ ."\n"
+ .'- **d**: days.'."\n"
+ ."\n"
+ .'> A value of **5m** indicates 5 minutes.', 'type' => 'string', 'example' => '5m', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
- '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',
+ 'Shard' => [
+ 'description' => 'The configurations of the auto scaling feature for shards.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Upgrade' => ['description' => 'Indicates whether the feature of automatically adding shards is enabled. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'MemUsageUpperThreshold' => ['description' => 'The average memory usage threshold that triggers automatic adding of shards. Unit: %.', 'type' => 'integer', 'format' => 'int32', 'example' => '70', 'title' => ''],
+ 'MaxShards' => ['description' => 'The maximum number of shards in the instance.', 'type' => 'integer', 'format' => 'int32', 'example' => '16', 'title' => ''],
+ '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"
+ ."\n"
+ .'- **m**: minutes.'."\n"
+ ."\n"
+ .'- **h**: hours.'."\n"
+ ."\n"
+ .'- **d**: days.'."\n"
+ ."\n"
+ .'> A value of **5m** indicates 5 minutes.', 'type' => 'string', 'example' => '5m', 'title' => ''],
+ 'Downgrade' => ['description' => 'Indicates whether the feature of automatically removing shards is enabled. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'MemUsageLowerThreshold' => ['description' => 'The average memory usage threshold that triggers automatic removal of shards. Unit: %.', 'type' => 'integer', 'format' => 'int32', 'example' => '30', 'title' => ''],
+ 'MinShards' => ['description' => 'The minimum number of shards in the instance.', 'type' => 'integer', 'format' => 'int32', 'example' => '4', 'title' => ''],
+ '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"
+ ."\n"
+ .'- **m**: minutes.'."\n"
+ ."\n"
+ .'- **h**: hours.'."\n"
+ ."\n"
+ .'- **d**: days.'."\n"
+ ."\n"
+ .'> A value of **1d** indicates one day.', 'type' => 'string', 'example' => '1d', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
- 'connCheckErrorMessage' => [
- 'title' => '异常检测详情信息',
- 'description' => 'The details of the exception detection.'."\n",
- 'type' => 'string',
- 'example' => 'Src ip:47.110.180.62 not in user whitelist',
+ 'Bandwidth' => [
+ 'description' => 'The configurations of the automatic bandwidth adjustment feature.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Upgrade' => ['description' => 'Indicates whether the automatic bandwidth adjustment feature is enabled. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'BandwidthUsageUpperThreshold' => ['description' => 'The average bandwidth usage threshold that triggers automatic bandwidth adjustment. Unit: %.', 'type' => 'integer', 'format' => 'int32', 'example' => '70', 'title' => ''],
+ '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"
+ ."\n"
+ .'- **m**: minutes.'."\n"
+ ."\n"
+ .'- **h**: hours.'."\n"
+ ."\n"
+ .'- **d**: days.'."\n"
+ ."\n"
+ .'> A value of **5m** indicates 5 minutes.', 'type' => 'string', 'example' => '5m', 'title' => ''],
+ 'Downgrade' => ['description' => 'Indicates whether the automatic bandwidth downgrade feature is enabled. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'BandwidthUsageLowerThreshold' => ['description' => 'The average bandwidth usage threshold that triggers automatic bandwidth downgrade. Unit: %.', 'type' => 'integer', 'format' => 'int32', 'example' => '30', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
- ],
- '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',
+ 'title' => '',
+ 'example' => '',
],
],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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',
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ 'title' => 'DescribeAutoScalingConfig',
'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',
+ .'- 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.',
+ 'changeSet' => [],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeAutoScalingConfig',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- 'schemes' => [
- 'http',
- 'https',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeAutoScalingConfig'],
+ ],
],
+ ],
+ 'DescribeAutoScalingHistory' => [
+ 'methods' => ['get'],
+ 'schemes' => ['https', 'http'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
+ 'operationType' => 'read',
'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'create',
- ],
+ 'systemTags' => ['operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free'],
'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****',
- ],
+ 'schema' => ['description' => 'The instance ID.'."\n"
+ ."\n"
+ .'> Only ApsaraDB RDS for MySQL instances are supported.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
[
- 'name' => 'NodeId',
+ 'name' => 'AutoScalingTaskType',
'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',
- ],
+ '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.', 'type' => 'string', 'required' => true, 'example' => 'SPEC', 'title' => ''],
],
[
- 'name' => 'BackupSetId',
+ 'name' => 'StartTime',
'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',
- ],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1675833788056', 'title' => ''],
],
[
- 'name' => 'Separators',
+ 'name' => 'EndTime',
'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' => '&',
- ],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1676605305796', 'title' => ''],
],
],
'responses' => [
@@ -2550,169 +2784,141 @@
'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****',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned. The status code 200 indicates that the request was successful.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
'Data' => [
- 'description' => 'The detailed information.'."\n",
+ 'title' => 'AutoScalingInstanceHistory',
+ 'description' => 'The history of auto scaling.',
'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.', 'type' => 'string', 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
+ 'SpecHistory' => [
+ 'description' => 'The history of automatic performance scaling.',
+ '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"
+ ."\n"
+ .'- **SCALE\\_DOWN**: automatic instance type scale-down task.', 'type' => 'string', 'example' => 'SCALE_UP', 'title' => ''],
+ 'TaskExcuteStatus' => ['description' => 'The status of the task. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The task was successful.'."\n"
+ ."\n"
+ .'- **false**: The task failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ '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"
+ ."\n"
+ .'- **REACH\\_SPEC\\_UPPERBOUND**: The instance type reaches the upper limit.'."\n"
+ ."\n"
+ .'- **Control\\_Error\\_Timeout\\_Msg**: The management task timed out.'."\n"
+ ."\n"
+ .'- **Invoke\\_Rds\\_Api\\_Error\\_Msg**: Failed to call the ApsaraDB RDS API.', 'type' => 'string', 'example' => 'Insufficient_Balance', 'title' => ''],
+ 'OriginInstanceClass' => ['description' => 'The original instance type.', 'type' => 'string', 'example' => 'mysql.n2.large.2c', 'title' => ''],
+ 'TargetInstanceClass' => ['description' => 'The destination instance type.', 'type' => 'string', 'example' => 'mysql.n2.xlarge.2c', 'title' => ''],
+ 'OriginCore' => ['description' => 'The original number of CPU cores of the instance.', 'type' => 'integer', 'format' => 'int32', 'example' => '4', 'title' => ''],
+ 'OriginMemory' => ['description' => 'The original memory size of the instance. Unit: GB.', 'type' => 'number', 'format' => 'double', 'example' => '8', 'title' => ''],
+ 'TargetCore' => ['description' => 'The destination number of CPU cores of the instance.', 'type' => 'integer', 'format' => 'int32', 'example' => '8', 'title' => ''],
+ 'TargetMemory' => ['description' => 'The destination memory size of the instance. Unit: GB.', 'type' => 'number', 'format' => 'double', 'example' => '16', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1684830763000', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
- 'InstanceId' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'example' => 'r-bp18ff4a195d****',
+ 'Storage' => [
+ 'description' => 'The history of storage expansion. This feature is not supported.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The history of storage expansion of the instance.', 'type' => 'object', 'example' => 'None', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
],
- 'NodeId' => [
- 'description' => 'The ID of the data node on the instance.'."\n",
- 'type' => 'string',
- 'example' => 'r-x****-db-0',
+ 'Resource' => [
+ 'description' => 'The history of resource scale-out of ApsaraDB for Redis instances. This feature is not supported.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The history of resource scale-out of the ApsaraDB for Redis instance.', 'type' => 'object', 'example' => 'None', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'Shard' => [
+ 'description' => 'The history of automatic shard scale-out of ApsaraDB for Redis instances. This feature is not supported.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The history of automatic shard scale-out of the ApsaraDB for Redis instance.', 'type' => 'object', 'example' => 'None', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'Bandwidth' => [
+ 'description' => 'The history of automatic bandwidth scaling of ApsaraDB for Redis instances. This feature is not supported.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The history of automatic bandwidth scaling of the ApsaraDB for Redis instance.', 'type' => 'object', 'example' => 'None', 'title' => ''],
+ 'title' => '',
+ '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**: The request was successful.'."\n"
- .'* **false**: The request failed.'."\n",
- 'type' => 'string',
- 'example' => 'true',
+ 'example' => '',
],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'DescribeAutoScalingHistory',
+ 'summary' => 'Queries the auto scaling history of an instance.',
+ 'description' => '- Supports querying automatic performance scaling history only for ApsaraDB RDS for MySQL High-availability Edition instances that use cloud disks.'."\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",
+ .'- 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.',
+ 'requestParamsDescription' => 'If you set AutoScalingTaskType to SPEC, the history of automatic performance scaling tasks is queried. Only SPEC is supported.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeAutoScalingHistory'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeAutoScalingHistory',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ ],
+ '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"}]',
],
'DescribeCacheAnalysisJob' => [
- 'summary' => 'Queries the details of a cache analysis task.',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -2723,30 +2929,18 @@
'systemTags' => [
'operationType' => 'get',
'abilityTreeCode' => '23813',
- 'abilityTreeNodes' => [
- 'FEATUREhdmJC65CS',
- ],
+ 'abilityTreeNodes' => ['FEATUREhdmJC65CS'],
],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The ID of the instance.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'r-bp18ff4a195d****',
- ],
+ 'schema' => ['description' => 'The ID of the instance.', 'type' => 'string', 'required' => true, 'example' => 'r-bp18ff4a195d****', 'title' => ''],
],
[
'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-****',
- ],
+ 'schema' => ['description' => 'The ID of the cache analysis task. You can obtain the task ID from the response parameters of the [CreateCacheAnalysisJob](~~180982~~) operation.', 'type' => 'string', 'required' => true, 'example' => 'sf79-sd99-sa37-****', 'title' => ''],
],
],
'responses' => [
@@ -2754,102 +2948,57 @@
'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****',
- ],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
'Data' => [
- 'description' => 'The details of the cache analysis task.'."\n",
+ 'description' => 'The details of the cache analysis task.',
'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',
- ],
+ 'TaskState' => ['description' => 'The state of the cache analysis task. Valid values:'."\n"
+ ."\n"
+ .'- **BACKUP**: The data is being backed up.'."\n"
+ ."\n"
+ .'- **ANALYZING**: The data is being analyzed.'."\n"
+ ."\n"
+ .'- **FINISHED**: The data is analyzed.'."\n"
+ ."\n"
+ .'- **FAILED**: An error occurred.', 'type' => 'string', 'example' => 'BACKUP', 'title' => ''],
+ 'JobId' => ['description' => 'The ID of the cache analysis task.', 'type' => 'string', 'example' => 'sf79-sd99-sa37-****', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'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",
+ '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.',
'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',
- ],
+ 'Type' => ['description' => 'The data type of the instance.', 'type' => 'string', 'example' => 'hash', 'title' => ''],
+ 'Db' => ['description' => 'The database name.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1596256542547', 'title' => ''],
+ 'Key' => ['description' => 'The key name.', 'type' => 'string', 'example' => 'task_x****', 'title' => ''],
+ 'Encoding' => ['description' => 'The data type of the key.', 'type' => 'string', 'example' => 'hashtable', 'title' => ''],
+ 'Bytes' => ['description' => 'The number of bytes that are occupied by the key.', 'type' => 'integer', 'format' => 'int64', 'example' => '12345', 'title' => ''],
+ 'NodeId' => ['description' => 'The ID of the data node on the instance.', 'type' => 'string', 'example' => 'r-x****-db-0', 'title' => ''],
+ 'Count' => ['description' => 'The number of elements in the key.', 'type' => 'integer', 'format' => 'int64', 'example' => '127', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
'KeyPrefixes' => [
'type' => 'object',
@@ -2861,330 +3010,224 @@
'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',
- ],
+ 'KeyNum' => ['description' => 'The number of keys that contain the prefix.', 'type' => 'integer', 'format' => 'int64', 'example' => '123', 'title' => ''],
+ 'Type' => ['description' => 'The data type of the instance.', 'type' => 'string', 'example' => 'hash', 'title' => ''],
+ 'Bytes' => ['description' => 'The number of bytes that are occupied by the key.', 'type' => 'integer', 'format' => 'int64', 'example' => '12345', 'title' => ''],
+ 'Prefix' => ['description' => 'The prefix of the key.', 'type' => 'string', 'example' => 'task_', 'title' => ''],
+ 'Count' => ['description' => 'The number of elements in the key.', 'type' => 'integer', 'format' => 'int64', 'example' => '127', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
'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",
+ 'description' => 'The details of the large keys. The returned large keys are sorted in descending order based on the number of keys.',
'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',
- ],
+ 'Type' => ['description' => 'The data type of the instance.', 'type' => 'string', 'example' => 'hash', 'title' => ''],
+ 'Db' => ['description' => 'The database name.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1596256542547', 'title' => ''],
+ 'Key' => ['description' => 'The key name.', 'type' => 'string', 'example' => 'task_x****', 'title' => ''],
+ 'Encoding' => ['description' => 'The data type of the key.', 'type' => 'string', 'example' => 'hashtable', 'title' => ''],
+ 'Bytes' => ['description' => 'The number of bytes that are occupied by the key.', 'type' => 'integer', 'format' => 'int64', 'example' => '12345', 'title' => ''],
+ 'NodeId' => ['description' => 'The ID of the data node on the instance.', 'type' => 'string', 'example' => 'r-x****-db-0', 'title' => ''],
+ 'Count' => ['description' => 'The number of elements in the key.', 'type' => 'integer', 'format' => 'int64', 'example' => '127', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
'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",
+ 'description' => 'The details of permanent keys. The returned keys are sorted in descending order based on the number of bytes occupied by the keys.',
'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',
- ],
+ 'Type' => ['description' => 'The data type of the instance.', 'type' => 'string', 'example' => 'hash', 'title' => ''],
+ 'Db' => ['description' => 'The database name.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1596256542547', 'title' => ''],
+ 'Key' => ['description' => 'The key name.', 'type' => 'string', 'example' => 'task_x****', 'title' => ''],
+ 'Encoding' => ['description' => 'The data type of the key.', 'type' => 'string', 'example' => 'hashtable', 'title' => ''],
+ 'Bytes' => ['description' => 'The number of bytes that are occupied by the key.', 'type' => 'integer', 'format' => 'int64', 'example' => '12345', 'title' => ''],
+ 'NodeId' => ['description' => 'The ID of the data node on the instance.', 'type' => 'string', 'example' => 'r-x****-db-0', 'title' => ''],
+ 'Count' => ['description' => 'The number of elements in the key.', 'type' => 'integer', 'format' => 'int64', 'example' => '127', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
'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",
+ 'description' => 'The details of permanent keys. The returned keys are sorted in descending order based on the number of keys.',
'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',
- ],
+ 'Type' => ['description' => 'The data type of the instance.', 'type' => 'string', 'example' => 'hash', 'title' => ''],
+ 'Db' => ['description' => 'The database name.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1596256542547', 'title' => ''],
+ 'Key' => ['description' => 'The key name.', 'type' => 'string', 'example' => 'task_x****', 'title' => ''],
+ 'Encoding' => ['description' => 'The data type of the key.', 'type' => 'string', 'example' => 'hashtable', 'title' => ''],
+ 'Bytes' => ['description' => 'The number of bytes that are occupied by the key.', 'type' => 'integer', 'format' => 'int64', 'example' => '12345', 'title' => ''],
+ 'NodeId' => ['description' => 'The ID of the data node on the instance.', 'type' => 'string', 'example' => 'r-x****-db-0', 'title' => ''],
+ 'Count' => ['description' => 'The number of elements in the key.', 'type' => 'integer', 'format' => 'int64', 'example' => '127', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'r-bp18ff4a195d****', 'title' => ''],
+ 'NodeId' => ['description' => 'The ID of the data node on the instance.', 'type' => 'string', 'example' => 'r-x****-db-0', 'title' => ''],
'ExpiryKeysLevelCount' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'ExpiryLevel' => [
- 'description' => 'The statistics of the keys that have expired.'."\n",
+ 'description' => 'The statistics of the keys that have expired.',
'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',
- ],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1717469347000', 'title' => ''],
+ 'Level' => ['description' => 'The expiration level. Valid values:'."\n"
+ ."\n"
+ .'- **0**: The key never expires.'."\n"
+ ."\n"
+ .'- **1**: The key has expired.'."\n"
+ ."\n"
+ .'- **2**: The key has expired for 0 to 1 hour.'."\n"
+ ."\n"
+ .'- **3**: The key has expired for 1 to 3 hours.'."\n"
+ ."\n"
+ .'- **4**: The key has expired for 3 to 12 hours.'."\n"
+ ."\n"
+ .'- **5**: The key has expired for 12 to 24 hours.'."\n"
+ ."\n"
+ .'- **6**: The key has expired for one to two days.'."\n"
+ ."\n"
+ .'- **7**: The key has expired for three to seven days.'."\n"
+ ."\n"
+ .'- **8**: The key has expired for more than seven days.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'TotalBytes' => ['description' => 'The number of bytes occupied by the keys that have expired.', 'type' => 'integer', 'format' => 'int64', 'example' => '8064', 'title' => ''],
+ 'TotalKeys' => ['description' => 'The total number of the keys that have expired.', 'type' => 'integer', 'format' => 'int64', 'example' => '62', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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',
+ 'summary' => 'Returns details of a cache analysis task.',
'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"
+ .'- 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"
- .'> You can call this operation to query the top 500 keys in a cache analysis task.'."\n",
+ .'- If you use an SDK to call the API operations of DAS, you must set the region ID to cn-shanghai.'."\n"
+ ."\n"
+ .'- This operation is applicable only to ApsaraDB for Redis.'."\n"
+ ."\n"
+ .'> Returns the top 500 keys in a cache analysis task.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeCacheAnalysisJob'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeCacheAnalysisJob',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
],
'DescribeCacheAnalysisJobs' => [
- 'summary' => 'Queries a list of cache analysis tasks.',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -3192,61 +3235,34 @@
],
'operationType' => 'read',
'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'get',
- ],
+ 'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'r-bp18ff4a195d****',
- ],
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'r-bp18ff4a195d****', 'title' => ''],
],
[
'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',
- ],
+ '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.', 'type' => 'string', 'required' => true, 'example' => '1596177993000', 'title' => ''],
],
[
'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',
- ],
+ '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.', 'type' => 'string', 'required' => true, 'example' => '1596177993001', 'title' => ''],
],
[
'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',
- ],
+ 'schema' => ['description' => 'The page number. The value must be an integer that is greater than 0. Default value: 1.', 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''],
],
[
'name' => 'PageSize',
'in' => 'query',
- 'schema' => [
- 'description' => 'The number of entries per page. Default value: 10.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '10',
- ],
+ 'schema' => ['description' => 'The number of entries per page. Default value: 10.', 'type' => 'string', 'required' => false, 'example' => '10', 'title' => ''],
],
],
'responses' => [
@@ -3254,20 +3270,12 @@
'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****',
- ],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
'Data' => [
- 'description' => 'The list of cache analysis tasks.'."\n",
+ 'description' => 'The list of cache analysis tasks.',
'type' => 'object',
'properties' => [
'List' => [
@@ -3275,33 +3283,24 @@
'itemNode' => true,
'properties' => [
'CacheAnalysisJob' => [
- 'description' => 'The ID of the data node on the instance.'."\n",
+ 'description' => 'The ID of the data node on the instance.',
'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',
- ],
+ 'TaskState' => ['description' => 'The state of the cache analysis task. Valid values:'."\n"
+ ."\n"
+ .'- **BACKUP**: The data is being backed up.'."\n"
+ ."\n"
+ .'- **ANALYZING**: The data is being analyzed.'."\n"
+ ."\n"
+ .'- **FINISHED**: The data is analyzed.'."\n"
+ ."\n"
+ .'- **FAILED**: An error occurred.', 'type' => 'string', 'example' => 'BACKUP', 'title' => ''],
+ 'JobId' => ['description' => 'The ID of the cache analysis task.', 'type' => 'string', 'example' => 'sf79-sd99-sa37-****', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'BigKeys' => [
'type' => 'object',
'itemNode' => true,
@@ -3314,228 +3313,159 @@
'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',
- ],
+ 'Type' => ['description' => 'The data type of the instance.', 'type' => 'string', 'example' => 'hash', 'title' => ''],
+ 'Db' => ['description' => 'The name of the database.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ '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', 'title' => ''],
+ 'Key' => ['description' => 'The name of the key.', 'type' => 'string', 'example' => 'task_*****', 'title' => ''],
+ 'Encoding' => ['description' => 'The data type of the key.', 'type' => 'string', 'example' => 'hashtable', 'title' => ''],
+ 'Bytes' => ['description' => 'The number of bytes that are occupied by the key.', 'type' => 'integer', 'format' => 'int64', 'example' => '12345', 'title' => ''],
+ 'NodeId' => ['description' => 'The ID of the data node on the instance.', 'type' => 'string', 'example' => 'r-****-db-0', 'title' => ''],
+ 'Count' => ['description' => 'The number of elements in the key.', 'type' => 'integer', 'format' => 'int64', 'example' => '127', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'r-bp18ff4a195d****', 'title' => ''],
+ 'NodeId' => ['description' => 'The ID of the data node on the instance.', 'type' => 'string', 'example' => 'r-x****-db-0', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'PageNo' => ['description' => 'The page number. The value must be an integer that is greater than 0. Default value: 1.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'PageSize' => ['description' => 'The number of entries per page. Default value: 10.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'Extra' => ['description' => 'The reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'Total' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '4', 'title' => ''],
],
+ 'title' => '',
+ '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**: The request was successful.'."\n"
- .'* **false**: The request failed.'."\n",
- 'type' => 'string',
- 'example' => 'true',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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',
+ 'summary' => 'Queries a list of cache analysis tasks.',
'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',
+ .'- 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 API operations of DAS, you must set the region ID to cn-shanghai.'."\n"
+ ."\n"
+ .'- This operation is applicable only to ApsaraDB for Redis.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeCacheAnalysisJobs'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeCacheAnalysisJobs',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ ],
+ 'DescribeCloudBenchTasks' => [
+ 'summary' => 'You can call the DescribeCloudBenchTasks operation to query stress testing tasks.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
'systemTags' => [
- 'operationType' => 'create',
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '29456',
+ 'abilityTreeNodes' => ['FEATUREhdmB8MM4L'],
],
'parameters' => [
[
- 'name' => 'ConsoleContext',
+ 'name' => 'Status',
'in' => 'query',
- 'schema' => [
- 'description' => 'The reserved parameter.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'None',
- ],
+ 'schema' => ['description' => 'The status of the task. Valid values:'."\n"
+ ."\n"
+ .'- **SUCCESS**: The task is successful.'."\n"
+ ."\n"
+ .'- **IGNORED**: The task is ignored.'."\n"
+ ."\n"
+ .'- **RUNNING**: The task is running.'."\n"
+ ."\n"
+ .'- **EXCEPTION**: The task is abnormal.', 'type' => 'string', 'required' => false, 'example' => 'SUCCESS', 'title' => ''],
],
[
- 'name' => 'InstanceId',
+ 'name' => 'TaskType',
'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****',
- ],
+ 'schema' => ['description' => 'The type of the stress testing task. Valid values:'."\n"
+ ."\n"
+ .'- **pressure test** (default): A stress testing task that replays the traffic captured from the source instance on the destination instance at the maximum playback rate that is supported by the destination instance.'."\n"
+ ."\n"
+ .'- **smart pressure test**: A stress testing task that is generated to perform continuous stress testing. The task analyzes the traffic that is captured from a source instance in a short period of time and generates traffic that is similar to the traffic on the source instance in terms of business model and traffic distribution. This reduces the time that is required to collect data from the source instance and lowers the costs of storage and performance.', 'type' => 'string', 'required' => false, 'example' => 'pressure test', 'title' => ''],
],
[
- 'name' => 'SqlType',
+ 'name' => 'StartTime',
'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',
- ],
+ '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.', 'type' => 'string', 'required' => false, 'example' => '1596177993000', 'title' => ''],
],
[
- 'name' => 'MaxConcurrency',
+ 'name' => 'EndTime',
'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',
- ],
+ '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"
+ ."\n"
+ .'> The end time must be later than the start time.', 'type' => 'string', 'required' => false, 'example' => '1596177993001', 'title' => ''],
],
[
- 'name' => 'SqlKeywords',
+ 'name' => 'PageNo',
'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',
- ],
+ 'schema' => ['description' => 'The page number. The value must be a positive integer. Default value: 1.', 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''],
],
[
- 'name' => 'ConcurrencyControlTime',
+ 'name' => 'PageSize',
'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',
- ],
+ 'schema' => ['description' => 'The number of entries to return on each page. The value must be a positive integer. Default value: 10.', 'type' => 'string', 'required' => false, 'example' => '10', 'title' => ''],
],
],
'responses' => [
@@ -3543,114 +3473,583 @@
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The data returned.'."\n"
+ ."\n"
+ .'> If the request is successful, **Successful** is returned. If the request fails, an error message such as an error code is returned.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'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' => 'The detailed information, including the total number of entries returned and the error codes.',
+ 'type' => 'object',
+ 'properties' => [
+ 'PageNo' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'PageSize' => ['description' => 'The number of entries returned on each page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
+ 'Extra' => ['description' => 'The reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'Total' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''],
+ 'List' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'cloudbenchTasks' => [
+ 'itemNode' => true,
+ 'description' => 'The detailed information about the stress testing tasks.',
+ 'title' => '',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'DtsJobName' => ['description' => 'The name of the DTS task.', 'type' => 'string', 'example' => 'RDS间迁移', 'title' => ''],
+ 'ErrorMessage' => ['description' => 'The error message returned if the task fails.', '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].', 'title' => ''],
+ 'External' => ['description' => 'The additional information.', 'type' => 'string', 'example' => 'Null', 'title' => ''],
+ 'BackupType' => ['description' => 'The backup type. Valid values:'."\n"
+ ."\n"
+ .'- **TIMESTAMP**: backup by time.'."\n"
+ ."\n"
+ .'- **BACKUPID**: backup by backup set ID.', 'type' => 'string', 'example' => 'TIMESTAMP', 'title' => ''],
+ 'UserId' => ['description' => 'The ID of the Alibaba Cloud account.', 'type' => 'string', 'example' => '1091411816252****', 'title' => ''],
+ 'DstType' => ['description' => 'The type of the destination instance. Valid values:'."\n"
+ ."\n"
+ .'- **Instance** (default): an instance that is specified by its ID.'."\n"
+ ."\n"
+ .'- **ConnectionString**: an instance that is specified by its endpoint.', 'type' => 'string', 'example' => 'Instance', 'title' => ''],
+ 'EcsInstanceId' => ['description' => 'The ID of the ECS instance.', 'type' => 'string', 'example' => 'i-bp1ecr5go2go1****', 'title' => ''],
+ 'DstInstanceUuid' => ['description' => 'The unique ID of the destination instance.', 'type' => 'string', 'example' => 'hdm_d887b5ccf99fa0dc9a1e5aaac368****', 'title' => ''],
+ 'TaskType' => ['description' => 'The type of the stress testing task. Valid values:'."\n"
+ ."\n"
+ .'- **pressure test** (default): A stress testing task that replays the traffic captured from the source instance on the destination instance at the maximum playback rate that is supported by the destination instance.'."\n"
+ ."\n"
+ .'- **smart pressure test**: A stress testing task that is generated to perform continuous stress testing. The task analyzes the traffic that is captured from a source instance in a short period of time and generates traffic that is similar to the traffic on the source instance in terms of business model and traffic distribution. This reduces the time that is required to collect data from the source instance and lowers the costs of storage and performance.', 'type' => 'string', 'example' => 'pressure test', 'title' => ''],
+ 'BenchStep' => ['description' => 'The sub-step of the stress testing task. Valid values:'."\n"
+ ."\n"
+ .'- **NEW**: The task is being initialized.'."\n"
+ ."\n"
+ .'- **WAIT\\_BUY\\_ECS**: An ECS instance is being purchased.'."\n"
+ ."\n"
+ .'- **WAIT\\_START\\_ECS**: The ECS instance is being started.'."\n"
+ ."\n"
+ .'- **WAIT\\_INSTALL\\_JDK**: JDK is being installed.'."\n"
+ ."\n"
+ .'- **WAIT\\_INSTALL\\_DBGATEWAY**: A DBGateway is being installed.'."\n"
+ ."\n"
+ .'- **ADD\\_SECURITY\\_IPS\\_STEP**: A whitelist is being configured for the security group.'."\n"
+ ."\n"
+ .'- **ARCHIVE**: Full SQL data is being archived.'."\n"
+ ."\n"
+ .'- **DOWNLOAD**: The full SQL file is being downloaded.'."\n"
+ ."\n"
+ .'- **PROCEED**: The full SQL file is being pre-processed.'."\n"
+ ."\n"
+ .'- **PRE\\_LOAD**: The full SQL file is being preloaded.'."\n"
+ ."\n"
+ .'- **VALIDATE**: The feature is being validated.'."\n"
+ ."\n"
+ .'- **PRESSURE**: Performance is being tested.', 'type' => 'string', 'example' => 'PROCEED', 'title' => ''],
+ 'Version' => ['description' => 'The version of the stress testing task. Valid values:'."\n"
+ ."\n"
+ .'- **V2.0**'."\n"
+ ."\n"
+ .'- **V3.0**', 'type' => 'string', 'example' => 'V3.0', 'title' => ''],
+ 'EndState' => ['description' => 'The state of the stress testing task after it is complete. Valid values:'."\n"
+ ."\n"
+ .'- **WAIT\\_TARGET**: The destination instance for stress testing is being prepared.'."\n"
+ ."\n"
+ .'- **WAIT\\_DBGATEWAY**: The stress testing deployment is being prepared.'."\n"
+ ."\n"
+ .'- **WAIT\\_SQL**: Full SQL data is being prepared.'."\n"
+ ."\n"
+ .'- **WAIT\\_LOGIC**: The traffic playback is being prepared.'."\n"
+ ."\n"
+ .'> After the stress testing task enters the state specified by the EndState parameter, the task becomes complete.', 'type' => 'string', 'example' => 'WAIT_TARGET', 'title' => ''],
+ 'SrcInstanceUuid' => ['description' => 'The unique ID of the source instance.', 'type' => 'string', 'example' => 'hdm_3063db6792965c080a4bcb6e6304****', 'title' => ''],
+ 'ClientType' => ['description' => 'The type of the stress testing client. Valid values:'."\n"
+ ."\n"
+ .'- **ECS**: You must prepare a [database gateway](~~64905~~).'."\n"
+ ."\n"
+ .'- **DAS\\_ECS**: DAS automatically purchases and deploys an ECS instance.', 'type' => 'string', 'example' => 'ECS', 'title' => ''],
+ 'State' => ['description' => 'The state of the stress testing task. Valid values:'."\n"
+ ."\n"
+ .'- **WAIT\\_TARGET**: The destination instance for stress testing is being prepared.'."\n"
+ ."\n"
+ .'- **WAIT\\_DBGATEWAY**: The stress testing deployment is being prepared.'."\n"
+ ."\n"
+ .'- **WAIT\\_SQL**: Full SQL data is being prepared.'."\n"
+ ."\n"
+ .'- **WAIT\\_LOGIC**: The traffic playback is being prepared.', 'type' => 'string', 'example' => 'WAIT_TARGET', 'title' => ''],
+ 'DstIp' => ['description' => 'The reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'SrcPublicIp' => ['description' => 'The reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'BackupId' => ['description' => 'The backup set ID. You can call the [DescribeBackups](~~26273~~) operation to query the backup list.', 'type' => 'string', 'example' => '229132', 'title' => ''],
+ 'SqlCompleteReuse' => ['description' => 'The information about the full SQL statements that are reused.', '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"}', 'title' => ''],
+ 'SmartPressureTime' => ['description' => 'The duration of the generated stress testing task. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '86400000', 'title' => ''],
+ 'ArchiveState' => ['description' => 'The status of SQL data archiving. Valid values:'."\n"
+ ."\n"
+ .'- **0**: Not started.'."\n"
+ ."\n"
+ .'- **1**: Complete.'."\n"
+ ."\n"
+ .'- **2**: Error.'."\n"
+ ."\n"
+ .'- **3**: Running.'."\n"
+ ."\n"
+ .'- **4**: No download required.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'Status' => ['description' => 'The status of the stress testing task. Valid values:'."\n"
+ ."\n"
+ .'- **SUCCESS**: The task is successful.'."\n"
+ ."\n"
+ .'- **IGNORED**: The task is ignored.'."\n"
+ ."\n"
+ .'- **RUNNING**: The task is running.'."\n"
+ ."\n"
+ .'- **EXCEPTION**: The task is abnormal.', 'type' => 'string', 'example' => 'RUNNING', 'title' => ''],
+ 'WorkDir' => ['description' => 'The temporary directory generated for stress testing.', 'type' => 'string', 'example' => '/tmp/bench/', 'title' => ''],
+ 'ArchiveOssTableName' => ['description' => 'The name of the table to which data is archived in OSS.', 'type' => 'string', 'example' => 'custins15546355_161604665****', 'title' => ''],
+ 'DtsJobId' => ['description' => 'The ID of the DTS data migration task.', 'type' => 'string', 'example' => 'i03e3zty16i****', 'title' => ''],
+ 'DtsJobState' => ['description' => 'The status of the DTS task. Valid values:'."\n"
+ ."\n"
+ .'- **NOT\\_STARTED**: The task is not started.'."\n"
+ ."\n"
+ .'- **PRE\\_CHECKING**: The task is in precheck.'."\n"
+ ."\n"
+ .'- **PRE\\_CHECK\\_FAILED**: The precheck failed.'."\n"
+ ."\n"
+ .'- **CHECKING**: The task is being checked.'."\n"
+ ."\n"
+ .'- **MIGRATING**: The task is in progress.'."\n"
+ ."\n"
+ .'- **CATCHED**: The destination instance has caught up with the source instance.'."\n"
+ ."\n"
+ .'- **SUSPENDING**: The task is paused.'."\n"
+ ."\n"
+ .'- **MIGRATION\\_FAILED**: The migration failed.'."\n"
+ ."\n"
+ .'- **FINISHED**: The task is complete.'."\n"
+ ."\n"
+ .'- **INITIALIZING**: The task is in initial synchronization.'."\n"
+ ."\n"
+ .'- **INITIALIZE\\_FAILED**: The initial synchronization failed.'."\n"
+ ."\n"
+ .'- **SYNCHRONIZING**: The task is in synchronization.'."\n"
+ ."\n"
+ .'- **MODIFYING**: The synchronization object is being changed.'."\n"
+ ."\n"
+ .'- **SWITCHING**: The task is being switched.'."\n"
+ ."\n"
+ .'- **FAILED**: The task failed.', 'type' => 'integer', 'format' => 'int32', 'example' => 'CHECKING', 'title' => ''],
+ 'DstPort' => ['description' => 'The port number of the destination instance.', 'type' => 'integer', 'format' => 'int32', 'example' => '3306', 'title' => ''],
+ 'DtsJobClass' => ['description' => 'The specifications of the DTS task.'."\n"
+ ."\n"
+ .'> For more information about the specifications and performance of data migration tasks, see [Specifications of data migration tasks](~~26606~~).', 'type' => 'string', 'example' => 'medium', 'title' => ''],
+ 'ClientGatewayId' => ['description' => 'The ID of the database gateway for the stress testing client.', 'type' => 'string', 'example' => '58598b2af48a0193dfc16fc6964ef****', 'title' => ''],
+ 'Description' => ['description' => 'The description of the stress testing task.', 'type' => 'string', 'example' => 'test-das-bench-0501', 'title' => ''],
+ 'ErrorCode' => ['description' => 'The error code returned for the internal stress testing task.', 'type' => 'string', 'example' => '10109', 'title' => ''],
+ 'TableSchema' => ['description' => 'The names of the tables that are involved in the stress testing.', 'type' => 'string', 'example' => '[{"TABLE_NAME":"customer1","TABLE_SCHEMA":"tpcc"}]', 'title' => ''],
+ 'DtsJobStatus' => ['description' => 'The status of the DTS task. Valid values:'."\n"
+ ."\n"
+ .'- **NOT\\_STARTED**: The task is not started.'."\n"
+ ."\n"
+ .'- **PRE\\_CHECKING**: The task is in precheck.'."\n"
+ ."\n"
+ .'- **PRE\\_CHECK\\_FAILED**: The precheck failed.'."\n"
+ ."\n"
+ .'- **CHECKING**: The task is being checked.'."\n"
+ ."\n"
+ .'- **MIGRATING**: The task is in progress.'."\n"
+ ."\n"
+ .'- **CATCHED**: The destination instance has caught up with the source instance.'."\n"
+ ."\n"
+ .'- **SUSPENDING**: The task is paused.'."\n"
+ ."\n"
+ .'- **MIGRATION\\_FAILED**: The migration failed.'."\n"
+ ."\n"
+ .'- **FINISHED**: The task is complete.'."\n"
+ ."\n"
+ .'- **INITIALIZING**: The task is in initial synchronization.'."\n"
+ ."\n"
+ .'- **INITIALIZE\\_FAILED**: The initial synchronization failed.'."\n"
+ ."\n"
+ .'- **SYNCHRONIZING**: The task is in synchronization.'."\n"
+ ."\n"
+ .'- **MODIFYING**: The synchronization object is being changed.'."\n"
+ ."\n"
+ .'- **SWITCHING**: The task is being switched.'."\n"
+ ."\n"
+ .'- **FAILED**: The task failed.', 'type' => 'string', 'example' => 'PRE_CHECK_FAILED', 'title' => ''],
+ 'SrcInstanceArea' => ['description' => 'The database type of the source instance.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
+ 'BenchStepStatus' => ['description' => 'The status of the stress testing sub-step. Valid values:'."\n"
+ ."\n"
+ .'- **NEW**: The task is being initialized.'."\n"
+ ."\n"
+ .'- **RUNNING**: The task is running.'."\n"
+ ."\n"
+ .'- **FAILED**: The task failed.'."\n"
+ ."\n"
+ .'- **FINISHED**: The task is complete.'."\n"
+ ."\n"
+ .'- **Terminated**: The task is terminated.'."\n"
+ ."\n"
+ .'- **Deleted**: The task is deleted.', 'type' => 'string', 'example' => 'FINISHED', 'title' => ''],
+ 'Source' => ['description' => 'The source of the task. Valid values:'."\n"
+ ."\n"
+ .'- **DAS**'."\n"
+ ."\n"
+ .'- **OPEN\\_API**', 'type' => 'string', 'example' => 'DAS', 'title' => ''],
+ 'ArchiveJobId' => ['description' => 'The ID of the data archiving task.', 'type' => 'string', 'example' => '\'202105211430070112231480820340758****', 'title' => ''],
+ 'Topic' => ['description' => 'The consumer topic in Kafka.', 'type' => 'string', 'example' => 'das', 'title' => ''],
+ 'RequestDuration' => ['description' => 'The duration of the stress testing task. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '86400000', 'title' => ''],
+ 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 'e5cec704-0518-430f-8263-76f4dcds****', 'title' => ''],
+ 'Rate' => ['description' => 'The playback rate of the traffic from the source instance on the destination instance. The playback rate must be a positive integer. Valid values: **0** to **30**. Default value: **1**.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'example' => '',
+ ],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ 'title' => 'DescribeCloudBenchTasks',
+ 'description' => 'Database Autonomy Service (DAS) provides an intelligent stress testing feature that helps you determine to scale out your instance to handle service traffic peaks. For more information, see [Intelligent stress testing](~~155068~~).',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeCloudBenchTasks'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeCloudBenchTasks',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
],
- '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',
- ],
+ 'DescribeCloudbenchTask' => [
+ 'summary' => 'Queries a specific stress testing task.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
- 'systemTags' => [
- 'operationType' => 'update',
- ],
+ 'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
- 'name' => 'ConsoleContext',
+ 'name' => 'TaskId',
'in' => 'query',
+ 'schema' => ['description' => 'The unique task ID. You can call the [DescribeCloudBenchTasks](~~230670~~) API to get the task ID.', 'type' => 'string', 'required' => true, 'example' => 'e5cec704-0518-430f-8263-76f4dcds****', 'title' => ''],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => 'The reserved parameter.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'None',
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => ['description' => 'The returned status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The returned message.'."\n"
+ ."\n"
+ .'> - When the request is successful, this parameter returns **Successful**.'."\n"
+ .'>'."\n"
+ .'> - When the request fails, this parameter returns exception information such as error codes.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
+ 'Data' => [
+ 'description' => 'The list of detailed information, including the total number of information items and error codes.',
+ 'type' => 'object',
+ 'properties' => [
+ 'DtsJobName' => ['description' => 'The DTS task name.', 'type' => 'string', 'example' => 'Migration between RDS instances', 'title' => ''],
+ 'ErrorMessage' => ['description' => 'The error message for a failed task.', '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].', 'title' => ''],
+ 'External' => ['description' => 'Additional information.', 'type' => 'string', 'example' => 'Null', 'title' => ''],
+ 'BackupType' => ['description' => 'The backup type. Valid values:'."\n"
+ ."\n"
+ .'- **TIMESTAMP**: By backup time.'."\n"
+ ."\n"
+ .'- **BACKUPID**: By backup set ID.', 'type' => 'string', 'example' => 'TIMESTAMP', 'title' => ''],
+ 'UserId' => ['description' => 'The Alibaba Cloud account ID.', 'type' => 'string', 'example' => '109141182625****', 'title' => ''],
+ 'DstType' => ['description' => 'The type of the destination instance. Valid values:'."\n"
+ ."\n"
+ .'- **Instance** (default): instance ID.'."\n"
+ ."\n"
+ .'- **ConnectionString**: connection address of the instance.', 'type' => 'string', 'example' => 'Instance', 'title' => ''],
+ 'EcsInstanceId' => ['description' => 'The ECS instance ID.', 'type' => 'string', 'example' => 'i-bp1ecr5go2go1****', 'title' => ''],
+ 'DstInstanceUuid' => ['description' => 'The unique identifier of the destination instance.', 'type' => 'string', 'example' => 'hdm_d887b5ccf99fa0dc9a1e5aaac368****', 'title' => ''],
+ 'TaskType' => ['description' => 'The stress testing task type. Valid values:'."\n"
+ ."\n"
+ .'- **pressure test** (default): Intelligent stress testing. The traffic captured from the source instance is replayed on the destination instance at the maximum speed supported by the destination instance type.'."\n"
+ ."\n"
+ .'- **smart pressure test**: Generated stress testing. By analyzing and learning the traffic captured from the source instance in a short period of time, traffic with business models and traffic distribution similar to the original traffic is generated for continuous stress testing. This reduces the time required to collect data from the source instance and lowers storage costs and performance overhead.', 'type' => 'string', 'example' => 'pressure test', 'title' => ''],
+ 'BenchStep' => ['description' => 'The substep of stress testing. Valid values:'."\n"
+ ."\n"
+ .'- **NEW**: task initialization.'."\n"
+ ."\n"
+ .'- **WAIT\\_BUY\\_ECS**: purchase a new ECS instance.'."\n"
+ ."\n"
+ .'- **WAIT\\_START\\_ECS**: start the ECS instance.'."\n"
+ ."\n"
+ .'- **WAIT\\_INSTALL\\_JDK**: install JDK.'."\n"
+ ."\n"
+ .'- **WAIT\\_INSTALL\\_DBGATEWAY**: install Database Gateway.'."\n"
+ ."\n"
+ .'- **ADD\\_SECURITY\\_IPS\\_STEP**: configure security group whitelist.'."\n"
+ ."\n"
+ .'- **ARCHIVE**: full SQL archiving.'."\n"
+ ."\n"
+ .'- **DOWNLOAD**: download the full SQL file.'."\n"
+ ."\n"
+ .'- **PROCEED**: pre-process the full SQL file.'."\n"
+ ."\n"
+ .'- **PRE\\_LOAD**: preload the full SQL file.'."\n"
+ ."\n"
+ .'- **VALIDATE**: feature validation.'."\n"
+ ."\n"
+ .'- **PRESSURE**: performance stress testing.', 'type' => 'string', 'example' => 'PROCEED', 'title' => ''],
+ 'Version' => ['description' => 'The stress testing task version. Valid values:'."\n"
+ ."\n"
+ .'- **V2.0**'."\n"
+ ."\n"
+ .'- **V3.0**', 'type' => 'string', 'example' => 'V3.0', 'title' => ''],
+ 'EndState' => ['description' => 'The status after the stress testing task ends. Valid values:'."\n"
+ ."\n"
+ .'- **WAIT\\_TARGET**: prepare the destination instance for stress testing.'."\n"
+ ."\n"
+ .'- **WAIT\\_DBGATEWAY**: prepare for stress testing deployment.'."\n"
+ ."\n"
+ .'- **WAIT\\_SQL**: prepare the full SQL.'."\n"
+ ."\n"
+ .'- **WAIT\\_LOGIC**: prepare to start replaying traffic.'."\n"
+ ."\n"
+ .'> When the stress testing task completes the status set in EndState, the task will directly reach the completed status.', 'type' => 'string', 'example' => 'WAIT_LOGIC', 'title' => ''],
+ 'SrcInstanceUuid' => ['description' => 'The unique identifier of the source instance.', 'type' => 'string', 'example' => 'a364e414-e68b-4e5c-9166-65b3a153****', 'title' => ''],
+ 'ClientType' => ['description' => 'The stress testing machine type. Valid values:'."\n"
+ ."\n"
+ .'- **ECS**: You need to prepare your own [Database Gateway](~~64905~~).'."\n"
+ ."\n"
+ .'- **DAS\\_ECS**: ECS automatically purchased and deployed by DAS.', 'type' => 'string', 'example' => 'ECS', 'title' => ''],
+ 'State' => ['description' => 'The current status of the stress testing task. Valid values:'."\n"
+ ."\n"
+ .'- **WAIT\\_TARGET**: prepare the destination instance for stress testing.'."\n"
+ ."\n"
+ .'- **WAIT\\_DBGATEWAY**: prepare for stress testing deployment.'."\n"
+ ."\n"
+ .'- **WAIT\\_SQL**: prepare the full SQL.'."\n"
+ ."\n"
+ .'- **WAIT\\_LOGIC**: prepare to start replaying traffic.', 'type' => 'string', 'example' => 'WAIT_TARGET', 'title' => ''],
+ 'DstIp' => ['description' => 'Reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'SrcPublicIp' => ['description' => 'Reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'BackupId' => ['description' => 'The backup set ID. You can obtain it by calling the [DescribeBackups](~~26273~~) operation to query the backup list.', 'type' => 'string', 'example' => '229132', 'title' => ''],
+ 'SqlCompleteReuse' => ['description' => 'The reuse information of the full SQL.', '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"}', 'title' => ''],
+ 'SmartPressureTime' => ['description' => 'The generated stress testing time in milliseconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '86400000', 'title' => ''],
+ 'ArchiveState' => ['description' => 'The SQL archiving status. Valid values:'."\n"
+ ."\n"
+ .'- **0**: Not started.'."\n"
+ ."\n"
+ .'- **1**: Completed.'."\n"
+ ."\n"
+ .'- **2**: Error.'."\n"
+ ."\n"
+ .'- **3**: Running.'."\n"
+ ."\n"
+ .'- **4**: No download required.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'Status' => ['description' => 'The running status of the stress testing task. Valid values:'."\n"
+ ."\n"
+ .'- **SUCCESS**: successful.'."\n"
+ ."\n"
+ .'- **IGNORED**: ignored.'."\n"
+ ."\n"
+ .'- **RUNNING**: running.'."\n"
+ ."\n"
+ .'- **EXCEPTION**: abnormal.', 'type' => 'string', 'example' => 'RUNNING', 'title' => ''],
+ 'WorkDir' => ['description' => 'The temporary directory generated for stress testing.', 'type' => 'string', 'example' => '/tmp/bench/', 'title' => ''],
+ 'ArchiveOssTableName' => ['description' => 'The OSS table name for archiving.', 'type' => 'string', 'example' => 'custins15546355_161604665****', 'title' => ''],
+ 'DtsJobId' => ['description' => 'The DTS migration task ID.', 'type' => 'string', 'example' => 'i03e3zty16i****', 'title' => ''],
+ 'DtsJobState' => ['description' => 'The DTS task status. Valid values:'."\n"
+ ."\n"
+ .'- **NOT\\_STARTED**: not started.'."\n"
+ ."\n"
+ .'- **PRE\\_CHECKING**: precheck in progress.'."\n"
+ ."\n"
+ .'- **PRE\\_CHECK\\_FAILED**: precheck failed.'."\n"
+ ."\n"
+ .'- **CHECKING**: check in progress.'."\n"
+ ."\n"
+ .'- **MIGRATING**: migration in progress.'."\n"
+ ."\n"
+ .'- **CATCHED**: caught up.'."\n"
+ ."\n"
+ .'- **SUSPENDING**: pausing.'."\n"
+ ."\n"
+ .'- **MIGRATION\\_FAILED**: migration failed.'."\n"
+ ."\n"
+ .'- **FINISHED**: completed.'."\n"
+ ."\n"
+ .'- **INITIALIZING**: initial synchronization.'."\n"
+ ."\n"
+ .'- **INITIALIZE\\_FAILED**: initial synchronization failed.'."\n"
+ ."\n"
+ .'- **SYNCHRONIZING**: synchronization in progress.'."\n"
+ ."\n"
+ .'- **MODIFYING**: synchronization object change in progress.'."\n"
+ ."\n"
+ .'- **SWITCHING**: switching in progress.'."\n"
+ ."\n"
+ .'- **FAILED**: failed.', 'type' => 'integer', 'format' => 'int32', 'example' => 'CHECKING', 'title' => ''],
+ 'DstPort' => ['description' => 'The port of the destination instance.', 'type' => 'integer', 'format' => 'int32', 'example' => '3306', 'title' => ''],
+ 'DtsJobClass' => ['description' => 'The DTS task specification.', 'type' => 'string', 'example' => 'medium', 'title' => ''],
+ 'ClientGatewayId' => ['description' => 'The database gateway ID of the stress testing machine.', 'type' => 'string', 'example' => '58598b2af48a0193dfc16fc6964ef****', 'title' => ''],
+ 'Description' => ['description' => 'The description of the stress testing task.', 'type' => 'string', 'example' => 'test-das-bench-0501', 'title' => ''],
+ 'ErrorCode' => ['description' => 'The error code returned by the internal stress testing task.', 'type' => 'string', 'example' => '10910', 'title' => ''],
+ 'TableSchema' => ['description' => 'The table names involved in stress testing.', 'type' => 'string', 'example' => '[{"TABLE_NAME":"customer1","TABLE_SCHEMA":"tpcc"}]', 'title' => ''],
+ 'DtsJobStatus' => ['description' => 'The DTS task status. Valid values:'."\n"
+ ."\n"
+ .'- **NOT\\_STARTED**: not started.'."\n"
+ ."\n"
+ .'- **PRE\\_CHECKING**: lrecheck in progress.'."\n"
+ ."\n"
+ .'- **PRE\\_CHECK\\_FAILED**: precheck failed.'."\n"
+ ."\n"
+ .'- **CHECKING**: check in progress.'."\n"
+ ."\n"
+ .'- **MIGRATING**: migration in progress.'."\n"
+ ."\n"
+ .'- **CATCHED**: caught up.'."\n"
+ ."\n"
+ .'- **SUSPENDING**: pausing.'."\n"
+ ."\n"
+ .'- **MIGRATION\\_FAILED**: migration failed.'."\n"
+ ."\n"
+ .'- **FINISHED**: completed.'."\n"
+ ."\n"
+ .'- **INITIALIZING**: initial synchronization.'."\n"
+ ."\n"
+ .'- **INITIALIZE\\_FAILED**: initial synchronization failed.'."\n"
+ ."\n"
+ .'- **SYNCHRONIZING**: synchronization in progress.'."\n"
+ ."\n"
+ .'- **MODIFYING**: synchronization object change in progress.'."\n"
+ ."\n"
+ .'- **SWITCHING**: switching in progress.'."\n"
+ ."\n"
+ .'- **FAILED**: failed.', 'type' => 'string', 'example' => 'PRE_CHECKING', 'title' => ''],
+ 'SrcInstanceArea' => ['description' => 'The database type of the source instance.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
+ 'BenchStepStatus' => ['description' => 'The status of the stress testing child step. Valid values:'."\n"
+ ."\n"
+ .'- **NEW**: task initialization.'."\n"
+ ."\n"
+ .'- **RUNNING**: executing.'."\n"
+ ."\n"
+ .'- **FAILED**: failed.'."\n"
+ ."\n"
+ .'- **FINISHED**: completed.'."\n"
+ ."\n"
+ .'- **Terminated**: terminated.'."\n"
+ ."\n"
+ .'- **Deleted**: deleted.', 'type' => 'string', 'example' => 'FINISHED', 'title' => ''],
+ 'Source' => ['description' => 'The task source. Valid values:'."\n"
+ ."\n"
+ .'- **DAS**.'."\n"
+ ."\n"
+ .'- **OPEN\\_API**.', 'type' => 'string', 'example' => 'DAS', 'title' => ''],
+ 'ArchiveJobId' => ['description' => 'The archiving task ID.', 'type' => 'string', 'example' => '\'202105211430070112231480820340758****', 'title' => ''],
+ 'Topic' => ['description' => 'The Kafka consumption topic.', 'type' => 'string', 'example' => 'das', 'title' => ''],
+ 'RequestDuration' => ['description' => 'The duration of the stress testing task.', 'type' => 'integer', 'format' => 'int64', 'example' => '864000', 'title' => ''],
+ 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 'e5cec704-0518-430f-8263-76f4dcds****', 'title' => ''],
+ 'Rate' => ['description' => 'The stress testing multiplier. The replay multiplier must be a positive integer ranging from **0** to **30**. The default value is **1**.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
- [
- '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****',
+ ],
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
+ ],
+ 403 => [
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"DtsJobName\\": \\"Migration between RDS instances\\",\\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}","type":"json"}]',
+ 'title' => 'DescribeCloudbenchTask',
+ 'description' => 'Call this API to get a specific stress testing task by the task status, type, and timestamp. This helps you check whether your instance needs to be scaled up to effectively handle traffic spikes. For more information, see [Intelligent stress testing](~~155068~~).',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeCloudbenchTask'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeCloudbenchTask',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
+ ],
+ 'translator' => 'manual',
+ ],
+ 'DescribeCloudbenchTaskConfig' => [
+ 'summary' => 'Retrieves the detailed configuration, file paths, and execution commands for a specific stress test task.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
+ 'security' => [
[
- 'name' => 'ItemId',
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => ['operationType' => 'get'],
+ 'parameters' => [
+ [
+ 'name' => 'TaskId',
'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',
- ],
+ 'schema' => ['description' => 'The unique ID of the stress test task. You can call the [DescribeCloudBenchTasks](~~230670~~) API to get the task ID.', 'type' => 'string', 'required' => true, 'example' => 'e5cec704-0518-430f-8263-76f4dcds****', 'title' => ''],
],
],
'responses' => [
@@ -3658,103 +4057,117 @@
'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',
- ],
+ 'Code' => ['description' => 'The returned status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The returned message.'."\n"
+ ."\n"
+ .'> When the request is successful, this parameter returns **Successful**. When the request fails, this parameter returns exception information (such as error codes).', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request is successful:'."\n"
+ ."\n"
+ .'- **true**: The request is successful.'."\n"
+ ."\n"
+ .'- **false**: The request fails.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'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' => 'The list of detailed information, including the total number of information items, error codes, and other details.',
+ 'type' => 'object',
+ 'properties' => [
+ 'WorkDir' => ['description' => 'The temporary directory generated for stress testing.', 'type' => 'string', 'example' => '/tmp/bench/', 'title' => ''],
+ 'ArchiveFolder' => ['description' => 'The path of archived objects.', 'type' => 'string', 'example' => '/tmp/das/cloudbench/archive-sqls/', 'title' => ''],
+ 'MetaFilePath' => ['description' => 'The path of the metadata file.', 'type' => 'string', 'example' => '/tmp/das/cloudbench/cl-1621353601000-360****.meta', 'title' => ''],
+ 'MetaFileName' => ['description' => 'The name of the metadata file.', 'type' => 'string', 'example' => 'cl-1621353601000-360****.meta', 'title' => ''],
+ 'MetaFileOnOss' => ['description' => 'The name of the metadata file in OSS.', 'type' => 'string', 'example' => '"https://cb-rm-bp1w9g06h560l****.oss-cn-hangzhou.aliyuncs.com/cl-1621353601000-360****.meta?OSSAccessKeyId=LTAI5tKj8B4wikkVtupK****&Expires=1622441372&Signature=Qsehg3tzeA57M%2BIixAbWPWAtvl****', 'title' => ''],
+ 'UserId' => ['description' => 'The Alibaba Cloud account ID.', 'type' => 'string', 'example' => '1091411816252****', 'title' => ''],
+ 'BenchCmd' => ['description' => 'The stress testing command.', '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', 'title' => ''],
+ 'SqlFileOnOss' => ['description' => 'The name of the full SQL file in OSS.', 'type' => 'string', 'example' => 'https://cb-rm-bp1w9g06h560l****.oss-cn-hangzhou.aliyuncs.com/cl-1621353601000-360****.sc?OSSAccessKeyId=LTAI5tKj8B4wikkVtupK****&Expires=1622441372&Signature=LYMADwo%2BRrJeqR3e4d8OlIkVmw****', 'title' => ''],
+ 'LoadCmd' => ['description' => 'The command for preloading the SQL file.', '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', 'title' => ''],
+ 'RocksDbPath' => ['description' => 'The location of the RocksDB storage system in the stress testing machine.', 'type' => 'string', 'example' => '/tmp/das/cloudbench/rocksdb', 'title' => ''],
+ 'ParseCmd' => ['description' => 'The command for parsing the SQL file.', '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', 'title' => ''],
+ 'SqlFileName' => ['description' => 'The name of the full SQL file.', 'type' => 'string', 'example' => 'cl-1621353601000-360****.sc', 'title' => ''],
+ 'ClientJarPath' => ['description' => 'The path of the stress testing JAR package.', 'type' => 'string', 'example' => '/tmp/das/cloudbench/CloudBenchClient.jar', 'title' => ''],
+ 'SqlFilePath' => ['description' => 'The path of the SQL file.', 'type' => 'string', 'example' => '/tmp/das/cloudbench/cl-1621353601000-360****.sc', 'title' => ''],
+ 'ParseFilePath' => ['description' => 'The path of the parsed SQL file.', 'type' => 'string', 'example' => '/tmp/das/cloudbench/2777bba9-a836-49e6-9f70-1c3822fc****.archiveSql', 'title' => ''],
+ 'JarOnOss' => ['description' => 'The path of the stress testing JAR package in OSS.', 'type' => 'string', 'example' => 'https://cloudbench-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/CloudBenchClient.jar?OSSAccessKeyId=LTAI5tKj8B4wikkVtupK****&Expires=1622441372&Signature=28p%2BCe4tNHpr9VPOcHc3Si9iOb****', 'title' => ''],
+ 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 'e5cec704-0518-430f-8263-76f4dcds****', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
+ ],
+ ],
+ 'title' => 'DescribeCloudbenchTaskConfig',
+ 'description' => 'Call this API to get the configuration details of a stress testing task for advanced debugging, or to understand how the Database Autonomy Service (DAS) stress testing feature operates. For more information, see [Intelligent stress testing](~~155068~~).',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeCloudbenchTaskConfig'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeCloudbenchTaskConfig',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
],
- '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",
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
],
- 'DisableAllSqlConcurrencyControlRules' => [
- 'summary' => 'Disables all throttling rules that are in effect.',
- 'methods' => [
- 'get',
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'DescribeDiagnosticReportList' => [
+ 'summary' => 'Queries diagnostics reports.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
- 'systemTags' => [
- 'operationType' => 'update',
- ],
+ 'operationType' => 'read',
+ 'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
- 'name' => 'ConsoleContext',
+ 'name' => 'DBInstanceId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The reserved parameter.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'None',
- ],
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
[
- 'name' => 'InstanceId',
+ 'name' => 'PageNo',
'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****',
- ],
+ 'schema' => ['description' => 'The page number. The value must be a positive integer. Default value: 1.', 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The number of entries per page. Default value: 10.', 'type' => 'string', 'required' => false, 'example' => '10', 'title' => ''],
+ ],
+ [
+ '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.', 'type' => 'string', 'required' => true, 'example' => '1668398892000', 'title' => ''],
+ ],
+ [
+ '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.', 'type' => 'string', 'required' => true, 'example' => '1668420492000', 'title' => ''],
],
],
'responses' => [
@@ -3762,334 +4175,321 @@
'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',
- ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'D00DB161-FEF6-5428-B37A-8D29A4C2****', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'Synchro' => ['description' => 'The reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'Data' => ['description' => 'The information of the diagnostics reports. Valid values:'."\n"
+ ."\n"
+ .'- **total**: the number of diagnostics reports.'."\n"
+ ."\n"
+ .'- **score**: the health score.'."\n"
+ ."\n"
+ .'- **diagnosticTime**: the time when the diagnostics report was generated. The time is displayed in UTC.'."\n"
+ ."\n"
+ .'- **startTime**: the start time of the query. The time is displayed in UTC.'."\n"
+ ."\n"
+ .'- **endTime**: the end time of the query. The time is displayed in UTC.', '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" } ] }', 'title' => ''],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'title' => 'DescribeDiagnosticReportList',
+ 'description' => 'Before you call this operation, take note of the following items:'."\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',
+ .'- 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"
+ ."\n"
+ .' - PolarDB for MySQL'."\n"
+ ."\n"
+ .' - ApsaraDB for Redis',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeDiagnosticReportList'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeDiagnosticReportList',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ ],
+ 'DescribeErrorLogRecords' => [
+ 'summary' => 'Queries the details of error logs for a specific database instance within a specified time range.',
+ 'path' => '',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
+ 'operationType' => 'read',
+ 'deprecated' => false,
'systemTags' => [
- 'operationType' => 'get',
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '235508',
+ 'abilityTreeNodes' => ['FEATUREhdmR88NLD'],
+ 'tenantRelevance' => 'tenant',
],
'parameters' => [
[
- 'name' => 'ConsoleContext',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The reserved parameter.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'None',
- ],
+ 'name' => 'InstanceId',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => 'pc-bp1u5mas9exx7****'],
],
[
- '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' => 'NodeId',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The node ID.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'pi-bp16v3824rt73****'],
],
[
- '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' => 'Role',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The node role:'."\n"
+ ."\n"
+ .'- db'."\n"
+ .'- mongos'."\n"
+ ."\n"
+ .'> This parameter is supported only for ApsaraDB for MongoDB instances.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'db'],
+ ],
+ [
+ 'name' => 'StartTime',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The beginning of the time range to query. The value is a UNIX timestamp. Unit: milliseconds.'."\n"
+ ."\n"
+ .'><notice>'."\n"
+ ."\n"
+ .'This field is of the Long type. During serialization and deserialization, precision may be lost. Make sure that the value does not exceed 9007199254740991.'."\n"
+ ."\n"
+ .'</notice>', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'title' => '', 'example' => '1731983066000'],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The end of the time range to query. The value is a UNIX timestamp. Unit: milliseconds.'."\n"
+ ."\n"
+ .'><notice>'."\n"
+ ."\n"
+ .'This field is of the Long type. During serialization and deserialization, precision may be lost. Make sure that the value does not exceed 9007199254740991.'."\n"
+ ."\n"
+ .'</notice>', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'title' => '', 'example' => '1732069466000'],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'title' => '', 'example' => '1'],
],
[
'name' => 'PageSize',
- 'in' => 'query',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The number of entries per page. Maximum value: 100.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'title' => '', 'example' => '10'],
+ ],
+ [
+ 'name' => 'Filters',
+ 'in' => 'formData',
+ 'style' => 'repeatList',
'schema' => [
- 'description' => 'The number of entries per page. The value must be a positive integer. Default value: 10.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
+ 'description' => 'The filter conditions.'."\n"
+ ."\n"
+ .'> Error log filtering is supported only for RDS MySQL, RDS PostgreSQL, PolarDB for MySQL, PolarDB for PostgreSQL, and PolarDB for PostgreSQL (compatible with Oracle).',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The filter conditions.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => ['title' => '', 'description' => 'The filter parameter. Set the value to filters.', 'type' => 'string', 'required' => false, 'example' => 'filters'],
+ 'Value' => ['description' => 'The content of the error log to filter.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'deadlock'."\n"],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
'required' => false,
- 'example' => '10',
+ 'maxItems' => 100,
+ 'title' => '',
+ 'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
+ 'title' => '',
+ 'description' => 'The returned data.',
'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',
- ],
+ 'Code' => ['description' => 'The returned status code.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '200'],
+ 'Message' => ['description' => 'The returned message.'."\n"
+ ."\n"
+ .'> If the request is successful, **Successful** is returned. If the request fails, error information such as an error code is returned.', 'type' => 'string', 'title' => '', 'example' => 'Successful'],
+ 'RequestId' => ['description' => 'The unique request ID.', 'type' => 'string', 'title' => '', 'example' => 'AAA17591-B48B-4D31-9CD6-9B9796B2****'],
+ 'Success' => ['description' => 'Indicates whether the request was successful:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ .'- **false**: The request failed.', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
'Data' => [
- 'description' => 'The detailed information, including the error codes and the number of entries that are returned.'."\n",
+ 'title' => '',
+ 'description' => 'The data details.',
'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',
- ],
- ],
- ],
+ 'ItemsNumbers' => ['description' => 'The total number of log details returned.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '10'],
+ 'StartTime' => ['description' => 'The beginning of the time range to query. The time is in the yyyy-MM-ddTHH:mm:ssZ format (UTC).', 'type' => 'string', 'title' => '', 'example' => '2025-07-22T05:48:43Z'],
+ 'EndTime' => ['description' => 'The end of the time range to query. The time is in the yyyy-MM-ddTHH:mm:ssZ format (UTC).', 'type' => 'string', 'title' => '', 'example' => '2025-07-23T05:48:43Z'],
+ 'TotalRecords' => ['description' => 'The total number of log details within the time range to query.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '100'],
+ 'PageNumbers' => ['description' => 'The page number of the current query.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '1'],
+ 'MaxRecordsPerPage' => ['description' => 'The maximum number of records displayed per page.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '10'],
+ 'Logs' => [
+ 'description' => 'The log details.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The log details.',
+ 'type' => 'object',
+ 'properties' => [
+ 'CreateTime' => ['description' => 'The time when the error log was generated. The value is a UNIX timestamp. Unit: milliseconds.'."\n"
+ ."\n"
+ .'><notice>'."\n"
+ ."\n"
+ .'For ApsaraDB for MongoDB instances, the time is in the yyyy-MM-ddTHH:mm:ssZ format (UTC).'."\n"
+ ."\n"
+ .'</notice>', 'type' => 'string', 'title' => '', 'example' => '1731983067000'],
+ 'DBInstanceName' => ['description' => 'The node ID.'."\n"
+ ."\n"
+ .'> This parameter is supported only for ApsaraDB for MongoDB instances.', 'type' => 'string', 'title' => '', 'example' => 'd-bp128a003436****'."\n"],
+ 'Category' => ['description' => 'The log category. Valid values:'."\n"
+ ."\n"
+ .'- **NETWORK**: network connectivity logs.'."\n"
+ .'- **ACCESS**: access control logs.'."\n"
+ .'- **-**: common logs.'."\n"
+ .'- **COMMAND**: slow query log.'."\n"
+ .'- **SHARDING**: cluster logs.'."\n"
+ .'- **STORAGE**: storage engine logs.'."\n"
+ .'- **CONNPOOL**: connection pool logs.'."\n"
+ .'- **ASIO**: asynchronous I/O logs.'."\n"
+ .'- **WRITE**: slow update logs.'."\n"
+ ."\n"
+ .'> This parameter is supported only for ApsaraDB for MongoDB instances.', 'type' => 'string', 'title' => '', 'example' => 'NETWORK'],
+ 'ConnInfo' => ['description' => 'The connection information of the log.'."\n"
+ ."\n"
+ .'> This parameter is supported only for ApsaraDB for MongoDB instances.', 'type' => 'string', 'title' => '', 'example' => 'conn18xxxxxx'],
+ 'Content' => ['description' => 'The error log.', 'type' => 'string', 'title' => '', 'example' => '2025-07-15T15:14:27.175188+08:00 0 [Note] [MY-012468] [InnoDB] Transactions deadlock detected, dumping detailed information.'],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
- ],
- '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',
+ 'example' => '',
],
],
- 'description' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'DescribeErrorLogRecords',
+ 'description' => 'This operation queries the error log details of an instance within a specified time range.'."\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',
+ .'The following prerequisites must be met to use this operation:'."\n"
+ ."\n"
+ .'- **Engine**: RDS MySQL, RDS PostgreSQL, PolarDB for MySQL, PolarDB for PostgreSQL, PolarDB for PostgreSQL (compatible with Oracle), or ApsaraDB for MongoDB.'."\n"
+ .'- **SDK version**: Use the latest version of the Alibaba Cloud SDK.'."\n"
+ .'- **Region**: If you call the API via the SDK, set the region ID to `cn-shanghai`.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeErrorLogRecords',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ '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"}]',
+ ],
+ 'DescribeHotBigKeys' => [
+ 'summary' => 'Calls the DescribeHotBigKeys operation to retrieve the hot keys and big keys in the current 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',
- ],
+ 'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
'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',
- ],
+ 'schema' => ['description' => 'The instance ID of the Redis instance.', 'type' => 'string', 'required' => true, 'example' => 'r-bp18ff4a195d****', 'title' => ''],
],
[
- 'name' => 'PageSize',
+ 'name' => 'NodeId',
'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',
- ],
+ 'schema' => ['description' => 'The ID of the data shard in the Redis instance.', 'type' => 'string', 'required' => false, 'example' => 'r-****-db-0', 'title' => ''],
],
],
'responses' => [
@@ -4097,199 +4497,209 @@
'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',
- ],
+ 'Message' => ['description' => 'The returned message.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
'Data' => [
- 'description' => 'The detailed information, including the error codes and the number of entries that are returned.'."\n",
+ 'description' => 'The details.',
'type' => 'object',
'properties' => [
- 'Total' => [
- 'description' => 'The total number of entries returned.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '4',
+ 'HotKeys' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'HotKey' => [
+ 'description' => 'The list of hot keys sorted by QPS.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The list of hot keys sorted by QPS.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => ['description' => 'The key.', 'type' => 'string', 'example' => 'abc:def:eng', 'title' => ''],
+ 'Db' => ['description' => 'The database (DB) in which the key is stored.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'Hot' => ['description' => 'The access frequency of the key, which is the number of accesses per second.', 'type' => 'string', 'example' => '5500~6000', 'title' => ''],
+ 'KeyType' => ['description' => 'The type of the key.', 'type' => 'string', 'example' => 'zset', 'title' => ''],
+ 'Lfu' => ['description' => 'The statistical value of the Least Frequently Used (LFU) algorithm.', 'type' => 'integer', 'format' => 'int32', 'example' => '253', 'title' => ''],
+ 'NodeId' => ['description' => 'The ID of the data shard in the Redis instance.', 'type' => 'string', 'example' => 'r-x****-db-0', 'title' => ''],
+ 'Size' => ['description' => 'The number of elements.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
- 'List' => [
+ 'BigKeys' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
- 'rules' => [
- 'description' => 'The list of the queried throttling rules.',
+ 'BigKey' => [
+ 'description' => 'The list of big keys sorted by the number of child elements.',
'type' => 'array',
'items' => [
+ 'description' => 'The list of big keys sorted by the number of child elements.',
'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',
- ],
+ 'Db' => ['description' => 'The database (DB) in which the key is stored.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'Key' => ['description' => 'The key.', 'type' => 'string', 'example' => 'abc:def:eng', 'title' => ''],
+ 'KeyType' => ['description' => 'The type of the key.', 'type' => 'string', 'example' => 'zset', 'title' => ''],
+ 'Size' => ['description' => 'The number of elements.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''],
+ 'NodeId' => ['description' => 'The ID of the data shard in the Redis instance.', 'type' => 'string', 'example' => 'r-x****-db-0', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'HotKeyMsg' => ['description' => 'The reason why the hot keys sorted by QPS failed to be retrieved.', 'type' => 'string', 'example' => 'current version doesn\'t support', 'title' => ''],
+ 'BigKeyMsg' => ['description' => 'The reason why the big keys sorted by the number of child elements failed to be retrieved.', 'type' => 'string', 'example' => 'current version doesn\'t support', 'title' => ''],
+ 'HighTrafficKeyMsg' => ['description' => 'The reason why the hot keys sorted by traffic failed to be retrieved.', 'type' => 'string', 'example' => 'current version doesn\'t support', 'title' => ''],
+ 'HighTrafficKeys' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'HighTrafficKey' => [
+ 'description' => 'The list of hot keys sorted by traffic.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The list of hot keys sorted by traffic.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => ['description' => 'The key.', 'type' => 'string', 'example' => 'abc:def:eng', 'title' => ''],
+ 'Db' => ['description' => 'The database (DB) in which the key is stored.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'Hot' => ['description' => 'The access frequency of the key, which is the number of accesses per second.', 'type' => 'string', 'example' => '1988', 'title' => ''],
+ 'KeyType' => ['description' => 'The type of the key.', 'type' => 'string', 'example' => 'string', 'title' => ''],
+ 'NodeId' => ['description' => 'The node ID.', 'type' => 'string', 'example' => 'r-x****-db-0'."\n", 'title' => ''],
+ 'inBytes' => ['description' => 'The inbound traffic. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '85767', 'title' => ''],
+ 'outBytes' => ['description' => 'The outbound traffic. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '1054684', 'title' => ''],
+ 'Size' => ['description' => 'The number of elements.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'LargeKeys' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'LargeKey' => [
+ 'description' => 'The list of big keys sorted by memory usage.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The list of big keys sorted by memory usage.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Db' => ['description' => 'The database (DB) in which the key is stored.', 'type' => 'string', 'example' => '0', 'title' => ''],
+ 'Key' => ['description' => 'The key.', 'type' => 'string', 'example' => 'abc:def:eng', 'title' => ''],
+ 'KeyType' => ['description' => 'The type of the key.', 'type' => 'string', 'example' => 'string', 'title' => ''],
+ 'DataSize' => ['description' => 'The memory usage of the key. Unit: bytes.', 'type' => 'string', 'example' => '33554439', 'title' => ''],
+ 'NodeId' => ['description' => 'The node ID.', 'type' => 'string', 'example' => 'r-x****-db-0', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'LargeKeyMsg' => ['description' => 'The reason why the big keys sorted by memory usage failed to be retrieved.', 'type' => 'string', 'example' => 'current version doesn\'t support', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'Code' => ['description' => 'The returned status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => 'The request parameters are invalid.'],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => 'You do not have the permissions to perform this operation.'],
],
],
- '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"
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ 'title' => 'Retrieve current hot keys and big keys in real time',
+ 'description' => 'For keys with data structures of List, Hash, Set, or Zset, the top 3 keys are sorted and displayed by the number of elements in the key, and are recorded as big keys. If the QPS of a key exceeds 5,000, the key is recorded as a hot key. For more information about the definitions of big keys and hot keys, see [Top Key statistics](https://www.alibabacloud.com/help/en/das/user-guide/key-analysis).'."\n"
+ .'>'."\n"
+ .'> - For instances running Redis Community Edition 7.0.18, 6.0.2.9, 5.5.2.9, or earlier versions, or Tair (Enhanced Edition) in-memory instances running version 5.0.50, 25.2.0.0, or earlier versions, a key with a QPS greater than 3,000 is recorded as a hot key. This threshold cannot be adjusted.'."\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',
+ .'- When using the Alibaba Cloud SDK, make sure the version of aliyun-sdk-core is later than 4.3.3. We recommend that you use the latest version.'."\n"
+ .'- Use DAS SDK 1.0.2 or later.'."\n"
+ .'- When calling DAS by using the SDK, set the region to cn-shanghai.'."\n"
+ .'- This operation applies only to the following Redis instances:'."\n"
+ .' - The instance is Redis Community Edition or Tair (Redis® OSS-Compatible) in-memory.'."\n"
+ .' - The minor version of the instance is the latest.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeHotBigKeys'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeHotBigKeys',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'DescribeHotKeys' => [
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'systemTags' => [
- 'operationType' => 'get',
- ],
+ 'operationType' => 'read',
+ 'systemTags' => ['operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free'],
'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****',
- ],
+ 'schema' => ['description' => 'The ID of the Redis instance.', 'type' => 'string', 'required' => true, 'example' => 'r-bp18ff4a195d****', 'title' => ''],
],
[
- 'name' => 'SqlText',
+ 'name' => 'NodeId',
'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\'',
- ],
+ 'schema' => ['description' => 'The ID of the data shard of the Redis instance.', 'type' => 'string', 'required' => false, 'example' => 'r-x****-db-0', 'title' => ''],
],
],
'responses' => [
@@ -4297,124 +4707,119 @@
'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',
- ],
+ 'Message' => ['description' => 'The response message.'."\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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
'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',
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'HotKey' => [
+ 'description' => 'The list of detailed information.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The result set.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => ['description' => 'The key.', 'type' => 'string', 'example' => 'abc:def:eng', 'title' => ''],
+ 'Db' => ['description' => 'The DB where the key is stored.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'Hot' => ['description' => 'The access frequency of the key, which is the number of accesses per second.', 'type' => 'string', 'example' => '5500~6000', 'title' => ''],
+ 'KeyType' => ['description' => 'The type of the key.', 'type' => 'string', 'example' => 'zset', 'title' => ''],
+ 'Size' => ['description' => 'The number of elements.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''],
+ 'InBytes' => ['type' => 'integer', 'format' => 'int64', 'description' => '', 'example' => '85766', 'title' => ''],
+ 'OutBytes' => ['type' => 'integer', 'format' => 'int64', 'description' => '', 'example' => '1054688', 'title' => ''],
+ 'NodeId' => ['type' => 'string', 'description' => '', 'example' => 'r-x****-db-0', 'title' => ''],
+ 'Category' => ['type' => 'string', 'description' => '', 'example' => 'qps', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'Code' => ['description' => 'The status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful.'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'title' => 'DescribeHotKeys',
+ 'summary' => 'Checks the hot keys of a Redis instance.',
+ 'description' => 'Before you call this operation, take note of the following items:'."\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',
+ .'* 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.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeHotKeys'],
+ ],
],
- 'schemes' => [
- 'http',
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeHotKeys',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ ],
+ 'DescribeInstanceDasPro' => [
+ 'methods' => ['post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
+ 'operationType' => 'read',
+ 'deprecated' => false,
'systemTags' => [
- 'operationType' => 'create',
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => ['FEATUREhdm543Z01'],
],
'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\'',
- ],
+ 'schema' => ['description' => 'The database instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
],
'responses' => [
@@ -4422,426 +4827,256 @@
'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',
- ],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '9CB97BC4-6479-55D0-B9D0-EA925AFE****', 'title' => ''],
+ 'Data' => ['description' => 'Indicates whether DAS Enterprise Edition is enabled for the database instance. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'title' => 'DescribeInstanceDasPro',
+ 'summary' => 'Queries whether Database Autonomy Service (DAS) Enterprise Edition V1 or V2 is enabled for a database instance.',
+ 'description' => '- For more information about the database instances that support DAS Enterprise Edition, see [Overview of DAS Enterprise Edition](~~190912~~).'."\n"
."\n"
- .'* This operation supports the following database engines:'."\n"
+ .'- If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\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"
+ .'- This operation is applicable only to DAS Enterprise Edition V1 and V2.'."\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',
+ .'> We recommend that you call the [DescribeSqlLogConfig](~~2778837~~) operation to query the DAS Enterprise Edition configurations of a database instance.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeInstanceDasPro'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeInstanceDasPro',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"9CB97BC4-6479-55D0-B9D0-EA925AFE****\\",\\n \\"Data\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]',
+ ],
+ 'DescribeQueryExplain' => [
+ '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' => 'query',
- 'schema' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-0iwhhl8gx0ld6****',
- ],
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The ID of the instance.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
[
'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****',
- ],
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The ID of the node.'."\n"
+ ."\n"
+ .'> For PolarDB for MySQL instances, if you specify a node ID, the system queries the execution plan on that node. Otherwise, it queries the execution plan on a secondary node.For high availability ApsaraDB RDS for MySQL instances, if you specify an instance ID, the system queries the execution plan on that node. Otherwise, it queries the execution plan on a secondary node.', 'type' => 'string', 'required' => false, 'example' => 'pi-bp1v203xzzh0a****', 'title' => ''],
],
[
- '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' => 'Sql',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The SQL statement for which you want to get the execution plan.', 'type' => 'string', 'required' => true, 'example' => 'select * from test where name = \'mockUser\'', 'title' => ''],
],
[
- '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' => 'DbName',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The name of the database.', 'type' => 'string', 'required' => false, 'example' => 'dbtest01', 'title' => ''],
],
[
- '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',
- ],
+ 'name' => 'Schema',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'Schema information. This is a reserved parameter.', 'type' => 'string', 'required' => false, 'example' => '无', 'title' => ''],
],
],
'responses' => [
200 => [
- 'headers' => [],
'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Response 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****',
- ],
+ 'Code' => ['description' => 'The status code returned. A value of 200 indicates success.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The response message.'."\n"
+ ."\n"
+ .'> If the request succeeds, this parameter returns Successful. If the request fails, this parameter returns error details such as an error code.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request succeeded:'."\n"
+ ."\n"
+ .'- **true**: The request succeeded.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'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',
- ],
+ 'title' => 'List<ExplainedSqlDO>',
+ 'description' => 'List of execution plans.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The returned data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Id' => ['description' => 'The ID of the query.', 'type' => 'string', 'example' => '1', 'title' => ''],
+ 'SelectType' => ['description' => 'The type of the query.', 'type' => 'string', 'example' => 'SIMPLE', 'title' => ''],
+ 'Table' => ['description' => 'The name of the table.', 'type' => 'string', 'example' => 'test', 'title' => ''],
+ 'Type' => ['description' => 'The join type.', 'type' => 'string', 'example' => 'eq_ref', 'title' => ''],
+ 'PossibleKeys' => ['description' => 'The indexes that might be used.', 'type' => 'string', 'example' => 'test_idx', 'title' => ''],
+ 'Key' => ['description' => 'The index actually used in the execution plan.', 'type' => 'string', 'example' => 'PRIMARY', 'title' => ''],
+ 'KeyLen' => ['description' => 'The length of the index actually used.', 'type' => 'string', 'example' => '3', 'title' => ''],
+ 'Ref' => ['description' => 'The column used by the index.', 'type' => 'string', 'example' => 'test_column', 'title' => ''],
+ 'Rows' => ['description' => 'The number of rows to scan.', 'type' => 'string', 'example' => '1000', 'title' => ''],
+ 'Extra' => ['description' => 'Additional information.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'QueryPlan' => ['description' => 'A reserved field for the PostgreSQL engine.', 'type' => 'string', 'title' => '', 'example' => '无'],
+ 'TableList' => [
+ 'title' => '',
+ 'description' => 'A reserved field for the PostgreSQL engine.',
+ 'type' => 'array',
+ 'items' => ['description' => 'A reserved field for the PostgreSQL engine.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'example' => '',
+ ],
+ 'IndexList' => [
+ 'title' => '',
+ 'description' => 'A reserved field for the PostgreSQL engine.',
+ 'type' => 'array',
+ 'items' => ['description' => 'A reserved field for the PostgreSQL engine.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'example' => '',
+ ],
+ 'LogicalPlanList' => [
+ 'description' => 'A reserved field for the PolarDB X engine.',
+ 'type' => 'array',
+ 'items' => ['description' => 'A reserved field for the PolarDB X engine.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'StmtText' => ['description' => 'A reserved field for the SQL Server engine.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'StmtId' => ['description' => 'A reserved field for the SQL Server engine.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'NodeId' => ['description' => 'A reserved field for the SQL Server engine.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'Parent' => ['description' => 'A reserved field for the SQL Server engine.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'PhysicalOp' => ['description' => 'A reserved field for the SQL Server engine.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'LogicalOp' => ['description' => 'A reserved field for the SQL Server engine.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'Argument' => ['description' => 'A reserved field for the SQL Server engine.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'DefinedValues' => ['description' => 'A reserved field for the SQL Server engine.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'EstimateRows' => ['description' => 'A reserved field for the SQL Server engine.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'EstimateIO' => ['description' => 'A reserved field for the SQL Server engine.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'EstimateCPU' => ['description' => 'A reserved field for the SQL Server engine.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'AvgRowSize' => ['description' => 'A reserved field for the SQL Server engine.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'TotalSubtreeCost' => ['description' => 'A reserved field for the SQL Server engine.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'OutputList' => ['description' => 'A reserved field for the SQL Server engine.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'Warnings' => ['description' => 'A reserved field for the SQL Server engine.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'Parallel' => ['description' => 'A reserved field for the SQL Server engine.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ 'EstimateExecutions' => ['description' => 'A reserved field for the SQL Server engine.', 'type' => 'string', 'example' => '无', 'title' => ''],
+ ],
+ 'title' => '',
+ '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',
+ 'example' => '',
],
],
- 'description' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
- ],
- 403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
],
- '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"
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'DescribeQueryExplain',
+ 'summary' => 'Obtain the execution plan for an SQL statement.',
+ 'description' => '- This operation supports only ApsaraDB RDS for MySQL and PolarDB for MySQL instances.'."\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"
+ .'- When using the Alibaba Cloud or DAS SDK, use the latest version.'."\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',
+ .'- When calling the DAS service with the SDK, set the region to cn-shanghai.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeQueryExplain',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ '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"}]',
+ ],
+ 'DescribeSecurityIPGroup' => [
+ 'summary' => 'Views the details of a cross-product whitelist template.',
+ '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' => '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',
+ 'name' => 'RegionName',
'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',
- ],
+ 'allowEmptyValue' => false,
+ 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai', 'title' => ''],
],
],
'responses' => [
@@ -4849,220 +5084,135 @@
'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****',
- ],
+ 'Code' => ['description' => 'The status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
'Data' => [
- 'description' => 'The returned data.'."\n",
'type' => 'object',
'properties' => [
- 'list' => [
- 'description' => 'The SQL diagnostics records returned.',
+ 'SecurityIpGroups' => [
'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',
+ 'DbInstances' => [
+ 'type' => 'array',
+ 'items' => ['description' => 'The database instance ID.', 'type' => 'string', 'example' => '["r-2ze9g6mnhu1***",'."\n"
+ .'"pc-2zew5qn1m***",'."\n"
+ .'"r-2ze9g6mn****",'."\n"
+ .'"pc-2zew5qh41*****"]', 'title' => ''],
+ 'description' => 'The database instances that are attached to the whitelist template.',
+ 'title' => '',
+ 'example' => '',
],
- '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',
+ 'SecurityIpType' => ['description' => 'The IP address type.', 'type' => 'string', 'example' => 'ipv4', 'title' => ''],
+ 'Uid' => ['description' => 'The account ID. You can obtain the ID of your logon account on the **Security Settings** page of **Account Management**.', 'type' => 'string', 'example' => '160-79abe3f4****', 'title' => ''],
+ 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
+ 'GEcsSgIdList' => ['description' => 'The ID of the ECS security group. This parameter is deprecated and is retained for compatibility. It will be removed in a future version.', 'type' => 'string', 'example' => ' null', 'title' => ''],
+ 'GlobalIgName' => ['description' => 'The name of the IP address whitelist template. The name must meet the following requirements:'."\n"
+ ."\n"
+ .'- It must consist of lowercase letters, digits, and underscores (\\_).'."\n"
+ ."\n"
+ .'- It must start with a letter and end with a letter or a digit.'."\n"
+ ."\n"
+ .'- It must be 2 to 120 characters in length.', 'type' => 'string', 'example' => 'test_123', 'title' => ''],
+ 'GlobalSecurityGroupId' => ['description' => 'The ID of the IP address whitelist template.', 'type' => 'string', 'example' => 'g-1no2rzybnqcv****', 'title' => ''],
+ 'WhitelistNetType' => ['description' => 'The network type of the whitelist.', 'type' => 'string', 'example' => 'mix', 'title' => ''],
+ 'EngineInfoList' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceNum' => ['description' => 'The number of instances that belong to the current logon account.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
+ 'EngineName' => ['description' => 'The database type of the destination instance.', 'type' => 'string', 'example' => 'PolarDBMySQL', 'title' => ''],
+ 'InstanceIds' => [
+ 'type' => 'array',
+ 'items' => ['description' => 'The database instance ID.'."\n"
+ ."\n"
+ .'> The value is a JSON array, such as `[\'Instance ID1\',\'Instance ID2\']`. Separate multiple instance IDs with commas (,).', 'type' => 'string', 'example' => 'rm-2ze8ygcc****', 'title' => ''],
+ 'description' => 'A list of database instance IDs.',
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'description' => 'The information about the instances of each product that are attached to the template.',
+ 'title' => '',
+ 'example' => '',
],
+ 'UserId' => ['description' => 'The user ID.', 'type' => 'string', 'example' => '641***', 'title' => ''],
+ 'GIpList' => ['description' => 'The IP addresses in the whitelist template.'."\n"
+ ."\n"
+ .'> Separate multiple IP addresses with commas (,).', 'type' => 'string', 'example' => '192.168.1.28/32', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
- ],
- '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' => '{"":""}',
+ 'description' => 'A list of all cross-product whitelist templates in the specified region.',
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'description' => 'ListResult',
+ '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',
- ],
+ 'Message' => ['description' => 'The message returned for the request.'."\n"
+ ."\n"
+ .'> If the request is successful, **Successful** is returned. If the request fails, an error message is returned, such as an error code.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'CAC553F1-C669-53F1-A295-2CF050E****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'title' => '',
+ 'description' => 'The response schema.',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'DescribeSecurityIPGroup',
+ 'description' => 'Note the following before you call this operation:'."\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"
+ .'- Use the latest version of the Alibaba Cloud software development kit (SDK) or DAS SDK.'."\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",
+ .'- When you use an SDK to call the DAS Service, set the region to cn-shanghai.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeSecurityIPGroup',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ ],
+ '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"}]',
],
- 'DescribeQueryExplain' => [
- 'summary' => 'Queries the execution plan of an SQL statement.',
+ 'DescribeSecurityIPGroupRelation' => [
'path' => '',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -5074,342 +5224,182 @@
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREhdmI71917',
- ],
+ 'abilityTreeCode' => '247410',
+ 'abilityTreeNodes' => ['FEATUREhdmQULC0I'],
'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' => 'RegionName',
+ 'in' => 'query',
+ 'allowEmptyValue' => false,
+ 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai', 'title' => ''],
],
[
- 'name' => 'Schema',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => '',
- ],
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2zegsc57ofexxxxx', 'title' => ''],
],
],
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code that is returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
'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' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'GlobalSecurityIPGroupRel' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-shenzhen', 'title' => ''],
+ 'GlobalIgName' => ['description' => 'The name of the IP address whitelist template.', 'type' => 'string', 'example' => 'test2', 'title' => ''],
+ 'GlobalSecurityGroupId' => ['description' => 'The ID of the IP address whitelist template.', 'type' => 'string', 'example' => 'g-1no2rzybnqcv0xxxxxx', 'title' => ''],
+ 'GIpList' => ['description' => 'The IP addresses in the whitelist template.'."\n"
+ ."\n"
+ .'> Separate multiple IP addresses with commas (,). Add a maximum of 1,000 IP addresses or CIDR blocks to all IP address whitelists.', 'type' => 'string', 'example' => '192.168.1.28/32', 'title' => ''],
],
- ],
- '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',
+ 'title' => '',
'example' => '',
],
+ 'description' => 'The information about the global IP address whitelist template.',
+ 'title' => '',
+ 'example' => '',
],
+ 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
],
+ 'title' => '',
+ 'description' => 'The data returned.',
+ 'example' => '',
],
+ 'Message' => ['description' => 'The returned message.'."\n"
+ ."\n"
+ .'> If the request is successful, **Successful** is returned. If the request fails, an error message is returned, such as an error code.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'A6D1C8EE-013C-541F-83EB-B13C8xxxxxx', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
+ 'title' => '',
+ 'description' => 'The response parameters.',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
+ ],
+ 403 => [
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'summary' => 'Queries how cross-product whitelist templates are attached to instances.',
+ 'description' => 'Before you call this operation, ensure that the following requirements are met:'."\n"
+ ."\n"
+ .'- Use the latest version of the Alibaba Cloud or DAS software development kit (SDK).'."\n"
+ ."\n"
+ .'- When you use an SDK to call the DAS service, set the region to cn-shanghai.',
+ 'title' => 'DescribeSecurityIPGroupRelation',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeSecurityIPGroupRelation',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- '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',
+ '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"}]',
],
- 'DescribeHotBigKeys' => [
- 'summary' => 'Queries the hot keys and the large keys in the memory in real time.',
- 'methods' => [
- 'get',
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'DescribeSlowLogHistogramAsync' => [
+ 'summary' => 'Asynchronously retrieves the slow log trend data of an instance.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
+ 'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREhdmROFBLE',
- ],
+ 'abilityTreeCode' => '236527',
+ 'abilityTreeNodes' => ['FEATUREhdmR88NLD'],
],
'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****',
- ],
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The ID of the database instance.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****'."\n", 'title' => ''],
],
[
'name' => 'NodeId',
- 'in' => 'query',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The node ID.'."\n"
+ ."\n"
+ .'> For PolarDB for MySQL instances, you must specify the node ID.', 'type' => 'string', 'required' => false, 'example' => 'r-****-db-0', 'title' => ''],
+ ],
+ [
+ 'name' => 'StartTime',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The beginning of the time range to query. Specify the time as a UNIX timestamp in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1596177993000', 'title' => ''],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The end of the time range to query. Specify the time as a UNIX timestamp in milliseconds.'."\n"
+ ."\n"
+ .'> The end time must be later than the start time.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1662518540764', 'title' => ''],
+ ],
+ [
+ 'name' => 'Filters',
+ 'in' => 'formData',
+ 'style' => 'repeatList',
'schema' => [
- 'description' => 'The ID of the data shard on the ApsaraDB for Redis instance.',
- 'type' => 'string',
+ 'description' => 'A list of query filter conditions.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The following values are supported for the Key parameter:'."\n"
+ ."\n"
+ .'hostAddress: The source address. To specify multiple addresses, separate them with commas.'."\n"
+ ."\n"
+ .'sqlId: The SQL ID. To specify multiple IDs, separate them with commas.'."\n"
+ ."\n"
+ .'user: The username. To specify multiple usernames, separate them with commas.'."\n"
+ ."\n"
+ .'dbName: The database name. To specify multiple database names, separate them with commas.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => ['description' => 'The filter key.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'None'],
+ 'Value' => ['description' => 'The value of the filter parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
'required' => false,
- 'example' => 'r-****-db-0',
+ 'maxItems' => 100,
+ 'title' => '',
+ 'example' => '',
],
],
],
@@ -5418,681 +5408,1967 @@
'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****',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The message returned.'."\n"
+ ."\n"
+ .'> If the request is successful, **Successful** is returned. If the request fails, an error message is returned.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
'Data' => [
- 'description' => 'The list of hot keys and large keys.'."\n",
+ 'title' => 'AsyncResult<Histogram>',
+ 'description' => 'The detailed data of the asynchronous task.',
'type' => 'object',
'properties' => [
- 'HotKeys' => [
+ 'RequestKey' => ['description' => 'The key of the request parameter.', 'type' => 'string', 'title' => '', 'example' => '无'],
+ 'ResultId' => ['description' => 'The ID of the asynchronous task result.', 'type' => 'string', 'title' => '', 'example' => 'async__20ee808e72257f16a4fe024057ca****'],
+ 'State' => ['description' => 'The state of the asynchronous task. Valid values:'."\n"
+ ."\n"
+ .'- **RUNNING**: The task is running.'."\n"
+ ."\n"
+ .'- **SUCCESS**: The task is successful.'."\n"
+ ."\n"
+ .'- **FAIL**: The task failed.', 'type' => 'string', 'title' => '', 'example' => 'SUCCESS'],
+ 'IsFinish' => ['description' => 'Indicates whether the asynchronous task is complete.', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
+ 'Data' => [
+ 'title' => '',
+ 'description' => 'The returned data.',
'type' => 'object',
- 'itemNode' => true,
'properties' => [
- 'HotKey' => [
- 'description' => 'The list of hot keys.',
+ 'Total' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'Count' => [
+ 'description' => 'The number of slow query logs in the trend chart.',
'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',
- ],
- ],
- ],
+ 'items' => ['description' => 'The number of slow query logs.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
],
- ],
- ],
- 'BigKeys' => [
- 'type' => 'object',
- 'itemNode' => true,
- 'properties' => [
- 'BigKey' => [
- 'description' => 'The list of large keys.',
+ 'Ts' => [
+ 'title' => '',
+ 'description' => 'This parameter is returned only for relational databases.',
'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',
- ],
- ],
- ],
+ 'items' => ['description' => 'The time when the first event occurred. This value is a UNIX timestamp in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '['."\n"
+ .' 1735098480000,'."\n"
+ .' 1735098540000,'."\n"
+ .' 1735098600000,'."\n"
+ .' 1735098660000,'."\n"
+ .' 1735098720000,'."\n"
+ .' 1735098780000'."\n"
+ .' ]', 'title' => ''],
+ 'example' => '',
],
- ],
- ],
- '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' => [
+ 'TsEnd' => [
+ 'description' => 'This parameter is reserved.',
'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',
- ],
- ],
- ],
+ 'items' => ['description' => 'The end timestamp of the query.', 'type' => 'integer', 'format' => 'int64', 'example' => '暂无', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
],
- ],
- ],
- 'LargeKeys' => [
- 'type' => 'object',
- 'itemNode' => true,
- 'properties' => [
- 'LargeKey' => [
+ 'Item' => [
+ 'description' => 'The trend metrics.',
'type' => 'array',
'items' => [
+ 'description' => 'The name of the project.',
'type' => 'object',
'properties' => [
- 'Db' => [
- 'type' => 'string',
- ],
- 'Key' => [
- 'type' => 'string',
- ],
- 'KeyType' => [
- 'type' => 'string',
- ],
- 'DataSize' => [
- 'type' => 'string',
+ 'NodeId' => ['description' => 'The node ID.', 'type' => 'string', 'example' => 'r-bp1hi0wg57s3n0i3n8-db-0', 'title' => ''],
+ 'Count' => [
+ 'description' => 'The number of slow query logs.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The number of slow query logs.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
],
- 'NodeId' => [
- 'type' => 'string',
+ 'InsItems' => [
+ 'description' => 'The trend metrics.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB for MongoDB instances.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The trend metrics.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB for MongoDB instances.',
+ 'type' => 'object',
+ 'properties' => [
+ 'InsId' => ['description' => 'The ID of the instance role.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB for MongoDB instances.', 'type' => 'string', 'example' => '2492', 'title' => ''],
+ 'InsRole' => ['description' => 'The role of the instance.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB for MongoDB instances.', 'type' => 'string', 'example' => 'userAdmin', 'title' => ''],
+ 'Count' => [
+ 'description' => 'The number of executions.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The number of executions.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'TotalCount' => ['description' => 'The number of slow query logs on the physical node.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
],
+ 'TotalCount' => ['description' => 'The total number of slow query logs.', 'type' => 'integer', 'format' => 'int64', 'example' => '20', 'title' => ''],
+ 'InsRole' => ['description' => 'The role of the instance.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB for MongoDB instances.', 'type' => 'string', 'title' => '', 'example' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'Rt' => [
+ 'description' => 'The total execution duration, in seconds.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The total execution duration, in seconds.', 'type' => 'number', 'format' => 'double', 'example' => '['."\n"
+ .' 2.306,'."\n"
+ .' 1.141,'."\n"
+ .' 0.0,'."\n"
+ .' 4.538,'."\n"
+ .' 1.247,'."\n"
+ .' 1.972'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AvgRt' => [
+ 'description' => 'The average execution duration.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The average execution duration.', 'type' => 'number', 'format' => 'double', 'example' => '['."\n"
+ .' 1.593,'."\n"
+ .' 2.306,'."\n"
+ .' 1.141,'."\n"
+ .' 0.0,'."\n"
+ .' 1.5127,'."\n"
+ .' 1.247'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'MaxRt' => [
+ 'description' => 'The maximum execution duration, in seconds.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The maximum execution duration, in seconds.', 'type' => 'number', 'format' => 'double', 'example' => '['."\n"
+ .' 1.593,'."\n"
+ .' 2.306,'."\n"
+ .' 1.141,'."\n"
+ .' 14.115'."\n"
+ .' 0.0,'."\n"
+ .' 1.972'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'LockTime' => [
+ 'description' => 'The total lock wait duration, in seconds.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The total lock wait duration, in seconds.', 'type' => 'number', 'format' => 'double', 'example' => '['."\n"
+ .' 1.051,'."\n"
+ .' 1.007,'."\n"
+ .' 0.0,'."\n"
+ .' 0.755,'."\n"
+ .' 0.096,'."\n"
+ .' 0.0'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AvgLockTime' => [
+ 'description' => 'The average lock wait duration, in seconds.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The average lock wait duration, in seconds.', 'type' => 'number', 'format' => 'double', 'example' => '['."\n"
+ .' 1.051,'."\n"
+ .' 0.0,'."\n"
+ .' 0.3357,'."\n"
+ .' 0.755,'."\n"
+ .' 0.324,'."\n"
+ .' 0.814'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'MaxLockTime' => [
+ 'description' => 'The maximum lock wait duration, in seconds.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The maximum lock wait duration, in seconds.', 'type' => 'number', 'format' => 'double', 'example' => '['."\n"
+ .' 1.051,'."\n"
+ .' 1.007,'."\n"
+ .' 0.755,'."\n"
+ .' 0.0,'."\n"
+ .' 0.05,'."\n"
+ .' 0.656'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'RowsExamined' => [
+ 'description' => 'The total number of scanned rows.'."\n"
+ ."\n"
+ .'> This parameter is returned for the following database engines: ApsaraDB RDS for MySQL, ApsaraDB RDS for PostgreSQL, and PolarDB for MySQL.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The total number of scanned rows.'."\n"
+ ."\n"
+ .'> This parameter is returned for the following database engines: ApsaraDB RDS for MySQL, ApsaraDB RDS for PostgreSQL, and PolarDB for MySQL.', 'type' => 'integer', 'format' => 'int64', 'example' => '['."\n"
+ .' 256,'."\n"
+ .' 1,'."\n"
+ .' 512,'."\n"
+ .' 0,'."\n"
+ .' 1476678,'."\n"
+ .' 24430'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AvgRowsExamined' => [
+ 'description' => 'The average number of scanned rows.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The average number of scanned rows.', 'type' => 'number', 'format' => 'double', 'example' => '['."\n"
+ .' 256.0,'."\n"
+ .' 256.3333,'."\n"
+ .' 512.0,'."\n"
+ .' 370860.1111,'."\n"
+ .' 0.0,'."\n"
+ .' 1.0'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'MaxRowsExamined' => [
+ 'description' => 'The maximum number of scanned rows.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The maximum number of scanned rows.', 'type' => 'integer', 'format' => 'int64', 'example' => '['."\n"
+ .' 256,'."\n"
+ .' 1,'."\n"
+ .' 512,'."\n"
+ .' 0,'."\n"
+ .' 1476678,'."\n"
+ .' 24430'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'RowsSent' => [
+ 'description' => 'The number of returned rows.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The number of returned rows.', 'type' => 'integer', 'format' => 'int64', 'example' => '['."\n"
+ .' 384,'."\n"
+ .' 256,'."\n"
+ .' 0,'."\n"
+ .' 207030,'."\n"
+ .' 4,'."\n"
+ .' 256'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AvgRowsSent' => [
+ 'description' => 'The average number of returned rows.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The average number of returned rows.', 'type' => 'number', 'format' => 'double', 'example' => '['."\n"
+ .' 128.0,'."\n"
+ .' 0.0,'."\n"
+ .' 256.0,'."\n"
+ .' 25878.75,'."\n"
+ .' 192.0,'."\n"
+ .' 72.7778'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'MaxRowsSent' => [
+ 'description' => 'The maximum number of returned rows.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The maximum number of returned rows.', 'type' => 'integer', 'format' => 'int64', 'example' => '['."\n"
+ .' 256,'."\n"
+ .' 207023,'."\n"
+ .' 0,'."\n"
+ .' 128,'."\n"
+ .' 0,'."\n"
+ .' 0'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'KeysExamined' => [
+ 'description' => 'The number of scanned index rows.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB for MongoDB instances.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The number of scanned index rows.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB for MongoDB instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '['."\n"
+ .' 384,'."\n"
+ .' 256,'."\n"
+ .' 0,'."\n"
+ .' 207030,'."\n"
+ .' 4,'."\n"
+ .' 256'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AvgKeysExamined' => [
+ 'description' => 'The average number of scanned index rows.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB for MongoDB instances.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The average number of scanned index rows.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB for MongoDB instances.', 'type' => 'number', 'format' => 'double', 'example' => '['."\n"
+ .' 128.0,'."\n"
+ .' 0.0,'."\n"
+ .' 256.0,'."\n"
+ .' 25878.75,'."\n"
+ .' 192.0,'."\n"
+ .' 72.7778'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'MaxKeysExamined' => [
+ 'description' => 'The maximum number of scanned index rows.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB for MongoDB instances.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The maximum number of scanned index rows.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB for MongoDB instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '['."\n"
+ .' 384,'."\n"
+ .' 256,'."\n"
+ .' 0,'."\n"
+ .' 207030,'."\n"
+ .' 4,'."\n"
+ .' 256'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
],
+ 'DocExamined' => [
+ 'description' => 'The number of scanned documents.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB for MongoDB instances.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The number of scanned documents.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB for MongoDB instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '['."\n"
+ .' 256,'."\n"
+ .' 207023,'."\n"
+ .' 0,'."\n"
+ .' 128,'."\n"
+ .' 0,'."\n"
+ .' 0'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AvgDocExamined' => [
+ 'description' => 'The average number of scanned documents.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB for MongoDB instances.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The average number of scanned documents.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB for MongoDB instances.', 'type' => 'number', 'format' => 'double', 'example' => '['."\n"
+ .' 128.0,'."\n"
+ .' 0.0,'."\n"
+ .' 256.0,'."\n"
+ .' 25878.75,'."\n"
+ .' 192.0,'."\n"
+ .' 72.7778'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'MaxDocExamined' => [
+ 'description' => 'The maximum number of scanned documents.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB for MongoDB instances.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The maximum number of scanned documents.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB for MongoDB instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '['."\n"
+ .' 256,'."\n"
+ .' 207023,'."\n"
+ .' 0,'."\n"
+ .' 128,'."\n"
+ .' 0,'."\n"
+ .' 0'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'ReturnNum' => [
+ 'description' => 'The number of returned rows.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB for MongoDB instances.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The number of returned rows.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB for MongoDB instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '['."\n"
+ .' 256,'."\n"
+ .' 207023,'."\n"
+ .' 0,'."\n"
+ .' 128,'."\n"
+ .' 0,'."\n"
+ .' 0'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AvgReturnNum' => [
+ 'description' => 'The average number of returned rows.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB for MongoDB instances.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The average number of returned rows'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB for MongoDB instances.', 'type' => 'number', 'format' => 'double', 'example' => '['."\n"
+ .' 128.0,'."\n"
+ .' 0.0,'."\n"
+ .' 256.0,'."\n"
+ .' 25878.75,'."\n"
+ .' 192.0,'."\n"
+ .' 72.7778'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'MaxReturnNum' => [
+ 'description' => 'The maximum number of returned rows.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB for MongoDB instances.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The maximum number of returned rows.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB for MongoDB instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '['."\n"
+ .' 256,'."\n"
+ .' 207023,'."\n"
+ .' 0,'."\n"
+ .' 128,'."\n"
+ .' 0,'."\n"
+ .' 0'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'IOWrites' => [
+ 'description' => 'The number of I/O writes.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The number of I/O writes.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '['."\n"
+ .' 256,'."\n"
+ .' 207023,'."\n"
+ .' 0,'."\n"
+ .' 128,'."\n"
+ .' 0,'."\n"
+ .' 0'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AvgIOWrites' => [
+ 'description' => 'The average number of I/O writes.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The average number of I/O writes.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.', 'type' => 'number', 'format' => 'double', 'example' => '['."\n"
+ .' 384,'."\n"
+ .' 256,'."\n"
+ .' 0,'."\n"
+ .' 207030,'."\n"
+ .' 4,'."\n"
+ .' 256'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'MaxIOWrites' => [
+ 'description' => 'The maximum number of I/O writes.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The maximum number of I/O writes.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '['."\n"
+ .' 256,'."\n"
+ .' 1,'."\n"
+ .' 512,'."\n"
+ .' 0,'."\n"
+ .' 1476678,'."\n"
+ .' 24430'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'LastRowsCountAffected' => [
+ 'description' => 'The number of rows affected by the last statement.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The number of rows affected by the last statement.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '['."\n"
+ .' 256,'."\n"
+ .' 207023,'."\n"
+ .' 0,'."\n"
+ .' 128,'."\n"
+ .' 0,'."\n"
+ .' 0'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AvgLastRowsCountAffected' => [
+ 'description' => 'The average number of rows affected by the last statement.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The average number of rows affected by the last statement.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.', 'type' => 'number', 'format' => 'double', 'example' => '['."\n"
+ .' 1.593,'."\n"
+ .' 2.306,'."\n"
+ .' 1.141,'."\n"
+ .' 0.0,'."\n"
+ .' 1.5127,'."\n"
+ .' 1.247'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'MaxLastRowsCountAffected' => [
+ 'description' => 'The maximum number of rows affected by the last statement.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The average number of rows affected by the last statement.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '['."\n"
+ .' 1,'."\n"
+ .' 1,'."\n"
+ .' 3,'."\n"
+ .' 1,'."\n"
+ .' 2,'."\n"
+ .' 3'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'LogicalIOReads' => [
+ 'description' => 'The number of logical reads.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The number of logical reads.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '['."\n"
+ .' 384,'."\n"
+ .' 256,'."\n"
+ .' 0,'."\n"
+ .' 207030,'."\n"
+ .' 4,'."\n"
+ .' 256'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AvgLogicalIOReads' => [
+ 'description' => 'The average number of logical reads.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The average number of logical reads.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.', 'type' => 'number', 'format' => 'double', 'example' => '['."\n"
+ .' 1.593,'."\n"
+ .' 2.306,'."\n"
+ .' 1.141,'."\n"
+ .' 0.0,'."\n"
+ .' 1.5127,'."\n"
+ .' 1.247'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'MaxLogicalIOReads' => [
+ 'description' => 'The maximum number of logical reads.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The maximum number of logical reads.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '['."\n"
+ .' 124,'."\n"
+ .' 2,'."\n"
+ .' 24,'."\n"
+ .' 251,'."\n"
+ .' 191,'."\n"
+ .' 721'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'PhysicalIOReads' => [
+ 'description' => 'The number of physical reads.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The number of physical reads.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '['."\n"
+ .' 324,'."\n"
+ .' 22,'."\n"
+ .' 254,'."\n"
+ .' 251,'."\n"
+ .' 191,'."\n"
+ .' 721'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AvgPhysicalIOReads' => [
+ 'description' => 'The average number of physical reads.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The average number of physical reads.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.', 'type' => 'number', 'format' => 'double', 'example' => '['."\n"
+ .' 128.0,'."\n"
+ .' 0.0,'."\n"
+ .' 256.0,'."\n"
+ .' 25878.75,'."\n"
+ .' 192.0,'."\n"
+ .' 72.7778'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'MaxPhysicalIOReads' => [
+ 'description' => 'The maximum number of physical reads.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The maximum number of physical reads.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '['."\n"
+ .' 314,'."\n"
+ .' 242,'."\n"
+ .' 114,'."\n"
+ .' 351,'."\n"
+ .' 191,'."\n"
+ .' 721'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'RowsCountAffected' => [
+ 'description' => 'The number of affected rows.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The number of affected rows.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '['."\n"
+ .' 34,'."\n"
+ .' 42,'."\n"
+ .' 14,'."\n"
+ .' 51,'."\n"
+ .' 91,'."\n"
+ .' 71'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AvgRowsCountAffected' => [
+ 'description' => 'The average number of affected rows.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The average number of affected rows.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.', '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"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'MaxRowsCountAffected' => [
+ 'description' => 'The maximum number of affected rows.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The maximum number of affected rows.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '['."\n"
+ .' 714,'."\n"
+ .' 442,'."\n"
+ .' 314,'."\n"
+ .' 151,'."\n"
+ .' 291,'."\n"
+ .' 521'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'CPUTime' => [
+ 'description' => 'The CPU time, in seconds.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The CPU time, in seconds.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.', 'type' => 'number', 'format' => 'double', 'example' => '['."\n"
+ .' 1.051,'."\n"
+ .' 1.007,'."\n"
+ .' 0.755,'."\n"
+ .' 0.0,'."\n"
+ .' 0.05,'."\n"
+ .' 0.656'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AvgCPUTime' => [
+ 'description' => 'The average CPU time, in seconds.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The average CPU time, in seconds.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.', 'type' => 'number', 'format' => 'double', 'example' => '['."\n"
+ .' 2.306,'."\n"
+ .' 1.141,'."\n"
+ .' 0.0,'."\n"
+ .' 4.538,'."\n"
+ .' 1.247,'."\n"
+ .' 0.0'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'MaxCPUTime' => [
+ 'description' => 'The maximum CPU time, in seconds.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The maximum CPU time, in seconds.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.', 'type' => 'number', 'format' => 'double', 'example' => '['."\n"
+ .' 2.306,'."\n"
+ .' 1.141,'."\n"
+ .' 0.0,'."\n"
+ .' 4.538,'."\n"
+ .' 1.247,'."\n"
+ .' 0.0'."\n"
+ .' ]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'Rows' => [
+ 'type' => 'array',
+ 'items' => ['description' => 'The total number of updated or returned rows on the compute nodes of a PolarDB-X 2.0 instance.'."\n"
+ ."\n"
+ .'> This parameter is returned only for PolarDB-X 2.0 instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '[]', 'title' => ''],
+ 'description' => 'The total number of updated or returned rows on the compute nodes of a PolarDB-X 2.0 instance.'."\n"
+ ."\n"
+ .'> This parameter is returned only for PolarDB-X 2.0 instances.',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AvgRows' => [
+ 'type' => 'array',
+ 'items' => ['description' => 'The average number of rows.', 'type' => 'number', 'format' => 'double', 'title' => '', 'example' => ''],
+ 'description' => 'The average number of rows.',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'MaxRows' => [
+ 'type' => 'array',
+ 'items' => ['description' => 'The maximum number of rows.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => ''],
+ 'description' => 'The maximum number of rows.',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'Frows' => [
+ 'type' => 'array',
+ 'items' => ['description' => 'The number of rows pulled by the CNs of a PolarDB-X 2.0 instance.'."\n"
+ ."\n"
+ .'> This parameter is returned only for PolarDB-X 2.0 instances.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => ''],
+ 'description' => 'The number of rows pulled by the compute nodes (CNs) of a PolarDB-X 2.0 instance.'."\n"
+ ."\n"
+ .'> This parameter is returned only for PolarDB-X 2.0 instances.',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AvgFrows' => [
+ 'type' => 'array',
+ 'items' => ['description' => 'The average number of pulled rows.', 'type' => 'number', 'format' => 'double', 'title' => '', 'example' => ''],
+ 'description' => 'The average number of pulled rows.',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'MaxFrows' => [
+ 'type' => 'array',
+ 'items' => ['description' => 'The maximum number of pulled rows.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => ''],
+ 'description' => 'The maximum number of pulled rows.',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'Scnt' => [
+ 'type' => 'array',
+ 'items' => ['description' => 'The number of requests sent from the CNs to the DNs of a PolarDB-X 2.0 instance.'."\n"
+ ."\n"
+ .'> This parameter is returned only for PolarDB-X 2.0 instances.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => ''],
+ 'description' => 'The number of requests sent from the compute nodes (CNs) to the data nodes (DNs) of a PolarDB-X 2.0 instance.'."\n"
+ ."\n"
+ .'> This parameter is returned only for PolarDB-X 2.0 instances.',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AvgScnt' => [
+ 'type' => 'array',
+ 'items' => ['description' => 'The average number of requests.', 'type' => 'number', 'format' => 'double', 'title' => '', 'example' => ''],
+ 'description' => 'The average number of requests.',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'MaxScnt' => [
+ 'type' => 'array',
+ 'items' => ['description' => 'The maximum number of requests.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => ''],
+ 'description' => 'The maximum number of requests.',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'TotalCount' => ['description' => 'The total number of slow query logs.', 'type' => 'integer', 'format' => 'int64', 'example' => '5', 'title' => ''],
],
+ 'example' => '',
],
- 'LargeKeyMsg' => [
- 'type' => 'string',
- ],
+ 'ErrorCode' => ['description' => 'The error code.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '10910'],
+ 'Message' => ['description' => 'The error message.', 'type' => 'string', 'title' => '', 'example' => 'Successful'],
+ 'Timestamp' => ['description' => 'The time when the request was made.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1645668213000'],
],
- ],
- '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',
+ 'example' => '',
],
],
'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ '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\\": 10\\n }\\n ],\\n \\"TotalCount\\": 20,\\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\\": 5\\n },\\n \\"ErrorCode\\": 10910,\\n \\"Message\\": \\"Successful\\",\\n \\"Timestamp\\": 1645668213000\\n }\\n}","type":"json"}]',
+ 'title' => 'DescribeSlowLogHistogramAsync',
+ 'description' => '**Before you call this operation, make sure that you understand the [billing methods and pricing](~~156195~~) of DAS.**'."\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"
+ .'The following prerequisites must be met:'."\n"
."\n"
- .'* The version of Database Autonomy Service (DAS) SDK must be 1.0.2 or later.'."\n"
+ .'- You must enable **DAS Enterprise Edition** or the smart operations and maintenance (O\\&M) service for the instance. The smart O\\&M service is not yet published.'."\n"
."\n"
- .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n"
+ .'- Use the latest version of the Alibaba Cloud SDK or the DAS SDK.'."\n"
."\n"
- .'* This operation is available only for ApsaraDB for Redis instances that meet the following requirements:'."\n"
+ .'- When you use an SDK to call the DAS service, set the region to cn-shanghai.'."\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',
+ .'This is an asynchronous operation. A complete result is not returned immediately. If the isFinish parameter in the response is false, wait 1 second and call the operation again. Repeat the call until the isFinish parameter is true. Then, the complete result is returned.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeSlowLogHistogramAsync'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeSlowLogHistogramAsync',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'DescribeSlowLogRecords' => [
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
+ 'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREhdmROFBLE',
- ],
+ 'abilityTreeCode' => '236528',
+ 'abilityTreeNodes' => ['FEATUREhdmR88NLD'],
+ 'autoTest' => true,
],
'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****',
- ],
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-8vbk4xz99su8****', 'title' => ''],
],
[
'name' => 'NodeId',
- 'in' => 'query',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The node ID.', 'type' => 'string', 'required' => false, 'example' => 'pi-d9j9fe7wq7t9i****'."\n", 'title' => ''],
+ ],
+ [
+ 'name' => 'StartTime',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The start of the time range to query. The value must be a UNIX timestamp in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1596177993000', 'title' => ''],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The end of the time range to query. The value must be a UNIX timestamp in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1634972640000', 'title' => ''],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The page number. Page numbering starts at 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''],
+ ],
+ [
+ 'name' => 'Filters',
+ 'in' => 'formData',
+ 'style' => 'repeatList',
'schema' => [
- 'description' => 'The ID of the data shard on the ApsaraDB for Redis instance.',
- 'type' => 'string',
+ 'description' => 'The list of filter conditions.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'A filter condition.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => ['description' => 'The filter key.'."\n"
+ ."\n"
+ .'> For details, refer to the supplementary information.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'None'],
+ 'Value' => ['description' => 'The value for the filter key.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
'required' => false,
- 'example' => 'r-****-db-0',
+ 'maxItems' => 100,
+ 'title' => '',
+ 'example' => '',
],
],
[
- 'name' => 'StartTime',
+ 'name' => 'OrderBy',
'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',
- ],
+ 'schema' => ['description' => '- **MySQL**'."\n"
+ ."\n"
+ .' - QueryTimeSeconds: the query execution time in seconds.'."\n"
+ ."\n"
+ .' - LockTimeSeconds: the lock duration in seconds.'."\n"
+ ."\n"
+ .' - RowsSent: the number of rows sent.'."\n"
+ ."\n"
+ .' - RowsExamined: the number of rows examined.'."\n"
+ ."\n"
+ .'- **Redis**'."\n"
+ ."\n"
+ .' - QueryTime: the query execution time.'."\n"
+ ."\n"
+ .' - Timestamp: the end time of the query execution.'."\n"
+ ."\n"
+ .'- **MongoDB**'."\n"
+ ."\n"
+ .' - QueryTime: the query execution time.'."\n"
+ ."\n"
+ .' - Timestamp: the end time of the query execution.'."\n"
+ ."\n"
+ .' - KeysExamined: the number of keys examined.'."\n"
+ ."\n"
+ .' - DocExamined: the number of documents scanned.'."\n"
+ ."\n"
+ .' - ReturnNum: the number of rows returned.'."\n"
+ ."\n"
+ .'><notice>'."\n"
+ ."\n"
+ .'RDS for PostgreSQL, PolarDB for PostgreSQL, and SQL Server do not support sorting.'."\n"
+ ."\n"
+ .'></notice>', 'type' => 'string', 'required' => false, 'example' => 'QueryTimeSeconds', 'title' => ''],
],
[
- 'name' => 'EndTime',
+ 'name' => 'Asc',
'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',
- ],
+ 'schema' => ['description' => 'Specifies whether to sort the results in ascending order. The default value is **true**.'."\n"
+ ."\n"
+ .'- **true**: Sorts the results in ascending order.'."\n"
+ ."\n"
+ .'- **false**: Sorts the results in descending order.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
],
'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****',
- ],
+ 'Code' => ['description' => 'The status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The response message.'."\n"
+ ."\n"
+ .'> If the request succeeds, **Successful** is returned. If the request fails, an error message is returned.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'A1C79EE2-D04D-571B-8C60-961FAF8E****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'Data' => [
+ 'title' => '',
+ 'description' => 'The details of the slow query logs.',
'type' => 'object',
- 'itemNode' => true,
'properties' => [
- 'HotKey' => [
- 'description' => 'The detailed information about the hot keys.',
+ 'DbInstanceName' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'rm-bp157g54vy772****', 'title' => ''],
+ 'NodeId' => ['description' => 'The node ID.', 'type' => 'string', 'example' => 'node123', 'title' => ''],
+ 'ItemsNumbers' => ['description' => 'The number of slow log records on the current page.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'StartTime' => ['description' => 'The start of the time range for the query.', 'type' => 'string', 'example' => '1672531200000', 'title' => ''],
+ 'EndTime' => ['description' => 'The end of the time range for the query.', 'type' => 'string', 'example' => '1672617600000', 'title' => ''],
+ 'DbInstanceId' => ['description' => 'The numerical ID of the instance.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
+ 'TotalRecords' => ['description' => 'The total number of slow log records found.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
+ 'PageNumbers' => ['description' => 'The page number of the returned page of results.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'MaxRecordsPerPage' => ['description' => 'The maximum number of entries per page. Valid values: 5 to 100.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''],
+ 'Logs' => [
+ 'description' => 'A list of slow query logs.',
'type' => 'array',
'items' => [
+ 'description' => 'The details of a slow query log.',
'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',
+ 'SqlId' => ['description' => 'The SQL ID.', 'type' => 'string', 'example' => 'sqlId', 'title' => ''],
+ 'Scheme' => ['description' => 'The data schema.', 'type' => 'string', 'example' => 'HTTPS', 'title' => ''],
+ 'SubInstanceId' => ['description' => 'The sub-instance ID.', 'type' => 'string', 'example' => 'r-8vb219d10038****', 'title' => ''],
+ 'DbInstanceName' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'rm-2zebg30mk056g****', 'title' => ''],
+ 'InsName' => ['description' => 'The instance name.', 'type' => 'string', 'example' => 'test', 'title' => ''],
+ 'AccountName' => ['description' => 'The username.', 'type' => 'string', 'example' => 'user1', 'title' => ''],
+ 'HostAddress' => ['description' => 'The source IP address.', 'type' => 'string', 'example' => '192.168.1.1', 'title' => ''],
+ 'QueryStartTime' => ['description' => 'The time when the query started. This value is a UTC time. The time is displayed in the yyyy-MM-dd hh:mm:ss format.', 'type' => 'string', 'example' => '2024-04-01 11:00:00', 'title' => ''],
+ 'SQLText' => ['description' => 'The SQL statement.', 'type' => 'string', 'example' => 'SELECT * FROM my_table WHERE ROWNUM <= 10', 'title' => ''],
+ 'Psql' => ['description' => 'The SQL template.', 'type' => 'string', 'example' => 'SELECT * FROM my_table WHERE ROWNUM <= 10'."\n", 'title' => ''],
+ 'DBName' => ['description' => 'The database name.', 'type' => 'string', 'example' => 'test', 'title' => ''],
+ 'QueryTime' => ['description' => 'The query execution time.', 'type' => 'integer', 'format' => 'int64', 'example' => '121', 'title' => ''],
+ 'ReturnItemNumbers' => ['description' => 'The number of rows returned.', 'type' => 'string', 'example' => 'test', 'title' => ''],
+ 'DocsExamined' => ['description' => 'The number of documents scanned in ApsaraDB for MongoDB.', 'type' => 'string', 'example' => '100', 'title' => ''],
+ 'KeysExamined' => ['description' => 'The number of index keys scanned in ApsaraDB for MongoDB.', 'type' => 'string', 'example' => 'valueA', 'title' => ''],
+ 'TableName' => ['description' => 'The table name.', 'type' => 'string', 'example' => 'tableNameExample', 'title' => ''],
+ 'LockTime' => ['description' => 'The lock wait time.', 'type' => 'number', 'format' => 'double', 'example' => '100', 'title' => ''],
+ 'RowsExamined' => ['description' => 'The number of rows scanned.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
+ 'RowsSent' => ['description' => 'The number of rows returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'ThreadId' => ['description' => 'The thread ID.', 'type' => 'string', 'title' => '', 'example' => '57472578'],
+ 'Timestamp' => ['description' => 'The timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1747118812', 'title' => ''],
+ 'SqlTag' => [
+ 'description' => 'The tags.',
+ 'type' => 'object',
+ 'properties' => [
+ 'SqlId' => ['description' => 'The SQL ID.', 'type' => 'string', 'example' => '8ad7069f236bcdaaa9b3ae4b6299****', 'title' => ''],
+ 'Tags' => ['description' => 'The tags, separated by commas.', 'type' => 'string', 'example' => 'DAS_IMPORTANT,DAS_IN_PLAN', 'title' => ''],
+ 'Comments' => ['description' => 'The comment.', 'type' => 'string', 'example' => 'test', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
+ 'LockTimeSeconds' => ['description' => 'The lock wait time, in seconds.', 'type' => 'number', 'format' => 'double', 'example' => '100', 'title' => ''],
+ 'QueryTimeSeconds' => ['description' => 'The query execution time, in seconds.', 'type' => 'number', 'format' => 'double', 'example' => '100', 'title' => ''],
+ 'SqlType' => ['description' => 'The type of the SQL statement.'."\n"
+ ."\n"
+ .'- **SELECT**'."\n"
+ ."\n"
+ .'- **UPDATE**'."\n"
+ ."\n"
+ .'- **DELETE**', 'type' => 'string', 'example' => 'SELECT', 'title' => ''],
+ 'CPUTime' => ['description' => 'The CPU time consumed by the query.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.', 'type' => 'number', 'format' => 'double', 'example' => '50', 'title' => ''],
+ 'IOWrites' => ['description' => 'The number of I/O writes.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'LastRowsCountAffected' => ['description' => 'The number of rows affected by the last statement.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'LogicalIOReads' => ['description' => 'The number of logical reads.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'PhysicalIOReads' => ['description' => 'The number of physical reads.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'RowsCountAffected' => ['description' => 'The number of affected rows.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'Command' => ['description' => 'The slow query statement.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB for Tair instances.', 'type' => 'string', 'example' => 'SELECT', 'title' => ''],
+ 'Namespace' => ['description' => 'The namespace.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB for MongoDB instances.', 'type' => 'string', 'example' => 'pro-test', 'title' => ''],
+ 'QueryId' => ['description' => 'The query ID.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB for MongoDB instances.', 'type' => 'string', 'example' => 'sq-1pzcdMwRb', 'title' => ''],
+ 'ReturnNum' => ['description' => 'The number of rows returned.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB for MongoDB instances.', 'type' => 'string', 'example' => '20', 'title' => ''],
+ 'ApplicationName' => ['description' => 'The application name.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.', 'type' => 'string', 'example' => 'MyApp', 'title' => ''],
+ 'CPUTimeSeconds' => ['description' => 'The CPU time consumed by the query, in seconds.'."\n"
+ ."\n"
+ .'> This parameter is returned only for ApsaraDB RDS for SQL Server instances.', 'type' => 'number', 'format' => 'double', 'example' => '100', 'title' => ''],
+ 'Rows' => ['description' => 'The total number of rows updated or returned by the compute node.'."\n"
+ ."\n"
+ .'> This parameter is returned only for PolarDB-X 2.0 instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '20', 'title' => ''],
+ 'Frows' => ['description' => 'The number of rows retrieved by the compute node (CN).'."\n"
+ ."\n"
+ .'> This parameter is returned only for PolarDB-X 2.0 instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'Scnt' => ['description' => 'The number of requests sent from the compute node (CN) to data nodes (DNs).'."\n"
+ ."\n"
+ .'> This parameter is returned only for PolarDB-X 2.0 instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'TraceId' => ['description' => 'The trace ID, which is the execution ID of the SQL statement on a data node.'."\n"
+ ."\n"
+ .'> This parameter is returned only for PolarDB-X 2.0 instances.', 'type' => 'string', 'example' => '074ce334-5247-40b9-b0c1-158aea5d****', 'title' => ''],
+ 'TemplateId' => ['description' => 'The SQL template ID.'."\n"
+ ."\n"
+ .'> This parameter is returned only for PolarDB-X 2.0 instances.', 'type' => 'string', 'example' => '6a63b6ac4572abfaef7d1163f684****', 'title' => ''],
+ 'NodeId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
+ 'Cmd' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
+ 'Rt' => ['type' => 'integer', 'format' => 'int64', 'description' => '', 'title' => '', 'example' => ''],
+ 'RequestSize' => ['type' => 'integer', 'format' => 'int64', 'description' => '', 'title' => '', 'example' => ''],
+ 'ResponseSize' => ['type' => 'integer', 'format' => 'int64', 'description' => '', 'title' => '', 'example' => ''],
+ 'ClientIp' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
+ 'DbId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
+ 'OriginTime' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
+ 'OpType' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
+ 'Fail' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
+ 'Params' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
+ 'Reason' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
+ 'ReqId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
+ 'ExtText' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ '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**: The request was successful.'."\n"
- .'* **false**: The request failed.'."\n",
- 'type' => 'string',
- 'example' => 'true',
+ 'example' => '',
],
],
'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'title' => 'DescribeSlowLogRecords',
+ 'summary' => 'This API lets you query, filter, and sort slow log records from a database instance based on multiple conditions.',
+ 'description' => '- `InstanceId` is the required instance ID.'."\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"
+ .'- `StartTime` and `EndTime` specify the required query time range.'."\n"
."\n"
- .'* The version of Database Autonomy Service (DAS) SDK must be 1.0.2 or later.'."\n"
+ .'- Use `PageNumber` and `PageSize` to paginate the results.'."\n"
."\n"
- .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n"
+ .'- Use `OrderBy` to sort the results. For a list of sortable fields, refer to the documentation.'."\n"
."\n"
- .'* This operation is available only for an ApsaraDB for Redis instance of one of the following versions:'."\n"
+ .'- Use `Filters` to refine query conditions, such as filtering by host address or SQL ID.'."\n"
+ ."\n\n"
+ .' ><notice>'."\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',
+ .' Some database types, such as RDS for PostgreSQL and PolarDB for PostgreSQL, do not support specific sorting methods. Select parameters compatible with your database type.'."\n"
+ ."\n"
+ .' ></notice>',
+ 'requestParamsDescription' => 'The **Key** parameter supports the following values:'."\n"
+ ."\n"
+ .'- **RDS for MySQL, PolarDB for MySQL, RDS for PostgreSQL, and PolarDB for PostgreSQL**'."\n"
+ ."\n"
+ .' - hostAddress: Source IP address. Separate multiple values with commas.'."\n"
+ ."\n"
+ .' - sqlId: SQL ID. Separate multiple values with commas.'."\n"
+ ."\n"
+ .' - user: User. Separate multiple values with commas.'."\n"
+ ."\n"
+ .' - dbName: Database name. Separate multiple values with commas.'."\n"
+ ."\n"
+ .' - tags: Tags. Separate multiple values with commas.'."\n"
+ ."\n"
+ .'- **MongoDB**'."\n"
+ ."\n"
+ .' - hostInsId: Role ID. Separate multiple values with commas.'."\n"
+ ."\n"
+ .' - insRole: Instance role. Separate multiple values with commas.'."\n"
+ ."\n"
+ .' - opType: Operation type. Separate multiple values with commas.'."\n"
+ ."\n"
+ .' - namespace: Namespace. Separate multiple values with commas.'."\n"
+ ."\n"
+ .' - nodeType: Component type. Separate multiple values with commas.'."\n"
+ ."\n"
+ .' - queryId: Query ID. Separate multiple values with commas.'."\n"
+ ."\n"
+ .'- **Tair**'."\n"
+ ."\n"
+ .' - hostAddress: Source IP address.'."\n"
+ ."\n"
+ .' - user: User.'."\n"
+ ."\n"
+ .' - dbName: Database name.'."\n"
+ ."\n"
+ .' - nodeType: Node type.'."\n"
+ ."\n"
+ .'- **RDS for SQL Server**'."\n"
+ ."\n"
+ .' - hostAddress: Source IP address. Separate multiple values with commas.'."\n"
+ ."\n"
+ .' - sqlId: SQL ID. Separate multiple values with commas.'."\n"
+ ."\n"
+ .' - user: User. Separate multiple values with commas.'."\n"
+ ."\n"
+ .' - dbName: Database name. Separate multiple values with commas.'."\n"
+ ."\n"
+ .' - tags: Tags. Separate multiple values with commas.'."\n"
+ ."\n"
+ .'- **PolarDB-X**'."\n"
+ ."\n"
+ .' - traceId: Trace ID.'."\n"
+ ."\n"
+ .' - role: Node role. Required. Valid values: `CN` (compute node) and `DN` (data node).'."\n"
+ ."\n"
+ .' - hostAddress: Source IP address. Separate multiple values with commas.'."\n"
+ ."\n"
+ .' - sqlId: SQL ID. Separate multiple values with commas.'."\n"
+ ."\n"
+ .' - user: User. Separate multiple values with commas.'."\n"
+ ."\n"
+ .' - dbName: Database name. Separate multiple values with commas.'."\n"
+ ."\n"
+ .' - tags: Tags. Separate multiple values with commas.'."\n"
+ ."\n"
+ .'> * For SQL engines, you can query data by sqlId. Specify up to 20 comma-separated SQL IDs.'."\n"
+ .'>'."\n"
+ .'> * For MongoDB, you can query data by queryId. Specify up to 20 comma-separated query IDs.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeSlowLogRecords'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeSlowLogRecords',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ '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 \\"Fail\\": \\"\\",\\n \\"Params\\": \\"\\",\\n \\"Reason\\": \\"\\",\\n \\"ReqId\\": \\"\\",\\n \\"ExtText\\": \\"\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
+ ],
+ 'DescribeSlowLogStatistic' => [
+ 'summary' => 'Retrieves slow query log statistics.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
+ 'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '236526',
+ 'abilityTreeNodes' => ['FEATUREhdmR88NLD'],
],
'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****',
- ],
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
],
[
'name' => 'NodeId',
- 'in' => 'query',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The node ID.'."\n"
+ ."\n"
+ .'- For RDS for MySQL and PolarDB for MySQL, this parameter applies only to cluster instances. If you do not specify this parameter, the slow query logs of the primary node are queried by default.'."\n"
+ ."\n"
+ .'- For PolarDB-X 2.0, specify **polarx\\_cn** for compute nodes or **polarx\\_dn** for data nodes.', 'type' => 'string', 'required' => false, 'example' => 'r-x****-db-0', 'title' => ''],
+ ],
+ [
+ 'name' => 'Type',
+ 'in' => 'formData',
'schema' => [
- 'description' => 'The ID of the data shard on the ApsaraDB for Redis instance.',
+ 'description' => 'The task type.'."\n"
+ ."\n"
+ .'For SQL engines:'."\n"
+ ."\n"
+ .'**SlowLogRequestOrigin**: Aggregates logs by source IP address.'."\n"
+ ."\n"
+ .'**SlowLogRequestUser**: Aggregates logs by source user.'."\n"
+ ."\n"
+ .'**SQL**: Aggregates logs by SQL ID.'."\n"
+ ."\n"
+ .'For ApsaraDB for MongoDB engines:'."\n"
+ ."\n"
+ .'**SlowLogRequestOrigin**: Aggregates logs by source IP address.'."\n"
+ ."\n"
+ .'**SlowLogRequestUser**: Aggregates logs by source user.'."\n"
+ ."\n"
+ .'**SQL**: Aggregates logs by query ID.'."\n"
+ ."\n"
+ .'**SlowLogRequestOpType**: Aggregates logs by operation type.'."\n"
+ ."\n"
+ .'**SlowLogRequestNamespace**: Aggregates logs by namespace.'."\n"
+ ."\n"
+ .'For Redis engines:'."\n"
+ ."\n"
+ .'**SlowLogRequestNodeId**: Aggregates logs by node ID.'."\n"
+ ."\n"
+ .'**SlowLogRequestHostInsId**: Aggregates logs by host instance ID.',
+ 'enumValueTitles' => ['SlowLogRequestOrigin' => 'SlowLogRequestOrigin', 'OriginHost' => 'OriginHost', 'SlowLogRequestUser' => 'SlowLogRequestUser', 'SQL' => 'SQL'],
'type' => 'string',
'required' => false,
- 'example' => 'r-x****-db-0',
+ 'example' => 'SQL',
+ 'title' => '',
],
],
[
+ 'name' => 'TemplateId',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The template ID.', 'type' => 'string', 'required' => false, 'example' => '04ea3310df40c3fa8a6b4854db49f79a', 'title' => ''],
+ ],
+ [
'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',
- ],
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The start time of the query. This value is a UNIX timestamp in UTC. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1568269711000', 'title' => ''],
],
[
'name' => 'EndTime',
- 'in' => 'query',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The end time of the query. This value is a UNIX timestamp in UTC. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1608888296000', 'title' => ''],
+ ],
+ [
+ 'name' => 'OrderBy',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The sorting method. Valid values:'."\n"
+ ."\n"
+ .'**Count**'."\n"
+ ."\n"
+ .'**QueryTime**'."\n"
+ ."\n"
+ .'**LockTime**'."\n"
+ ."\n"
+ .'**RowsExamined**'."\n"
+ ."\n"
+ .'**RowsSent**', 'type' => 'string', 'required' => false, 'example' => 'count', 'title' => ''],
+ ],
+ [
+ 'name' => 'Asc',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'Specifies whether to sort the results in ascending order. The default value is false.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The page number. The value must be a positive integer. The default value is 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The number of entries to return on each page. The default value is 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20', 'title' => ''],
+ ],
+ [
+ 'name' => 'Filters',
+ 'in' => 'formData',
+ 'style' => 'repeatList',
'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',
+ 'description' => 'The filter conditions.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The supported keys and their value formats are as follows:'."\n"
+ ."\n"
+ .'hostAddress: The source IP address. Separate multiple IP addresses with commas (,).'."\n"
+ ."\n"
+ .'sqlId: The SQL ID. Separate multiple SQL IDs with commas (,).'."\n"
+ ."\n"
+ .'user: The user. Separate multiple users with commas (,).'."\n"
+ ."\n"
+ .'dbName: The database name. Separate multiple database names with commas (,).'."\n"
+ ."\n"
+ .'keyWord: The keyword. Separate multiple keywords with spaces.'."\n"
+ ."\n"
+ .'tags: The tag. Separate multiple tags with commas (,).',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => ['description' => 'The filter parameter.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'KeyWords'],
+ 'Value' => ['description' => 'The value of the filter parameter.', 'type' => 'string', 'required' => false, 'example' => 'select', 'title' => ''],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ 'title' => '',
+ 'example' => '',
],
],
],
'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****',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The returned message.'."\n"
+ ."\n"
+ .'> If the request is successful, **Successful** is returned. If the request fails, an error message, such as an error code, is returned.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '52D540CF-C517-1F57-BB42-9035F96******', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
'Data' => [
+ 'title' => 'AsyncResult<DBLogRecords<SlowLogStat>>',
+ 'description' => 'AsyncResult\\<DBLogRecords\\<SlowLogStat>>',
'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',
+ 'RequestKey' => ['description' => 'The key of the request parameter.', 'type' => 'string', 'title' => '', 'example' => '123456789'],
+ 'ResultId' => ['description' => 'The result ID.', 'type' => 'string', 'title' => '', 'example' => 'async__665ee69612f1627c7fd9f3c85075****'],
+ 'State' => ['description' => 'The status of the asynchronous request. Valid values:'."\n"
+ ."\n"
+ .'-**RUNNING**: The request is in progress.'."\n"
+ ."\n"
+ .'-**SUCCESS**: The request is successful.'."\n"
+ ."\n"
+ .'-**FAIL**: The request failed.', 'type' => 'string', 'title' => '', 'example' => 'SUCCESS'],
+ 'IsFinish' => ['description' => 'Indicates whether the asynchronous request is complete.', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
+ 'Data' => [
+ 'title' => '',
+ 'description' => 'The data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'DbInstanceName' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => '0', 'title' => ''],
+ 'NodeId' => ['description' => 'The node ID.'."\n"
+ ."\n"
+ .'For MongoDB instances, use this parameter to specify a node for storage analysis. Call the [DescribeRoleZoneInfo](~~123802~~) operation to query the details of the nodes in a MongoDB instance.'."\n"
+ ."\n"
+ .'- If you specify the **InsName** (node ID) of the destination node, such as `d-bp1872fa24d5****`, the system analyzes the corresponding hidden node.'."\n"
+ ."\n"
+ .'- If you specify `InsName#RoleId` of the destination node, such as `d-bp1872fa24d5****#299****5`, the system analyzes the specified node.'."\n"
+ ."\n"
+ .'><notice>'."\n"
+ ."\n"
+ .'For a MongoDB replica set instance, if you do not specify this parameter, the system analyzes the only hidden node by default. For a MongoDB sharded cluster instance, specify this parameter to select a destination node.'."\n"
+ ."\n"
+ .'></notice>', 'type' => 'string', 'example' => 'pi-wz99g5rn7w1x8h0sf', 'title' => ''],
+ 'ItemsNumbers' => ['description' => 'The number of items in the slow query log list on the current page.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'StartTime' => ['description' => 'The start time. This value is a UNIX timestamp. Unit: milliseconds.', 'type' => 'string', 'example' => '2024-10-08T02:01:00Z', 'title' => ''],
+ 'EndTime' => ['description' => 'The end time of the query. This value is a UNIX timestamp. Unit: milliseconds.'."\n"
+ ."\n"
+ .'> The end time must be later than the start time.', 'type' => 'string', 'example' => '2024-08-08T02:15:00Z', 'title' => ''],
+ 'DbInstanceId' => ['description' => 'The numeric ID of the instance.', 'type' => 'integer', 'format' => 'int64', 'example' => 'rm-k2ja51w7cnusg5a1x', 'title' => ''],
+ 'TotalRecords' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int64', 'example' => '13', 'title' => ''],
+ 'PageNumbers' => ['description' => 'The page number of the paged query. Pages start from 1. The default value is 1.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'MaxRecordsPerPage' => ['description' => 'The maximum number of entries to return on each page. Valid values: 5 to 100.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
+ 'Logs' => [
+ 'description' => 'The name of the operation object.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The log details.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Count' => ['description' => 'The number of elements that correspond to the key.', 'type' => 'integer', 'format' => 'int64', 'example' => '12', 'title' => ''],
+ 'MaxLockTime' => ['description' => 'This parameter is deprecated.', 'type' => 'number', 'format' => 'double', 'example' => '-', 'title' => ''],
+ 'MaxQueryTime' => ['description' => 'This parameter is deprecated.', 'type' => 'number', 'format' => 'double', 'example' => '-', 'title' => ''],
+ 'MaxRowsExamined' => ['description' => 'The maximum number of scanned rows.', 'type' => 'integer', 'format' => 'int64', 'example' => '318613', 'title' => ''],
+ 'MaxRowsSent' => ['description' => 'The maximum number of returned rows.', 'type' => 'integer', 'format' => 'int64', 'example' => '256', 'title' => ''],
+ 'AvgQueryTime' => ['description' => 'This parameter is deprecated.', 'type' => 'number', 'format' => 'double', 'example' => '-', 'title' => ''],
+ 'QueryTimeRate' => ['description' => 'The ratio of the query duration.', 'type' => 'number', 'format' => 'double', 'example' => '0.1018', 'title' => ''],
+ 'CountRate' => ['description' => 'The execution ratio.', 'type' => 'number', 'format' => 'double', 'example' => '0.2034', 'title' => ''],
+ 'AvgRowsExamined' => ['description' => 'The average number of scanned rows.', 'type' => 'number', 'format' => 'double', 'example' => '53421.0', 'title' => ''],
+ 'OriginAlias' => ['description' => 'The alias of the source.', 'type' => 'string', 'example' => 'order-1', 'title' => ''],
+ 'User' => ['description' => 'The user.', 'type' => 'string', 'example' => 'user-1', 'title' => ''],
+ 'SqlTag' => [
+ 'description' => 'The tags.',
+ 'type' => 'object',
+ 'properties' => [
+ 'SqlId' => ['description' => 'The SQL ID.', 'type' => 'string', 'example' => 'a3931d8c3a9315dd5ed016d71cf*****', 'title' => ''],
+ 'Tags' => ['description' => 'The tags. Multiple tags are separated by commas (,).', 'type' => 'string', 'title' => '', 'example' => 'DAS_IN_PLAN'],
+ 'Comments' => ['description' => 'The remarks.'."\n"
+ ."\n"
+ .'The value can be 1 to 300 characters in length.', 'type' => 'string', 'example' => 'dba 归档', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'Trend' => [
+ 'description' => 'The slow log trends.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The slow log trends.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Timestamp' => ['description' => 'The execution time. This value is a UNIX timestamp. Unit: milliseconds (ms).', 'type' => 'integer', 'format' => 'int64', 'example' => '1723775362', 'title' => ''],
+ 'Value' => ['description' => 'The value of the filter parameter.', 'type' => 'any', 'example' => 'tf-testacc-oos-parameter', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'Database' => ['description' => 'The database name.', 'type' => 'string', 'example' => 'work-wechat-api', 'title' => ''],
+ 'Histogram' => [
+ 'description' => 'The trend chart data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Total' => ['description' => 'The total number of entries returned for the query.', 'type' => 'integer', 'format' => 'int64', 'example' => '7', 'title' => ''],
+ 'Count' => [
+ 'description' => 'The number of slow query logs.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The number of slow query logs.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'Ts' => [
+ 'title' => '',
+ 'description' => 'The execution timestamp.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The time when the event occurred. This value is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1715220818', 'title' => ''],
+ 'example' => '',
+ ],
+ 'TsEnd' => [
+ 'description' => 'This parameter is deprecated.',
+ 'type' => 'array',
+ 'items' => ['description' => 'This parameter is deprecated.', 'type' => 'integer', 'format' => 'int64', 'example' => '-', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'Item' => [
+ 'description' => 'The task status.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The error code information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'NodeId' => ['description' => 'The node ID.', 'type' => 'string', 'example' => 'r-bp1s1m8hwzrm77kfvz-db-0', 'title' => ''],
+ 'Count' => [
+ 'description' => 'The number of slow query logs.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The number of elements that correspond to the key.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'Rt' => [
+ 'description' => 'The execution duration in seconds.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The execution duration in seconds.', 'type' => 'number', 'format' => 'double', 'example' => '1854', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AvgRt' => [
+ 'description' => 'The average execution duration.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The average execution duration.', 'type' => 'number', 'format' => 'double', 'example' => '3709', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'MaxRt' => [
+ 'description' => 'The maximum response time (RT) in milliseconds.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The maximum response time (RT) in milliseconds.', 'type' => 'number', 'format' => 'double', 'example' => '2516.0', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'LockTime' => [
+ 'description' => 'The lock wait time in milliseconds.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The lock wait time in milliseconds.', 'type' => 'number', 'format' => 'double', 'example' => '300', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AvgLockTime' => [
+ 'description' => 'The average lock wait time in seconds.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The average lock wait time in seconds.', 'type' => 'number', 'format' => 'double', 'example' => '15', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'MaxLockTime' => [
+ 'description' => 'The maximum lock wait time in seconds.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The maximum lock wait time in seconds.', 'type' => 'number', 'format' => 'double', 'example' => '1051', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'RowsExamined' => [
+ 'description' => 'The total number of scanned rows.'."\n"
+ ."\n"
+ .'> This parameter is supported by ApsaraDB RDS for MySQL, ApsaraDB RDS for PostgreSQL, and PolarDB for MySQL.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The total number of scanned rows.'."\n"
+ ."\n"
+ .'> This parameter is supported by ApsaraDB RDS for MySQL, ApsaraDB RDS for PostgreSQL, and PolarDB for MySQL.', 'type' => 'integer', 'format' => 'int64', 'example' => '641057', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AvgRowsExamined' => [
+ 'description' => 'The average number of scanned rows.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The average number of scanned rows.', 'type' => 'number', 'format' => 'double', 'example' => '222189', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'MaxRowsExamined' => [
+ 'description' => 'The maximum number of scanned rows.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The maximum number of scanned rows.', 'type' => 'integer', 'format' => 'int64', 'example' => '878511', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'RowsSent' => [
+ 'description' => 'The number of returned rows.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The number of returned rows.', 'type' => 'integer', 'format' => 'int64', 'example' => '4', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AvgRowsSent' => [
+ 'description' => 'The average number of returned rows.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The average number of returned rows.', 'type' => 'number', 'format' => 'double', 'example' => '2.0', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'MaxRowsSent' => [
+ 'description' => 'The maximum number of returned rows.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The maximum number of returned rows.', 'type' => 'integer', 'format' => 'int64', 'example' => '256', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'SqlId' => ['description' => 'The SQL ID.', 'type' => 'string', 'example' => '2dca88762ec6b3812504ab8a4b******', 'title' => ''],
+ 'Scheme' => ['description' => 'HTTP or HTTPS.', 'type' => 'string', 'example' => 'HTTP', 'title' => ''],
+ 'SubInstanceId' => ['description' => 'The ID of the sub-instance.', 'type' => 'string', 'example' => 'r-8vba51c588ba3a94', 'title' => ''],
+ 'DbInstanceName' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => '0', 'title' => ''],
+ 'InsName' => ['description' => 'The shard name.', 'type' => 'string', 'example' => 'rm-uf6zix1z2jh1y6fe5', 'title' => ''],
+ 'AccountName' => ['description' => 'The database account.', 'type' => 'string', 'example' => 'edu_admin', 'title' => ''],
+ 'HostAddress' => ['description' => 'The client IP address.', 'type' => 'string', 'example' => '172.23.142.178', 'title' => ''],
+ 'QueryStartTime' => ['description' => 'The time when the query started. The time is in the yyyy-MM-dd hh:mm:ss format and is in UTC.', 'type' => 'string', 'example' => '2024-12-25T03:00:00Z', 'title' => ''],
+ 'SQLText' => ['description' => 'The details of the SQL statement.', 'type' => 'string', 'example' => 'SELECT \'Hello, World!\' FROM DUAL', 'title' => ''],
+ 'Psql' => ['description' => 'The SQL template.', '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', 'title' => ''],
+ 'DBName' => ['description' => 'The database name.', 'type' => 'string', 'example' => 'member_score', 'title' => ''],
+ 'QueryTime' => ['description' => 'The threshold for the query execution time. Unit: milliseconds (ms).', 'type' => 'integer', 'format' => 'int64', 'example' => '272.444', 'title' => ''],
+ 'ReturnItemNumbers' => ['description' => 'The number of items returned.', 'type' => 'string', 'example' => '暂无', 'title' => ''],
+ 'DocsExamined' => ['description' => 'The number of documents scanned during the operation on the ApsaraDB for MongoDB instance.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'KeysExamined' => ['description' => 'The number of index scans on the ApsaraDB for MongoDB instance.', 'type' => 'integer', 'format' => 'int64', 'example' => '20000'."\n", 'title' => ''],
+ 'TableName' => ['description' => 'The table name.', 'type' => 'string', 'example' => 'users\\nifconfig\\n', 'title' => ''],
+ 'LockTime' => ['description' => 'This parameter is deprecated.', 'type' => 'number', 'format' => 'double', 'example' => '-', 'title' => ''],
+ 'RowsExamined' => ['description' => 'The total number of scanned rows.'."\n"
+ ."\n"
+ .'> This parameter is supported by ApsaraDB RDS for MySQL, ApsaraDB RDS for PostgreSQL, and PolarDB for MySQL.', 'type' => 'integer', 'format' => 'int64', 'example' => '2444081', 'title' => ''],
+ 'RowsSent' => ['description' => 'The number of returned rows.', 'type' => 'integer', 'format' => 'int64', 'example' => '772', 'title' => ''],
+ 'ThreadId' => ['description' => 'The thread ID. This parameter is returned only for PolarDB for MySQL instances.', 'type' => 'string', 'title' => '', 'example' => '1'],
+ 'Timestamp' => ['description' => 'The execution time. This value is a UNIX timestamp. Unit: milliseconds (ms).', 'type' => 'integer', 'format' => 'int64', 'example' => '1708568930', 'title' => ''],
+ 'AvgLockTime' => ['description' => 'This parameter is deprecated.', 'type' => 'number', 'format' => 'double', 'example' => '-', 'title' => ''],
+ 'AvgRowsSent' => ['description' => 'The average number of returned rows.', 'type' => 'number', 'format' => 'double', 'example' => '2.0', 'title' => ''],
+ 'LockTimeSeconds' => ['description' => 'The lock wait time in seconds.', 'type' => 'number', 'format' => 'double', 'example' => '0.0', 'title' => ''],
+ 'QueryTimeSeconds' => ['description' => 'The query duration in seconds.', 'type' => 'number', 'format' => 'double', 'example' => '25.472', 'title' => ''],
+ 'AvgLockTimeSeconds' => ['description' => 'The average lock wait time in seconds.', 'type' => 'number', 'format' => 'double', 'example' => '0.0', 'title' => ''],
+ 'MaxLockTimeSeconds' => ['description' => 'The maximum lock wait time in seconds.', 'type' => 'number', 'format' => 'double', 'example' => '0.0', 'title' => ''],
+ 'MaxQueryTimeSeconds' => ['description' => 'The maximum query duration in seconds.', 'type' => 'number', 'format' => 'double', 'example' => '14.402', 'title' => ''],
+ 'AvgQueryTimeSeconds' => ['description' => 'The average query duration in seconds.', 'type' => 'number', 'format' => 'double', 'example' => '6.211', 'title' => ''],
+ 'SqlType' => ['description' => 'The type of the SQL statement.', 'type' => 'string', 'example' => 'LOGIN', 'title' => ''],
+ 'QueryId' => ['description' => 'The query ID.'."\n"
+ ."\n"
+ .'> This parameter is supported only by ApsaraDB for MongoDB instances.', 'type' => 'string', 'example' => 'sq-1pzcdMwRb', 'title' => ''],
+ 'NodeType' => ['description' => 'The node type.'."\n"
+ ."\n"
+ .'> This parameter is supported by MongoDB and Tair (Redis-compatible).', 'type' => 'string', 'example' => 'DLNode', 'title' => ''],
+ 'HostInsId' => ['description' => 'The ID of the host instance.'."\n"
+ ."\n"
+ .'> This parameter is supported only by ApsaraDB for MongoDB instances.', 'type' => 'string', 'example' => 'mongo-abc123456', 'title' => ''],
+ 'InsRole' => ['description' => 'The instance role.'."\n"
+ ."\n"
+ .'> This parameter is supported only by MongoDB instances.', 'type' => 'string', 'example' => '__system', 'title' => ''],
+ 'OpType' => ['description' => 'The operation type.'."\n"
+ ."\n"
+ .'> This parameter is supported only by MongoDB instances.', 'type' => 'string', 'example' => 'Insert', 'title' => ''],
+ 'Namespace' => ['description' => 'The namespace.'."\n"
+ ."\n"
+ .'> This parameter is supported only by ApsaraDB for MongoDB instances.', 'type' => 'string', 'example' => 'database.collection', 'title' => ''],
+ 'AvgKeysExamined' => ['description' => 'The average number of index scans.'."\n"
+ ."\n"
+ .'> This parameter is supported only by ApsaraDB for MongoDB instances.', 'type' => 'number', 'format' => 'double', 'example' => '20000', 'title' => ''],
+ 'AvgDocExamined' => ['description' => 'The average number of scanned documents.'."\n"
+ ."\n"
+ .'> This parameter is supported only by ApsaraDB for MongoDB instances.', 'type' => 'number', 'format' => 'double', 'example' => '10000', 'title' => ''],
+ 'AvgReturnNum' => ['description' => 'The average number of returned rows.'."\n"
+ ."\n"
+ .'> This parameter is supported only by MongoDB instances.', 'type' => 'number', 'format' => 'double', 'example' => '1', 'title' => ''],
+ 'MaxKeysExamined' => ['description' => 'The maximum number of index scans.'."\n"
+ ."\n"
+ .'> This parameter is supported only by ApsaraDB for MongoDB instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '2000000', 'title' => ''],
+ 'MaxDocExamined' => ['description' => 'The maximum number of scanned documents.'."\n"
+ ."\n"
+ .'> This parameter is supported only by ApsaraDB for MongoDB instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '1000000', 'title' => ''],
+ 'MaxReturnNum' => ['description' => 'The maximum number of returned rows.'."\n"
+ ."\n"
+ .'> This parameter is supported only by ApsaraDB for MongoDB instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'ReturnNum' => ['description' => 'The number of returned rows.'."\n"
+ ."\n"
+ .'> This parameter is supported only by ApsaraDB for MongoDB instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'DocExamined' => ['description' => 'The number of scanned documents.'."\n"
+ ."\n"
+ .'> This parameter is supported only by ApsaraDB for MongoDB instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '2000000', 'title' => ''],
+ 'Command' => ['description' => 'The slow query statement.'."\n"
+ ."\n"
+ .'> This parameter is supported only by Tair (Redis OSS-compatible) instances.', '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', 'title' => ''],
+ 'IOWrites' => ['description' => 'The number of I/O writes.'."\n"
+ ."\n"
+ .'> This parameter is supported only by ApsaraDB RDS for SQL Server instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '1000', 'title' => ''],
+ 'MaxIOWrites' => ['description' => 'The maximum number of I/O writes.'."\n"
+ ."\n"
+ .'> This parameter is supported only by ApsaraDB RDS for SQL Server instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '1000', 'title' => ''],
+ 'LastRowsCountAffected' => ['description' => 'The number of rows affected by the last statement.'."\n"
+ ."\n"
+ .'> This parameter is supported only by ApsaraDB RDS for SQL Server instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '1000', 'title' => ''],
+ 'MaxLastRowsCountAffected' => ['description' => 'The maximum number of rows affected by the last statement.'."\n"
+ ."\n"
+ .'> This parameter is supported only by ApsaraDB RDS for SQL Server instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '1000', 'title' => ''],
+ 'LogicalIOReads' => ['description' => 'The number of logical reads.'."\n"
+ ."\n"
+ .'> This parameter is supported only by ApsaraDB RDS for SQL Server instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '1000', 'title' => ''],
+ 'MaxLogicalIOReads' => ['description' => 'The maximum number of logical reads.'."\n"
+ ."\n"
+ .'> This parameter is supported only by ApsaraDB RDS for SQL Server instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '1000', 'title' => ''],
+ 'PhysicalIOReads' => ['description' => 'The number of physical reads.'."\n"
+ ."\n"
+ .'> This parameter is supported only by ApsaraDB RDS for SQL Server instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '1000', 'title' => ''],
+ 'MaxPhysicalIOReads' => ['description' => 'The maximum number of physical reads.'."\n"
+ ."\n"
+ .'> This parameter is supported only by ApsaraDB RDS for SQL Server instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '1000', 'title' => ''],
+ 'RowsCountAffected' => ['description' => 'The number of affected rows.'."\n"
+ ."\n"
+ .'> This parameter is supported only by ApsaraDB RDS for SQL Server instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '1000', 'title' => ''],
+ 'MaxRowsCountAffected' => ['description' => 'The maximum number of affected rows.'."\n"
+ ."\n"
+ .'> This parameter is supported only by ApsaraDB RDS for SQL Server instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '1000', 'title' => ''],
+ 'CPUTime' => ['description' => 'This parameter is deprecated.', 'type' => 'number', 'format' => 'double', 'example' => '-', 'title' => ''],
+ 'AvgCPUTime' => ['description' => 'This parameter is deprecated.', 'type' => 'number', 'format' => 'double', 'example' => '-'."\n", 'title' => ''],
+ 'MaxCPUTime' => ['description' => 'This parameter is deprecated.', 'type' => 'number', 'format' => 'double', 'example' => '-'."\n", 'title' => ''],
+ 'AvgIOWrites' => ['description' => 'The average number of I/O writes.'."\n"
+ ."\n"
+ .'> This parameter is supported only by ApsaraDB RDS for SQL Server instances.', 'type' => 'number', 'format' => 'double', 'example' => '1000', 'title' => ''],
+ 'AvgLastRowsCountAffected' => ['description' => 'The average number of rows affected by the last statement.'."\n"
+ ."\n"
+ .'> This parameter is supported only by ApsaraDB RDS for SQL Server instances.', 'type' => 'number', 'format' => 'double', 'example' => '1000', 'title' => ''],
+ 'AvgLogicalIOReads' => ['description' => 'The average number of logical reads.'."\n"
+ ."\n"
+ .'> This parameter is supported only by ApsaraDB RDS for SQL Server instances.', 'type' => 'number', 'format' => 'double', 'example' => '1000', 'title' => ''],
+ 'AvgPhysicalIOReads' => ['description' => 'The average number of physical reads.'."\n"
+ ."\n"
+ .'> This parameter is supported only by ApsaraDB RDS for SQL Server instances.', 'type' => 'number', 'format' => 'double', 'example' => '1000', 'title' => ''],
+ 'AvgRowsCountAffected' => ['description' => 'The average number of affected rows.'."\n"
+ ."\n"
+ .'> This parameter is supported only by ApsaraDB RDS for SQL Server instances.', 'type' => 'number', 'format' => 'double', 'example' => '1000', 'title' => ''],
+ 'AvgCPUTimeSeconds' => ['description' => 'The average CPU time for the query in seconds.', 'type' => 'number', 'format' => 'double', 'example' => '456', 'title' => ''],
+ 'MaxCPUTimeSeconds' => ['description' => 'The longest CPU time for the query in seconds.', 'type' => 'number', 'format' => 'double', 'example' => '456', 'title' => ''],
+ 'CPUTimeSeconds' => ['description' => 'The CPU time for the query in seconds.'."\n"
+ ."\n"
+ .'> This parameter is supported only by ApsaraDB RDS for SQL Server instances.', 'type' => 'number', 'format' => 'double', 'example' => '456', 'title' => ''],
+ 'Rows' => ['description' => 'The total number of rows updated or returned by the compute nodes of the PolarDB-X 2.0 instance.'."\n"
+ ."\n"
+ .'> This parameter is supported only by PolarDB-X 2.0 instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '105', 'title' => ''],
+ 'AvgRows' => ['description' => 'The average number of rows.', 'type' => 'number', 'format' => 'double', 'example' => '10', 'title' => ''],
+ 'MaxRows' => ['description' => 'The maximum number of rows.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'Frows' => ['description' => 'The number of rows pulled by the compute nodes (CNs) of the PolarDB-X 2.0 instance.'."\n"
+ ."\n"
+ .'> This parameter is supported only by PolarDB-X 2.0 instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'AvgFrows' => ['description' => 'The average number of pulled rows.', 'type' => 'number', 'format' => 'double', 'example' => '10', 'title' => ''],
+ 'MaxFrows' => ['description' => 'The maximum number of pulled rows.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'Scnt' => ['description' => 'The number of requests sent from the compute nodes (CNs) to data nodes (DNs) in the PolarDB-X 2.0 instance.'."\n"
+ ."\n"
+ .'> This parameter is supported only by PolarDB-X 2.0 instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'AvgScnt' => ['description' => 'The average number of requests.', 'type' => 'number', 'format' => 'double', 'example' => '10', 'title' => ''],
+ 'MaxScnt' => ['description' => 'The maximum number of requests.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'RuleId' => ['description' => 'The rule ID. For more information, see [Query Governance](~~290038~~).', 'type' => 'string', 'example' => '181**47', 'title' => ''],
+ 'AvgRt' => ['description' => 'The average execution duration.', 'type' => 'number', 'format' => 'double', 'title' => '', 'example' => ''],
+ 'MaxRt' => ['description' => 'The maximum execution duration in seconds.', 'type' => 'number', 'format' => 'double', 'title' => '', 'example' => ''],
+ 'AvgRequestSize' => ['description' => 'The average size of the request in bytes. This parameter is valid only for Redis.', 'type' => 'number', 'format' => 'double', 'title' => '', 'example' => ''],
+ 'MaxRequestSize' => ['description' => 'The maximum size of the request in bytes. This parameter is valid only for Redis.', 'type' => 'number', 'format' => 'double', 'title' => '', 'example' => ''],
+ 'AvgResponseSize' => ['description' => 'The average size of the response in bytes. This parameter is valid only for Redis.', 'type' => 'number', 'format' => 'double', 'title' => '', 'example' => ''],
+ 'MaxResponseSize' => ['description' => 'The maximum size of the response in bytes. This parameter is valid only for Redis.', 'type' => 'number', 'format' => 'double', 'title' => '', 'example' => ''],
+ 'TotalCount' => ['description' => 'The total number of records. This parameter is valid only for Redis engines.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'Cmd' => ['description' => 'The executed command. This parameter is valid only for Redis.', 'type' => 'string', 'example' => 'systemctl restart nginx.service', 'title' => ''],
+ 'ClientIp' => ['description' => 'The client\'s IP address.', 'type' => 'string', 'example' => '10.57.84.109', 'title' => ''],
+ 'DbId' => ['description' => 'The database ID. This parameter is valid only for Redis.', 'type' => 'string', 'example' => '0', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
+ 'ErrorCode' => ['description' => 'The error code.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '10910'],
+ 'Message' => ['description' => 'The error message.', 'type' => 'string', 'title' => '', 'example' => 'Successful'],
+ 'Timestamp' => ['description' => 'The timestamp of the request.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1735104224250'],
],
- ],
- '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',
+ 'example' => '',
],
],
'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ '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\\": \\"systemctl restart nginx.service\\",\\n \\"ClientIp\\": \\"10.57.84.109\\",\\n \\"DbId\\": \\"0\\"\\n }\\n ]\\n },\\n \\"ErrorCode\\": 10910,\\n \\"Message\\": \\"Successful\\",\\n \\"Timestamp\\": 1735104224250\\n }\\n}","type":"json"}]',
+ 'title' => 'DescribeSlowLogStatistic',
+ 'description' => '**Before you call this operation, make sure that you understand the [billing methods and pricing](~~156195~~) of Database Autonomy Service (DAS).**'."\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"
+ .'Before you call this operation, make sure that the following requirements are met:'."\n"
."\n"
- .'* The version of Database Autonomy Service (DAS) SDK must be 1.0.2 or later.'."\n"
+ .'- Alibaba Cloud Managed Services is enabled for the instance.'."\n"
."\n"
- .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n"
+ .'- Use the latest version of the Alibaba Cloud SDK or DAS SDK.'."\n"
."\n"
- .'* This operation is available only for an ApsaraDB for Redis instance of one of the following versions:'."\n"
+ .'- When you use an SDK to call the DAS service, set the region to cn-shanghai.'."\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',
+ .'This operation is asynchronous and does not return the complete result immediately. If the \\`isFinish\\` parameter in the response is \\`false\\`, wait 1 second and send the request again. Repeat the request until the \\`isFinish\\` parameter is \\`true\\` to retrieve the complete result.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeSlowLogStatistic'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeSlowLogStatistic',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ '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' => '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',
- ],
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The ID of the database instance.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
],
'responses' => [
@@ -6100,219 +7376,234 @@
'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****',
- ],
+ 'Code' => ['description' => 'The response code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'Data' => [
+ 'title' => 'SqlLogConfig',
+ 'description' => 'The data that is returned.',
'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',
- ],
- ],
- ],
- ],
+ 'ColdEnable' => ['description' => 'Indicates whether the cold data storage is enabled. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'ColdRetention' => ['description' => 'The number of days for which the SQL Explorer and Audit data is stored in cold storage.', 'type' => 'integer', 'format' => 'int32', 'title' => '', '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1683712800000', 'title' => ''],
+ 'CollectorVersion' => ['description' => 'The collector version. Valid values:'."\n"
+ ."\n"
+ .'- **MYSQL\\_V0**'."\n"
+ ."\n"
+ .'- **MYSQL\\_V1**'."\n"
+ ."\n"
+ .'- **MYSQL\\_V2**'."\n"
+ ."\n"
+ .'- **MYSQL\\_V3**'."\n"
+ ."\n"
+ .'- **PG\\_V1**'."\n"
+ ."\n"
+ .'- **rdspg\\_v1**'."\n"
+ ."\n"
+ .'- **polarpg\\_v1**', 'type' => 'string', 'example' => 'MYSQL_V3', 'title' => ''],
+ 'HotEnable' => ['description' => 'Indicates whether the hot data storage is enabled. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'HotRetention' => ['description' => 'The number of days for which the SQL Explorer and Audit data is stored in hot storage.', 'type' => 'integer', 'format' => 'int32', 'example' => '7', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1683712800000', 'title' => ''],
+ 'LogFilter' => ['description' => 'A reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'RequestEnable' => ['description' => 'Indicates whether the SQL Explorer feature is enabled. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1683712800000', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1715335200000', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int32', 'example' => '30', 'title' => ''],
+ 'SqlLogEnable' => ['description' => 'Indicates whether DAS Enterprise Edition is enabled. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'SqlLogSource' => ['description' => 'A reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'SqlLogState' => ['description' => 'The state of data migration. Valid values:'."\n"
+ ."\n"
+ .'- **FINISH**: The historical data is migrated.'."\n"
+ ."\n"
+ .'- **RUNNING**: The historical data is being migrated.'."\n"
+ ."\n"
+ .'- **FAILURE**: The historical data fails to be migrated.', 'type' => 'string', 'example' => 'FINISH', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1683712800000', 'title' => ''],
+ 'SupportMigration' => ['description' => 'A reserved parameter.', 'type' => 'boolean', 'example' => 'None', 'title' => ''],
+ 'SupportVersion' => ['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"
+ ."\n"
+ .'- **SQL\\_LOG\\_V1**: DAS Enterprise version V1.'."\n"
+ ."\n"
+ .'- **SQL\\_LOG\\_V2**: DAS Enterprise Edition V2.'."\n"
+ ."\n"
+ .'- **SQL\\_LOG\\_V3**: DAS Enterprise Edition V3.'."\n"
+ ."\n"
+ .'- **SQL\\_LOG\\_NOT\\_ENABLE**: DAS Enterprise Edition is not enabled.'."\n"
+ ."\n"
+ .'- **SQL\\_LOG\\_NOT\\_SUPPORT**: DAS Enterprise Edition is not supported.', 'type' => 'string', 'title' => '', 'example' => 'SQL_LOG_V3'],
+ 'Version' => ['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"
+ ."\n"
+ .'- **SQL\\_LOG\\_V1**: DAS Enterprise version V1.'."\n"
+ ."\n"
+ .'- **SQL\\_LOG\\_V2**: DAS Enterprise Edition V2.'."\n"
+ ."\n"
+ .'- **SQL\\_LOG\\_V3**: DAS Enterprise Edition V3.'."\n"
+ ."\n"
+ .'- **SQL\\_LOG\\_NOT\\_ENABLE**: DAS Enterprise Edition is not enabled.'."\n"
+ ."\n"
+ .'- **SQL\\_LOG\\_NOT\\_SUPPORT**: DAS Enterprise Edition is not supported.', 'type' => 'string', 'title' => '', 'example' => 'SQL_LOG_V3'],
],
+ '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',
- ],
+ 'Message' => ['description' => 'The returned message.'."\n"
+ ."\n"
+ .'> If the request was successful, **Successful** is returned. If the request failed, an error message is returned.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0A74B755-98B7-59DB-8724-1321B394****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'DescribeSqlLogConfig',
'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"
+ .'- 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"
."\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',
+ .'- If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.',
+ '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`.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeSqlLogConfig'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeSqlLogConfig',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ '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"}]',
+ ],
+ 'DescribeSqlLogRecords' => [
+ 'summary' => 'Call DescribeSqlLogRecords to query log details in DAS Enterprise Edition.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'write',
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'update',
+ 'operationType' => 'list',
'riskType' => 'none',
'chargeType' => 'free',
+ 'abilityTreeCode' => '199697',
+ 'abilityTreeNodes' => ['FEATUREhdmFT57I0'],
],
'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' => 'InstanceId',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The ID of the database instance.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => 'pc-2ze8g2am97624****'."\n"],
],
[
- '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' => 'NodeId',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The node ID.'."\n"
+ ."\n"
+ .'- This parameter is applicable only to ApsaraDB RDS for MySQL and PolarDB for MySQL cluster instances. If this parameter is omitted, the log details of the primary node are returned by default.'."\n"
+ ."\n"
+ .'- For PolarDB-X 2.0, set this parameter to **polarx\\_cn** (compute node) or **polarx\\_dn** (data node).', 'type' => 'string', 'required' => false, 'example' => 'pi-uf6k5f6g3912i****', 'title' => ''],
],
[
- 'name' => 'Tags',
+ 'name' => 'Role',
'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',
- ],
+ 'schema' => ['description' => 'The role of the node in the PolarDB-X 2.0 database instance.'."\n"
+ ."\n"
+ .'- **polarx\\_cn**: compute node.'."\n"
+ ."\n"
+ .'- **polarx\\_dn**: data node.', 'type' => 'string', 'required' => false, 'example' => 'polarx_cn ', 'title' => ''],
],
[
- 'name' => 'Status',
+ 'name' => 'Filters',
'in' => 'query',
+ 'style' => 'repeatList',
'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',
+ 'description' => 'A list of filter conditions.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The filter condition.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => ['description' => 'The filter key.'."\n"
+ ."\n"
+ .'> For details on supported filter keys and their values, see **Additional information about request parameters**.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'keyWords'],
+ 'Value' => ['description' => 'The filter value.', 'type' => 'string', 'required' => false, 'example' => 'select', 'title' => ''],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ 'title' => '',
+ 'example' => '',
],
],
[
- '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' => 'StartTime',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The beginning of the time range to query. This is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1596177993000', 'title' => ''],
],
[
- 'name' => 'InstanceId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-2ze1jdv45i7l6****',
- ],
+ 'name' => 'EndTime',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The end of the time range to query. This is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1608888296000', 'title' => ''],
+ ],
+ [
+ 'name' => 'PageNo',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The page number. Pages start from page 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The number of entries per page. Maximum value: 100. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''],
],
],
'responses' => [
@@ -6320,220 +7611,339 @@
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The returned message.'."\n"
+ ."\n"
+ .'> If the request is successful, **Successful** is returned. Otherwise, an error message is returned.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'F43E7FB3-CE67-5FFD-A59C-EFD278BCD7BE', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'Data' => [
- 'title' => 'Boolean',
- 'description' => 'Indicates whether the tags were added to the SQL templates.'."\n"
- ."\n"
- .'* **true**'."\n"
- .'* **false**'."\n",
- 'type' => 'boolean',
- 'example' => 'true',
+ 'title' => '',
+ 'description' => 'The returned data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'StartTime' => ['description' => 'The start time of the query. This value is a UNIX timestamp. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1596177993000', 'title' => ''],
+ 'EndTime' => ['description' => 'The end time of the query. This value is a UNIX timestamp. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1608888296000', 'title' => ''],
+ 'TotalRecords' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'Items' => [
+ 'description' => 'The details of the SQL logs.',
+ 'type' => 'object',
+ 'properties' => [
+ 'SQLLogRecord' => [
+ 'description' => 'The SQL log data.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The SQL log data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Ext' => ['description' => 'The extended information. This parameter is reserved.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'ExecuteTime' => ['description' => 'The execution time. The time is in UTC. Format: `yyyy-MM-ddTHH:mm:ssZ`.', 'type' => 'string', 'example' => '2023-12-07T02:15:32Z', 'title' => ''],
+ 'OriginTime' => ['description' => 'The execution time. This value is a UNIX timestamp. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1701886532000', 'title' => ''],
+ 'HostAddress' => ['description' => 'The client IP address.', 'type' => 'string', 'example' => '11.197.XX.XX', 'title' => ''],
+ 'UpdateRows' => ['description' => 'The number of updated rows.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'LogicRead' => ['description' => 'The number of logical reads.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'SqlText' => ['description' => 'The SQL statement.', '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', 'title' => ''],
+ 'LockTime' => ['description' => 'The lock wait time. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'ScanRows' => ['description' => 'The number of scanned rows.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'ThreadId' => ['description' => 'The thread ID.', 'type' => 'integer', 'format' => 'int64', 'example' => 'None', 'title' => ''],
+ 'State' => ['description' => 'The execution status. Valid values:'."\n"
+ ."\n"
+ .'- **0**: The execution was successful.'."\n"
+ ."\n"
+ .'- **1**: The execution failed.', 'type' => 'string', 'example' => '0', 'title' => ''],
+ 'DBName' => ['description' => 'The database name.', 'type' => 'string', 'example' => 'testdb', 'title' => ''],
+ 'SqlType' => ['description' => 'The type of the SQL statement.', 'type' => 'string', 'example' => 'select', 'title' => ''],
+ 'AccountName' => ['description' => 'The database account.', 'type' => 'string', 'example' => 'testname', 'title' => ''],
+ 'PhysicSyncRead' => ['description' => 'The number of synchronous physical reads.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'PhysicAsyncRead' => ['description' => 'The number of asynchronous physical reads.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'TrxId' => ['description' => 'The transaction ID.', 'type' => 'string', 'example' => '200000', 'title' => ''],
+ 'ReturnRows' => ['description' => 'The number of returned rows.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'Consume' => ['description' => 'The execution duration. Unit: microseconds (μs).', 'type' => 'integer', 'format' => 'int64', 'example' => '58', 'title' => ''],
+ 'Vip' => ['description' => 'The endpoint that is resolved from the query connection string.', 'type' => 'string', 'example' => '100.115.XX.XX', 'title' => ''],
+ 'NodeId' => ['description' => 'The node ID.', 'type' => 'string', 'example' => 'pi-uf6k5f6g3912i****', 'title' => ''],
+ 'SqlId' => ['description' => 'The SQL ID.', 'type' => 'string', 'example' => 'c67649d4a7fb62c4f8c7a447c52b5b17', 'title' => ''],
+ 'UseImciEngine' => ['description' => 'Indicates whether an In-Memory Column Index (IMCI) is used for the PolarDB for MySQL instance.'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
+ 'ParallelQueueTime' => ['description' => 'The parallel queue time for the PolarDB for MySQL instance. Unit: milliseconds.', 'type' => 'string', 'example' => '2', 'title' => ''],
+ 'ParallelDegree' => ['description' => 'The degree of parallelism (DOP) for the PolarDB for MySQL instance.', 'type' => 'string', 'example' => '10', 'title' => ''],
+ 'Scnt' => ['description' => 'The number of requests sent from a compute node (CN) to data nodes (DNs) in a PolarDB-X 2.0 instance.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'Rows' => ['description' => 'The total number of rows updated or returned by the compute node (CN) of a PolarDB-X 2.0 instance.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'Frows' => ['description' => 'The number of rows fetched by the compute node (CN) in a PolarDB-X 2.0 instance.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'TraceId' => ['description' => 'The trace ID for a PolarDB-X 2.0 instance. This is the ID of the SQL statement that was executed on a data node (DN).', 'type' => 'string', 'example' => '14c93b7c7bf00000 ', 'title' => ''],
+ 'PhysicRead' => ['description' => 'The number of physical reads.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'CpuTime' => ['description' => 'The CPU execution time. Unit: microseconds (μs).', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
+ 'Writes' => ['description' => 'The number of write operations on an ApsaraDB RDS for SQL Server instance.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'Collection' => ['description' => 'This parameter is reserved.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'TableName' => ['description' => 'The name of the table that the SQL statement references.', 'type' => 'string', 'example' => 'das', 'title' => ''],
+ 'ConnectionId' => ['description' => 'The connection ID.', 'type' => 'string', 'example' => 'ld-******', 'title' => ''],
+ 'Protocol' => ['description' => 'The protocol type.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
+ 'Params' => ['description' => 'The SQL parameters.', 'type' => 'string', 'example' => '[1, "das"]', 'title' => ''],
+ 'ClientIp' => ['description' => 'The client IP address.', 'type' => 'string', 'example' => '10.0.0.1xx', 'title' => ''],
+ 'ClientPort' => ['description' => 'The client port.', 'type' => 'integer', 'format' => 'int64', 'example' => '3306', 'title' => ''],
+ 'RowKey' => ['description' => 'The row key of the SQL log record.', 'type' => 'string', 'example' => '23', 'title' => ''],
+ 'AffectColumns' => ['description' => 'The affected columns.', 'type' => 'string', 'example' => '["col1"]', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'Finish' => ['description' => 'Indicates whether the task is complete. Valid values:'."\n"
+ ."\n"
+ .'- **0**: The task is in progress.'."\n"
+ ."\n"
+ .'- **1**: The task is complete.'."\n"
+ ."\n"
+ .'> If this parameter is **0** and the **JobId** parameter is returned, the current request is an asynchronous request and you cannot obtain the returned results. You must use the value of **JobId** to initiate another request. Set the **Filters** parameter to the value of **JobId**. Example: `Filters=[{"Key": "JobId", "Value": "******"}]`.', 'type' => 'string', 'example' => '1', 'title' => ''],
+ 'JobId' => ['description' => 'The asynchronous task ID.', 'type' => 'string', 'example' => 'MzI4NTZfUUlOR0RBT19DTTlfTlUyMF9NWVNRTF9PREJTX0xWU18zMjg1Nl9teXNxbF9XZWQgTWFyIDA2IDE0OjUwOjQ3IENTVCAyMDI0XzBfMzBfRXhlY3V0ZVRpbWVfREVTQ19XZWQgTWFyIDA2IDE0OjM1OjQ3IENTVCAyMDI0Xw==_1709708406465', 'title' => ''],
+ ],
+ 'example' => '',
],
],
- 'description' => '',
+ 'description' => 'The root node.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ '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 calling this operation, note the following:'."\n"
."\n"
- .'* If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n"
+ .'- When you use an Alibaba Cloud or Database Autonomy Service (DAS) SDK, we recommend that you use the latest version.'."\n"
."\n"
- .'* This operation supports the following database engines:'."\n"
+ .'- When you call the DAS service by using an SDK, you must set the region to `cn-shanghai`.',
+ 'requestParamsDescription' => 'The following values are supported for the **Key** parameter:'."\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',
+ .'- **KeyWords**: The keywords for the query. Separate multiple keywords with a space.'."\n"
+ ."\n"
+ .'- **LogicalOperator**: The logical operator that connects keywords. Valid values: `and` and `or`.'."\n"
+ ."\n"
+ .'- **AccountName**: The database username. You can specify up to five usernames, separated by commas.'."\n"
+ ."\n"
+ .'- **dbName**: The database name. You can specify up to five database names, separated by commas.'."\n"
+ ."\n"
+ .'- **HostAddress**: The client IP address. You can specify up to five IP addresses, separated by commas.'."\n"
+ ."\n"
+ .'- **MaxConsume**: The maximum execution duration, in microseconds.'."\n"
+ ."\n"
+ .'- **MinConsume**: The minimum execution duration, in microseconds.'."\n"
+ ."\n"
+ .'- **MaxScanRows**: The maximum number of scanned rows.'."\n"
+ ."\n"
+ .'- **MinScanRows**: The minimum number of scanned rows.'."\n"
+ ."\n"
+ .'- **SqlType**: The sql type. Valid values: `select`, `update`, `insert`, and `delete`.'."\n"
+ ."\n"
+ .'- **State**: The execution state. Valid values: `0` (successful) and `1` (failed).'."\n"
+ ."\n"
+ .'- **ThreadId**: The thread ID.'."\n"
+ ."\n"
+ .'- **SortKey**: The sort key. Valid values: `ScanRows` (number of scanned rows), `UpdateRows` (number of updated rows), `Consume` (execution duration), `ExecuteTime` (execution time), `ReturnRows` (number of returned rows), `LockTime` (lock wait time), `Frows` (number of rows pulled by a compute node (CN)), `Scnt` (number of requests from a CN to a data node (DN)), `CpuTime` (CPU execution time), and `PhysicalRead` (physical reads).'."\n"
+ ."\n"
+ .'- **SortMethod**: The sort order. Valid values: `DESC` (descending) and `ASC` (ascending). Default value: `DESC`.'."\n"
+ ."\n"
+ .'- **TraceId**: The trace ID.'."\n"
+ ."\n"
+ .'- **MinRows**: The minimum number of updated rows.'."\n"
+ ."\n"
+ .'- **MaxRows**: The maximum number of updated rows.'."\n"
+ ."\n"
+ .'- **MinScnt**: The minimum number of requests from a CN to a DN.'."\n"
+ ."\n"
+ .'- **MaxScnt**: The maximum number of requests from a CN to a DN.'."\n"
+ ."\n"
+ .'- **TrxId**: The transaction ID.'."\n"
+ ."\n"
+ .'- **Fail**: The error code.'."\n"
+ ."\n"
+ .'- **SqlId**: The sql ID.'."\n"
+ ."\n"
+ .'- **JobId**: The asynchronous task ID. Use this ID to query the execution result of the task.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeSqlLogRecords'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeSqlLogRecords',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'DescribeSqlLogStatistic' => [
+ 'summary' => 'Call the `DescribeSqlLogStatistic` operation to query data statistics for 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' => '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' => 'InstanceId',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The database instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
],
- [
- 'name' => 'Keywords',
- 'in' => 'query',
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => 'The keywords of the SQL template. Separate multiple keywords with spaces.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'select update',
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => ['description' => 'The HTTP status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The response message.'."\n"
+ ."\n"
+ .'> If the request is successful, **Successful** is returned. Otherwise, an error message is returned.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- true: The request was successful.'."\n"
+ ."\n"
+ .'- false: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
+ 'Data' => [
+ 'title' => 'SqlLogStatistic',
+ 'description' => 'The data returned.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Timestamp' => ['description' => 'The UNIX timestamp in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1712568564928'],
+ 'HotSqlSize' => [
+ 'description' => 'The total size of data in hot storage, in bytes.',
+ 'enumValueTitles' => [],
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'title' => '',
+ 'example' => '1118042',
+ ],
+ 'ColdSqlSize' => ['description' => 'The total size of data in cold storage, in bytes.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '8585901'],
+ 'ImportSqlSize' => ['description' => 'The amount of data imported in the last 24 hours, in bytes.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '297245'],
+ 'FreeHotSqlSize' => ['description' => 'The amount of free-of-charge hot storage, in bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '297245', 'title' => ''],
+ 'FreeColdSqlSize' => ['description' => 'The amount of free-of-charge cold storage, in bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '5041450', 'title' => ''],
+ 'TotalSqlSize' => ['description' => 'The total storage size. This is the sum of the data in hot storage and cold storage. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '9703943', 'title' => ''],
+ ],
+ 'example' => '',
+ ],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
- [
- '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',
- ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
- [
- 'name' => 'DbNames',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The name of the database to be queried.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'testdb01',
- ],
+ 403 => [
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
- [
- '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',
+ ],
+ '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\\": 9703943\\n }\\n}","type":"json"}]',
+ 'title' => 'DescribeSqlLogStatistic',
+ 'description' => 'Before you call this operation, ensure the following:'."\n"
+ ."\n"
+ .'- We recommend that you use the latest version of the Alibaba Cloud SDK or DAS SDK.'."\n"
+ ."\n"
+ .'- When you use an SDK to call the DAS service, you must set the region to `cn-shanghai`.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeSqlLogStatistic'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeSqlLogStatistic',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
+ ],
+ ],
+ 'DescribeSqlLogTask' => [
+ 'summary' => 'Call the `DescribeSqlLogTask` operation to query the details of an offline task in DAS enterprise edition.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
+ 'security' => [
[
- 'name' => 'PageSize',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The number of entries per page. Default value: 10.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => '10',
- ],
+ 'AK' => [],
],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '213185',
+ 'abilityTreeNodes' => ['FEATUREhdmFT57I0'],
+ ],
+ 'parameters' => [
[
- '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' => 'InstanceId',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The database instance ID.', 'type' => 'string', 'required' => false, 'example' => 'r-bp1nti25tc7bq5****'."\n", 'title' => ''],
],
[
- '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' => 'TaskId',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The task ID.', 'type' => 'string', 'required' => false, 'example' => 'a4f5c4494dbd6713185d87a97aa53e8'."\n", 'title' => ''],
],
[
- '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' => 'PageNo',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The page number. Pages are numbered starting from 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
],
[
- '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' => 'PageSize',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The page size. Maximum value: 100. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''],
],
],
'responses' => [
@@ -6541,203 +7951,306 @@
'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',
- ],
+ 'Code' => ['description' => 'The returned HTTP status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The response message.'."\n"
+ ."\n"
+ .'> If the request is successful, **Successful** is returned. Otherwise, an error message is returned.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'Data' => [
- 'description' => 'The detailed information, including the error codes and the number of entries that are returned.'."\n",
+ 'title' => 'SqlLogTaskDetail',
+ 'description' => 'The returned data.',
'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',
+ 'Name' => ['description' => 'The task name.', 'type' => 'string', 'example' => 'SQL audit export 1', 'title' => ''],
+ 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'title' => '', 'example' => '9a4f5c4494dbd6713185d87a97aa53e8'."\n"],
+ 'TaskType' => ['description' => 'The task type. Valid values:'."\n"
+ ."\n"
+ .'- **Export**: an export task.'."\n"
+ ."\n"
+ .'- **Query**: a query task.', 'type' => 'string', 'title' => '', 'example' => 'Query'],
+ 'CreateTime' => ['description' => 'The time when the task was created, which is a UNIX timestamp in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1681363254423'."\n"],
+ 'Status' => ['description' => 'The task status. Valid values:'."\n"
+ ."\n"
+ .'- **INIT**: The task is pending.'."\n"
+ ."\n"
+ .'- **RUNNING**: The task is running.'."\n"
+ ."\n"
+ .'- **FAILED**: The task failed.'."\n"
+ ."\n"
+ .'- **CANCELED**: The task was canceled.'."\n"
+ ."\n"
+ .'- **COMPLETED**: The task is complete.'."\n"
+ ."\n"
+ .'> The results of an offline task are available only when the status is **COMPLETED**.', 'type' => 'string', 'title' => '', 'example' => 'COMPLETED'],
+ 'Expire' => ['description' => 'Indicates whether the task has expired. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The task has expired.'."\n"
+ ."\n"
+ .'- **false**: The task has not expired.', 'type' => 'boolean', 'example' => 'false'."\n", 'title' => ''],
+ 'Start' => ['description' => 'The beginning of the query time range, which is a UNIX timestamp in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1596177993000'."\n"],
+ 'End' => ['description' => 'The end of the query time range, which is a UNIX timestamp in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1608888296000'."\n"],
+ 'Filters' => [
+ 'title' => '',
+ 'description' => 'The filter conditions.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'A query filter condition.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => ['description' => 'The name of the filter parameter.'."\n"
+ ."\n"
+ .'> For more information about the supported filter parameters and their valid values, see the "Additional information about response parameters" section.', 'type' => 'string', 'title' => '', 'example' => 'keyWords'."\n"],
+ 'Value' => ['description' => 'The value of the filter parameter.', 'type' => 'any', 'title' => '', 'example' => 'select'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'example' => '',
],
- 'List' => [
- 'description' => 'The information about the SQL templates that failed to execute.',
+ 'Total' => ['description' => 'The total number of tasks.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1'],
+ 'Queries' => [
+ 'title' => '',
+ 'description' => 'The results of the offline query task. This parameter is returned only if the value of `TaskType` is `Query`.',
'type' => 'array',
'items' => [
- 'description' => '',
+ 'description' => 'The result of the offline query task.',
'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',
- ],
+ 'Vip' => ['description' => 'The IP address that the query endpoint resolves to.', 'type' => 'string', 'example' => '10.146.XX.XX', 'title' => ''],
+ 'NodeId' => ['description' => 'The node ID.', 'type' => 'string', 'example' => 'pi-bp1o58x3ib7e6****'."\n", 'title' => ''],
+ 'SqlText' => ['description' => 'The SQL statement.', 'type' => 'string', 'example' => 'SELECT @@session.transaction_read_only', 'title' => ''],
+ 'SqlType' => ['description' => 'The type of the SQL statement. Valid values:'."\n"
+ ."\n"
+ .'- **SELECT**'."\n"
+ ."\n"
+ .'- **UPDATE**'."\n"
+ ."\n"
+ .'- **DELETE**', 'type' => 'string', 'example' => 'SELECT', 'title' => ''],
+ 'State' => ['description' => 'The execution state. Valid values:'."\n"
+ ."\n"
+ .'- **0**: The execution was successful.'."\n"
+ ."\n"
+ .'- **1**: The execution failed.', 'type' => 'string', 'example' => '0', 'title' => ''],
+ 'DBName' => ['description' => 'The database name.', 'type' => 'string', 'example' => 'testdb01', 'title' => ''],
+ 'SqlId' => ['description' => 'The SQL ID.', 'type' => 'string', 'example' => 'a4111670e80596c5bf42cf5154438a91', 'title' => ''],
+ 'ExecuteTime' => ['title' => 'yyyy-MM-dd\'T\'HH:mm:ss.SSS\'Z\'', 'description' => 'The time when the SQL statement was executed. The time is in the `yyyy-MM-ddTHH:mm:ssZ` format. The time is displayed in UTC.', 'type' => 'string', 'example' => '2023-12-07T02:15:32Z'],
+ 'OriginTime' => ['title' => 'ts unix', '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' => '1701886532000'."\n"],
+ 'AccountName' => ['description' => 'The database account.', 'type' => 'string', 'example' => 'testname'."\n", 'title' => ''],
+ 'HostAddress' => ['description' => 'The client IP address.', 'type' => 'string', 'example' => '11.197.XX.XX'."\n", 'title' => ''],
+ 'Consume' => ['description' => 'The execution duration. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '58', 'title' => ''],
+ 'LockTime' => ['description' => 'The lock wait time. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'UpdateRows' => ['description' => 'The number of updated rows.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'ScanRows' => ['description' => 'The number of scanned rows.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'ReturnRows' => ['description' => 'The number of returned rows.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'LogicRead' => ['description' => 'The number of logical reads.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'PhysicSyncRead' => ['description' => 'The number of physical synchronous reads.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'PhysicAsyncRead' => ['description' => 'The number of physical asynchronous reads.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'ThreadId' => ['description' => 'The thread ID.', 'type' => 'integer', 'format' => 'int64', 'example' => 'None', 'title' => ''],
+ 'TrxId' => ['description' => 'The transaction ID.', 'type' => 'string', 'example' => '200000'."\n", 'title' => ''],
+ 'Ext' => ['description' => 'Reserved for future use.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'Scnt' => ['description' => 'The number of requests that are sent from compute nodes (CNs) to data nodes (DNs) for a PolarDB-X 2.0 instance.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '10'."\n"],
+ 'Rows' => ['description' => 'The total number of rows that are updated or returned by the compute nodes of a PolarDB-X 2.0 instance.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '10'],
+ 'Frows' => ['description' => 'The number of rows that are fetched by the compute nodes of a PolarDB-X 2.0 instance.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '10'],
+ 'TraceId' => ['description' => 'The trace ID of a PolarDB-X 2.0 instance. The trace ID is the execution ID of the SQL statement on data nodes.', 'type' => 'string', 'example' => '14c93b7c7bf00000 ', 'title' => ''],
+ 'UseImciEngine' => ['description' => 'Indicates whether an In-Memory Column Index (IMCI) is used for the PolarDB for MySQL instance. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true'."\n", 'title' => ''],
+ 'ParallelDegree' => ['description' => 'The degree of parallelism (DOP) for the PolarDB for MySQL instance.', 'type' => 'string', 'example' => '10'."\n", 'title' => ''],
+ 'ParallelQueueTime' => ['description' => 'The parallel queuing time for the PolarDB for MySQL instance. Unit: milliseconds.', 'type' => 'string', 'example' => '2', 'title' => ''],
+ 'PhysicRead' => ['description' => 'The number of physical reads.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'CpuTime' => ['description' => 'The CPU execution time. Unit: microseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '100'."\n", 'title' => ''],
+ 'Writes' => ['description' => 'The number of writes for the ApsaraDB RDS for SQL Server instance.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'Collection' => ['description' => 'This parameter is reserved.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'SqlCommand' => ['description' => 'The SQL command in the query.', 'type' => 'integer', 'format' => 'int64', 'example' => 'sql', 'title' => ''],
+ 'ConnectionId' => ['description' => 'The connection ID.', 'type' => 'string', 'example' => 'ld-******', 'title' => ''],
+ 'Protected' => ['description' => 'Indicates whether the query is protected.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
+ 'Params' => ['description' => 'The query parameters.', 'type' => 'string', 'example' => '[1, "das"]', 'title' => ''],
+ 'ClientIp' => ['description' => 'The client IP address.', 'type' => 'string', 'example' => '10.0.0.1xx', 'title' => ''],
+ 'ClientPort' => ['description' => 'The client port.', 'type' => 'integer', 'format' => 'int64', 'example' => '3306', 'title' => ''],
+ 'RowKey' => ['description' => 'The row key.', 'type' => 'string', 'example' => '23', 'title' => ''],
+ 'AffectColumns' => ['description' => 'The affected columns.', 'type' => 'string', 'example' => '["col1"]', 'title' => ''],
+ 'TableName' => ['description' => 'The table name.', 'type' => 'string', 'example' => 'das', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'example' => '',
],
+ 'Export' => ['description' => 'The download URL of the exported file. This parameter is returned only if the value of `TaskType` is `Export`.', 'type' => 'string', 'title' => '', 'example' => '"https://das-sqllog-download-cn-hongkong.oss-cn-hongkong.aliyuncs.com/****"'],
],
- ],
- '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',
+ 'example' => '',
],
],
- 'description' => '',
+ 'description' => 'The root node of the response.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"Name\\": \\"SQL audit export 1\\",\\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' => 'Note the following before you call this operation:'."\n"
."\n"
- .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n"
+ .'- We recommend using the latest version of the Alibaba Cloud SDK or DAS SDK.'."\n"
."\n"
- .'* This operation supports the following database engines:'."\n"
+ .'- When calling the DAS service with an SDK, set the region to cn-shanghai.',
+ 'responseParamsDescription' => 'The **Key** parameter supports the following keys:'."\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',
+ .'- **KeyWords**: Keywords. Separate multiple keywords with spaces.'."\n"
+ ."\n"
+ .'- **LogicalOperator**: The logical operator for combining keywords. Valid values: `and` or `or`.'."\n"
+ ."\n"
+ .'- **AccountName**: The username. You can specify up to five usernames, separated by commas (,).'."\n"
+ ."\n"
+ .'- **dbName**: The database name. You can specify up to five database names, separated by commas (,).'."\n"
+ ."\n"
+ .'- **HostAddress**: The client IP address. You can specify up to five client IP addresses, separated by commas (,).'."\n"
+ ."\n"
+ .'- **MaxConsume**: Maximum execution duration, in microseconds (μs).'."\n"
+ ."\n"
+ .'- **MinConsume**: Minimum execution duration, in microseconds (μs).'."\n"
+ ."\n"
+ .'- **MaxScanRows**: Maximum number of scanned rows.'."\n"
+ ."\n"
+ .'- **MinScanRows**: Minimum number of scanned rows.'."\n"
+ ."\n"
+ .'- **SqlType**: The SQL type. Valid values: `select`, `update`, `insert`, and `delete`.'."\n"
+ ."\n"
+ .'- **State**: The execution result. Valid values: `0` (successful) or `1` (failed).'."\n"
+ ."\n"
+ .'- **ThreadId**: The thread ID.'."\n"
+ ."\n"
+ .'- **SortKey**: The sort key. Valid values: `ScanRows` (number of scanned rows), `UpdateRows` (number of updated rows), `Consume` (execution duration), `ExecuteTime` (execution time), `ReturnRows` (number of returned rows), `LockTime` (lock wait time), `Frows` (number of rows fetched by compute nodes of a PolarDB-X 2.0 instance), `Scnt` (number of requests sent from compute nodes to data nodes of a PolarDB-X 2.0 instance), `CpuTime` (CPU execution time), and `PhysicalRead` (number of physical reads).'."\n"
+ ."\n"
+ .'- **SortMethod**: The sorting order. Valid values: `DESC` (descending) and `ASC` (ascending). The default value is `DESC`.'."\n"
+ ."\n"
+ .'- **TraceId**: The trace ID of a PolarDB-X 2.0 instance.'."\n"
+ ."\n"
+ .'- **MinRows**: Minimum number of updated rows.'."\n"
+ ."\n"
+ .'- **MaxRows**: Maximum number of updated rows.'."\n"
+ ."\n"
+ .'- **MinScnt**: Minimum number of requests sent from compute nodes (CN) to data nodes (DN) for a PolarDB-X 2.0 instance.'."\n"
+ ."\n"
+ .'- **MaxScnt**: Maximum number of requests sent from compute nodes (CN) to data nodes (DN) for a PolarDB-X 2.0 instance.'."\n"
+ ."\n"
+ .'- **TrxId**: The transaction ID.'."\n"
+ ."\n"
+ .'- **Fail**: The error code.'."\n"
+ ."\n"
+ .'- **SqlId**: The SQL ID.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeSqlLogTask'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeSqlLogTask',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'translator' => 'machine',
+ ],
+ 'DescribeSqlLogTasks' => [
+ 'summary' => 'Lists the audit log tasks for an instance.',
+ 'methods' => ['post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
+ 'deprecated' => false,
'systemTags' => [
- 'operationType' => 'get',
+ 'operationType' => 'list',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREhdmTQGIFY',
- ],
+ 'abilityTreeCode' => '199696',
+ 'abilityTreeNodes' => ['FEATUREhdmFT57I0'],
],
'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' => 'formData',
+ 'schema' => ['description' => 'The ID of the database instance.', 'type' => 'string', 'required' => false, 'example' => 'r-bp1nti25tc7bq5****', 'title' => ''],
],
[
- 'name' => 'InstanceId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-2ze8g2am97624****',
- ],
+ 'name' => 'NodeId',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The node ID.'."\n"
+ ."\n"
+ .'> For cluster instances only. You can specify a node ID to query its offline tasks. If this parameter is omitted, the offline tasks of the primary node are returned by default.', 'type' => 'string', 'required' => false, 'example' => 'pi-bp1o58x3ib7e6****', 'title' => ''],
],
[
- 'name' => 'SqlId',
- 'in' => 'query',
+ 'name' => 'Filters',
+ 'in' => 'formData',
+ 'style' => 'repeatList',
'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****',
+ 'description' => 'An array of filter conditions.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'A filter condition.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => ['description' => 'The filter parameter.'."\n"
+ ."\n"
+ .'> See **Additional information about request parameters** for the supported filter parameters and their valid values.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'keyWords'],
+ 'Value' => ['description' => 'The value of the filter parameter.', 'type' => 'string', 'required' => false, 'example' => 'select'."\n", 'title' => ''],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ 'title' => '',
+ 'example' => '',
],
],
[
- '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',
- ],
+ 'name' => 'StartTime',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The start time of the query range. 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', 'required' => false, 'example' => '1596177993000', 'title' => ''],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The end time of the query range. 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', 'required' => false, 'example' => '1608888296000', 'title' => ''],
+ ],
+ [
+ 'name' => 'PageNo',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The page number. The value must be a positive integer. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The number of entries per page. Maximum value: 100. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''],
],
],
'responses' => [
@@ -6745,146 +8258,151 @@
'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',
- ],
+ 'Code' => ['description' => 'The returned status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The response message.'."\n"
+ ."\n"
+ .'> If the request is successful, **Successful** is returned. If the request fails, an error message is returned.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'Data' => [
- 'description' => 'The detailed information.'."\n",
+ 'title' => 'ListResult<SqlLogTask>',
+ 'description' => 'The returned data.',
'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.',
+ 'description' => 'The list of tasks.',
'type' => 'array',
'items' => [
+ 'description' => 'The details of an offline task.',
'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',
+ 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => '9a4f5c4494dbd6713185d87a97aa53e8', 'title' => ''],
+ 'InstanceId' => ['description' => 'The ID of the database instance.', 'type' => 'string', 'title' => '', 'example' => 'r-bp1nti25tc7bq5****'."\n"],
+ 'Name' => ['description' => 'The name of the task.', 'type' => 'string', 'example' => 'SQL audit export 1', 'title' => ''],
+ 'Start' => ['description' => 'The task start time, represented as a unix timestamp in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1683859555482'],
+ 'End' => ['description' => 'The task end time, represented as a unix timestamp in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1705975320000'],
+ 'Status' => ['description' => 'The task status. Valid values:'."\n"
+ ."\n"
+ .'- **INIT**: pending scheduling.'."\n"
+ ."\n"
+ .'- **RUNNING**: running.'."\n"
+ ."\n"
+ .'- **FAILED**: failed.'."\n"
+ ."\n"
+ .'- **CANCELED**: canceled.'."\n"
+ ."\n"
+ .'- **COMPLETED**: completed.'."\n"
+ ."\n"
+ .'> You can view the result of an offline task only when its status is **COMPLETED**.', 'type' => 'string', 'title' => '', 'example' => 'RUNNING'],
+ 'LogCount' => ['description' => 'The total number of logs.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '99999'],
+ 'Progress' => ['description' => 'The progress of the task.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '100'],
+ 'ScanFileSize' => ['description' => 'The total size of the scanned files, in bytes.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '3000'],
+ 'Expire' => ['description' => 'Indicates whether the task has expired. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The task has expired.'."\n"
+ ."\n"
+ .'- **false**: The task has not expired.', 'type' => 'boolean', 'title' => '', 'example' => 'false'],
+ 'CreateTime' => ['description' => 'The task creation time, represented as a unix timestamp in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1681363254423'],
+ 'AnalysisTaskFinishTime' => ['description' => 'The analysis completion time, represented as a unix timestamp in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1712751923000'],
+ 'AnalysisTaskStatus' => ['description' => 'The status of the analysis task.'."\n"
+ ."\n"
+ .'> This is an internal parameter. You can ignore it.', 'type' => 'string', 'example' => 'SCAN_ANALYZE_COMPLETED', 'title' => ''],
+ 'Result' => ['description' => 'The URL that is returned when **TaskType** is set to **Export**.', 'type' => 'string', 'title' => '', 'example' => 'https://das-sqllog-download-cn-shanghai.oss-cn-shanghai.aliyuncs.com/la'],
+ 'TaskType' => ['description' => 'The task type. Valid values:'."\n"
+ ."\n"
+ .'- **Export**: an export task.'."\n"
+ ."\n"
+ .'- **Query**: a query task.', 'type' => 'string', 'example' => 'Export', 'title' => ''],
+ 'Filters' => [
+ 'description' => 'A list of filter conditions.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'A filter condition.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => ['description' => 'The filter parameter.'."\n"
+ ."\n"
+ .'> For information about the supported filter parameters and their valid values, see **Additional information about request parameters**.', 'type' => 'string', 'example' => 'keyWords'."\n", 'title' => ''],
+ 'Value' => ['description' => 'The value of the filter parameter.', 'type' => 'string', 'example' => 'select'."\n", 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
],
+ 'InnerResult' => ['description' => 'The VPC-internal URL for accessing the task result.', 'type' => 'string', 'example' => 'https://das-sqllog-download-oss-cn-shanghai-internal.aliyuncs.com'."\n"
+ .'/la', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
+ 'Total' => ['description' => 'The total number of tasks.', 'type' => 'integer', 'format' => 'int64', 'example' => '40', 'title' => ''],
+ 'PageNo' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'PageSize' => ['description' => 'The page size.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
],
- ],
- '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',
+ 'example' => '',
],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ '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 audit export 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\\": \\"https://das-sqllog-download-oss-cn-shanghai-internal.aliyuncs.com\\\\n/la\\"\\n }\\n ],\\n \\"Total\\": 40,\\n \\"PageNo\\": 1,\\n \\"PageSize\\": 10\\n }\\n}","type":"json"}]',
+ 'title' => 'DescribeSqlLogTasks',
+ 'description' => 'The following prerequisites must be met to call this operation:'."\n"
."\n"
- .'* The version of your Database Autonomy Service (DAS) SDK must be V2.1.8 or later.'."\n"
+ .'- We recommend that you use the latest version of the Alibaba Cloud SDK or the DAS SDK.'."\n"
."\n"
- .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n"
+ .'- When you use an SDK to call the DAS service, you must set the region to `cn-shanghai`.',
+ 'requestParamsDescription' => 'The **Key** parameter supports the following values:'."\n"
."\n"
- .'* This operation supports the following database engines:'."\n"
+ .'- **taskId**: The task ID.'."\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',
+ .'- **keyWords**: The task name.'."\n"
+ ."\n"
+ .'- **status**: The task status. Valid values: INIT (pending scheduling), RUNNING, FAILED, CANCELED, and COMPLETED.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeSqlLogTasks'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeSqlLogTasks',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'translator' => 'machine',
+ ],
+ 'DescribeTopBigKeys' => [
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -6895,186 +8413,142 @@
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREhdmTQGIFY',
- ],
+ 'abilityTreeNodes' => ['FEATUREhdmTQGIFY'],
],
'parameters' => [
[
- 'name' => 'Engine',
+ 'name' => 'ConsoleContext',
'in' => 'query',
- 'schema' => [
- 'description' => 'The database engine. Valid values:'."\n"
- ."\n"
- .'* **MySQL**'."\n"
- .'* **PolarDBMySQL**'."\n"
- .'* **PostgreSQL**'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'MySQL',
- ],
+ 'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
- 'name' => 'SqlId',
+ 'name' => 'InstanceId',
'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****',
- ],
+ 'schema' => ['description' => 'The ID of the ApsaraDB for Redis instance.', 'type' => 'string', 'required' => true, 'example' => 'r-bp18ff4a195d****', 'title' => ''],
],
[
- 'name' => 'RuleIds',
+ 'name' => 'NodeId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The tag ID. For more information, see [Query governance](~~290038~~).'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'LARGE_ROWS_EXAMINED',
- ],
+ 'schema' => ['description' => 'The ID of the data shard on the ApsaraDB for Redis instance.', 'type' => 'string', 'required' => false, 'example' => 'r-x****-db-0', 'title' => ''],
],
[
- 'name' => 'InstanceId',
+ 'name' => 'StartTime',
'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****',
- ],
+ '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.', 'type' => 'string', 'required' => true, 'example' => '1596177993000', 'title' => ''],
+ ],
+ [
+ '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.', 'type' => 'string', 'required' => true, 'example' => '1596177993001', 'title' => ''],
],
],
'responses' => [
200 => [
+ 'headers' => [],
'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',
- ],
+ 'Message' => ['description' => 'The returned message.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
'Data' => [
- 'description' => 'The data returned.'."\n",
'type' => 'object',
+ 'itemNode' => true,
'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.',
+ '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' => [
- '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',
- ],
+ 'Key' => ['description' => 'The key.', 'type' => 'string', 'example' => 'abc:def:eng', 'title' => ''],
+ 'Db' => ['description' => 'The database in which the key is stored.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'KeyType' => ['description' => 'The type of the key.', 'type' => 'string', 'example' => 'zset', 'title' => ''],
+ 'Size' => ['description' => 'The number of elements in the key.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''],
+ 'NodeId' => ['description' => 'The ID of the data shard on the ApsaraDB for Redis instance.', 'type' => 'string', 'example' => 'r-x****-db-0', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'title' => 'DescribeTopBigKeys',
+ 'summary' => 'Queries the top 100 large keys over a period of time.',
+ '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 SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\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"
- .'* This operation supports the following database engines:'."\n"
+ .'- The version of Database Autonomy Service (DAS) SDK must be 1.0.2 or later.'."\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',
+ .'- 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"
+ ."\n"
+ .' - The ApsaraDB for Redis instance is updated to the latest minor version.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeTopBigKeys'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeTopBigKeys',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ ],
+ 'DescribeTopHotKeys' => [
+ 'summary' => 'Queries the top 100 hot keys within a specified time period.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -7083,271 +8557,254 @@
'operationType' => 'read',
'systemTags' => [
'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => ['FEATUREhdmROFBLE'],
],
'parameters' => [
[
- 'name' => 'Engine',
+ 'name' => 'ConsoleContext',
'in' => 'query',
- 'schema' => [
- 'description' => 'The database engine. Valid values:'."\n"
- ."\n"
- .'* **MySQL**'."\n"
- .'* **PolarDBMySQL**'."\n"
- .'* **PostgreSQL**'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'MySQL',
- ],
+ 'schema' => ['description' => 'A reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
- 'name' => 'InstanceIds',
+ 'name' => 'InstanceId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The instance IDs. Separate multiple IDs with commas (,).'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'rm-2ze8g2am97624****',
- ],
+ 'schema' => ['description' => 'The ID of the Redis instance.', 'type' => 'string', 'required' => true, 'example' => 'r-bp18ff4a195d****', 'title' => ''],
],
[
- 'name' => 'TagNames',
+ 'name' => 'NodeId',
'in' => 'query',
- 'schema' => [
- 'title' => '',
- 'description' => 'A reserved parameter.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'None',
- ],
+ 'schema' => ['description' => 'The ID of the data shard of the Redis instance.', 'type' => 'string', 'required' => false, 'example' => 'r-****-db-0', 'title' => ''],
],
[
- 'name' => 'Region',
+ 'name' => 'StartTime',
'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',
- ],
+ 'schema' => ['description' => 'The start of the query time range, specified as a UNIX timestamp in milliseconds.', 'type' => 'string', 'required' => true, 'example' => '1596177993000', 'title' => ''],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The end of the query time range, specified as a UNIX timestamp in milliseconds.'."\n"
+ ."\n"
+ .'> - The end time must be later than the start time.'."\n"
+ .'>'."\n"
+ .'> - You can query data within the last four days.'."\n"
+ .'>'."\n"
+ .'> - The maximum time interval between **StartTime** and **EndTime** is three hours.', 'type' => 'string', 'required' => true, 'example' => '1596177993001', 'title' => ''],
],
],
'responses' => [
200 => [
+ 'headers' => [],
'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',
- ],
+ 'Message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
'Data' => [
- 'description' => 'The detailed information.'."\n",
'type' => 'object',
+ 'itemNode' => true,
'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.',
+ 'HotKey' => [
+ 'description' => 'The list of hot keys.',
'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',
- ],
+ 'Db' => ['description' => 'The database where the key is stored.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'Key' => ['description' => 'The name of the key.', 'type' => 'string', 'example' => 'abc:def:eng', 'title' => ''],
+ 'Hot' => ['description' => 'The access frequency of the key, measured in accesses per second.', 'type' => 'string', 'example' => '5500~6000', 'title' => ''],
+ 'KeyType' => ['description' => 'The type of the key.', 'type' => 'string', 'example' => 'zset', 'title' => ''],
+ 'Lfu' => ['description' => 'The value of the key\'s Least Frequently Used (LFU) counter.', 'type' => 'integer', 'format' => 'int32', 'example' => '253', 'title' => ''],
+ 'NodeId' => ['description' => 'The ID of the data shard of the Redis instance.', 'type' => 'string', 'example' => 'r-x****-db-0', 'title' => ''],
+ 'InBytes' => ['description' => 'The inbound traffic in bytes. This parameter is returned only for hot keys in the **traffic** category.', 'type' => 'integer', 'format' => 'int64', 'example' => '4502693', 'title' => ''],
+ 'OutBytes' => ['description' => 'The outbound traffic in bytes. This parameter is returned only for hot keys in the **traffic** category.', 'type' => 'integer', 'format' => 'int64', 'example' => '1291659', 'title' => ''],
+ 'Category' => ['description' => 'The category of the hot key. Valid values:'."\n"
+ ."\n"
+ .'- **qps**: The key is identified as a hot key based on QPS.'."\n"
+ ."\n"
+ .'- **traffic**: The key is identified as a hot key based on traffic.', 'type' => 'string', 'example' => 'qps', 'title' => ''],
],
+ 'description' => 'The details of a hot key.',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'Code' => ['description' => 'The response code.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'responseDemo' => '[{"errorExample":"","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\\": 4502693,\\n \\"OutBytes\\": 1291659,\\n \\"Category\\": \\"qps\\"\\n }\\n ]\\n },\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]',
+ 'title' => 'DescribeTopHotKeys',
+ 'description' => 'A key is identified as a hot key if its QPS exceeds 3,000.'."\n"
."\n"
- .'* The version of your Database Autonomy Service (DAS) SDK must be V2.1.8 or later.'."\n"
+ .'- If you use an Alibaba Cloud SDK, ensure that the version of aliyun-sdk-core is 4.3.3 or later. We recommend using the latest version.'."\n"
."\n"
- .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n"
+ .'- The DAS SDK version must be 1.0.2 or later.'."\n"
."\n"
- .'* This operation supports the following database engines:'."\n"
+ .'- When calling the DAS service with an SDK, set the region to cn-shanghai.'."\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',
+ .'- This operation applies only to the following Redis instances:'."\n"
+ ."\n"
+ .' - The instance is an open source Redis instance or a Tair (Enterprise Edition) memory-optimized instance.'."\n"
+ ."\n"
+ .' - The instance runs on the latest minor version.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeTopHotKeys'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeTopHotKeys',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'DisableAllSqlConcurrencyControlRules' => [
+ 'summary' => 'Disables all throttling rules that are in effect.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
- 'systemTags' => [
- 'operationType' => 'get',
- ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
- 'name' => 'Engine',
+ 'name' => 'ConsoleContext',
'in' => 'query',
- 'schema' => [
- 'description' => 'The database engine. Valid values:'."\n"
- ."\n"
- .'* **MySQL**'."\n"
- .'* **PolarDBMySQL**'."\n"
- .'* **PostgreSQL**'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'MySQL',
- ],
+ 'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
- 'name' => 'InstanceIds',
+ '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.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => 'The instance IDs. Separate multiple IDs with commas (,).'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'rm-2ze8g2am97624****',
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'Data' => ['description' => 'The reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
+ ],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
- [
- 'name' => 'TagNames',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The reserved parameter.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'None',
+ ],
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
+ ],
+ 403 => [
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
+ ],
+ ],
+ 'title' => 'DisableAllSqlConcurrencyControlRules',
+ 'description' => 'This operation supports the following database engines:'."\n"
+ ."\n"
+ .'- ApsaraDB RDS for MySQL'."\n"
+ ."\n"
+ .'- PolarDB for MySQL',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DisableAllSqlConcurrencyControlRules'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'hdm:DisableAllSqlConcurrencyControlRules',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": \\"None\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]',
+ ],
+ 'DisableAutoResourceOptimizeRules' => [
+ 'summary' => 'Disables the automatic tablespace fragment recycling feature for database instances at a time.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
+ 'security' => [
[
- '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',
- ],
+ 'AK' => [],
],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => ['FEATUREhdmTFSOG0'],
+ ],
+ 'parameters' => [
[
- 'name' => 'End',
+ 'name' => 'ConsoleContext',
'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',
- ],
+ 'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
- 'name' => 'Region',
+ 'name' => 'InstanceIds',
'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',
- ],
+ '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\']`.', 'type' => 'string', 'required' => true, 'example' => '[\'rm-2ze8g2am97624****\',\'rm-2ze9xrhze0709****\']', 'title' => ''],
],
],
'responses' => [
@@ -7355,220 +8812,135 @@
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'Data' => [
- 'description' => 'The detailed information.'."\n",
+ 'description' => 'The data returned.',
'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.',
+ 'TotalInstanceCount' => ['description' => 'The total number of database instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''],
+ 'ConfigSuccessInstanceCount' => ['description' => 'The number of database instances for which the automatic tablespace fragment recycling feature is disabled.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'ConfigFailInstanceCount' => ['description' => 'The number of database instances for which the automatic tablespace fragment recycling feature failed to be disabled.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ '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', 'title' => ''],
+ 'InstanceId' => ['description' => 'The database instance ID.', 'type' => 'string', 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
+ ],
'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ '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' => [
- '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',
- ],
+ 'ConfigSuccess' => ['description' => 'Indicates whether the automatic tablespace fragment recycling feature is disabled. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
+ 'InstanceId' => ['description' => 'The database instance ID.', 'type' => 'string', 'example' => 'rm-2ze9xrhze0709****', 'title' => ''],
+ 'ErrorMessage' => ['description' => 'The error message returned if the request failed.', 'type' => 'string', 'example' => 'cannot found instance by rm-2ze9xrhze0709****', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
+ ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ '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.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DisableAutoResourceOptimizeRules'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'hdm:DisableAutoResourceOptimizeRules',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
],
- '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",
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
],
- 'GetQueryOptimizeDataTop' => [
- 'summary' => 'Queries information about the best-performing and worst-performing instances based on query governance data.',
- 'methods' => [
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'DisableAutoThrottleRules' => [
+ 'summary' => 'Disables the automatic SQL throttling feature for multiple database instances at a time.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
+ 'operationType' => 'readAndWrite',
'systemTags' => [
- 'operationType' => 'get',
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => ['FEATUREhdmDSULQV'],
],
'parameters' => [
[
- 'name' => 'Engine',
+ 'name' => 'ConsoleContext',
'in' => 'query',
- 'schema' => [
- 'description' => 'The database engine. Valid values:'."\n"
- ."\n"
- .'* **MySQL**'."\n"
- .'* **PolarDBMySQL**'."\n"
- .'* **PostgreSQL**'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'MySQL',
- ],
+ 'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
'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',
- ],
+ '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\']`.', 'type' => 'string', 'required' => true, 'example' => '[\'rm-2ze8g2am97624****\',\'rm-2ze9xrhze0709****\']', 'title' => ''],
],
],
'responses' => [
@@ -7576,328 +8948,323 @@
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'Data' => [
- 'description' => 'The detailed information.'."\n",
+ 'description' => 'The returned data.',
'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',
+ 'TotalInstanceCount' => ['description' => 'The total number of database instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''],
+ 'ConfigSuccessInstanceCount' => ['description' => 'The number of database instances for which the automatic SQL throttling feature is disabled.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'ConfigFailInstanceCount' => ['description' => 'The number of database instances for which the automatic SQL throttling feature failed to be disabled.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ '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', 'title' => ''],
+ 'InstanceId' => ['description' => 'The database instance ID.', 'type' => 'string', 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
],
- 'List' => [
- 'description' => 'The information about the instances.',
+ 'ConfigFailInstanceList' => [
+ 'description' => 'The database instances for which the automatic SQL throttling feature failed to be disabled.',
'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',
- ],
+ 'ConfigSuccess' => ['description' => 'Indicates whether the automatic SQL throttling feature is disabled. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
+ 'InstanceId' => ['description' => 'The database instance ID.', 'type' => 'string', 'example' => 'rm-2ze9xrhze0709****', 'title' => ''],
+ 'ErrorMessage' => ['description' => 'The error message returned.', 'type' => 'string', 'example' => 'cannot found instance by rm-2ze9xrhze0709****', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
+ ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ '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.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DisableAutoThrottleRules'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'hdm:DisableAutoThrottleRules',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
],
- '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",
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
],
- 'GetQueryOptimizeDataStats' => [
- 'summary' => 'Queries information about SQL templates based on query governance data.',
- 'methods' => [
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'DisableDasPro' => [
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
- 'systemTags' => [
- 'operationType' => 'get',
- ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => ['operationType' => 'delete'],
'parameters' => [
[
- 'name' => 'Engine',
+ 'name' => 'UserId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The database engine. Valid values:'."\n"
- ."\n"
- .'* **MySQL**'."\n"
- .'* **PolarDBMySQL**'."\n"
- .'* **PostgreSQL**'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'MySQL',
- ],
+ '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.', 'type' => 'string', 'required' => false, 'example' => '196278346919****', 'title' => ''],
],
[
- 'name' => 'InstanceIds',
+ 'name' => 'InstanceId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The instance IDs. Separate multiple IDs with commas (,).'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'rm-2ze8g2am97624****',
- ],
+ 'schema' => ['description' => 'The database instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
- [
- 'name' => 'TagNames',
- 'in' => 'query',
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => 'The reserved parameter.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'None',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '7172BECE-588A-5961-8126-C216E16B****', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'Synchro' => ['description' => 'The reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'Data' => ['description' => 'The reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
+ ],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
- [
- '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',
+ ],
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
+ ['errorCode' => '-1020004', 'errorMessage' => 'the dbconfig is applying', 'description' => ''],
+ ],
+ 403 => [
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
+ ],
+ ],
+ 'title' => 'DisableDasPro',
+ 'summary' => 'Deactivates Database Autonomy Service (DAS) Professional Edition.',
+ 'description' => '- For more information about the database instances that support DAS Enterprise Edition, see [Overview](~~190912~~).'."\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 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~~).',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DisableDasPro'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'hdm:DisableDasPro',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7172BECE-588A-5961-8126-C216E16B****\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Synchro\\": \\"None\\",\\n \\"Data\\": \\"None\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]',
+ ],
+ 'DisableInstanceDasConfig' => [
+ 'summary' => 'Disables the auto scaling feature for a database instance.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
+ 'security' => [
[
- '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',
- ],
+ 'AK' => [],
],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => ['operationType' => 'update'],
+ 'parameters' => [
[
- 'name' => 'Rules',
+ 'name' => 'InstanceId',
'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',
- ],
+ 'schema' => ['description' => 'The database instance ID.', 'type' => 'string', 'required' => true, 'example' => 'r-bp1nti25tc7bq5****', 'title' => ''],
],
[
- 'name' => 'DbNames',
+ 'name' => 'Engine',
'in' => 'query',
- 'schema' => [
- 'description' => 'The name of the database to be queried.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'testdb01',
- ],
+ 'schema' => ['description' => 'The database engine. Set the value to Redis.', 'type' => 'string', 'required' => true, 'example' => 'Redis', 'title' => ''],
],
[
- 'name' => 'Time',
+ 'name' => 'ScaleType',
'in' => 'query',
'schema' => [
- 'description' => 'The time range to query. Specify the time in the UNIX timestamp format. Unit: milliseconds.'."\n",
+ 'description' => 'The type of auto scaling. Valid values:'."\n"
+ ."\n"
+ .'- **specScale**: The specifications of a database instance are automatically scaled up or down.'."\n"
+ ."\n"
+ .'- **shardScale**: The number of shards for a database instance is automatically increased or decreased.'."\n"
+ ."\n"
+ .'- **bandwidthScale**: The bandwidth of a database instance is automatically increased or decreased.',
'type' => 'string',
'required' => true,
- 'example' => '1642953600000',
+ 'enum' => ['specScale', 'shardScale', 'bandwidthScale'],
+ 'example' => 'bandwidthScale',
+ 'title' => '',
],
],
- [
- 'name' => 'PageSize',
- 'in' => 'query',
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => 'The number of entries per page. Default value: 10.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '10',
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'Data' => ['description' => 'The result of disabling the auto scaling feature for the database instance.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '7172BECE-588A-5961-8126-C216E16B****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
+ ],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
- [
- 'name' => 'PageNo',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '1',
- ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
- [
- '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',
- ],
+ 403 => [
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
- [
- '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',
+ ],
+ '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"
+ ."\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.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DisableInstanceDasConfig'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'hdm:DisableInstanceDasConfig',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": \\"success\\",\\n \\"RequestId\\": \\"7172BECE-588A-5961-8126-C216E16B****\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]',
+ ],
+ 'DisableSqlConcurrencyControl' => [
+ 'summary' => 'Disables a throttling rule.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
+ 'security' => [
[
- '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',
- ],
+ 'AK' => [],
],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => ['operationType' => 'update'],
+ 'parameters' => [
[
- 'name' => 'SqlIds',
+ 'name' => 'ConsoleContext',
'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****',
- ],
+ 'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
- 'name' => 'Region',
+ 'name' => 'InstanceId',
'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',
- ],
+ 'schema' => ['description' => 'The instance ID.'."\n"
+ ."\n"
+ .'> The database instance must be an ApsaraDB RDS for MySQL instance or a PolarDB for MySQL cluster.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
],
[
- 'name' => 'User',
+ 'name' => 'ItemId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The account of the database to be queried.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'testUser',
- ],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1', 'title' => ''],
],
],
'responses' => [
@@ -7905,287 +9272,101 @@
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'Data' => ['description' => 'The detailed information, including the error codes and the number of entries that are returned.', 'type' => 'string', 'example' => 'Null', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'title' => 'DisableSqlConcurrencyControl',
+ 'description' => 'This operation is applicable to the following database engines:'."\n"
."\n"
- .'* This operation supports the following database engines:'."\n"
+ .'- ApsaraDB RDS for MySQL'."\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',
+ .'- PolarDB for MySQL',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DisableSqlConcurrencyControl'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'hdm:DisableSqlConcurrencyControl',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": \\"Null\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]',
+ ],
+ 'EnableDasPro' => [
+ 'summary' => 'Activates Database Autonomy Service (DAS) Professional Edition.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
- 'deprecated' => false,
+ 'operationType' => 'readAndWrite',
'systemTags' => [
- 'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREhdmTQGIFY',
- ],
+ 'operationType' => 'create',
+ 'abilityTreeCode' => '23825',
+ 'abilityTreeNodes' => ['FEATUREhdm543Z01'],
],
'parameters' => [
[
- 'name' => 'Engine',
+ 'name' => 'UserId',
'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',
- ],
+ '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.', 'type' => 'string', 'required' => false, 'example' => '196278346919****', 'title' => ''],
],
[
- 'name' => 'SqlId',
+ 'name' => 'InstanceId',
'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',
- ],
+ 'schema' => ['description' => 'The database instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
[
- 'name' => 'InstanceId',
+ 'name' => 'SqlRetention',
'in' => 'query',
- 'schema' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-2ze8g2am97624****',
- ],
+ 'schema' => ['description' => 'The storage duration of SQL Explorer data. Unit: day. Default value: **30**. Valid values:'."\n"
+ ."\n"
+ .'- **30**'."\n"
+ ."\n"
+ .'- **180**'."\n"
+ ."\n"
+ .'- **365**'."\n"
+ ."\n"
+ .'- **1095**'."\n"
+ ."\n"
+ .'- **1825**', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '30', 'title' => ''],
],
],
'responses' => [
@@ -8193,307 +9374,215 @@
'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.',
- ],
- ],
- ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '7172BECE-588A-5961-8126-C216E16B****', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'Synchro' => ['description' => 'The reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'Data' => ['description' => 'The reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7172BECE-588A-5961-8126-C216E16B****\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Synchro\\": \\"None\\",\\n \\"Data\\": \\"None\\",\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]',
+ '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"
."\n"
- .'* This operation supports the following database engines:'."\n"
+ .'- This operation is applicable only to DAS Enterprise Edition V1.'."\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',
+ .'> 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~~).',
+ 'changeSet' => [],
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'hdm:EnableDasPro',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- 'schemes' => [
- 'http',
- 'https',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'EnableDasPro'],
+ ],
],
+ ],
+ 'EnableSqlConcurrencyControl' => [
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREhdmTQGIFY',
- ],
- ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => ['operationType' => 'create'],
'parameters' => [
[
- 'name' => 'Engine',
+ 'name' => 'ConsoleContext',
'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',
- ],
+ 'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
- 'name' => 'InstanceIds',
+ 'name' => 'InstanceId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The instance IDs. Separate multiple IDs with commas (,).'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'rm-2ze1jdv45i7l6****',
- ],
+ '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.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
],
[
- 'name' => 'TagNames',
+ 'name' => 'SqlType',
'in' => 'query',
- 'schema' => [
- 'description' => 'A reserved parameter.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'None',
- ],
+ 'schema' => ['description' => 'The type of the SQL statements. Valid values:'."\n"
+ ."\n"
+ .'- **SELECT**'."\n"
+ ."\n"
+ .'- **UPDATE**'."\n"
+ ."\n"
+ .'- **DELETE**', 'type' => 'string', 'required' => true, 'example' => 'SELECT', 'title' => ''],
],
[
- 'name' => 'Keywords',
+ 'name' => 'MaxConcurrency',
'in' => 'query',
- 'schema' => [
- 'description' => 'The keywords of the SQL template. Separate multiple keywords with spaces.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'select update',
- ],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '3', 'title' => ''],
],
[
- 'name' => 'LogicalOperator',
+ 'name' => 'SqlKeywords',
'in' => 'query',
- 'schema' => [
- 'description' => 'The logical relationship between multiple keywords. Valid values:'."\n"
- ."\n"
- .'* **or**'."\n"
- .'* **and**'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'or',
- ],
+ '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.', 'type' => 'string', 'required' => true, 'example' => 'call~open~api~test~4~from~POP', 'title' => ''],
],
[
- 'name' => 'Rules',
+ 'name' => 'ConcurrencyControlTime',
'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',
- ],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '300', 'title' => ''],
],
- [
- 'name' => 'DbNames',
- 'in' => 'query',
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => 'The name of the database to be queried.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'testdb01',
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'Data' => ['description' => 'The detailed information, including the error codes and the number of entries that are returned.', 'type' => 'string', 'example' => 'Null', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
+ ],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
- [
- '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',
- ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
- [
- 'name' => 'PageSize',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The number of entries per page. Default value: 10.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '10',
- ],
+ 403 => [
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
- [
- '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',
+ ],
+ 'title' => 'EnableSqlConcurrencyControl',
+ 'summary' => 'Enables SQL throttling to control the numbers of database access requests and concurrent SQL statements.',
+ 'description' => 'This operation supports the following database engines:'."\n"
+ ."\n"
+ .'- ApsaraDB RDS for MySQL'."\n"
+ ."\n"
+ .'- PolarDB for MySQL',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'EnableSqlConcurrencyControl'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'hdm:EnableSqlConcurrencyControl',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": \\"Null\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]',
+ ],
+ 'GetAsyncErrorRequestListByCode' => [
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
+ 'security' => [
[
- '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',
- ],
+ 'AK' => [],
],
+ ],
+ 'systemTags' => ['operationType' => 'get'],
+ 'parameters' => [
[
- 'name' => 'Asc',
+ 'name' => 'InstanceId',
'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',
- ],
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
[
- 'name' => 'OnlyOptimizedSql',
+ 'name' => 'NodeId',
'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',
- ],
+ 'schema' => ['description' => 'The node ID.'."\n"
+ ."\n"
+ .'> This parameter must be specified if the database instance is a PolarDB for MySQL cluster.', 'type' => 'string', 'required' => false, 'example' => 'pi-wz9s658475e58****', 'title' => ''],
],
[
- 'name' => 'SqlIds',
+ 'name' => 'Start',
'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****',
- ],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1642556990714', 'title' => ''],
],
[
- 'name' => 'Region',
+ 'name' => 'End',
'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',
- ],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1642566830000', 'title' => ''],
],
[
- 'name' => 'User',
+ 'name' => 'ErrorCode',
'in' => 'query',
- 'schema' => [
- 'description' => 'The account of the database to be queried.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'testUser',
- ],
+ '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.', 'type' => 'string', 'required' => false, 'example' => '1064', 'title' => ''],
],
],
'responses' => [
@@ -8501,156 +9590,149 @@
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'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=&region=cn-china&user=',
- ],
+ 'description' => 'The data returned.',
+ 'type' => 'object',
+ 'properties' => [
+ 'fail' => ['description' => 'Indicates whether the asynchronous request failed. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
+ 'result' => [
+ 'description' => 'The instance ID.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'sqlId' => ['description' => 'SQL ID.', 'type' => 'string', 'example' => 'ad78a4e7d3ce81590c9dc2d5f4bc****', 'title' => ''],
+ 'instanceId' => ['description' => 'The instance ID', 'type' => 'string', 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'resultId' => ['description' => 'The ID of the asynchronous request.', 'type' => 'string', 'example' => 'async__c39d43ece52d35267cc4b92a0c26****', 'title' => ''],
+ 'isFinish' => ['description' => 'Indicates whether the asynchronous request was complete. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'state' => ['description' => 'The state of the asynchronous request. Valid values:'."\n"
+ ."\n"
+ .'- **RUNNING**'."\n"
+ ."\n"
+ .'- **SUCCESS**'."\n"
+ ."\n"
+ .'- **FAIL**', 'type' => 'string', 'example' => 'SUCCESS', 'title' => ''],
+ 'complete' => ['description' => 'Indicates whether the asynchronous request was complete.'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1644559407740', 'title' => ''],
+ ],
+ '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 }',
+ 'title' => '',
+ ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '9CB97BC4-6479-55D0-B9D0-EA925AFE****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ '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"
- .'* If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\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"
."\n"
- .'* This operation supports the following database engines:'."\n"
+ .'- If you use an SDK to call the API operations of DAS, you must set the region ID to cn-shanghai.'."\n"
."\n"
- .' * ApsaraDB RDS for MySQL'."\n"
- .' * PolarDB for MySQL'."\n"
- .' * ApsaraDB RDS for PostgreSQL'."\n",
- ],
- 'GetErrorRequestSample' => [
- 'methods' => [
- 'get',
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
+ .'- 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~~).',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetAsyncErrorRequestListByCode'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetAsyncErrorRequestListByCode',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ ],
+ 'GetAsyncErrorRequestStatByCode' => [
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'systemTags' => [
- 'operationType' => 'get',
- ],
+ 'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-2ze8g2am97624****',
- ],
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
[
'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****',
- ],
+ 'schema' => ['description' => 'The node ID.'."\n"
+ ."\n"
+ .'> This parameter must be specified for PolarDB for MySQL clusters.', 'type' => 'string', 'required' => false, 'example' => 'pi-wz9s658475e58****', 'title' => ''],
],
[
'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',
- ],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1642556990714', 'title' => ''],
],
[
'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',
- ],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1642566830000', 'title' => ''],
],
[
'name' => 'DbName',
'in' => 'query',
- 'schema' => [
- 'description' => 'The name of the database.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'testdb01',
- ],
+ 'schema' => ['description' => 'The name of a database.', 'type' => 'string', 'required' => false, 'example' => 'testdb01', 'title' => ''],
],
],
'responses' => [
@@ -8658,129 +9740,112 @@
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'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_****',
+ 'description' => 'The data returned.',
+ 'type' => 'object',
+ 'properties' => [
+ 'fail' => ['description' => 'Indicates whether the asynchronous request failed. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
+ 'isFinish' => ['description' => 'Indicates whether the asynchronous request was complete. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'resultId' => ['description' => 'The ID of the asynchronous request.', 'type' => 'string', 'example' => 'async__fcd7c35788e62324622c3b4a03de****', 'title' => ''],
+ 'state' => ['description' => 'The state of the asynchronous request. Valid values:'."\n"
+ ."\n"
+ .'- **RUNNING**'."\n"
+ ."\n"
+ .'- **SUCCESS**'."\n"
+ ."\n"
+ .'- **FAIL**', 'type' => 'string', 'example' => 'SUCCESS', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1644560866961', 'title' => ''],
+ 'complete' => ['description' => 'Indicates whether the asynchronous request was complete.'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'result' => [
+ 'description' => 'The number of SQL queries corresponding to the error code.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'instanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
+ 'errorCode' => ['description' => 'The error code returned if the request failed.', 'type' => 'string', 'example' => '1062', 'title' => ''],
+ 'count' => ['description' => 'The number of SQL queries corresponding to the error code.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'title' => '',
+ 'example' => '',
],
],
- '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',
- ],
+ '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 }',
+ 'title' => '',
+ ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '840F51F7-9C01-538D-94F6-AE712905****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ '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",
+ .'- 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"
+ ."\n"
+ .'- If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetAsyncErrorRequestStatByCode'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetAsyncErrorRequestStatByCode',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
],
'GetAsyncErrorRequestStatResult' => [
- 'summary' => 'Asynchronously obtains the number of failed executions of SQL templates based on SQL Explorer data.',
- 'methods' => [
- 'get',
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'summary' => 'Call GetAsyncErrorRequestStatResult to asynchronously get the execution error count for a specific SQL statement from the SQL Insight results of a database instance.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -8791,149 +9856,86 @@
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREhdmFT57I0',
- ],
+ 'abilityTreeNodes' => ['FEATUREhdmFT57I0'],
],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-2ze8g2am97624****',
- ],
+ 'schema' => ['description' => 'The ID of the instance.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
[
'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****',
- ],
+ 'schema' => ['description' => 'The ID of the node.'."\n"
+ ."\n"
+ .'> This parameter is required for PolarDB for MySQL instances.', 'type' => 'string', 'required' => false, 'example' => 'pi-bp179lg03445l****', 'title' => ''],
],
[
'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****',
- ],
+ 'schema' => ['description' => 'One or more SQL IDs. Separate multiple SQL IDs with commas. You can call the [GetAsyncErrorRequestListByCode](~~410746~~) operation to query the SQL IDs that generated MySQL error codes on the instance.', 'type' => 'string', 'required' => false, 'example' => 'ad78a4e7d3ce81590c9dc2d5f4bc****,0f92feacd92c048b06a16617a633****', 'title' => ''],
],
[
'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',
- ],
+ 'schema' => ['description' => 'The start time of the query, specified as a Unix timestamp in milliseconds.'."\n"
+ ."\n"
+ .'> The start time must be within the data retention period of SQL Explorer for the database instance. The start time cannot be earlier than 90 days before the current time.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1642556990714', 'title' => ''],
],
[
'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',
- ],
+ 'schema' => ['description' => 'The end time of the query, specified as a Unix timestamp in milliseconds.'."\n"
+ ."\n"
+ .'> The end time must be later than the start time. The interval between the start time and the end time cannot exceed 1 day.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1642566830000', 'title' => ''],
],
[
'name' => 'DbName',
'in' => 'query',
- 'schema' => [
- 'description' => 'The name of the database.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'testdb01',
- ],
+ 'schema' => ['description' => 'The name of the database.', 'type' => 'string', 'required' => false, 'example' => 'testdb01', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'description' => 'The data returned.'."\n",
+ 'description' => 'The returned data.',
'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',
- ],
+ 'Code' => ['description' => 'The response status code.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The response message.'."\n"
+ ."\n"
+ .'> If the request succeeds, this parameter returns **Successful**. If the request fails, this parameter returns an error message.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'Data' => [
- 'description' => 'The data returned.'."\n",
+ 'description' => 'The returned data.',
'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',
- ],
+ 'fail' => ['description' => 'Indicates whether the request failed.'."\n"
+ ."\n"
+ .'- **true**: The request failed.'."\n"
+ ."\n"
+ .'- **false**: The request succeeded.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
+ 'isFinish' => ['description' => 'Indicates whether the asynchronous request is complete.'."\n"
+ ."\n"
+ .'- **true**: The request is complete.'."\n"
+ ."\n"
+ .'- **false**: The request is in progress.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'resultId' => ['description' => 'The asynchronous request ID.', 'type' => 'string', 'example' => 'async__61f45ee381b2fa4e8a6545e3bee9****', 'title' => ''],
+ 'state' => ['description' => 'The state of the asynchronous request. Valid values:'."\n"
+ ."\n"
+ .'- **RUNNING**: The request is running.'."\n"
+ ."\n"
+ .'- **SUCCESS**: The request succeeded.'."\n"
+ ."\n"
+ .'- **FAIL**: The request failed.', 'type' => 'string', 'example' => 'SUCCESS', 'title' => ''],
+ 'timestamp' => ['description' => 'The time when the asynchronous request was complete. The time is a Unix timestamp in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1644558576717', 'title' => ''],
+ 'complete' => ['description' => 'Indicates whether the asynchronous request is complete.'."\n"
+ ."\n"
+ .'- **true**: The request is complete.'."\n"
+ ."\n"
+ .'- **false**: The request is in progress.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'result' => [
- 'description' => 'The returned data of the asynchronous request.'."\n",
+ 'description' => 'The data returned by the asynchronous request.',
'type' => 'object',
'items' => [
'description' => 'The data returned.'."\n",
@@ -8941,28 +9943,9 @@
'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',
- ],
+ '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",
],
@@ -8971,135 +9954,106 @@
'additionalProperties' => [
'type' => 'object',
'properties' => [
- 'sqlId' => [
- 'type' => 'string',
- ],
- 'instanceId' => [
- 'type' => 'string',
- ],
- 'count' => [
- 'type' => 'integer',
- 'format' => 'int32',
- ],
+ 'sqlId' => ['description' => 'The SQL template ID.', 'type' => 'string', 'example' => '61f45ee381b2fa4e8a6545e3bee9', 'title' => ''],
+ 'instanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'rm-xxx', 'title' => ''],
+ 'count' => ['description' => 'The number of errors.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
],
+ 'description' => 'The details of a data entry.',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
'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',
- ],
+ 'title' => '',
+ ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '3FC3F8EB-3564-5D1A-B187-3B03E5B0****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful.'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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":""}]',
+ 'responseDemo' => '[{"errorExample":"","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\\": \\"61f45ee381b2fa4e8a6545e3bee9\\",\\n \\"instanceId\\": \\"rm-xxx\\",\\n \\"count\\": 10\\n }\\n }\\n },\\n \\"RequestId\\": \\"3FC3F8EB-3564-5D1A-B187-3B03E5B0****\\",\\n \\"Success\\": true\\n}","type":"json"}]',
'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"
+ 'description' => '> This is an asynchronous call, so the complete results are not returned immediately. If the **isFinish** field in the response is **false**, wait 1s and retry the call. The complete results are returned when **isFinish** is **true**.'."\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',
+ .'- This operation supports only RDS MySQL and PolarDB for MySQL instances. Before you call this operation, ensure that DAS Enterprise Edition is enabled for the instance. For more information, see [Purchase DAS Enterprise Edition](~~163298~~).'."\n"
+ ."\n"
+ .'- When you use an SDK to call DAS, you must set the region to cn-shanghai.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetAsyncErrorRequestStatResult'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetAsyncErrorRequestStatResult',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'GetAutoIncrementUsageStatistic' => [
+ 'summary' => 'Queries the usage of auto-increment table IDs.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'systemTags' => [
- 'operationType' => 'get',
- ],
+ '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' => '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****',
- ],
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
[
- 'name' => 'Start',
+ 'name' => 'DbNames',
'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',
- ],
+ '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 (,).', 'type' => 'string', 'required' => false, 'example' => '[\'db1\',\'db2\']', 'title' => ''],
],
[
- 'name' => 'End',
+ 'name' => 'RatioFilter',
'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',
- ],
+ '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.', 'type' => 'number', 'format' => 'double', 'required' => true, 'example' => '0.9', 'title' => ''],
],
[
- 'name' => 'ErrorCode',
+ 'name' => 'RealTime',
'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',
- ],
+ '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"
+ ."\n"
+ .'- **false**: queries data generated in the last 2 hours. If no such data exists, queries the latest data.', 'type' => 'boolean', 'required' => true, 'example' => 'false', 'title' => ''],
],
],
'responses' => [
@@ -9107,206 +10061,133 @@
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'Data' => [
- 'description' => 'The data returned.'."\n",
+ 'description' => 'The returned data.',
'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",
+ 'Finish' => ['description' => 'Indicates whether the task is complete. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1697183353000', 'title' => ''],
+ 'TaskStatus' => ['description' => 'The task status. Valid values:'."\n"
+ ."\n"
+ .'- **INIT**: The task is being initialized.'."\n"
+ ."\n"
+ .'- **RUNNING**: The task is being executed.'."\n"
+ ."\n"
+ .'- **SUCCESS**: The task succeeds.'."\n"
+ ."\n"
+ .'- **FAIL**: The task fails.', 'type' => 'string', 'example' => 'INIT', 'title' => ''],
+ 'ErrorInfo' => ['description' => 'The error message returned if the task fails.', 'type' => 'string', 'example' => 'the given database name list invalid, none of the database names in the list exist on the instance', 'title' => ''],
+ 'AutoIncrementUsageList' => [
+ 'description' => 'The usage details of auto-increment IDs.',
'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****',
- ],
+ 'DbName' => ['description' => 'The database name.', 'type' => 'string', 'example' => 'db01', 'title' => ''],
+ 'TableName' => ['description' => 'The table name.', 'type' => 'string', 'example' => 'test_table', 'title' => ''],
+ 'ColumnName' => ['description' => 'The column name.', 'type' => 'string', 'example' => 'id', 'title' => ''],
+ 'AutoIncrementCurrentValue' => ['description' => 'The latest auto-increment ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '2147483647', 'title' => ''],
+ 'MaximumValue' => ['description' => 'The maximum auto-increment ID that is supported by the current data type.', 'type' => 'integer', 'format' => 'int64', 'example' => '2147483647', 'title' => ''],
+ 'AutoIncrementRatio' => ['description' => 'The usage ratio of auto-increment IDs.', 'type' => 'number', 'format' => 'double', 'example' => '1', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
- ],
- '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',
+ 'title' => '',
+ 'example' => '',
],
],
- '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',
+ 'title' => '',
+ 'example' => '',
],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0A74B755-98B7-59DB-8724-1321B394****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request is successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'GetAutoIncrementUsageStatistic',
+ 'description' => '- This operation is applicable only to ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters.'."\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',
+ .'- 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 DAS, you must set the region to cn-shanghai.',
+ 'extraInfo' => '- 调用接口时,当返回数据中Finish不为true时,需要继续调用。当Finish为true且TaskStatus为SUCCESS时,可以查看具体的自增ID使用数据。',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetAutoIncrementUsageStatistic'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'hdm:GetAutoIncrementUsageStatistic',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ '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"}]',
+ ],
+ 'GetAutoResourceOptimizeRules' => [
+ 'summary' => 'Queries the automatic fragment recycling rules of database instances.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'systemTags' => [
- 'operationType' => 'get',
- ],
+ 'operationType' => 'read',
+ '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' => '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',
+ 'name' => 'ConsoleContext',
'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',
- ],
+ 'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
- 'name' => 'DbName',
+ 'name' => 'InstanceIds',
'in' => 'query',
- 'schema' => [
- 'description' => 'The name of a database.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'testdb01',
- ],
+ '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"
+ ."\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.', 'type' => 'string', 'required' => false, 'example' => '[\'rm-2ze8g2am97624****\',\'rm-2vc54m2a6pd6p****\',\'rm-2ze9xrhze0709****\',\'rm-2ze8g2am97627****\']', 'title' => ''],
],
],
'responses' => [
@@ -9314,1175 +10195,683 @@
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'Data' => [
- 'description' => 'The data returned.'."\n",
+ 'description' => 'The data returned.',
'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',
+ 'TotalAutoResourceOptimizeRulesCount' => ['description' => 'The number of database instances for which the automatic fragment recycling feature has been enabled.', 'type' => 'integer', 'format' => 'int64', 'example' => '3', 'title' => ''],
+ 'EnableAutoResourceOptimizeCount' => ['description' => 'The number of database instances for which the automatic fragment recycling feature is currently enabled.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'TurnOffAutoResourceOptimizeCount' => ['description' => 'The number of database instances for which the automatic fragment recycling feature was once enabled but is currently disabled.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'HasEnableRuleButNotDasProCount' => ['description' => 'The number of database instances for which the automatic fragment recycling feature is enabled and DAS Enterprise Edition is disabled.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'EnableAutoResourceOptimizeList' => [
+ 'description' => 'The database instances for which the automatic fragment recycling feature is currently enabled.',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceId' => ['description' => 'The database instance ID.', 'type' => 'string', 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
+ 'AutoDefragment' => ['description' => 'Indicates whether the automatic fragment recycling feature is enabled. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'TableSpaceSize' => ['description' => 'The minimum storage usage of a single physical table for which the automatic fragment recycling feature is enabled. Unit: GB.', 'type' => 'number', 'format' => 'double', 'example' => '10', 'title' => ''],
+ 'DasProOn' => ['description' => 'Indicates whether DAS Enterprise Edition is enabled. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'TableFragmentationRatio' => ['description' => 'The fragmentation rate of a single physical table for which the automatic fragment recycling feature is enabled.', 'type' => 'number', 'format' => 'double', 'example' => '0.2', 'title' => ''],
+ 'UserId' => ['description' => 'The ID of the Alibaba Cloud account that is used to create the database instance.', 'type' => 'string', 'example' => '140692647406****', 'title' => ''],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
],
- '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',
+ 'TurnOffAutoResourceOptimizeList' => [
+ 'description' => 'The database instances for which the automatic fragment recycling feature was once enabled but is currently disabled.',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceId' => ['description' => 'The database instance ID.', 'type' => 'string', 'example' => 'rm-2vc54m2a6pd6p****', 'title' => ''],
+ 'AutoDefragment' => ['description' => 'Indicates whether the automatic fragment recycling feature is enabled. Valid values:'."\n"
+ ."\n"
+ .'- **true**:'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
+ 'TableSpaceSize' => ['description' => 'The minimum storage usage of a single physical table for which the automatic fragment recycling feature is enabled. Unit: GB.', 'type' => 'number', 'format' => 'double', 'example' => '10', 'title' => ''],
+ 'DasProOn' => ['description' => 'Indicates whether DAS Enterprise Edition is enabled. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'TableFragmentationRatio' => ['description' => 'The fragmentation rate of a single physical table for which the automatic fragment recycling feature is enabled.', 'type' => 'number', 'format' => 'double', 'example' => '0.2', 'title' => ''],
+ 'UserId' => ['description' => 'The ID of the Alibaba Cloud account that is used to create the database instance.', 'type' => 'string', 'example' => '140692647406****', 'title' => ''],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
],
- 'complete' => [
- 'description' => 'Indicates whether the asynchronous request was complete.'."\n"
+ 'HasEnableRuleButNotDasProList' => [
+ 'description' => 'The database instances for which the automatic fragment recycling feature is enabled and DAS Enterprise Edition is disabled.'."\n"
."\n"
- .'* **true**'."\n"
- .'* **false**'."\n",
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- 'result' => [
- 'description' => 'The number of SQL queries corresponding to the error code.'."\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.',
'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',
- ],
+ 'InstanceId' => ['description' => 'The database instance ID.', 'type' => 'string', 'example' => 'rm-2ze9xrhze0709****', 'title' => ''],
+ 'AutoDefragment' => ['description' => 'Indicates whether the automatic fragment recycling feature is enabled. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'TableSpaceSize' => ['description' => 'The minimum storage usage of a single physical table for which the automatic fragment recycling feature is enabled. Unit: GB.', 'type' => 'number', 'format' => 'double', 'example' => '10', 'title' => ''],
+ 'DasProOn' => ['description' => 'Indicates whether DAS Enterprise Edition is enabled. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
+ 'TableFragmentationRatio' => ['description' => 'The fragmentation rate of a single physical table for which the automatic fragment recycling feature is enabled.', 'type' => 'number', 'format' => 'double', 'example' => '0.2', 'title' => ''],
+ 'UserId' => ['description' => 'The ID of the Alibaba Cloud account that is used to create the database instance.', 'type' => 'string', 'example' => '140692647406****', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
+ ],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'NeverEnableAutoResourceOptimizeOrReleasedInstanceIdList' => [
+ 'description' => 'The database instances that do not exist or for which the automatic fragment recycling feature has never been enabled.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The database instance ID.', 'type' => 'string', 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
],
],
- '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',
+ 'title' => '',
+ 'example' => '',
],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'GetAutoResourceOptimizeRules',
+ 'description' => 'Before you call this operation, take note of the following items:'."\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',
+ .'- 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 is an ApsaraDB RDS for MySQL instance of High-availability Edition.'."\n"
+ ."\n"
+ .'- The database instance has four or more cores, and **innodb\\_file\\_per\\_table** is set to **ON**.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetAutoResourceOptimizeRules'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'hdm:GetAutoResourceOptimizeRules',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ ],
+ 'GetAutoThrottleRules' => [
+ 'summary' => 'Queries the automatic SQL throttling rules of a database instance.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'get',
- ],
+ 'operationType' => 'read',
+ 'systemTags' => ['operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free'],
'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',
+ 'name' => 'ConsoleContext',
'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',
- ],
+ 'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
- 'name' => 'Role',
+ 'name' => 'InstanceIds',
'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',
- ],
+ '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"
+ ."\n"
+ .' - Database instances for which the automatic SQL throttling feature was once enabled but is currently disabled. Released database instances are not included.', 'type' => 'string', 'required' => false, 'example' => '[\'rm-2ze8g2am97624****\',\'rm-2vc54m2a6pd6p****\',\'rm-2ze9xrhze0709****\']', 'title' => ''],
],
],
'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****',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'Data' => [
- 'description' => 'The data returned.'."\n",
+ 'description' => 'The returned data.',
'type' => 'object',
'properties' => [
- 'List' => [
- 'description' => 'The details of the full request data.',
+ 'TotalAutoThrottleRulesCount' => ['description' => 'The number of databases for which the automatic SQL throttling feature has been enabled.', 'type' => 'integer', 'format' => 'int64', 'example' => '3', 'title' => ''],
+ 'EnableAutoThrottleCount' => ['description' => 'The number of database instances for which the automatic SQL throttling feature is currently enabled.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'TurnOffAutoThrottleCount' => ['description' => 'The number of database instances for which the automatic SQL throttling feature was once enabled but is currently disabled.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ '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', 'title' => ''],
+ 'CpuUsage' => ['description' => 'The CPU utilization threshold.', 'type' => 'number', 'format' => 'double', 'example' => '70', 'title' => ''],
+ 'CpuSessionRelation' => ['description' => 'The logical relationship between the CPU utilization threshold and the maximum number of active sessions. Valid values:'."\n"
+ ."\n"
+ .'- **AND**'."\n"
+ ."\n"
+ .'- **OR**', 'type' => 'string', 'example' => 'AND', 'title' => ''],
+ 'ActiveSessions' => ['description' => 'The maximum number of active sessions.', 'type' => 'integer', 'format' => 'int64', 'example' => '32', 'title' => ''],
+ 'MaxThrottleTime' => ['description' => 'The maximum throttling duration. Unit: minutes.', 'type' => 'number', 'format' => 'double', 'example' => '10', 'title' => ''],
+ 'AllowThrottleStartTime' => ['description' => 'The start time of the throttling window. The value of this parameter is in UTC.', 'type' => 'string', 'example' => '00:00Z', 'title' => ''],
+ 'AllowThrottleEndTime' => ['description' => 'The end time of the throttling window. The value of this parameter is in UTC.', 'type' => 'string', 'example' => '23:59Z', 'title' => ''],
+ 'Visible' => ['description' => 'Indicates whether the automatic SQL throttling feature is enabled. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ '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"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'InstanceId' => ['description' => 'The database instance ID.', 'type' => 'string', 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
+ 'UserId' => ['description' => 'The ID of the Alibaba Cloud account that is used to create the database instance.', 'type' => 'string', 'example' => '140692647406****', 'title' => ''],
+ ],
'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ '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' => [
- '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****',
- ],
+ 'AbnormalDuration' => ['description' => 'The maximum period of time during which the automatic SQL throttling feature is triggered. Unit: minutes.', 'type' => 'number', 'format' => 'double', 'example' => '2', 'title' => ''],
+ 'CpuUsage' => ['description' => 'The CPU utilization threshold.', 'type' => 'number', 'format' => 'double', 'example' => '80', 'title' => ''],
+ 'AllowThrottleEndTime' => ['description' => 'The end time of the throttling window. The value of this parameter is in UTC.', 'type' => 'string', 'example' => '23:59Z', 'title' => ''],
+ 'InstanceId' => ['description' => 'The database instance ID.', 'type' => 'string', 'example' => 'rm-2ze9xrhze0709****', 'title' => ''],
+ 'Visible' => ['description' => 'Indicates whether the automatic SQL throttling feature is enabled. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
+ 'CpuSessionRelation' => ['description' => 'The logical relationship between the CPU utilization threshold and the maximum number of active sessions. Valid values:'."\n"
+ ."\n"
+ .'- **AND**'."\n"
+ ."\n"
+ .'- **OR**', 'type' => 'string', 'example' => 'OR', 'title' => ''],
+ '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"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'ActiveSessions' => ['description' => 'The maximum number of active sessions.', 'type' => 'integer', 'format' => 'int64', 'example' => '64', 'title' => ''],
+ 'MaxThrottleTime' => ['description' => 'The maximum throttling duration. Unit: minutes.', 'type' => 'number', 'format' => 'double', 'example' => '10', 'title' => ''],
+ 'UserId' => ['description' => 'The ID of the Alibaba Cloud account that is used to create the database instance.', 'type' => 'string', 'example' => '140692647406****', 'title' => ''],
+ 'AllowThrottleStartTime' => ['description' => 'The start time of the throttling window. The value of this parameter is in UTC.', 'type' => 'string', 'example' => '00:00Z', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
- 'Total' => [
- 'description' => 'The total number of entries returned.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1',
+ '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.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The database instance ID.', 'type' => 'string', 'example' => 'rm-2vc54m2a6pd6p****', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '7172BECE-588A-5961-8126-C216E16B****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'GetAutoThrottleRules',
+ 'description' => 'Before you call this operation, take note of the following items:'."\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',
+ .'- 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"
+ ."\n"
+ .' - PolarDB for MySQL Cluster Edition that runs MySQL 5.6, MySQL 5.7, or MySQL 8.0',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetAutoThrottleRules'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'hdm:GetAutoThrottleRules',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ ],
+ 'GetAutonomousNotifyEventContent' => [
+ 'summary' => 'Returns details of autonomous notification events for a database instance.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'deprecated' => false,
+ 'operationType' => 'read',
'systemTags' => [
'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '23868',
+ 'abilityTreeNodes' => ['FEATUREhdmETIPZF'],
],
'parameters' => [
[
- 'name' => 'UserId',
+ 'name' => '__context',
'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****',
- ],
+ 'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
'name' => 'InstanceId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-2ze8g2am97624****',
- ],
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-18ff4a195d****', 'title' => ''],
],
[
- 'name' => 'NodeId',
+ '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.', 'type' => 'string', 'required' => true, 'example' => '7e7b2774-95b8-4fa3-bd9c-0ab47cb7****', 'title' => ''],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
'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****',
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Data' => ['description' => 'The details of the notification events.', '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\\"}', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
+ ],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
- [
- '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****',
+ ],
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
+ ],
+ 403 => [
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
+ ],
+ ],
+ '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"
+ ."\n"
+ .'- If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n"
+ ."\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~~).',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetAutonomousNotifyEventContent'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetAutonomousNotifyEventContent',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
+ ],
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ ],
+ 'GetAutonomousNotifyEventsInRange' => [
+ 'summary' => 'Queries the notification events of one or more urgency levels within a period.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
+ 'security' => [
[
- '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',
- ],
+ 'AK' => [],
],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '23871',
+ 'abilityTreeNodes' => ['FEATUREhdm56JBRC'],
+ ],
+ 'parameters' => [
[
- 'name' => 'Keyword',
+ 'name' => '__context',
'in' => 'query',
- 'schema' => [
- 'description' => 'The keywords that are used for query.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'dbtest01',
- ],
+ 'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
- 'name' => 'Start',
+ 'name' => 'InstanceId',
'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',
- ],
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'rm-18ff4a195d****', 'title' => ''],
],
[
- 'name' => 'End',
+ 'name' => 'StartTime',
'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',
- ],
+ '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.', 'type' => 'string', 'required' => true, 'example' => '1568269711000', 'title' => ''],
],
[
- 'name' => 'OrderBy',
+ 'name' => 'EndTime',
'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',
- ],
+ '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.', 'type' => 'string', 'required' => true, 'example' => '1568265711221', 'title' => ''],
],
[
- 'name' => 'Asc',
+ 'name' => 'NodeId',
'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',
- ],
+ '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.', 'type' => 'string', 'required' => false, 'example' => 'r-x****-db-0', 'title' => ''],
],
[
- 'name' => 'PageNo',
+ 'name' => 'EventContext',
'in' => 'query',
- 'schema' => [
- 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => true,
- 'example' => '1',
- ],
+ 'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
- 'name' => 'PageSize',
+ 'name' => 'Level',
'in' => 'query',
- 'schema' => [
- 'description' => 'The number of entries per page. Default value: 20.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => true,
- 'example' => '20',
- ],
+ '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"
+ ."\n"
+ .'- **Optimization**: events that need to be optimized.'."\n"
+ ."\n"
+ .'- **Warn**: events for which the system sends warnings.'."\n"
+ ."\n"
+ .'- **Critical**: critical events.', 'type' => 'string', 'required' => false, 'example' => 'Warn', 'title' => ''],
],
[
- 'name' => 'SqlType',
+ 'name' => 'MinLevel',
'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',
- ],
+ 'schema' => ['description' => 'The minimum urgency level of the events. Valid values:'."\n"
+ ."\n"
+ .'- **Notice**: events for which the system sends notifications.'."\n"
+ ."\n"
+ .'- **Optimization**: events that need to be optimized.'."\n"
+ ."\n"
+ .'- **Warn**: events for which the system sends warnings.'."\n"
+ ."\n"
+ .'- **Critical**: critical events.', 'type' => 'string', 'required' => false, 'example' => 'Notice', 'title' => ''],
],
[
- 'name' => 'DbName',
+ 'name' => 'PageOffset',
'in' => 'query',
- 'schema' => [
- 'description' => 'The name of the database.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'dbtest01',
- ],
+ 'schema' => ['description' => 'The page number. The value must be a positive integer. Default value: 1.', 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''],
],
[
- 'name' => 'Role',
+ 'name' => 'PageSize',
'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',
- ],
+ 'schema' => ['description' => 'The number of entries per page.', 'type' => 'string', 'required' => false, 'example' => '30', 'title' => ''],
],
],
'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****',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
'Data' => [
- 'description' => 'The returned data.'."\n",
+ 'description' => 'The detailed information, including the error codes and the number of entries that are returned.',
'type' => 'object',
'properties' => [
- 'Result' => [
- 'description' => 'The returned full request data.'."\n",
+ 'Extra' => ['description' => 'The reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'List' => [
'type' => 'object',
+ 'itemNode' => true,
'properties' => [
- 'List' => [
- 'description' => 'The full request data.',
+ 'T' => [
+ 'description' => 'The detailed information, including the error codes and the number of entries that are returned.',
'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',
+ 'items' => ['description' => 'The detailed information.', 'type' => 'string', 'example' => '"T": []', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'PageNo' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'Total' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '4', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'title' => 'GetAutonomousNotifyEventsInRange',
+ 'description' => 'Before you call this operation, take note of the following items:'."\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"
+ .'- 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"
- .'* 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',
+ .'- If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n"
+ ."\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~~).',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetAutonomousNotifyEventsInRange'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetAutonomousNotifyEventsInRange',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ ],
+ 'GetBlockingDetailList' => [
+ 'summary' => 'Queries the blocking data of an ApsaraDB RDS for SQL Server instance.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREhdmFT57I0',
- ],
- ],
+ 'systemTags' => ['operationType' => 'list'],
'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' => 'query',
+ 'schema' => ['description' => 'The ID of the database instance.', 'type' => 'string', 'required' => true, 'example' => 'rm-t4nfalp2ap421****', 'title' => ''],
],
[
- 'name' => 'InstanceId',
- 'in' => 'formData',
- '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 query. This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.', 'type' => 'string', 'required' => true, 'example' => '1679429913757', 'title' => ''],
],
[
- 'name' => 'SqlId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => 'The SQL statement ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => '651b56fe9418d48edb8fdf0980ec****',
- ],
+ '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.', 'type' => 'string', 'required' => true, 'example' => '1682490480548', 'title' => ''],
],
[
- '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' => 'PageNo',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The page number. The value must be an integer that is greater than 0. Default value: 1.', 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''],
],
[
- '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' => '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.', 'type' => 'string', 'required' => false, 'example' => '10', 'title' => ''],
],
[
- 'name' => 'Role',
+ 'name' => 'QueryHash',
'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',
- ],
+ 'schema' => ['description' => 'The hash value of the SQL statement. The hash values of SQL statements of the same type are the same.', 'type' => 'string', 'required' => false, 'example' => 'DC08B955CAD25E7B', 'title' => ''],
+ ],
+ [
+ 'name' => 'DbNameList',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The name of the database. Separate multiple database names with commas (,).', 'type' => 'string', 'required' => false, 'example' => 'testdb1,testdb2', 'title' => ''],
],
],
'responses' => [
@@ -10490,568 +10879,246 @@
'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****',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'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',
+ 'type' => 'object',
+ 'properties' => [
+ 'List' => [
+ 'description' => 'The details of the data returned.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The details of the data returned.',
+ 'type' => 'object',
+ 'properties' => [
+ 'BatchId' => ['description' => 'The batch ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1683530096156', 'title' => ''],
+ 'ClientAppName' => ['description' => 'The client name.', 'type' => 'string', 'example' => '.Net SqlClient Data Provider', 'title' => ''],
+ 'DataBase' => ['description' => 'The name of the database.', 'type' => 'string', 'example' => 'testdb1', 'title' => ''],
+ 'HostName' => ['description' => 'The client hostname.', 'type' => 'string', 'example' => 'ALLBNMGTAPPRD01', 'title' => ''],
+ 'LoginId' => ['description' => 'The username that is used for the logon.', 'type' => 'string', 'example' => 'Testuser', 'title' => ''],
+ 'QueryHash' => ['description' => 'The hash value of the SQL statement.', 'type' => 'string', 'example' => 'DC08B955CAD25E7B', 'title' => ''],
+ 'Spid' => ['description' => 'The session ID.', 'type' => 'string', 'example' => '1717', 'title' => ''],
+ 'SqlText' => ['description' => 'The SQL statement.', 'type' => 'string', 'example' => 'select * from test1', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => '1608888296000', 'title' => ''],
+ 'WaitTimeMs' => ['description' => 'The duration of the blocking. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '30000', 'title' => ''],
+ '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).', 'type' => 'string', 'example' => 'MISCELLANEOUS', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1700065800000', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
+ 'PageNo' => ['description' => 'The page number of the page returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'PageSize' => ['description' => 'The number of entries returned on each page.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'Total' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '19', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'GetBlockingDetailList',
+ 'description' => '- This operation is applicable only to ApsaraDB RDS for SQL Server instances.'."\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',
+ .'- 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 the API operations of DAS, you must set the region ID to cn-shanghai.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetBlockingDetailList'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'hdm:GetBlockingDetailList',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ '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"}]',
+ ],
+ 'GetDBInstanceConnectivityDiagnosis' => [
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '198881',
- 'abilityTreeNodes' => [
- 'FEATUREhdmPGXCEW',
- 'FEATUREhdmFT57I0',
- ],
- ],
+ 'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'InstanceId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => 'The ID of the database instance.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-2ze8g2am97624****',
- ],
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The instance ID.'."\n", 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****'],
+ ],
+ [
+ 'name' => 'SrcIp',
+ 'in' => 'query',
+ 'schema' => ['title' => '', '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 response code.'."\n",
- 'type' => 'string',
- 'example' => '200',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.'."\n", 'type' => 'string', 'example' => '200', 'title' => ''],
+ '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', 'title' => ''],
'Data' => [
- 'title' => 'SqlLogConfig',
- 'description' => 'The data that is returned.'."\n",
+ 'description' => 'The detailed information.'."\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"
+ 'instanceId' => ['title' => '', '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',
- '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',
+ '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'],
],
+ 'title' => '',
],
- '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',
- ],
+ 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* **true**'."\n"
+ .'* **false**'."\n", 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'title' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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',
+ '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.110.180.62 not in user whitelist\\"\\n },\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]',
+ 'title' => 'GetDBInstanceConnectivityDiagnosis',
+ 'summary' => 'Queries the diagnosis of network connectivity when a user accesses a specific database instance by specifying an IP address.',
'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',
+ .'* 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",
+ 'changeSet' => [],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetDBInstanceConnectivityDiagnosis',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'GetDasAgentSSE' => [
+ 'summary' => 'This API uses Server-Sent Events (SSE) to interact with the DAS agent. You can use this API for features such as Q&A and performance diagnostics.',
+ 'path' => '/getDasAgentSSE',
+ 'methods' => ['post'],
+ 'schemes' => ['https', 'sse'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'update',
+ 'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '198880',
- 'abilityTreeNodes' => [
- 'FEATUREhdmPGXCEW',
- 'FEATUREhdmFT57I0',
- ],
+ 'abilityTreeNodes' => ['FEATUREhdmB8MM4L', 'FEATUREhdmROFBLE', 'FEATUREhdm1XKIXR', 'FEATUREhdmR88NLD', 'FEATUREhdm3TU4OK'],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'tenant',
],
'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' => 'Query',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The natural language query for the agent.', 'type' => 'string', 'required' => true, 'example' => 'Are there any issues or abnormalities with my instance rm-xxx?', 'title' => ''],
],
[
- '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' => 'InstanceId',
+ 'in' => 'query',
+ 'allowEmptyValue' => true,
+ 'schema' => ['description' => 'This parameter is deprecated. Specify the instance ID in the Query parameter.', 'type' => 'string', 'required' => false, 'example' => 'rm-xxxx', 'title' => ''],
],
[
- 'name' => 'Filters',
+ 'name' => 'SessionId',
'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,
- ],
+ 'schema' => ['description' => 'The session ID, which must be in the UUID format. This parameter is optional. If you do not provide a session ID, the service creates a new session. To continue an existing conversation, use the same session ID in subsequent requests.', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-xxxxxxxxxxxx', 'title' => ''],
],
[
- 'name' => 'EnableAudit',
+ 'name' => 'AgentId',
'in' => 'query',
- 'schema' => [
- 'type' => 'boolean',
- ],
+ 'schema' => ['description' => 'The ID of the agent to use. This parameter is optional. If you do not specify this parameter, the service uses the default agent. You can provide the ID of an agent that was generated when you enabled the DAS Agent service or that you manually created.', 'type' => 'string', 'required' => false, 'example' => 'ag-472T0DxtmjIxxxxx', 'title' => ''],
],
],
'responses' => [
@@ -11059,221 +11126,234 @@
'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",
+ 'Id' => ['description' => 'The session ID. This is the same as the SessionId in the request.', 'type' => 'string', 'example' => '123e4567-e89b-12d3-a456-xxxxxxxxxxxx', 'title' => ''],
+ 'Answer' => ['description' => 'The content of the response.', 'type' => 'string', 'example' => 'rm-xxxx', 'title' => ''],
+ 'Metadata' => [
'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',
+ 'Code' => ['description' => 'The error code. This parameter is empty if no exception occurs.', 'type' => 'integer', 'format' => 'int32', 'example' => '-1810001', 'title' => ''],
+ 'CharCount' => ['description' => 'The number of characters in the response.', 'type' => 'integer', 'format' => 'int64', 'example' => '1403', 'title' => ''],
+ 'ToolName' => ['description' => 'The name of the tool used.', 'type' => 'string', 'example' => 'SqlFilter', 'title' => ''],
+ 'ToolParams' => [
+ 'type' => 'array',
+ 'items' => ['description' => 'A list of strings.', 'type' => 'string', 'example' => '["--instanceId", "rm-*****", "--sqlText", "select~from~das~where~name~das1"]', 'title' => ''],
+ 'description' => 'The tool parameters.',
+ 'title' => '',
+ 'example' => '',
],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '04930480-9404-50CB-8252-Axxxxxxxx', 'title' => ''],
],
+ 'description' => 'The metadata.',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'Event' => [
+ 'description' => 'The type of the response message.',
+ 'enumValueTitles' => ['summary' => 'Statistics about the response.', ' error ' => 'An error message.', 'agent_message ' => 'The agent\'s response.'],
+ 'type' => 'string',
+ 'example' => 'summary',
+ 'title' => '',
],
],
- 'description' => '',
+ 'title' => '',
+ 'description' => 'Schema of Response',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
+ ],
+ [
+ ['errorCode' => 'InstanceNotFound', 'errorMessage' => 'Requested instance not found.', 'description' => 'The corresponding instance ID cannot be found.'],
+ ],
+ 500 => [
+ ['errorCode' => 'Timeout', 'errorMessage' => 'The request processing has failed due to timeout.', 'description' => 'Request processing failed due to timeout.'],
],
],
- '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"
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'GetDasAgentSSE',
+ 'description' => 'This is a paid API. You are charged based on the number of output characters. Before you use this API, ensure that you understand the billing methods and [pricing](https://help.aliyun.com/zh/das/product-overview/billing-details-of-the-previous-version?spm=a2c4g.11186623.help-menu-63907.d_0_1_0.b7203b87MDNqHO\\&scm=20140722.H_156195._.OR_help-T_cn~zh-V_1#cad160563fbkd) of the DAS Agent product.',
+ 'extraInfo' => '### Java 版本示例'."\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"
+ .'import com.aliyun.auth.credentials.Credential;'."\n"
+ .'import com.aliyun.auth.credentials.provider.StaticCredentialProvider;'."\n"
+ .'import com.aliyun.sdk.gateway.pop.Configuration;'."\n"
+ .'import com.aliyun.sdk.gateway.pop.auth.SignatureVersion;'."\n"
+ .'import com.aliyun.sdk.service.das20200116.models.GetDasAgentSSERequest;'."\n"
+ .'import com.aliyun.sdk.service.das20200116.models.GetDasAgentSSEResponseBody;'."\n"
+ .'import com.aliyun.sdk.service.das20200116.models.*;'."\n"
+ .'import com.aliyun.sdk.service.das20200116.*;'."\n"
+ .'import darabonba.core.ResponseIterable;'."\n"
+ .'import darabonba.core.client.ClientOverrideConfiguration;'."\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',
+ .'import java.util.*;'."\n"
+ .'import java.io.*;'."\n"
+ ."\n"
+ .'public class GetDasAgentSSESample {'."\n"
+ ."\n"
+ .' public static void main(String[] args) throws Exception {'."\n"
+ ."\n"
+ .' StaticCredentialProvider provider = StaticCredentialProvider.create(Credential.builder()'."\n"
+ .' .accessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"))'."\n"
+ .' .accessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"))'."\n"
+ .' .build());'."\n"
+ ."\n"
+ .' AsyncClient client = AsyncClient.builder()'."\n"
+ .' .region("cn-shanghai")'."\n"
+ .' .credentialsProvider(provider)'."\n"
+ .' .serviceConfiguration(Configuration.create().setSignatureVersion(SignatureVersion.V3))'."\n"
+ .' .overrideConfiguration(ClientOverrideConfiguration.create().setProtocol("HTTPS")'."\n"
+ .' .setEndpointOverride("das.cn-shanghai.aliyuncs.com"))'."\n"
+ .' .build();'."\n"
+ ."\n"
+ .' GetDasAgentSSERequest request = GetDasAgentSSERequest.builder()'."\n"
+ .' .query("麻烦介绍下DAS Agent,相关文字在1000字左右").build();'."\n"
+ .' ResponseIterable<GetDasAgentSSEResponseBody> x = client.getDasAgentSSEWithResponseIterable(request);'."\n"
+ .' for (GetDasAgentSSEResponseBody event : x) {'."\n"
+ .' System.out.printf(event.getAnswer());'."\n"
+ .' }'."\n"
+ ."\n"
+ .' client.close();'."\n"
+ .' }'."\n"
+ ."\n"
+ .'}'."\n"
+ .'```'."\n"
+ .'### Python 版本示例'."\n"
+ ."\n"
+ .'```'."\n"
+ .'# -*- coding: utf-8 -*-'."\n"
+ .'import os'."\n"
+ .'import sys'."\n"
+ .'import json'."\n"
+ .'import asyncio'."\n"
+ ."\n"
+ .'from typing import List'."\n"
+ ."\n"
+ .'from alibabacloud_das20200116.client import Client as DAS20200116Client'."\n"
+ .'from alibabacloud_credentials.client import Client as CredentialClient'."\n"
+ .'from alibabacloud_tea_openapi import models as open_api_models'."\n"
+ .'from alibabacloud_das20200116 import models as das20200116_models'."\n"
+ .'from alibabacloud_tea_util import models as util_models'."\n"
+ .'from alibabacloud_tea_util.client import Client as UtilClient'."\n"
+ ."\n\n"
+ .'class GetDasAgentSseSample:'."\n"
+ .' def __init__(self):'."\n"
+ .' pass'."\n"
+ ."\n"
+ .' @staticmethod'."\n"
+ .' def create_client() -> DAS20200116Client:'."\n"
+ .' """'."\n"
+ .' 使用凭据初始化账号Client'."\n"
+ .' @return: Client'."\n"
+ .' @throws Exception'."\n"
+ .' """'."\n"
+ .' credential = CredentialClient()'."\n"
+ .' config = open_api_models.Config('."\n"
+ .' credential=credential'."\n"
+ .' )'."\n"
+ .' config.endpoint = f\'das.cn-shanghai.aliyuncs.com\''."\n"
+ .' return DAS20200116Client(config)'."\n"
+ ."\n"
+ .' @staticmethod'."\n"
+ .' def create_api_info() -> open_api_models.Params:'."\n"
+ .' params = open_api_models.Params('."\n"
+ .' action=\'GetDasAgentSSE\','."\n"
+ .' version=\'2020-01-16\','."\n"
+ .' protocol=\'HTTPS\','."\n"
+ .' pathname=\'/\','."\n"
+ .' method=\'POST\','."\n"
+ .' auth_type=\'AK\','."\n"
+ .' style=\'RPC\','."\n"
+ .' req_body_type=\'json\','."\n"
+ .' body_type=\'sse\''."\n"
+ .' )'."\n"
+ .' return params'."\n"
+ ."\n"
+ .' @staticmethod'."\n"
+ .' def build_open_api_request(request_obj) -> open_api_models.OpenApiRequest:'."\n"
+ .' query_dict = {} '."\n"
+ .' for attr_name in dir(request_obj):'."\n"
+ .' if attr_name.startswith(\'_\'):'."\n"
+ .' continue'."\n"
+ .' if callable(getattr(request_obj, attr_name, None)):'."\n"
+ .' continue'."\n"
+ .' try:'."\n"
+ .' value = getattr(request_obj, attr_name)'."\n"
+ .' except AttributeError:'."\n"
+ .' continue '."\n"
+ .' if UtilClient.is_unset(value):'."\n"
+ .' continue'."\n"
+ .' '."\n"
+ .' api_key = \'\'.join(word.capitalize() for word in attr_name.split(\'_\'))'."\n"
+ .' query_dict[api_key] = value'."\n"
+ .' '."\n"
+ .' return open_api_models.OpenApiRequest('."\n"
+ .' query=query_dict,'."\n"
+ .' headers={}'."\n"
+ .' )'."\n"
+ ."\n"
+ .' @staticmethod'."\n"
+ .' def run() -> None:'."\n"
+ .' client = GetDasAgentSseSample.create_client()'."\n"
+ .' params = GetDasAgentSseSample.create_api_info()'."\n"
+ .' runtime = util_models.RuntimeOptions()'."\n"
+ .' '."\n"
+ .' # 创建请求对象(可以通过命令行参数传递 query)'."\n"
+ .' get_das_agent_sserequest = das20200116_models.GetDasAgentSSERequest('."\n"
+ .' query=\'麻烦介绍下DAS Agent,相关文字在1000字左右\''."\n"
+ .' )'."\n"
+ .' '."\n"
+ .' # 转换为 OpenApiRequest 格式'."\n"
+ .' open_api_request = GetDasAgentSseSample.build_open_api_request(get_das_agent_sserequest)'."\n"
+ .' '."\n"
+ .' response = client.call_sseapi(params, open_api_request, runtime)'."\n"
+ .' for res in response:'."\n"
+ .' answer = None '."\n"
+ .' if hasattr(res.event, \'data\'):'."\n"
+ .' # event.data 可能是字符串或字典'."\n"
+ .' event_data = res.event.data'."\n"
+ .' if isinstance(event_data, str):'."\n"
+ .' try:'."\n"
+ .' event_data = json.loads(event_data)'."\n"
+ .' except json.JSONDecodeError:'."\n"
+ .' pass'."\n"
+ .' if isinstance(event_data, dict):'."\n"
+ .' answer = event_data.get(\'Answer\')'."\n"
+ .' if answer:'."\n"
+ .' print(answer, end=\'\', flush=True)'."\n"
+ ."\n\n"
+ .'if __name__ == \'__main__\':'."\n"
+ .' GetDasAgentSseSample.run()'."\n"
+ .'```',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetDasAgentSSE',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ '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"}]',
+ ],
+ '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' => [],
@@ -11281,25 +11361,19 @@
],
'operationType' => 'read',
'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '198879',
- 'abilityTreeNodes' => [
- 'FEATUREhdmFT57I0',
- ],
- ],
+ '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.', 'type' => 'string', 'required' => false, 'example' => '196278346919****', 'title' => ''],
+ ],
+ [
'name' => 'InstanceId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => 'The ID of the database instance.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-2ze1jdv45i7l6****',
- ],
+ 'in' => 'query',
+ 'schema' => ['description' => 'The database instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
],
'responses' => [
@@ -11307,121 +11381,97 @@
'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',
- ],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '7172BECE-588A-5961-8126-C216E16B****', 'title' => ''],
'Data' => [
- 'title' => 'SqlLogStatistic',
- 'description' => 'The data returned.'."\n",
+ 'description' => 'The data returned.',
'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',
- ],
+ 'storageFreeQuotaInMB' => ['description' => 'The SQL Explorer storage space that is offered free-of-charge. Unit: MB.', 'type' => 'number', 'format' => 'double', 'example' => '5120', 'title' => ''],
+ 'ip' => ['description' => 'The endpoint of the database instance.', 'type' => 'string', 'example' => 'rm-2ze8g2am97624****.mysql.****.com', 'title' => ''],
+ 'userId' => ['description' => 'The ID of the Alibaba Cloud account that is used to create the database instance.', 'type' => 'string', 'example' => '196278346919****', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1648742400000', 'title' => ''],
+ 'instanceId' => ['description' => 'The database instance ID.', 'type' => 'string', 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
+ 'storageUsed' => ['description' => 'The storage usage of SQL Explorer of the database instance. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '35903498', 'title' => ''],
+ 'engine' => ['description' => 'The type of the database engine.', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
+ 'instanceAlias' => ['description' => 'The name of the database instance.', 'type' => 'string', 'example' => 'TESTDB01', 'title' => ''],
+ 'port' => ['description' => 'The port number that is used to connect to the database instance.', 'type' => 'integer', 'format' => 'int32', 'example' => '3306', 'title' => ''],
+ 'vpcId' => ['description' => 'The virtual private cloud (VPC) ID.', 'type' => 'string', 'example' => 'vpc-2zentqj1sk4qmolci****', 'title' => ''],
+ 'commodityInstanceId' => ['description' => 'The ID of the DAS Enterprise Edition instance.', 'type' => 'string', 'example' => 'daspro-cn-v0h1l6i****', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1646100892000', 'title' => ''],
+ 'isSpare' => ['description' => 'Indicates whether DAS Enterprise Edition for the database instance has expired. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
+ 'region' => ['description' => 'The region in which the database instance resides.', 'type' => 'string', 'example' => 'cn-shanghai', 'title' => ''],
+ 'serviceUnitId' => ['description' => 'The service unit ID.', 'type' => 'string', 'example' => '4', 'title' => ''],
+ 'sqlRetention' => ['description' => 'The storage duration of SQL Explorer data. Unit: days.', 'type' => 'string', 'example' => '180', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '60000', 'title' => ''],
],
- ],
+ '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 }',
+ 'title' => '',
+ ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'title' => 'GetDasProServiceUsage',
+ 'description' => '- For information about the database instances that support this operation, see [Overview of DAS Enterprise Edition](~~190912~~).'."\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"
+ ."\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 applicable only to DAS Enterprise Edition V1 and V2.'."\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",
+ .'> 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.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetDasProServiceUsage'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetDasProServiceUsage',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
],
'GetDasSQLLogHotData' => [
- 'summary' => 'Queries the hot data of audit logs.',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'summary' => 'Retrieves hot data from SQL audit logs.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -11434,339 +11484,196 @@
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '178715',
- 'abilityTreeNodes' => [
- 'FEATUREhdmFT57I0',
- ],
+ 'abilityTreeNodes' => ['FEATUREhdmFT57I0'],
],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The ID of the database instance.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-2ze1jdv45i7l6****',
- ],
+ 'schema' => ['description' => 'The ID of the database instance.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
],
[
'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',
- ],
+ 'schema' => ['description' => 'The start of the time range to query. This value must be a Unix timestamp in milliseconds.'."\n"
+ ."\n"
+ .'> You can query only data that is generated after you enable DAS Enterprise Edition. The start time cannot be earlier than seven days before the current time.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1684734297000', 'title' => ''],
],
[
'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',
- ],
+ 'schema' => ['description' => 'The end of the time range to query. This value must be a Unix timestamp in milliseconds.'."\n"
+ ."\n"
+ .'> The end time must be later than the start time. The time range cannot exceed one day.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1684820697000', 'title' => ''],
],
[
'name' => 'QueryKeyword',
'in' => 'formData',
'schema' => [
- 'description' => 'The keyword that is used for the query.'."\n"
+ 'description' => 'The query keyword.'."\n"
."\n"
- .'> Fuzzy search is not supported. You can query data by using multiple keywords. Separate keywords with spaces.'."\n",
+ .'> Fuzzy search is supported. You can specify up to 10 keywords. Separate multiple keywords with a space. For example: a1 b2 c3.',
+ 'enumValueTitles' => [],
'type' => 'string',
'required' => false,
- 'enumValueTitles' => [],
- 'example' => 'test',
+ 'example' => 'a1 b2',
+ 'title' => '',
],
],
[
'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',
- ],
+ 'schema' => ['description' => 'The database account.'."\n"
+ ."\n"
+ .'> You can specify multiple database accounts. Separate multiple accounts with a space. For example: `user1 user2 user3`.', 'type' => 'string', 'required' => false, 'example' => 'testuser', 'title' => ''],
],
[
'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',
- ],
+ 'schema' => ['description' => 'The database name.'."\n"
+ ."\n"
+ .'> You can specify multiple database names. Separate multiple names with a space. For example: `DB1 DB2 DB3`.', 'type' => 'string', 'required' => false, 'example' => 'testDB', 'title' => ''],
],
[
'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',
- ],
+ 'schema' => ['description' => 'The client IP address.'."\n"
+ ."\n"
+ .'> You can specify multiple client IP addresses. Separate multiple IP addresses with a space. For example: `IP1 IP2 IP3`.', 'type' => 'string', 'required' => false, 'example' => '47.100.XX.XX', 'title' => ''],
],
[
'name' => 'LogicalOperator',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The logical relationship among multiple keywords.'."\n"
- ."\n"
- .'* **or**'."\n"
- .'* **and**'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'or',
- ],
+ 'schema' => ['description' => 'The logical operator to use with multiple keywords. Valid values:'."\n"
+ ."\n"
+ .'- **or**'."\n"
+ ."\n"
+ .'- **and**', 'type' => 'string', 'required' => false, 'example' => 'or', 'title' => ''],
],
[
'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',
- ],
+ 'schema' => ['description' => 'The maximum execution time in microseconds. Returns SQL statements that have an execution time less than this value.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '100', 'title' => ''],
],
[
'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',
- ],
+ 'schema' => ['description' => 'The maximum number of scanned rows. Returns SQL statements that scanned fewer than this number of rows.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10000', 'title' => ''],
],
[
'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',
- ],
+ 'schema' => ['description' => 'The minimum execution time in microseconds. Returns SQL statements with an execution time greater than or equal to this value.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10', 'title' => ''],
],
[
'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',
- ],
+ 'schema' => ['description' => 'The minimum number of scanned rows. Returns SQL statements that scanned at least this number of rows.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10', 'title' => ''],
],
[
'name' => 'SqlType',
'in' => 'formData',
'schema' => [
- 'description' => 'The type of the SQL statement. Valid values:'."\n"
- ."\n"
- .'* **SELECT**'."\n"
- .'* **UPDATE**'."\n"
- .'* **DELETE**',
+ 'description' => 'The SQL type.',
+ 'enumValueTitles' => ['select' => 'SELECT statement', 'update' => 'UPDATE statement', 'delete' => 'DELETE statement'],
'type' => 'string',
'required' => false,
- 'enumValueTitles' => [
- 'DELETE' => '',
- 'UPDATE' => '',
- 'SELECT' => '',
- ],
- 'example' => 'SELECT',
+ 'example' => 'select',
+ 'title' => '',
],
],
[
'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',
- ],
+ 'schema' => ['description' => 'The execution state. Set this parameter to **0** to query for successfully executed SQL statements. You can also specify an error code to query for the corresponding SQL statements.', 'type' => 'string', 'required' => false, 'example' => '0', 'title' => ''],
],
[
'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',
- ],
+ 'schema' => ['description' => 'The thread ID.'."\n"
+ ."\n"
+ .'> You can specify multiple thread IDs. Separate multiple IDs with a space. For example: `657 658 659`.', 'type' => 'string', 'required' => false, 'example' => '657', 'title' => ''],
],
[
'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',
- ],
+ 'schema' => ['description' => 'The page number to return. Pages start from 1. The default value is 1.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '2', 'title' => ''],
],
[
'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',
- ],
+ 'schema' => ['description' => 'The maximum number of entries per page. Valid values: 5 to 100.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10', 'title' => ''],
],
[
'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',
- ],
+ 'schema' => ['description' => 'The sort key. Valid values:'."\n"
+ ."\n"
+ .'- **ScanRows**: scanned rows.'."\n"
+ ."\n"
+ .'- **UpdateRows**: updated rows.'."\n"
+ ."\n"
+ .'- **Consume**: execution time.'."\n"
+ ."\n"
+ .'- **OriginTime**: The execution start time.'."\n"
+ ."\n"
+ .'- **ReturnRows**: returned rows.', 'type' => 'string', 'required' => false, 'example' => 'ScanRows', 'title' => ''],
],
[
'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',
- ],
+ 'schema' => ['description' => 'The sort order. Valid values:'."\n"
+ ."\n"
+ .'- **ASC**: ascending'."\n"
+ ."\n"
+ .'- **DESC**: descending', 'type' => 'string', 'required' => false, 'example' => 'ASC', 'title' => ''],
],
[
'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****',
- ],
+ 'schema' => ['description' => 'The node ID.'."\n"
+ ."\n"
+ .'> This parameter is required if the database instance is a PolarDB for MySQL cluster.', 'type' => 'string', 'required' => false, 'example' => 'pi-bp179lg03445l****', 'title' => ''],
],
[
'name' => 'Role',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The reserved parameter. This parameter is not supported.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'None',
- ],
+ 'schema' => ['description' => 'A reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
'name' => 'TraceId',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The reserved parameter. This parameter is not supported.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'None',
- ],
+ 'schema' => ['description' => 'A reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
'name' => 'MinRows',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The reserved parameter. This parameter is not supported.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => 'None',
- ],
+ 'schema' => ['description' => 'A reserved parameter.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
'name' => 'MaxRows',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The reserved parameter. This parameter is not supported.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => 'None',
- ],
+ 'schema' => ['description' => 'A reserved parameter.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
'name' => 'MinSpillCnt',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The reserved parameter. This parameter is not supported.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => 'None',
- ],
+ 'schema' => ['description' => 'A reserved parameter.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
'name' => 'MaxSpillCnt',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The reserved parameter. This parameter is not supported.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => 'None',
- ],
+ 'schema' => ['description' => 'A reserved parameter.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
'name' => 'TransactionId',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The transaction ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '0',
- ],
+ 'schema' => ['description' => 'The transaction ID.', 'type' => 'string', 'required' => false, 'example' => '0', 'title' => ''],
],
[
'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',
- ],
+ 'schema' => ['description' => 'The SQL execution error code. You can call the [GetAsyncErrorRequestStatByCode](~~409804~~) operation to obtain the error code.', 'type' => 'string', 'required' => false, 'example' => '1064', 'title' => ''],
],
],
'responses' => [
@@ -11774,350 +11681,159 @@
'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',
- ],
+ 'Code' => ['description' => 'The status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The response message.'."\n"
+ ."\n"
+ .'> If the request succeeds, **Successful** is returned. If the request fails, an error message is returned, which may include an error code.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The unique request ID generated by Alibaba Cloud.', 'type' => 'string', 'example' => '0A74B755-98B7-59DB-8724-1321B394****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request succeeded:'."\n"
+ ."\n"
+ .'- **true**: The request succeeded.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'Data' => [
'title' => 'ListResult<Map<String, Object>>',
- 'description' => 'The data returned.'."\n",
+ 'description' => 'The returned data.',
'type' => 'object',
'properties' => [
'List' => [
- 'description' => 'The details of the data returned.',
+ 'description' => 'A list of the returned data.',
'type' => 'array',
'items' => [
- 'description' => '',
+ 'description' => 'The SQL insight and audit data.',
'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',
- ],
+ 'Latancy' => ['description' => 'The latency, in microseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '10000', 'title' => ''],
+ 'Ext' => ['description' => 'A reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'ExecuteTime' => ['description' => 'The UTC time when the execution was recorded, formatted as `yyyy-MM-ddTHH:mm:ssZ`.', 'type' => 'string', 'example' => '2023-05-23 T12:11:20Z', 'title' => ''],
+ 'OriginTime' => ['description' => 'The precise UTC time when the execution was recorded, formatted as `yyyy-MM-ddTHH:mm:ss.SSSZ`.', 'type' => 'string', 'example' => '2023-05-23 T12:11:20.999Z', 'title' => ''],
+ 'HostAddress' => ['description' => 'The client IP address.', 'type' => 'string', 'example' => '47.100.XX.XX', 'title' => ''],
+ 'UpdateRows' => ['description' => 'The number of updated rows.', 'type' => 'integer', 'format' => 'int64', 'example' => '30', 'title' => ''],
+ 'LogicRead' => ['description' => 'The number of logical reads.', 'type' => 'integer', 'format' => 'int64', 'example' => '12', 'title' => ''],
+ 'SQLText' => ['description' => 'The SQL statement.', 'type' => 'string', 'example' => 'select 1', 'title' => ''],
+ 'LockTime' => ['description' => 'The lock wait time, in microseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'ScanRows' => ['description' => 'The number of scanned rows.', 'type' => 'integer', 'format' => 'int64', 'example' => '29', 'title' => ''],
+ 'ThreadID' => ['description' => 'The thread ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '657', 'title' => ''],
+ 'State' => ['description' => 'The execution status. A value of **0** indicates success. Any other value is an error code.', 'type' => 'string', 'example' => '0', 'title' => ''],
+ 'DBName' => ['description' => 'The database name.', 'type' => 'string', 'example' => 'testDB', 'title' => ''],
+ 'SqlType' => ['description' => 'The SQL type. Valid values:'."\n"
+ ."\n"
+ .'- **select**'."\n"
+ ."\n"
+ .'- **update**'."\n"
+ ."\n"
+ .'- **delete**', 'type' => 'string', 'example' => 'select', 'title' => ''],
+ 'AccountName' => ['description' => 'The database account.', 'type' => 'string', 'example' => 'testuser', 'title' => ''],
+ 'PhysicSyncRead' => ['description' => 'The number of physical synchronous reads.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'PhysicAsyncRead' => ['description' => 'The number of physical asynchronous reads.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'TransactionId' => ['description' => 'The transaction ID.', 'type' => 'string', 'example' => '0', 'title' => ''],
+ 'ReturnRows' => ['description' => 'The number of returned rows.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'NodeId' => ['description' => 'The node ID.', 'type' => 'string', 'example' => 'pi-bp120roy76f3qbd84', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'Total' => ['description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int64', 'example' => '20', 'title' => ''],
+ 'PageNo' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''],
+ 'PageSize' => ['description' => 'The page size.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'Extra' => ['description' => 'A reserved parameter.', 'type' => 'any', 'example' => 'None', 'title' => ''],
],
+ 'example' => '',
],
],
'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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":""}]',
+ 'responseDemo' => '[{"errorExample":"","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\\": \\"pi-bp120roy76f3qbd84\\"\\n }\\n ],\\n \\"Total\\": 20,\\n \\"PageNo\\": 2,\\n \\"PageSize\\": 10,\\n \\"Extra\\": \\"None\\"\\n }\\n}","type":"json"}]',
'title' => 'GetDasSQLLogHotData',
- 'description' => 'Before you call this operation, take note of the following items:'."\n"
+ 'description' => 'Before you call this API, ensure that you meet the following requirements:'."\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"
+ .'- Use the latest version of the Alibaba Cloud SDK or DAS SDK.'."\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',
+ .'- When using an SDK to call the DAS service, specify the region as `cn-shanghai`.'."\n"
+ ."\n"
+ .'- Supported engines: PolarDB MySQL, ApsaraDB RDS for MySQL, ApsaraDB RDS for PostgreSQL, and ApsaraDB RDS for SQLServer.'."\n"
+ ."\n"
+ .'- Enable log indexing for the instance.'."\n"
+ ."\n"
+ .'> The query start time must be within the last 7 days. The query duration cannot exceed 1 day. The API returns up to 10,000 records.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetDasSQLLogHotData'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetDasSQLLogHotData',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'GetDeadLockDetail' => [
+ 'summary' => 'Retrieves the detailed information for a single deadlock event.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'create',
+ 'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '199695',
- 'abilityTreeNodes' => [
- 'FEATUREhdmFT57I0',
- ],
+ 'abilityTreeNodes' => ['FEATUREhdm7GLEEO'],
],
'parameters' => [
[
'name' => 'InstanceId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => 'The ID of the database instance.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'pc-2ze8g2am97624****',
- ],
+ 'in' => 'query',
+ 'schema' => ['description' => 'The ID of the database instance.', 'type' => 'string', 'required' => true, 'example' => 'pc-bp1u5mas9exx7****', 'title' => ''],
],
[
'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",
- ],
+ 'schema' => ['description' => 'The node ID.'."\n"
+ ."\n"
+ .'> Required for PolarDB for MySQL cluster instances.', 'type' => 'string', 'required' => false, 'example' => 'pi-bp16v3824rt73****', 'title' => ''],
],
[
- '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' => 'TextId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The ID of the deadlock text. This value is returned from the GetDeadLockHistory operation.', 'type' => 'string', 'required' => true, 'example' => 'a0e390cd5aca9ae964448f040153****', 'title' => ''],
],
[
- 'name' => 'Role',
+ 'name' => 'Source',
'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',
- ],
+ 'schema' => ['description' => 'The source of the analysis task:'."\n"
+ ."\n"
+ .'- **MANUAL** or **not specified**: queries the recent deadlock analysis task.'."\n"
+ ."\n"
+ .'- **AUTO**: queries the full deadlock analysis task.', 'type' => 'string', 'required' => false, 'example' => 'AUTO', 'title' => ''],
],
],
'responses' => [
@@ -12125,210 +11841,181 @@
'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",
- ],
- ],
- ],
+ 'RequestId' => ['description' => 'The unique request ID.', 'type' => 'string', 'example' => '9CB97BC4-6479-55D0-B9D0-EA925AFE****', 'title' => ''],
+ 'Message' => ['description' => 'The response message.'."\n"
+ ."\n"
+ .'> - When the request is successful, **Successful** is returned.'."\n"
+ .'>'."\n"
+ .'> - When the request fails, error information (such as error codes) is returned.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'Synchro' => ['description' => 'The reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'Data' => ['description' => 'The returned data in JSON format:'."\n"
+ ."\n"
+ .'- accountId: the user ID.'."\n"
+ ."\n"
+ .'- textId: the deadlock text ID.'."\n"
+ ."\n"
+ .'- gmtModified: the time when the diagnosis was generated.'."\n"
+ ."\n"
+ .'- originText: the original deadlock text of LATEST DETECTED DEADLOCK or the original deadlock text in the error log.'."\n"
+ ."\n"
+ .'- deadlock: the deadlock details:'."\n"
+ ."\n"
+ .' - occurTime: the time when the deadlock occurred.'."\n"
+ ."\n"
+ .' - originTextId: the deadlock text ID.'."\n"
+ ."\n"
+ .' - rollbackTrxId: the ID of the rolled back transaction.'."\n"
+ ."\n"
+ .' - transactions:'."\n"
+ ."\n"
+ .' - deadlockIdInDB: the deadlock ID in the database.'."\n"
+ ."\n"
+ .' - ip: the access IP address.'."\n"
+ ."\n"
+ .' - queryId: the query ID.'."\n"
+ ."\n"
+ .' - queryType: the query type.'."\n"
+ ."\n"
+ .' - relatedTables: the related tables.'."\n"
+ ."\n"
+ .' - tableNamesString: the related tables.'."\n"
+ ."\n"
+ .' - sqlText: the SQL text.'."\n"
+ ."\n"
+ .' - threadId: the thread ID.'."\n"
+ ."\n"
+ .' - transactionId: the transaction ID.'."\n"
+ ."\n"
+ .' - trxIdInLock: the transaction ID in the deadlock.'."\n"
+ ."\n"
+ .' - userName: the database username.'."\n"
+ ."\n"
+ .' - waitLockIndexName: the name of the index for which the lock is waiting.'."\n"
+ ."\n"
+ .' - waitLockMode: the type of the lock that is waiting.'."\n"
+ ."\n"
+ .' - lockWait: the waiting lock.'."\n"
+ ."\n"
+ .' - holdLockIndexName: the name of the index for which the lock is held.'."\n"
+ ."\n"
+ .' - holdLockMode: the type of the lock that is held.'."\n"
+ ."\n"
+ .' - lockHold: the held lock.'."\n"
+ ."\n"
+ .' - trxNum: the number of transactions.'."\n"
+ ."\n"
+ .'- gmtCreate: the time when the diagnosis was created.'."\n"
+ ."\n"
+ .'- nodeId: the node ID.'."\n"
+ ."\n"
+ .'- uuid: the instance ID.', 'type' => 'string', 'example' => '{'."\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"
+ .'}', 'title' => ''],
+ 'Code' => ['description' => 'The returned status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'GetDeadLockDetail',
+ 'description' => 'This API fetches the full details of a specific deadlock, including the transactions involved, the SQL statements, and the locks held and waited for. The deadlock can be from either a recent analysis or a full historical analysis. For more information, see [Deadlock analysis](~~2858236~~).'."\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"
+ .'Before you call this operation, ensure the following:'."\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',
+ .'- **Supported engines**:'."\n"
+ ."\n"
+ .' - For recent deadlock analysis: ApsaraDB RDS for MySQL, self-managed MySQL, PolarDB for MySQL, PolarDB-X 2.0.'."\n"
+ ."\n"
+ .' - For full deadlock analysis: ApsaraDB RDS for MySQL or PolarDB for MySQL with [DAS Economy Edition](~~2666482~~) or [DAS Professional Edition](~~190912~~) enabled.'."\n"
+ ."\n"
+ .'- **SDK version**: Use the latest version of the Alibaba Cloud SDK.'."\n"
+ ."\n"
+ .'- **Region**: If you call the API via the SDK, set the region ID to `cn-shanghai`.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetDeadLockDetail'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'hdm:GetDeadLockDetail',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ '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"}]',
+ ],
+ 'GetDeadLockDetailList' => [
+ 'summary' => 'Queries the deadlock details of an ApsaraDB RDS for SQL Server instance.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '213185',
- 'abilityTreeNodes' => [
- 'FEATUREhdmFT57I0',
- ],
- ],
+ 'systemTags' => ['operationType' => 'list'],
'parameters' => [
[
'name' => 'InstanceId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => 'The ID of the database instance.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'r-bp1nti25tc7bq5****'."\n",
- ],
+ 'in' => 'query',
+ 'schema' => ['description' => 'The ID of the database instance.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze2016723b32****', 'title' => ''],
],
[
- 'name' => 'TaskId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => 'The task ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'a4f5c4494dbd6713185d87a97aa53e8'."\n",
- ],
+ '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.', 'type' => 'string', 'required' => true, 'example' => '1701755730292', 'title' => ''],
+ ],
+ [
+ '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.', 'type' => 'string', 'required' => true, 'example' => '1702360530292', 'title' => ''],
],
[
'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',
- ],
+ 'in' => 'query',
+ 'schema' => ['description' => 'The page number. The value must be an integer that is greater than 0. Default value: 1.', 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''],
],
[
'name' => 'PageSize',
- 'in' => 'formData',
- 'schema' => [
- 'description' => 'The number of entries per page. Default value: 10.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '10',
- ],
+ 'in' => 'query',
+ 'schema' => ['description' => 'The number of entries per page. Default value: 10.', 'type' => 'string', 'required' => false, 'example' => '5', 'title' => ''],
+ ],
+ [
+ 'name' => 'DbNameList',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The name of the database. When you specify multiple databases, you must separate the database names with commas (,).', 'type' => 'string', 'required' => false, 'example' => 'testdb1,testdb2'."\n", 'title' => ''],
],
],
'responses' => [
@@ -12336,453 +12023,144 @@
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'Data' => [
- 'title' => 'SqlLogTaskDetail',
- 'description' => 'The data returned.'."\n",
+ 'description' => 'The data returned.',
'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",
+ 'List' => [
+ 'description' => 'The details of the data returned.',
'type' => 'array',
'items' => [
- 'description' => '',
+ 'description' => 'The details of the data returned.',
'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',
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1702301170701', 'title' => ''],
+ 'BlockProcessList' => [
+ 'description' => 'The blocking details of the instance. The details are information about the session that caused the lock.',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ClientApp' => ['description' => 'The name of the client that initiates the transaction in the session.', 'type' => 'string', 'example' => 'Microsoft SQL Server Management Studio - Query', 'title' => ''],
+ 'HostName' => ['description' => 'The hostname.', 'type' => 'string', 'example' => 'sd7402****', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1702301152000', 'title' => ''],
+ 'LockMode' => ['description' => 'The mode of the lock. For more information, see [Lock modes](~~2362804~~).', 'type' => 'string', 'example' => 'U', 'title' => ''],
+ 'LogUsed' => ['description' => 'The size of the logs generated in the session. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '352', 'title' => ''],
+ 'LoginName' => ['description' => 'The logon name of the user.', 'type' => 'string', 'example' => 'sd7402****\\\\Administrator', 'title' => ''],
+ 'ObjectOwned' => ['description' => 'The locked object.', 'type' => 'string', 'example' => 'testdb1.dbo.test2', 'title' => ''],
+ 'ObjectRequested' => ['description' => 'The object that the transaction requested to lock.', 'type' => 'string', 'example' => 'testdb1.dbo.test1', 'title' => ''],
+ 'OwnMode' => ['description' => 'The lock mode held by the session. For more information, see [Lock modes](~~2362804~~).', 'type' => 'string', 'example' => 'X', 'title' => ''],
+ 'Spid' => ['description' => 'The ID of the session in which the transaction is started.', 'type' => 'integer', 'format' => 'int64', 'example' => '61', 'title' => ''],
+ 'SqlText' => ['description' => 'The SQL statement.', 'type' => 'string', 'example' => 'update test1 set col1 =9', 'title' => ''],
+ 'Status' => ['description' => 'The status of the transaction.', 'type' => 'string', 'example' => 'suspended', 'title' => ''],
+ 'Victim' => ['description' => 'Indicates whether the session is the victim of the deadlock. Valid values:'."\n"
+ ."\n"
+ .'- **0**: no.'."\n"
+ ."\n"
+ .'- **1**: yes.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'WaitMode' => ['description' => 'The lock mode requested by the session. For more information, see [Lock modes](~~2362804~~).', 'type' => 'string', 'example' => 'U', 'title' => ''],
+ 'WaitResource' => ['description' => 'The resources requested by the transaction.', 'type' => 'string', 'example' => 'RID: 5:1:312:0', 'title' => ''],
+ 'WaitResourceDescription' => ['description' => 'The details of the resources requested by the transaction.', 'type' => 'string', 'example' => 'RID:school:school.mdf:312:0', 'title' => ''],
+ 'DatabaseName' => ['description' => 'The name of the database.', 'type' => 'string', 'example' => 'testdb1', 'title' => ''],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
],
+ 'ClientApp' => ['description' => 'The name of the client.', 'type' => 'string', 'example' => 'Microsoft SQL Server Management Studio - Query', 'title' => ''],
+ 'HostName' => ['description' => 'The hostname.', 'type' => 'string', 'example' => 'sd7402****', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1702301141000', 'title' => ''],
+ 'LockMode' => ['description' => 'The mode of the lock. For more information, see [Lock modes](~~2362804~~).', 'type' => 'string', 'example' => 'U', 'title' => ''],
+ 'LogUsed' => ['description' => 'The size of the logs generated in the session. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '352', 'title' => ''],
+ 'LoginName' => ['description' => 'The logon name of the user.', 'type' => 'string', 'example' => 'sd7402****\\\\Administrator', 'title' => ''],
+ 'ObjectRequested' => ['description' => 'The object that the transaction requested to lock.', 'type' => 'string', 'example' => 'testdb1.dbo.test2', 'title' => ''],
+ 'ObjectOwned' => ['description' => 'The locked object.', 'type' => 'string', 'example' => 'testdb1.dbo.test1', 'title' => ''],
+ 'OwnMode' => ['description' => 'The lock mode held by the session. For more information, see [Lock modes](~~2362804~~).', 'type' => 'string', 'example' => 'X', 'title' => ''],
+ 'Spid' => ['description' => 'The ID of the session in which the transaction is started.', 'type' => 'integer', 'format' => 'int64', 'example' => '56', 'title' => ''],
+ 'SqlText' => ['description' => 'The SQL statement.', 'type' => 'string', 'example' => 'update test2 set col1 =88', 'title' => ''],
+ 'Status' => ['description' => 'The status of the transaction.', 'type' => 'string', 'example' => 'suspended', 'title' => ''],
+ 'Victim' => ['description' => 'Indicates whether the session is the victim of the deadlock. Valid values:'."\n"
+ ."\n"
+ .'- **0**: no.'."\n"
+ ."\n"
+ .'- **1**: yes.', 'type' => 'integer', 'format' => 'int64', 'example' => '1'."\n", 'title' => ''],
+ 'WaitMode' => ['description' => 'The lock mode requested by the session. For more information, see [Lock modes](~~2362804~~).', 'type' => 'string', 'example' => 'U', 'title' => ''],
+ 'WaitResource' => ['description' => 'The resources requested by the transaction.', 'type' => 'string', 'example' => 'RID: 5:1:376:0', 'title' => ''],
+ 'WaitResourceDescription' => ['description' => 'The details of the resources requested by the transaction.', 'type' => 'string', 'example' => 'RID:school:school.mdf:376:0', 'title' => ''],
+ 'DatabaseName' => ['description' => 'The name of the database.', 'type' => 'string', 'example' => 'testdb1', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
- '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/****"',
- ],
+ 'PageNo' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'Total' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '840F51F7-9C01-538D-94F6-AE712905****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request is successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
- 'title' => '根节点或根目录',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'GetDeadLockDetailList',
+ 'description' => '- This operation is applicable only to ApsaraDB RDS for SQL Server instances.'."\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',
+ .'- 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 the API operations of DAS, you must set the region ID to cn-shanghai.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetDeadLockDetailList'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'hdm:GetDeadLockDetailList',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ '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"}]',
+ ],
+ 'GetDeadLockHistory' => [
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -12791,113 +12169,70 @@
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'list',
+ 'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '199696',
- 'abilityTreeNodes' => [
- 'FEATUREhdmFT57I0',
- ],
+ 'abilityTreeNodes' => ['FEATUREhdm7GLEEO'],
],
'parameters' => [
[
'name' => 'InstanceId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => 'The ID of the database instance.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'r-bp1nti25tc7bq5****',
- ],
+ 'in' => 'query',
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'pc-bp1u5mas9exx7****'."\n", 'title' => ''],
],
[
'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',
- ],
+ 'in' => 'query',
+ 'schema' => ['description' => 'The node ID.'."\n"
+ ."\n"
+ .'> Specify the node ID for a PolarDB for MySQL instance.', 'type' => 'string', 'required' => false, 'example' => 'pi-bp16v3824rt73****', 'title' => ''],
],
[
- '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' => 'PageNo',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
],
[
- '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' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The number of entries per page. The maximum value is **100**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''],
],
[
- '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' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The start time of the query. This value is a UNIX timestamp. Unit: milliseconds.'."\n"
+ ."\n"
+ .'><notice>'."\n"
+ ."\n"
+ .'This parameter is a Long value. To prevent precision loss during serialization and deserialization, make sure that the value does not exceed 9007199254740991.'."\n"
+ ."\n"
+ .'></notice>', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1731983066000', 'title' => ''],
],
[
- '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' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The end time of the query. This value is a UNIX timestamp. Unit: milliseconds.'."\n"
+ ."\n"
+ .'><notice>'."\n"
+ ."\n"
+ .'This parameter is a Long value. To prevent precision loss during serialization and deserialization, make sure that the value does not exceed 9007199254740991.'."\n"
+ ."\n"
+ .'></notice>', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1732069466000', 'title' => ''],
],
[
- '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',
- ],
+ 'name' => 'Source',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The source of the task:'."\n"
+ ."\n"
+ .'- **MANUAL** or unspecified: queries tasks for recent deadlock analysis.'."\n"
+ ."\n"
+ .'- **AUTO**: queries tasks for full deadlock analysis.'."\n"
+ ."\n"
+ .'><notice>'."\n"
+ ."\n"
+ .'If you set this parameter to AUTO to query tasks for full deadlock analysis, the start time can be a maximum of seven days earlier than the end time.'."\n"
+ ."\n"
+ .'></notice>', 'type' => 'string', 'required' => false, 'example' => 'AUTO', 'title' => ''],
],
],
'responses' => [
@@ -12905,242 +12240,112 @@
'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',
- ],
- ],
- ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Message' => ['description' => 'The returned message.'."\n"
+ ."\n"
+ .'> If the request is successful, **Successful** is returned. If the request fails, an error message such as an error code is returned.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'Synchro' => ['description' => 'A reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'Data' => ['description' => 'The data returned as a JSON string.'."\n"
+ ."\n"
+ .'- total: The total number of deadlocks.'."\n"
+ ."\n"
+ .'- list: The list of deadlocks.'."\n"
+ ."\n"
+ .' - accountId: The user ID.'."\n"
+ ."\n"
+ .' - textId: The text ID of the deadlock.'."\n"
+ ."\n"
+ .' - gmtModified: The time when the diagnostics were generated.'."\n"
+ ."\n"
+ .' - lockTime: The time when the deadlock occurred.'."\n"
+ ."\n"
+ .' - gmtCreate: The time when the diagnostics were created.'."\n"
+ ."\n"
+ .' - nodeId: The node ID.'."\n"
+ ."\n"
+ .' - uuid: The instance ID.', '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"
+ .'}', 'title' => ''],
+ 'Code' => ['description' => 'The returned status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'GetDeadLockHistory',
+ 'summary' => 'Retrieves the historical analysis tasks for recent and full deadlock analysis.',
+ 'description' => 'Retrieves the historical analysis records for recent and full deadlock analysis. For more information, see [Deadlock analysis](~~2858236~~).'."\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"
+ .'The following requirements must be met before you call this operation:'."\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',
+ .'- To query historical analysis records of recent deadlocks, the destination database engine must be RDS MySQL, self-managed MySQL, PolarDB for MySQL, or PolarDB-X 2.0.'."\n"
+ ."\n"
+ .'- To query historical analysis records of full deadlocks, the destination database engine must be RDS MySQL or PolarDB for MySQL, and [DAS Alibaba Cloud Managed Services (formerly known as Economy Edition)](~~2666482~~) must be enabled.'."\n"
+ ."\n"
+ .'- Use the latest version of the Alibaba Cloud SDK or DAS SDK.'."\n"
+ ."\n"
+ .'- When you use an SDK to call the DAS service, set the region to cn-shanghai.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetDeadLockHistory'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'hdm:GetDeadLockHistory',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ '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"}]',
+ ],
+ 'GetDeadlockHistogram' => [
+ 'summary' => 'Retrieves a time-series histogram of deadlock occurrences based on the full deadlock analysis of error logs within a specified time range.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -13149,34 +12354,53 @@
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'get',
+ 'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '154787',
- 'abilityTreeNodes' => [
- 'FEATUREhdmMEY212',
- ],
+ 'abilityTreeCode' => '208479',
+ 'abilityTreeNodes' => ['FEATUREhdm7GLEEO'],
],
'parameters' => [
[
- 'name' => 'ConsoleContext',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The reserved parameter.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'None',
- ],
+ 'name' => 'InstanceId',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The ID of the database instance.', 'type' => 'string', 'required' => true, 'example' => 'pc-bp1u5mas9exx7****', 'title' => ''],
],
[
- 'name' => 'InstanceId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The database instance ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'r-2zemyfd1sh1u2i****',
- ],
+ 'name' => 'NodeId',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The node ID.'."\n"
+ ."\n"
+ .'> Required for PolarDB for MySQL cluster instances', 'type' => 'string', 'required' => false, 'example' => 'pi-bp16v3824rt73****', 'title' => ''],
+ ],
+ [
+ '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"
+ ."\n"
+ .'> The maximum query window is 7 days.'."\n"
+ ."\n"
+ .'><notice>'."\n"
+ ."\n"
+ .'This field is of the Long type. During serialization/deserialization, precision loss may occur. Make sure that the value does not exceed 9007199254740991.'."\n"
+ ."\n"
+ .'></notice>', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1731983066000', 'title' => ''],
+ ],
+ [
+ '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"
+ ."\n"
+ .'><notice>'."\n"
+ ."\n"
+ .'This field is of the Long type. During serialization/deserialization, precision loss may occur. Make sure that the value does not exceed 9007199254740991.'."\n"
+ ."\n"
+ .'></notice>', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1732069466000', 'title' => ''],
+ ],
+ [
+ 'name' => 'Status',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The status of the analysis task.', 'type' => 'string', 'required' => false, 'example' => 'SUCCESS', 'title' => ''],
],
],
'responses' => [
@@ -13184,315 +12408,141 @@
'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****',
- ],
+ 'Code' => ['description' => 'The returned status code.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The message returned.'."\n"
+ ."\n"
+ .'> When the request is successful, this parameter returns **Successful**. When the request fails, this parameter returns exception information such as error codes.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The unique request ID.', 'type' => 'string', 'example' => '0A74B755-98B7-59DB-8724-1321B394****', 'title' => ''],
'Success' => [
'description' => 'Indicates whether the request was successful. Valid values:'."\n"
."\n"
- .'* **true**'."\n"
- .'* **false**'."\n",
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.',
+ 'enumValueTitles' => ['执行成功' => 'true', '执行失败' => 'false'],
'type' => 'boolean',
'example' => 'true',
+ 'title' => '',
+ ],
+ 'Data' => [
+ 'title' => 'List<DeadlockTrendItem>',
+ 'description' => 'The response data.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'A list of response parameters.',
+ 'type' => 'object',
+ 'properties' => [
+ 'UserId' => ['description' => 'The user ID.', 'type' => 'string', 'title' => '', 'example' => '108************'],
+ 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'title' => '', 'example' => 'pc-bp1u5mas9exx7****'],
+ 'NodeId' => ['description' => 'The node ID, used for PolarDB MySQL clusters.', 'type' => 'string', 'title' => '', 'example' => 'pi-bp16v3824rt73****'],
+ 'TaskId' => ['description' => 'The ID of the full deadlock analysis task.', 'type' => 'string', 'title' => '', 'example' => 'B6D17591-B48B-4D31-9CD6-1321B394****'],
+ 'StartTime' => ['description' => 'The start time of the analysis task range.', 'type' => 'string', 'title' => '', 'example' => '1729994400000'],
+ 'EndTime' => ['description' => 'The end time of the analysis task range.', 'type' => 'string', 'title' => '', 'example' => '1729998000000'],
+ 'LockNumber' => ['description' => 'The number of deadlocks.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '2'],
+ 'Status' => ['description' => 'The task status:'."\n"
+ ."\n"
+ .'- **SUCCESS**: The analysis was successful.'."\n"
+ ."\n"
+ .'- **FAILED**: The analysis was abnormal or failed.', 'type' => 'string', 'title' => '', 'example' => 'SUCCESS'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'example' => '',
],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'title' => 'GetDeadlockHistogram',
+ 'description' => 'This API lets you query the number of deadlocks detected by Database Autonomy Service (DAS) over time. DAS periodically analyzes database error logs to parse and analyze deadlock occurrences. For more information, see [Full deadlock analysis](~~2858236~~).'."\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',
+ .'Before you call this operation, ensure that the following requirements are met:'."\n"
+ ."\n"
+ .'- **Supported engines**: The target database engine is RDS MySQL or PolarDB for MySQL.'."\n"
+ ."\n"
+ .'- **DAS Edition**: You have activated [DAS Economy Edition](~~2666482~~) or [DAS Enterprise Edition](~~190912~~).'."\n"
+ ."\n"
+ .'- **SDK version**: Use the latest version of the Alibaba Cloud SDK.'."\n"
+ ."\n"
+ .'- **Region**: If you call the API via the SDK, set the region ID to `cn-shanghai`.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetDeadlockHistogram'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'hdm:GetDeadlockHistogram',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ '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"}]',
+ ],
+ 'GetErrorRequestSample' => [
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
- 'deprecated' => false,
- 'systemTags' => [
- 'riskType' => 'none',
- 'chargeType' => 'free',
- ],
+ 'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => ' '."\n"
- .'dds-uf608087********',
- ],
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
[
'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',
- ],
+ 'schema' => ['description' => 'The node ID.'."\n"
+ ."\n"
+ .'> You must specify the node ID if your database instance is a PolarDB for MySQL cluster.', 'type' => 'string', 'required' => false, 'example' => 'pi-bp179lg03445l****', 'title' => ''],
],
[
- 'name' => 'Role',
+ 'name' => 'SqlId',
'in' => 'query',
- 'schema' => [
- 'description' => 'A reserved parameter. You do not need to specify the parameter.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'None',
- ],
+ '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.', 'type' => 'string', 'required' => false, 'example' => '2cd4432556c3dab9d825ba363637****', 'title' => ''],
],
[
- 'name' => 'FilterDoc',
+ 'name' => 'Start',
'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 }',
- ],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1642556990714', 'title' => ''],
+ ],
+ [
+ '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.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1642566830000', 'title' => ''],
+ ],
+ [
+ 'name' => 'DbName',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The name of the database.', 'type' => 'string', 'required' => false, 'example' => 'testdb01', 'title' => ''],
],
],
'responses' => [
@@ -13500,579 +12550,534 @@
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'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|legacy@3.11.2',
- ],
- '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",
- ],
- ],
+ 'description' => 'The returned data.',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'sqlId' => ['description' => 'The SQL query ID.', 'type' => 'string', 'example' => '2cd4432556c3dab9d825ba363637****', 'title' => ''],
+ 'database' => ['description' => 'The database name.', 'type' => 'string', 'example' => 'dbgateway', 'title' => ''],
+ 'originHost' => ['description' => 'The IP address of the client that executes the SQL statement.', 'type' => 'string', 'example' => '172.16.1****', 'title' => ''],
+ 'tables' => [
+ 'description' => 'The table information.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The table name.', 'type' => 'string', 'example' => 'meter_****', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
],
+ 'instanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
+ 'errorCode' => ['description' => 'The error code that is returned.', 'type' => 'string', 'example' => '1062', 'title' => ''],
+ 'user' => ['description' => 'The username of the account that is used to log on to the database.', 'type' => 'string', 'example' => 'dbgat****', 'title' => ''],
+ 'sql' => ['description' => 'The SQL statement.', 'type' => 'string', 'example' => 'insert into meter_****', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1644476100435', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
- ],
- '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',
- ],
+ '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 }]',
+ 'title' => '',
+ ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '7172BECE-588A-5961-8126-C216E16B****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ '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"
+ ."\n"
+ .'- If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetErrorRequestSample'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetErrorRequestSample',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- '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|legacy@3.11.2\\",\\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',
- ],
+ 'GetEventSubscription' => [
+ 'summary' => 'Queries the event subscription settings of a database instance.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
- 'systemTags' => [
- 'operationType' => 'update',
- ],
+ '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' => true,
- 'example' => 'r-8vbcyr4sw0c4yc****',
- ],
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => 'rm-2ze8g2am97624****'."\n"],
],
],
'responses' => [
200 => [
+ 'headers' => [],
'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.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'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' => 'The data returned.',
+ 'type' => 'object',
+ 'properties' => [
+ 'userId' => ['description' => 'The user ID.', 'type' => 'string', 'title' => '', 'example' => '1088760496****'],
+ 'instanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'title' => '', 'example' => 'rm-2ze8g2am97624****'],
+ 'eventContext' => ['description' => 'The supported event scenarios. Only **AllContext** may be returned, which indicates that all scenarios are supported.', 'type' => 'string', 'title' => '', 'example' => 'AllContext'],
+ 'lang' => ['description' => 'The language of event notifications. Only **zh-CN** may be returned, which indicates that event notifications are sent in Chinese.', 'type' => 'string', 'title' => '', 'example' => 'zh_CN'],
+ 'active' => ['description' => 'Indicates whether the event subscription feature is enabled. Valid values:'."\n"
+ ."\n"
+ .'- **0**: The event subscription feature is disabled.'."\n"
+ ."\n"
+ .'- **1**: The event subscription feature is enabled.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '1'],
+ 'minInterval' => ['description' => 'The minimum interval between event notifications. Unit: seconds.', 'type' => 'string', 'title' => '', 'example' => '60'],
+ 'contactName' => ['description' => 'The name of the subscriber who receives alert notifications. Multiple names are separated by commas (,).', 'type' => 'string', 'example' => 'Default contact', 'title' => ''],
+ 'contactGroupName' => ['description' => 'The name of the contact group that receives alert notifications. Multiple names are separated by commas (,).', 'type' => 'string', 'example' => 'Default contact group', 'title' => ''],
+ 'channelType' => ['description' => 'The notification method. Valid values:'."\n"
+ ."\n"
+ .'- **hdm\\_alarm\\_sms**: text message.'."\n"
+ ."\n"
+ .'- **dingtalk**: DingTalk chatbot.'."\n"
+ ."\n"
+ .'- **hdm\\_alarm\\_sms\\_and\\_email**: text message and email.'."\n"
+ ."\n"
+ .'- **hdm\\_alarm\\_sms,dingtalk**: text message and DingTalk chatbot.', 'type' => 'string', 'title' => '', 'example' => 'hdm_alarm_sms,dingtalk'],
+ 'level' => ['description' => 'The risk level of the events that trigger notifications. Valid values:'."\n"
+ ."\n"
+ .'- **Notice**'."\n"
+ ."\n"
+ .'- **Optimization**'."\n"
+ ."\n"
+ .'- **Warn**'."\n"
+ ."\n"
+ .'- **Critical**', 'type' => 'string', 'title' => '', 'example' => 'Optimization'],
+ 'contacts' => [
+ 'title' => '',
+ 'description' => 'The user ID.',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => ['description' => 'The name of the alert contact.', 'type' => 'string', 'example' => 'Mr. Zhang', 'title' => ''],
+ 'phone' => ['description' => 'The mobile number of the alert contact.', 'type' => 'string', 'title' => '', 'example' => '1390000****'],
+ 'email' => ['description' => 'The email address of the alert contact.', 'type' => 'string', 'title' => '', 'example' => 'a***@example.net'],
+ 'dingtalkHook' => ['description' => 'The webhook URL of the DingTalk chatbot.', 'type' => 'string', 'title' => '', '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' => '张先生', 'title' => ''],
+ 'example' => 'Mr. Zhang',
+ ],
+ 'isCmsReduplicated' => ['description' => 'Indicates whether the alert contact name is the same as the contact name on CloudMonitor.'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
+ 'userId' => ['description' => 'The user ID.', 'type' => 'string', 'title' => '', 'example' => '1088760496****'],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'example' => '',
+ ],
+ 'contactGroups' => [
+ 'description' => 'The alert contact groups.',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => ['description' => 'The name of the alert contact group.', 'type' => 'string', 'title' => '', 'example' => '张先生'],
+ 'description' => ['description' => 'The description of the alert contact group.', 'type' => 'string', 'example' => 'Default contact', 'title' => ''],
+ 'contacts' => ['description' => 'The members of the alert contact group.', 'type' => 'string', 'example' => '"[\\"Mr. Zhang\\",\\"Mr. Wang\\",\\"Mr. Li\\"]"', 'title' => ''],
+ 'userId' => ['description' => 'The user ID.', 'type' => 'string', 'title' => '', 'example' => '1088760496****'],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'eventSendGroup' => [
+ 'title' => '',
+ 'description' => 'The supported event scenarios in which event subscription can be sent.',
+ '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.', 'type' => 'string', 'example' => 'AllContext', 'title' => ''],
+ 'example' => '',
+ ],
+ 'id' => ['description' => 'The primary key ID of the database.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1'],
+ 'gmtCreate' => ['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.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1633071840000'],
+ 'gmtModified' => ['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.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1633071850000'],
+ ],
+ 'title' => '',
+ 'example' => '',
],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","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\\": \\"Default contact\\",\\n \\"contactGroupName\\": \\"Default contact group\\",\\n \\"channelType\\": \\"hdm_alarm_sms,dingtalk\\",\\n \\"level\\": \\"Optimization\\",\\n \\"contacts\\": [\\n {\\n \\"name\\": \\"Mr. Zhang\\",\\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\\": \\"Default contact\\",\\n \\"contacts\\": \\"\\\\\\"[\\\\\\\\\\\\\\"Mr. Zhang\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"Mr. Wang\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"Mr. Li\\\\\\\\\\\\\\"]\\\\\\"\\",\\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}","type":"json"}]',
+ '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"
+ ."\n"
+ .'- If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n"
+ ."\n"
+ .'- The database instance that you want to manage is connected to DAS.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetEventSubscription'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetEventSubscription',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
],
- '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",
+ 'translator' => 'manual',
],
- 'CreateKillInstanceSessionTask' => [
- 'summary' => 'Creates a task that terminates sessions.',
- 'methods' => [
- 'get',
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'GetFullRequestOriginStatByInstanceId' => [
+ 'methods' => ['post'],
+ 'schemes' => ['https', 'http'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
- 'systemTags' => [
- 'operationType' => 'create',
- ],
+ '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.', 'type' => 'string', 'required' => false, 'example' => '196278346919****', 'title' => ''],
+ ],
+ [
'name' => 'InstanceId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-2ze8g2am97624****',
- ],
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
[
'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****',
- ],
+ 'schema' => ['description' => 'The node ID.'."\n"
+ ."\n"
+ .'> This parameter must be specified if the database instance is a PolarDB for MySQL cluster.', 'type' => 'string', 'required' => false, 'example' => 'pi-bp12v7243x012****', 'title' => ''],
],
[
- 'name' => 'DbUser',
+ 'name' => 'Start',
'in' => 'query',
- 'schema' => [
- 'description' => 'The database account that has the permissions to terminate sessions.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'testUser',
- ],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1644716649000', 'title' => ''],
],
[
- 'name' => 'DbUserPassword',
+ 'name' => 'End',
'in' => 'query',
- 'schema' => [
- 'description' => 'The password of the database account.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'testPassword',
- ],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1644803409000', 'title' => ''],
],
[
- 'name' => 'IgnoredUsers',
+ 'name' => 'OrderBy',
'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\']',
- ],
+ '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"
+ ."\n"
+ .'- **avgRt**: the average execution duration.'."\n"
+ ."\n"
+ .'- **rtRate**: the execution duration percentage.'."\n"
+ ."\n"
+ .'- **rowsExamined**: the total number of scanned rows.'."\n"
+ ."\n"
+ .'- **avgRowsExamined**: the average number of scanned rows.'."\n"
+ ."\n"
+ .'- **avgRowsReturned**: the average number of returned rows.', 'type' => 'string', 'required' => false, 'example' => 'count', 'title' => ''],
],
[
- 'name' => 'KillAllSessions',
+ 'name' => 'Asc',
'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',
- ],
+ 'schema' => ['description' => 'Specifies whether to sort the results in ascending order. By default, the results are not sorted in ascending order.', 'type' => 'boolean', 'example' => 'False', 'required' => false, 'title' => ''],
],
[
- 'name' => 'SessionIds',
+ 'name' => 'PageNo',
'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]',
- ],
+ 'schema' => ['description' => 'The page number. Pages start from page 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '1', 'title' => ''],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The number of entries per page. Default value: 20.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '20', 'title' => ''],
+ ],
+ [
+ '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.', 'type' => 'string', 'required' => false, 'example' => 'SELECT', 'title' => ''],
+ ],
+ [
+ 'name' => 'Role',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The role of the PolarDB-X 2.0 node. Valid values:'."\n"
+ ."\n"
+ .'- **polarx\\_cn**: compute node.'."\n"
+ ."\n"
+ .'- **polarx\\_en**: data node.', 'type' => 'string', 'required' => false, 'example' => 'polarx_cn', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
+ 'description' => 'The response parameters.',
'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',
- ],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '7172BECE-588A-5961-8126-C216E16B****', 'title' => ''],
'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' => 'The data returned.',
+ '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****', 'title' => ''],
+ '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', 'title' => ''],
+ 'AvgLockWaitTime' => ['description' => 'The average lock wait duration. Unit: seconds.', 'type' => 'number', 'format' => 'double', 'example' => '0.00009589874265269765', 'title' => ''],
+ 'AvgLogicalRead' => ['description' => 'The average number of logical reads.', 'type' => 'number', 'format' => 'double', 'example' => '654.4470327860251', 'title' => ''],
+ 'AvgPhysicalAsyncRead' => ['description' => 'The average number of physical asynchronous reads.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'AvgPhysicalSyncRead' => ['description' => 'The average number of physical synchronous reads.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''],
+ 'AvgRows' => ['description' => 'The average number of rows.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ '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', 'title' => ''],
+ 'AvgReturnedRows' => ['description' => 'The average number of returned rows.', 'type' => 'number', 'format' => 'double', 'example' => '10000', 'title' => ''],
+ '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', 'title' => ''],
+ 'AvgRt' => ['description' => 'The average execution duration.', 'type' => 'number', 'format' => 'double', 'example' => '2.499', 'title' => ''],
+ 'AvgSqlCount' => ['description' => 'The average number of SQL statements.', 'type' => 'integer', 'format' => 'int64', 'example' => '10000', 'title' => ''],
+ 'Count' => ['description' => 'The total number of executions.', 'type' => 'integer', 'format' => 'int64', 'example' => '100000', 'title' => ''],
+ 'CountRate' => ['description' => 'The percentage of the total number of executions.', 'type' => 'number', 'format' => 'double', 'example' => '0.0586', 'title' => ''],
+ 'Database' => ['description' => 'The name of the database.', 'type' => 'string', 'example' => 'dbtest01', 'title' => ''],
+ 'ErrorCount' => ['description' => 'The number of failed executions.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ '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', 'title' => ''],
+ 'Ip' => ['description' => 'The network address of the database instance.', 'type' => 'string', 'example' => 'rm-uf6dyi58dm6****.mysql.rds.aliy****.com', 'title' => ''],
+ 'LockWaitTime' => ['description' => 'The lock wait duration. Unit: seconds.', 'type' => 'number', 'format' => 'double', 'example' => '1089.4177720290281', 'title' => ''],
+ 'LogicalRead' => ['description' => 'The number of logical reads.', 'type' => 'integer', 'format' => 'int64', 'example' => '7.434573266E9', 'title' => ''],
+ 'OriginHost' => ['description' => 'The IP address of the client that executes the SQL statement.', 'type' => 'string', 'example' => '172.26.6****', 'title' => ''],
+ 'PhysicalAsyncRead' => ['description' => 'The number of physical asynchronous reads.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'PhysicalSyncRead' => ['description' => 'The number of physical synchronous reads.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'Port' => ['description' => 'The port number that is used to connect to the database instance.', 'type' => 'integer', 'format' => 'int64', 'example' => '3306', 'title' => ''],
+ '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', 'title' => ''],
+ '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', 'title' => ''],
+ 'RtGreaterThanOneSecondCount' => ['description' => 'The number of SQL statements that take longer than 1 second to execute.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''],
+ 'RtRate' => ['description' => 'The execution duration percentage.', 'type' => 'number', 'format' => 'double', 'example' => '0.1384', 'title' => ''],
+ 'SqlCount' => ['description' => 'The number of SQL statements.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ 'SumUpdatedRows' => ['description' => 'The total number of updated rows.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ 'Version' => ['description' => 'The version number.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'VpcId' => ['description' => 'The virtual private cloud (VPC) ID.', 'type' => 'string', 'example' => 'vpc-2zentqj1sk4qmolci****', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'Total' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ '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"
+ ."\n"
+ .'- If you use an SDK to call API operations of Database Autonomy Service (DAS), you must set the region ID to cn-shanghai.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetFullRequestOriginStatByInstanceId'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetFullRequestOriginStatByInstanceId',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- '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",
+ 'translator' => 'manual',
],
- 'GetKillInstanceSessionTaskResult' => [
- 'summary' => 'Queries the results of a task that terminates sessions.',
- 'methods' => [
- 'get',
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ '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.', 'type' => 'string', 'required' => false, 'example' => '196278346919****', 'title' => ''],
+ ],
+ [
'name' => 'InstanceId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-2ze1jdv45i7l6****',
- ],
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
[
- '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' => 'SqlId',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The SQL statement ID.', 'type' => 'string', 'required' => true, 'example' => '651b56fe9418d48edb8fdf0980ec****', 'title' => ''],
],
[
- 'name' => 'TaskId',
+ '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.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1660097421000', 'title' => ''],
+ ],
+ [
+ '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.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1660104621000', 'title' => ''],
+ ],
+ [
+ 'name' => 'Role',
'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****',
- ],
+ 'schema' => ['description' => 'The role of the PolarDB-X 2.0 node. Valid values:'."\n"
+ ."\n"
+ .'- **polarx\\_cn**: compute node.'."\n"
+ ."\n"
+ .'- **polarx\\_en**: data node.', 'type' => 'string', 'required' => false, 'example' => 'polarx_cn', 'title' => ''],
],
],
'responses' => [
@@ -14080,701 +13085,416 @@
'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',
- ],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0A74B755-98B7-59DB-8724-1321B394****', 'title' => ''],
'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"
+ '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', 'title' => ''],
+ 'SqlId' => ['description' => 'The SQL statement ID.', 'type' => 'string', 'example' => '651b56fe9418d48edb8fdf0980ec****', 'title' => ''],
+ 'Sql' => ['description' => 'The sample SQL statement.', 'type' => 'string', 'example' => 'select * from testdb01 where ****', 'title' => ''],
+ 'Database' => ['description' => 'The name of the database.', 'type' => 'string', 'example' => 'dbtest', 'title' => ''],
+ 'Rt' => ['description' => 'The amount of time consumed to execute the SQL statement. Unit: seconds.', 'type' => 'number', 'format' => 'double', 'example' => '0.409789', 'title' => ''],
+ 'User' => ['description' => 'The name of the user who executes the SQL statement.', 'type' => 'string', 'example' => 'testuser', 'title' => ''],
+ 'LockWaitTime' => ['description' => 'The lock wait duration. Unit: seconds.', 'type' => 'number', 'format' => 'double', 'example' => '0.0137', 'title' => ''],
+ 'LogicalRead' => ['description' => 'The number of logical reads.', 'type' => 'number', 'format' => 'double', 'example' => '165848', 'title' => ''],
+ 'PhysicalSyncRead' => ['description' => 'The number of physical synchronous reads.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''],
+ 'PhysicalAsyncRead' => ['description' => 'The number of physical asynchronous reads.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''],
+ 'RowsExamined' => ['description' => 'The total number of scanned rows.'."\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',
- ],
- ],
- ],
+ .'> This parameter is returned only for ApsaraDB RDS for MySQL, ApsaraDB RDS for PostgreSQL, and PolarDB for MySQL databases.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '2048576'],
+ 'RowsReturned' => ['description' => 'The number of rows returned by the SQL statement.', 'type' => 'integer', 'format' => 'int64', 'example' => '14', 'title' => ''],
+ 'OriginHost' => ['description' => 'The source IP address.', 'type' => 'string', 'example' => '172.17.XX.XX', 'title' => ''],
+ 'ScanRows' => ['description' => 'The number of scanned rows.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '0'],
+ 'UpdateRows' => ['description' => 'The number of updated rows.', 'type' => 'integer', 'format' => 'int64', 'title' => '', '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', 'title' => ''],
+ 'Scnt' => ['description' => 'The number of requests sent from PolarDB-X 2.0 compute nodes to data nodes.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '0'],
+ 'Rows' => ['description' => 'The number of rows updated or returned on PolarDB-X 2.0 compute nodes.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '0'],
+ 'Frows' => ['description' => 'The number of rows fetched by PolarDB-X 2.0 compute nodes.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '0'],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ '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"
+ ."\n"
+ .'- If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetFullRequestSampleByInstanceId'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetFullRequestSampleByInstanceId',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- '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",
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
],
- 'GetMySQLAllSessionAsync' => [
- 'summary' => 'Asynchronously queries the sessions of an instance and collects statistics on the sessions based on dimensions.',
- 'methods' => [
- 'get',
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'GetFullRequestStatResultByInstanceId' => [
+ 'methods' => ['post'],
+ 'schemes' => ['https', 'http'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'get',
- ],
+ '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.', 'type' => 'string', 'required' => false, 'example' => '196278346919****', 'title' => ''],
+ ],
+ [
'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",
- ],
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
[
'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****',
- ],
+ 'schema' => ['description' => 'The node ID.'."\n"
+ ."\n"
+ .'> You must specify the node ID if your database instance is a PolarDB for MySQL cluster.', 'type' => 'string', 'required' => false, 'example' => 'pi-bp12v7243x012****', 'title' => ''],
],
[
- 'name' => 'ResultId',
+ 'name' => 'SqlId',
'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****',
- ],
+ '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.', 'type' => 'string', 'required' => false, 'example' => 'd71f82be1eef72bd105128204d2e****', 'title' => ''],
+ ],
+ [
+ '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.', 'type' => 'string', 'required' => false, 'example' => '172.26.XX.XXX', 'title' => ''],
+ ],
+ [
+ 'name' => 'Keyword',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The keywords that are used for query.', 'type' => 'string', 'required' => false, 'example' => 'dbtest01', 'title' => ''],
+ ],
+ [
+ '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.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1645581813000', 'title' => ''],
+ ],
+ [
+ '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.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1645668213000', 'title' => ''],
+ ],
+ [
+ '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"
+ ."\n"
+ .'- **avgRt**: the average execution duration.'."\n"
+ ."\n"
+ .'- **rtRate**: the execution duration percentage.'."\n"
+ ."\n"
+ .'- **rowsExamined**: the total number of scanned rows.'."\n"
+ ."\n"
+ .'- **avgRowsExamined**: the average number of scanned rows.'."\n"
+ ."\n"
+ .'- **avgRowsReturned**: the average number of returned rows.', 'type' => 'string', 'required' => false, 'example' => 'count', 'title' => ''],
+ ],
+ [
+ '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.', 'type' => 'boolean', 'example' => 'False', 'required' => false, 'title' => ''],
+ ],
+ [
+ 'name' => 'PageNo',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The page number. Pages start from page 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '1', 'title' => ''],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The number of entries per page. Default value: 20.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '20', 'title' => ''],
+ ],
+ [
+ '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.', 'type' => 'string', 'required' => false, 'example' => 'SELECT', 'title' => ''],
+ ],
+ [
+ 'name' => 'DbName',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The name of the database.', 'type' => 'string', 'required' => false, 'example' => 'dbtest01', 'title' => ''],
+ ],
+ [
+ '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"
+ ."\n"
+ .'- **polarx\\_dn**: data node.', 'type' => 'string', 'required' => false, 'example' => 'polarx_cn', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
+ 'description' => 'The response parameters.',
'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',
- ],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '7172BECE-588A-5961-8126-C216E16B****', 'title' => ''],
'Data' => [
- 'description' => 'The data returned.'."\n",
+ 'description' => 'The returned data.',
'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",
+ 'Result' => [
+ 'description' => 'The returned full request data.',
'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.',
+ 'List' => [
+ 'description' => 'The full request data.',
'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",
+ 'SqlId' => ['description' => 'The SQL ID.', 'type' => 'string', 'example' => 'd71f82be1eef72bd105128204d2e****', 'title' => ''],
+ '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', 'title' => ''],
+ 'AvgLockWaitTime' => ['description' => 'The average lock wait latency. Unit: seconds.', 'type' => 'number', 'format' => 'double', 'example' => '0.00009589874265269765', 'title' => ''],
+ 'AvgLogicalRead' => ['description' => 'The average number of logical reads.', 'type' => 'number', 'format' => 'double', 'example' => '654.4470327860251', 'title' => ''],
+ 'AvgPhysicalAsyncRead' => ['description' => 'The average number of physical asynchronous reads.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'AvgPhysicalSyncRead' => ['description' => 'The average number of physical synchronous reads.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ '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', 'title' => ''],
+ 'AvgReturnedRows' => ['description' => 'The average number of returned rows.', 'type' => 'number', 'format' => 'double', 'example' => '10000', 'title' => ''],
+ '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', 'title' => ''],
+ 'AvgRt' => ['description' => 'The average execution duration.', 'type' => 'number', 'format' => 'double', 'example' => '2.499', 'title' => ''],
+ 'AvgSqlCount' => ['description' => 'The average number of SQL statements.', 'type' => 'integer', 'format' => 'int64', 'example' => '10000', 'title' => ''],
+ 'Count' => ['description' => 'The total number of executions.', 'type' => 'integer', 'format' => 'int64', 'example' => '100000', 'title' => ''],
+ 'CountRate' => ['description' => 'The percentage of the total number of executions.', 'type' => 'number', 'format' => 'double', 'example' => '0.0586', 'title' => ''],
+ 'Database' => ['description' => 'The name of the database.', 'type' => 'string', 'example' => 'dbtest01', 'title' => ''],
+ 'ErrorCount' => ['description' => 'The number of failed executions.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ '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', 'title' => ''],
+ 'Ip' => ['description' => 'The IP address of the database instance.', 'type' => 'string', 'example' => 'rm-uf6dyi58dm6****.mysql.rds.aliy****.com', 'title' => ''],
+ 'LockWaitTime' => ['description' => 'The lock wait latency. Unit: seconds.', 'type' => 'number', 'format' => 'double', 'example' => '1089.4177720290281', 'title' => ''],
+ 'LogicalRead' => ['description' => 'The number of logical reads.', 'type' => 'integer', 'format' => 'int64', 'example' => '7.434573266E9', 'title' => ''],
+ 'PhysicalAsyncRead' => ['description' => 'The number of physical asynchronous reads.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'PhysicalSyncRead' => ['description' => 'The number of physical synchronous reads.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'Port' => ['description' => 'The port number that is used to connect to the database instance.', 'type' => 'integer', 'format' => 'int64', 'example' => '3306', 'title' => ''],
+ 'Psql' => ['description' => 'The SQL template.', 'type' => 'string', 'example' => 'select * from dbtest01 where ****', 'title' => ''],
+ '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', 'title' => ''],
+ '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', 'title' => ''],
+ 'RtGreaterThanOneSecondCount' => ['description' => 'The number of SQL statements that take longer than 1 second to execute.', 'type' => 'integer', 'format' => 'int64', 'example' => '20', 'title' => ''],
+ 'RtRate' => ['description' => 'The execution duration percentage.', 'type' => 'number', 'format' => 'double', 'example' => '2.499', 'title' => ''],
+ 'SqlCount' => ['description' => 'The number of SQL statements.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ 'SumUpdatedRows' => ['description' => 'The total number of updated rows.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
+ 'Tables' => [
+ 'description' => 'The names of tables in the database.',
'type' => 'array',
- 'items' => [
- 'description' => 'The database account.'."\n",
- 'type' => 'string',
- 'example' => '[\'testUser\']',
- ],
+ 'items' => ['description' => 'The names of tables in the database.', 'type' => 'string', 'example' => 'tabletest01,tabletest02', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
],
+ 'Version' => ['description' => 'The version number.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'VpcId' => ['description' => 'The virtual private cloud (VPC) ID.', 'type' => 'string', 'example' => 'vpc-2zentqj1sk4qmolci****', 'title' => ''],
],
- 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'Total' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'Fail' => ['description' => 'Indicates whether the asynchronous request failed. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
+ 'IsFinish' => ['description' => 'Indicates whether the asynchronous request was complete. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'ResultId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '9CB97BC4-6479-55D0-B9D0-EA925AFE****', 'title' => ''],
+ 'State' => ['description' => 'The state of the asynchronous request. Valid values:'."\n"
+ ."\n"
+ .'- **RUNNING**'."\n"
+ ."\n"
+ .'- **SUCCESS**'."\n"
+ ."\n"
+ .'- **FAIL**', 'type' => 'string', 'example' => 'SUCCESS', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1645668213000', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ '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"
- .'* 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',
+ .'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"
+ ."\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"
+ .'- 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~~).',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetFullRequestStatResultByInstanceId'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetFullRequestStatResultByInstanceId',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'translator' => 'manual',
+ ],
+ 'GetHDMAliyunResourceSyncResult' => [
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'none',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- ],
+ 'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
- 'name' => 'InstanceId',
+ 'name' => 'Uid',
'in' => 'query',
- 'schema' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-2ze1jdv45i7l6****',
- ],
+ 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''],
],
[
- 'name' => 'NodeId',
+ 'name' => 'accessKey',
'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',
- ],
+ 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''],
],
[
- 'name' => 'DbName',
+ 'name' => 'signature',
'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',
- ],
+ 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''],
],
[
- 'name' => 'TableName',
+ 'name' => 'timestamp',
'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',
- ],
+ 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''],
+ ],
+ [
+ 'name' => '__context',
+ 'in' => 'query',
+ 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''],
+ ],
+ [
+ 'name' => 'skipAuth',
+ 'in' => 'query',
+ 'schema' => ['type' => 'string', 'required' => false, 'default' => 'true', 'description' => '', 'title' => '', 'example' => ''],
+ ],
+ [
+ 'name' => 'UserId',
+ 'in' => 'query',
+ 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''],
+ ],
+ [
+ 'name' => 'TaskId',
+ 'in' => 'query',
+ 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''],
],
],
'responses' => [
@@ -14782,95 +13502,91 @@
'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',
- ],
+ 'Message' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
+ 'RequestId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
+ 'Synchro' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
'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',
+ 'SyncStatus' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
+ 'ErrorMsg' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
+ 'SubResults' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'ResourceSyncSubResult' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'SyncCount' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''],
+ 'ResourceType' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
+ 'Success' => ['type' => 'boolean', 'description' => '', 'title' => '', 'example' => ''],
+ 'ErrMsg' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'Results' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'Code' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
+ 'Success' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
],
'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetHDMAliyunResourceSyncResult'],
+ ],
],
- 'schemes' => [
- 'http',
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetHDMAliyunResourceSyncResult',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Message\\": \\"\\",\\n \\"RequestId\\": \\"\\",\\n \\"Synchro\\": \\"\\",\\n \\"Data\\": {\\n \\"SyncStatus\\": \\"\\",\\n \\"ErrorMsg\\": \\"\\",\\n \\"SubResults\\": {\\n \\"ResourceSyncSubResult\\": [\\n {\\n \\"SyncCount\\": 0,\\n \\"ResourceType\\": \\"\\",\\n \\"Success\\": false,\\n \\"ErrMsg\\": \\"\\"\\n }\\n ]\\n },\\n \\"Results\\": \\"\\"\\n },\\n \\"Code\\": \\"\\",\\n \\"Success\\": \\"\\"\\n}","type":"json"}]',
+ 'title' => 'GetHDMAliyunResourceSyncResult',
+ 'summary' => '',
+ ],
+ 'GetInstanceGroupInspectReportDetail' => [
+ 'path' => '',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -14879,397 +13595,102 @@
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'none',
+ 'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '204031',
- 'abilityTreeNodes' => [
- 'FEATUREhdm3TU4OK',
- ],
+ 'abilityTreeNodes' => ['FEATUREhdmJC65CS'],
+ 'tenantRelevance' => 'tenant',
],
'parameters' => [
[
- 'name' => 'InstanceId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-bp10xxxxxxxxx',
- ],
+ 'name' => 'ReportId',
+ 'in' => 'formData',
+ 'schema' => ['title' => '', 'description' => 'The ID of the operations report.', 'type' => 'string', 'required' => true, 'example' => '13f52040-5a6e-42c3-bb84-051f5d6d****'],
],
[
- 'name' => 'NodeId',
+ 'name' => 'AgentId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The node ID.'."\n"
- ."\n"
- .'> This parameter is reserved.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '202****',
- ],
+ 'schema' => ['description' => 'The ID of the agent that you purchased.', 'type' => 'string', 'required' => false, 'example' => 'ag-472T0DxtmjIxxxxx', 'title' => ''],
],
[
- 'name' => 'TaskId',
+ 'name' => 'ReportType',
'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****',
- ],
+ 'schema' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
],
],
'responses' => [
200 => [
'schema' => [
+ 'title' => '',
+ 'description' => 'Schema of Response',
'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',
- ],
+ 'Code' => ['description' => 'The status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The message returned for the request.'."\n"
+ ."\n"
+ .'> If the request is successful, **Successful** is returned. If the request fails, exception information such as an error code is returned.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request is successful. Valid values:'."\n"
+ .'* true: The request is successful.'."\n"
+ .'* false: The request fails.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'Data' => [
- 'description' => 'The data returned.'."\n",
+ 'title' => '',
+ 'description' => 'ReportDetail',
'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',
- ],
- ],
- ],
- ],
- ],
- ],
+ 'ReportId' => ['description' => 'The report ID.', 'type' => 'string', 'example' => '13f52040-5a6e-42c3-bb84-051f5d6d****'."\n", 'title' => ''],
+ 'ReportDetail' => ['description' => 'The content of the operations report, which includes the report date and diagnostic details of managed instances.', 'type' => 'string', 'example' => '"### 概要\\n\\n报告日期:2025-12-10 \\n对比周期:[昨日日期] → 2025-12-10 以下省略"', 'title' => ''],
],
- ],
- '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',
+ 'example' => '',
],
],
- 'description' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Query DAS agent operations report details',
+ 'summary' => 'Retrieves the details of a DAS Agent operations report.',
+ 'description' => 'Enabling the operations report feature for DAS Agent allows the system to perform periodic inspections on target instances and generate reports. Currently, only daily reports are supported. This operation is used to query report details.'."\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',
+ .'Before you begin:'."\n"
+ ."\n"
+ .'- Activate DAS Agent and ensure that the agent is within its validity period.'."\n"
+ .'- Enable the daily report feature on the DAS Agent configuration page.'."\n"
+ .'- When using the Alibaba Cloud SDK, ensure that the version of aliyun-sdk-core is later than 4.3.3. Use the latest version.'."\n"
+ .'- Use DAS SDK 1.0.3 or later.'."\n"
+ .'- When calling DAS by using the SDK, set the region to cn-shanghai.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetInstanceGroupInspectReportDetail',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ '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"}]',
+ ],
+ 'GetInstanceGroupInspectReportList' => [
+ 'path' => '',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -15278,273 +13699,191 @@
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'none',
+ 'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
+ 'abilityTreeNodes' => ['FEATUREhdmJC65CS'],
+ 'tenantRelevance' => 'tenant',
],
'parameters' => [
[
- 'name' => 'InstanceId',
+ 'name' => 'GroupId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-2ze8g2am97624****',
- ],
+ 'schema' => ['description' => 'Reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''],
],
[
- 'name' => 'DbNames',
+ 'name' => 'AgentId',
'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\']',
- ],
+ 'schema' => ['description' => 'Optional. By default, the default Agent is used. You can also specify the Agent that was generated after DAS Agent was activated or that was manually created.', 'type' => 'string', 'required' => false, 'example' => 'ag-472T0DxtmjIxxxxx', 'title' => ''],
],
[
- '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' => 'StartTime',
+ 'in' => 'formData',
+ 'schema' => ['title' => '', 'description' => 'The start timestamp.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1596177993000'],
],
[
- 'name' => 'RealTime',
+ 'name' => 'EndTime',
+ 'in' => 'formData',
+ 'schema' => ['title' => '', 'description' => 'The end timestamp.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1655427625000'],
+ ],
+ [
+ 'name' => 'ReportType',
'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',
- ],
+ 'schema' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
],
],
'responses' => [
200 => [
'schema' => [
+ 'title' => '',
+ 'description' => 'Schema of Response',
'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',
- ],
+ 'Code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The response message.'."\n"
+ .'>If the request is successful, **Successful** is returned. If the request fails, exception information such as an error code is returned.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request is successful. Valid values:'."\n"
+ .'* **true**: The request is successful.'."\n"
+ .'* **false**: The request fails.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'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',
- ],
- ],
- ],
+ 'title' => '',
+ 'description' => 'List<ReportStatus>',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The list of detailed information, including the report ID, task date, and task status.',
+ 'type' => 'object',
+ 'properties' => [
+ 'ReportId' => ['description' => 'The report ID.', 'type' => 'string', 'example' => '13f52040-5a6e-42c3-bb84-051f5d6d****', 'title' => ''],
+ 'Status' => ['title' => '', 'description' => 'The task status. Valid values: WAITING_UNREADY = 0, WAITING_READY = 1, PROCESSING = 2, FINISHED = 3, ERROR = 4, STOPPED = -1.', 'type' => 'string', 'example' => '3'],
+ 'ReportDate' => ['title' => '', 'description' => 'The date of the diagnosis.', 'type' => 'string', 'example' => '2025-12-10'],
+ 'CreateTime' => ['description' => 'The time when the task was created.', 'type' => 'string', 'example' => '2025-12-11 00:39:00', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
- ],
- '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',
+ 'example' => '',
],
],
- 'description' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Query DAS agent O&M report list',
+ 'summary' => 'Queries the list of O&M reports generated by DAS Agent.',
+ 'description' => 'Enabling the O&M report feature of DAS Agent allows the system to perform periodic inspections on target instances and generate reports. Currently, only daily reports are supported.'."\n"
+ ."\n"
+ .'Before you begin:'."\n"
+ .'- Activate DAS Agent and ensure that the Agent is still within its validity period.'."\n"
+ .'- Enable the daily report feature on the DAS Agent configuration page.'."\n"
+ .'- When using the Alibaba Cloud SDK, ensure that the version of aliyun-sdk-core is later than 4.3.3. Use the latest version.'."\n"
+ .'- Use DAS SDK 1.0.3 or later.'."\n"
+ .'- When calling DAS by using the SDK, set the region to ap-southeast-1.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetInstanceGroupInspectReportList',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- '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",
+ '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"}]',
],
- 'GetDeadLockDetailList' => [
- 'summary' => 'Queries the deadlock details of an ApsaraDB RDS for SQL Server instance.',
- 'methods' => [
- 'get',
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'GetInstanceInspections' => [
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
+ 'deprecated' => false,
'systemTags' => [
- 'operationType' => 'list',
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '24190',
+ 'abilityTreeNodes' => ['FEATUREhdmB8MM4L'],
],
'parameters' => [
[
- 'name' => 'InstanceId',
+ 'name' => 'Engine',
'in' => 'query',
- 'schema' => [
- 'description' => 'The ID of the database instance.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-2ze2016723b328gs2',
- ],
+ 'schema' => ['description' => 'The database engine. Valid values:'."\n"
+ ."\n"
+ .'- **MySQL**'."\n"
+ ."\n"
+ .'- **Redis**'."\n"
+ ."\n"
+ .'- **PolarDBMySQL**', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'MySQL', 'title' => ''],
],
[
'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',
- ],
+ '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.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '1655416825000', 'title' => ''],
],
[
'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',
- ],
+ '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.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '1655427625000', 'title' => ''],
],
[
'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',
- ],
+ 'schema' => ['description' => 'The page number. The value must be a positive integer. Default value: 1.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '1', 'title' => ''],
],
[
'name' => 'PageSize',
'in' => 'query',
- 'schema' => [
- 'description' => 'The number of entries per page. Default value: 10.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '5',
- ],
+ 'schema' => ['description' => 'The number of entries per page. Default value: 10.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '10', 'title' => ''],
],
[
- 'name' => 'DbNameList',
+ 'name' => 'InstanceArea',
'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',
- ],
+ 'schema' => ['description' => 'The type of the instance on which the database is deployed. Valid values:'."\n"
+ ."\n"
+ .'- **RDS**: an Alibaba Cloud database instance.'."\n"
+ ."\n"
+ .'- **ECS**: an ECS instance on which a self-managed database is deployed.'."\n"
+ ."\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.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'RDS', 'title' => ''],
+ ],
+ [
+ '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"
+ ."\n"
+ .'- Specify the IDs of multiple instances in the {"InstanceIds":\\["Instance ID1","Instance ID2"]} format. Separate the instance IDs with commas (,).'."\n"
+ ."\n"
+ .'- Specify the region in which the instance resides in the {"region":"Region of the instance"} format.', 'type' => 'string', 'required' => false, 'example' => '{"InstanceId":"rm-bp10usoc1erj7****"}', 'title' => ''],
+ ],
+ [
+ 'name' => 'ResourceGroupId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-aek2eil6npi****', 'title' => ''],
],
],
'responses' => [
@@ -15552,382 +13891,290 @@
'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',
- ],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
'Data' => [
- 'description' => 'The data returned.'."\n",
+ 'description' => 'The details.',
'type' => 'object',
'properties' => [
'List' => [
- 'description' => 'The details of the data returned.'."\n",
+ 'description' => 'The detailed information.',
'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' => '',
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1608888296001', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1608888296000', 'title' => ''],
+ 'Data' => ['description' => 'The data returned.', '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": "" },', 'title' => ''],
+ 'Instance' => [
+ 'description' => 'The information about the instance.',
+ 'type' => 'object',
+ 'properties' => [
+ 'VpcId' => ['description' => 'The ID of the virtual private cloud (VPC) in which the instance is deployed.', 'type' => 'string', 'example' => 'vpc-bp1knt7m55z9exoo7****', 'title' => ''],
+ 'Uuid' => ['description' => 'The unique identifier of the instance.', 'type' => 'string', 'example' => 'hdm_3063db6792965c080a4bcb6e6304****', 'title' => ''],
+ 'InstanceArea' => ['description' => 'The type of the instance on which the database is deployed. Valid values:'."\n"
+ ."\n"
+ .'- **RDS**: an Alibaba Cloud database instance.'."\n"
+ ."\n"
+ .'- **ECS**: an Elastic Compute Service (ECS) instance on which a self-managed database is deployed.'."\n"
+ ."\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.', 'type' => 'string', 'example' => 'RDS', 'title' => ''],
+ 'InstanceClass' => ['description' => 'The instance type.', 'type' => 'string', 'example' => 'rds.mysql.s2.xlarge', 'title' => ''],
+ 'Region' => ['description' => 'The region ID of the instance.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => '108398049688****', 'title' => ''],
+ 'NetworkType' => ['description' => 'The network type of the instance.', 'type' => 'string', 'example' => 'VPC', 'title' => ''],
+ 'Engine' => ['description' => 'The database engine. Valid values:'."\n"
+ ."\n"
+ .'- **MySQL**'."\n"
+ ."\n"
+ .'- **Redis**'."\n"
+ ."\n"
+ .'- **PolarDBMySQL**', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
+ 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'rm-bp10usoc1erj7****', 'title' => ''],
+ 'NodeId' => ['description' => 'The ID of the node on the instance.', 'type' => 'string', 'example' => 'rm-bp10usoc1erj7****', 'title' => ''],
+ 'EngineVersion' => ['description' => 'The version number of the database engine.', 'type' => 'string', 'example' => '8.0', 'title' => ''],
+ 'InstanceAlias' => ['description' => 'The instance name.', 'type' => 'string', 'example' => 'test-01', 'title' => ''],
+ 'Cpu' => ['description' => 'The CPU specification of the instance. For example, if a value of 8 is returned, the instance has eight CPU cores.', 'type' => 'string', 'example' => '8', 'title' => ''],
+ 'Memory' => ['description' => 'The memory capacity of the database that is deployed on the instance. Unit: MB.', 'type' => 'integer', 'format' => 'int32', 'example' => '32768', 'title' => ''],
+ 'Storage' => ['description' => 'The storage space of the instance. Unit: GB.', 'type' => 'integer', 'format' => 'int32', 'example' => '150', 'title' => ''],
+ 'Category' => ['description' => 'The connection mode of the instance. Valid values:'."\n"
+ ."\n"
+ .'- **standard**: standard mode.'."\n"
+ ."\n"
+ .'- **safe**: database proxy mode.', 'type' => 'string', 'example' => 'standard', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
+ 'ScoreMap' => ['description' => 'The scores that are deducted for the instance.', 'type' => 'object', 'title' => '', 'example' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1603247192000', 'title' => ''],
+ 'Score' => ['description' => 'The inspection score of the instance.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''],
+ 'AutoFunction' => [
+ 'description' => 'Indicates whether the autonomy service is enabled.',
+ 'type' => 'object',
+ 'properties' => [
+ 'EventSubscription' => ['description' => 'Indicates whether the event subscription feature is enabled. Valid values:'."\n"
+ ."\n"
+ .'- **0**: disabled.'."\n"
+ ."\n"
+ .'- **1**: enabled.'."\n"
+ ."\n"
+ .'- **2**: not supported.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'AutoIndex' => ['description' => 'Indicates whether the feature of automatically creating and deleting indexes is enabled. Valid values:'."\n"
+ ."\n"
+ .'- **0**: disabled.'."\n"
+ ."\n"
+ .'- **1**: enabled.'."\n"
+ ."\n"
+ .'- **2**: not supported.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''],
+ 'AutoLimitedSql' => ['description' => 'Indicates whether the automatic throttling feature is enabled. Valid values:'."\n"
+ ."\n"
+ .'- **0**: disabled.'."\n"
+ ."\n"
+ .'- **1**: enabled.'."\n"
+ ."\n"
+ .'- **2**: not supported.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''],
+ 'AutoResourceOptimize' => ['description' => 'Indicates whether the automatic fragment recycling feature is enabled. Valid values:'."\n"
+ ."\n"
+ .'- **0**: disabled.'."\n"
+ ."\n"
+ .'- **1**: enabled.'."\n"
+ ."\n"
+ .'- **2**: not supported.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'AutoScale' => ['description' => 'Indicates whether the auto scaling feature is enabled. Valid values:'."\n"
+ ."\n"
+ .'- **0**: disabled.'."\n"
+ ."\n"
+ .'- **1**: enabled.'."\n"
+ ."\n"
+ .'- **2**: not supported.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
+ 'EnableDasPro' => ['description' => 'Indicates whether DAS Enterprise Edition is enabled. Valid values:'."\n"
+ ."\n"
+ .'- **0**: disabled.'."\n"
+ ."\n"
+ .'- **1**: enabled.'."\n"
+ ."\n"
+ .'- **2**: not supported.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'State' => ['description' => 'The state of the inspection and scoring task. Valid values:'."\n"
+ ."\n"
+ .'- **0**: The task is waiting for execution.'."\n"
+ ."\n"
+ .'- **1**: The task is in progress.'."\n"
+ ."\n"
+ .'- **2**: The task is complete.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''],
+ 'TaskType' => ['description' => 'The mode in which the inspection and scoring task was initiated. Valid values:'."\n"
+ ."\n"
+ .'- **0**: automatic mode.'."\n"
+ ."\n"
+ .'- **1**: manual mode.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'PageNo' => ['description' => 'The page number. The value returned is a positive integer. Default value: 1.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'PageSize' => ['description' => 'The number of entries per page. Default value: 10.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'Total' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '4', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'GetInstanceInspections',
+ 'summary' => 'Queries the result of an inspection that is performed on a database instance by using the inspection and scoring feature.',
+ '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"
+ ."\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 DAS SDK must be V1.0.3 or later.'."\n"
+ ."\n"
+ .'- If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetInstanceInspections'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetInstanceInspections',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- '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",
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
],
- 'GetBlockingDetailList' => [
- 'summary' => 'Queries the blocking data of an ApsaraDB RDS for SQL Server instance.',
- 'methods' => [
- 'get',
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'GetInstanceMissingIndexList' => [
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
- 'systemTags' => [
- 'operationType' => 'list',
- ],
+ 'systemTags' => ['operationType' => 'list'],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The ID of the database instance.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-t4nfalp2ap421312z',
- ],
+ 'schema' => ['description' => 'The database instance ID.'."\n"
+ ."\n"
+ .'> Only ApsaraDB RDS for SQL Server instances are supported.', 'type' => 'string', 'required' => true, 'example' => 'rm-t4nfalp2ap421****', 'title' => ''],
],
[
- 'name' => 'StartTime',
+ 'name' => 'PageNo',
'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',
- ],
+ 'schema' => ['description' => 'The page number. Pages start from page 1. Default value: 1.', 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''],
],
[
- 'name' => 'EndTime',
+ 'name' => 'PageSize',
'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',
- ],
+ 'schema' => ['description' => 'The number of entries per page. Default value: 10.', 'type' => 'string', 'required' => false, 'example' => '10', 'title' => ''],
],
[
- 'name' => 'PageNo',
+ 'name' => 'ObjectName',
'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',
- ],
+ 'schema' => ['description' => 'The object name.', 'type' => 'string', 'required' => false, 'example' => 'bas_customer', 'title' => ''],
],
[
- 'name' => 'PageSize',
+ 'name' => 'ReservedSize',
'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',
- ],
+ 'schema' => ['description' => 'The query condition based on the table size.', 'type' => 'string', 'required' => false, 'example' => '>=|100', 'title' => ''],
],
[
- 'name' => 'QueryHash',
+ 'name' => 'RowCount',
'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',
- ],
+ 'schema' => ['description' => 'The query condition based on the number of table rows.', 'type' => 'string', 'required' => false, 'example' => '>=|100000', 'title' => ''],
],
[
- 'name' => 'DbNameList',
+ 'name' => 'ReservedPages',
'in' => 'query',
- 'schema' => [
- 'description' => 'The name of the database. Separate multiple database names with commas (,).'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'school1,school2',
- ],
+ 'schema' => ['description' => 'The query condition based on the total number of pages.', 'type' => 'string', 'required' => false, 'example' => '>=|100', 'title' => ''],
+ ],
+ [
+ 'name' => 'IndexCount',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The query condition based on the number of indexes.', 'type' => 'string', 'required' => false, 'example' => '>=|8', 'title' => ''],
+ ],
+ [
+ 'name' => 'UniqueCompiles',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The query condition based on the number of compilations.', 'type' => 'string', 'required' => false, 'example' => '>=|10000', 'title' => ''],
+ ],
+ [
+ 'name' => 'UserSeeks',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The query condition based on the number of seeks.', 'type' => 'string', 'required' => false, 'example' => '>=|1000', 'title' => ''],
+ ],
+ [
+ 'name' => 'UserScans',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The query condition based on the number of scans.', 'type' => 'string', 'required' => false, 'example' => '>=|10000', 'title' => ''],
+ ],
+ [
+ 'name' => 'AvgTotalUserCost',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The query condition based on the average cost savings.', 'type' => 'string', 'required' => false, 'example' => '<=|8', 'title' => ''],
+ ],
+ [
+ 'name' => 'AvgUserImpact',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The query condition based on the performance improvement.', 'type' => 'string', 'required' => false, 'example' => '>|10000', 'title' => ''],
+ ],
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The start time of the last seek.', 'type' => 'string', 'required' => false, 'example' => '1679414400000', 'title' => ''],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The end time of the last seek.', 'type' => 'string', 'required' => false, 'example' => '1681869544000', 'title' => ''],
],
],
'responses' => [
@@ -15935,501 +14182,278 @@
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The returned message.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'Data' => [
- 'description' => 'The returned data.'."\n",
+ 'description' => 'The detailed information.',
'type' => 'object',
'properties' => [
'List' => [
- 'description' => 'The details of the data returned.'."\n",
+ 'description' => 'The returned data.',
'type' => 'array',
'items' => [
- 'description' => 'The details of the data returned.'."\n",
+ 'description' => '',
'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',
- ],
+ 'AvgTotalUserCost' => ['description' => 'The average cost savings.', 'type' => 'number', 'format' => 'double', 'example' => '4.67', 'title' => ''],
+ 'AvgUserImpact' => ['description' => 'The performance improvement, in percentage.', 'type' => 'number', 'format' => 'double', 'example' => '98.3'."\n", 'title' => ''],
+ 'DatabaseName' => ['description' => 'The database name.', 'type' => 'string', 'example' => 'testdb', 'title' => ''],
+ 'EqualityColumns' => ['description' => 'The index columns included in the equal operation.', 'type' => 'string', 'example' => 'col1,col2,col3', 'title' => ''],
+ 'IncludedColumns' => ['description' => 'The columns on which indexes are missing.', 'type' => 'string', 'example' => 'col3,col4', 'title' => ''],
+ 'IndexCount' => ['description' => 'The number of indexes.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'LastUserSeek' => ['description' => 'The last seek time of a user.', 'type' => 'integer', 'format' => 'int64', 'example' => '1702023327000', 'title' => ''],
+ 'ObjectName' => ['description' => 'The object name.', 'type' => 'string', 'example' => 'stu', 'title' => ''],
+ 'ReservedPages' => ['description' => 'The total number of returned pages.', 'type' => 'integer', 'format' => 'int64', 'example' => '5025', 'title' => ''],
+ 'ReservedSize' => ['description' => 'The table size.', 'type' => 'number', 'format' => 'double', 'example' => '39.26', 'title' => ''],
+ 'RowCount' => ['description' => 'The number of table rows.', 'type' => 'integer', 'format' => 'int64', 'example' => '226945', 'title' => ''],
+ 'SchemaName' => ['description' => 'The schema name.', 'type' => 'string', 'example' => 'dbo', 'title' => ''],
+ 'SystemScans' => ['description' => 'The number of scans.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'SystemSeeks' => ['description' => 'The number of seeks.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'UniqueCompiles' => ['description' => 'The number of compilations.', 'type' => 'integer', 'format' => 'int64', 'example' => '2392', 'title' => ''],
+ 'UserScans' => ['description' => 'The number of scans performed by users.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'UserSeeks' => ['description' => 'The number of seeks performed by users.', 'type' => 'integer', 'format' => 'int64', 'example' => '1081', 'title' => ''],
+ 'InequalityColumns' => ['description' => 'The index columns included in the not equal operation.', 'type' => 'string', 'example' => '2392', 'title' => ''],
+ 'CreateIndex' => ['description' => 'The statement used to create the missing indexes.', '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);', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'PageNo' => ['description' => 'The page number of the page returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'Total' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '16', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0A74B755-98B7-59DB-8724-1321B394****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request is successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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',
- ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'GetInstanceMissingIndexList',
+ 'summary' => 'Returns details of all missing indexes for an instance.',
+ 'description' => '- This operation is applicable only to ApsaraDB RDS for SQL Server instances.'."\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 the API operations of DAS, you must set the region ID to cn-shanghai.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetInstanceMissingIndexList'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'hdm:GetInstanceMissingIndexList',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
- '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',
+ '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"}]',
],
- 'GetDeadLockHistory' => [
- 'summary' => 'Queries the historical tasks of recent deadlock analysis and full deadlock analysis.',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'GetInstanceSqlOptimizeStatistic' => [
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'none',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREhdm7GLEEO',
- ],
- ],
+ 'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'pc-bp1u5mas9exx7****'."\n",
- ],
+ 'schema' => ['description' => 'The database instance ID.'."\n"
+ ."\n"
+ .'> The database instance must be an ApsaraDB RDS for MySQL instance or a PolarDB for MySQL cluster.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => 'pc-wz90h9560rvdz****'],
],
[
- 'name' => 'NodeId',
+ 'name' => 'StartTime',
'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'pi-bp16v3824rt73****',
- ],
+ '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.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => '1661308902060'],
],
[
- 'name' => 'PageNo',
+ 'name' => 'EndTime',
'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '1',
- ],
+ '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.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => '1662518540764'],
],
[
- 'name' => 'PageSize',
+ 'name' => 'NodeId',
'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '10',
- ],
+ '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.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'pi-bp12v7243x012****'],
],
[
- 'name' => 'StartTime',
+ 'name' => 'Threshold',
'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => true,
- 'example' => '1731983066000',
- ],
+ 'schema' => ['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.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'None'],
],
[
- 'name' => 'EndTime',
+ 'name' => 'FilterEnable',
'in' => 'query',
'schema' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => true,
- 'example' => '1732069466000',
+ 'description' => 'Specifies whether to filter instances for which DAS Enterprise Edition is enabled. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\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.',
+ 'enumValueTitles' => [],
+ 'type' => 'string',
+ 'required' => false,
+ 'title' => '',
+ 'example' => 'false',
],
],
[
- 'name' => 'Source',
+ 'name' => 'UseMerging',
'in' => 'query',
'schema' => [
- 'description' => '',
+ 'description' => 'Specifies whether to merge automatic SQL optimization events. Valid values:'."\n"
+ ."\n"
+ .'- **true**: merges automatic SQL optimization events.'."\n"
+ ."\n"
+ .'- **false**: does not merge automatic SQL optimization events.'."\n"
+ ."\n"
+ .'> This parameter is a reserved parameter and does not take effect.',
+ 'enumValueTitles' => [],
'type' => 'string',
'required' => false,
- 'example' => 'AUTO',
+ 'title' => '',
+ 'example' => 'true',
],
],
],
'responses' => [
200 => [
'schema' => [
+ 'description' => 'The data returned.',
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'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',
+ 'description' => 'The details of the automatic SQL optimization events.',
+ 'type' => 'object',
+ 'properties' => [
+ 'count' => ['description' => 'The total number of automatic SQL optimization events.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '16'],
+ 'improvement' => ['description' => 'The multiple of the maximum improvement for returned automatic SQL optimization events.', 'type' => 'number', 'format' => 'double', 'title' => '', 'example' => '1003'],
+ ],
+ 'title' => '',
+ 'example' => '',
],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'title' => '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.',
+ '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"
+ ."\n"
+ .'- If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n"
+ ."\n"
+ .'- The database engine is ApsaraDB RDS for MySQL or PolarDB for MySQL.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetInstanceSqlOptimizeStatistic'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetInstanceSqlOptimizeStatistic',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- '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',
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
],
- 'GetDeadLockDetail' => [
- 'summary' => 'Queries the details of a deadlock.',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'GetKillInstanceSessionTaskResult' => [
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'none',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREhdm7GLEEO',
- ],
- ],
+ 'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'pc-bp1u5mas9exx7****',
- ],
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
],
[
'name' => 'NodeId',
'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'pi-bp16v3824rt73****',
- ],
+ 'schema' => ['description' => 'The node ID.'."\n"
+ ."\n"
+ .'> You must specify this parameter if your database instance is a PolarDB for MySQL cluster.', 'type' => 'string', 'required' => false, 'example' => 'pi-8vbkfj5a756um****', 'title' => ''],
],
[
- 'name' => 'TextId',
- 'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'a0e390cd5aca9ae964448f040153****',
- ],
- ],
- [
- 'name' => 'Source',
+ 'name' => 'TaskId',
'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'AUTO',
- ],
+ 'schema' => ['description' => 'The task ID. You can obtain the task ID from the response parameters of the [CreateKillInstanceSessionTask](~~609246~~) operation.', 'type' => 'string', 'required' => true, 'example' => 'f77d535b45405bd462b21caa3ee8****', 'title' => ''],
],
],
'responses' => [
@@ -16437,70 +14461,152 @@
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'Data' => [
- 'description' => '',
- 'type' => 'string',
+ 'description' => 'The data returned.',
+ 'type' => 'object',
+ 'properties' => [
+ 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 'f77d535b45405bd462b21caa3ee8****', 'title' => ''],
+ 'UserId' => ['description' => 'The ID of the Alibaba Cloud account.', 'type' => 'string', 'example' => '164882191396****', 'title' => ''],
+ 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
+ 'NodeId' => ['description' => 'The node ID.'."\n"
+ ."\n"
+ .'> This parameter is returned only if the instance is a PolarDB for MySQL cluster.', 'type' => 'string', 'example' => 'pi-bp1h12rv501cv****', 'title' => ''],
+ 'TaskState' => ['description' => 'The state of the task that terminates sessions.'."\n"
+ ."\n"
+ .'- **RUNNING**: The task is in progress.'."\n"
+ ."\n"
+ .'- **SUCCESS**: The task is successful.'."\n"
+ ."\n"
+ .'- **FAILURE**: The task failed.'."\n"
+ ."\n"
+ .'- **ERROR**: Other errors occur.', 'type' => 'string', 'example' => 'SUCCESS', 'title' => ''],
+ 'Sessions' => [
+ 'description' => 'The session IDs.'."\n"
+ ."\n"
+ .'> If all sessions are terminated, the IDs of all sessions on the instance or node are returned.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The session ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '['."\n"
+ .'152,'."\n"
+ .'112,'."\n"
+ .'106,'."\n"
+ .'146,'."\n"
+ .'8357323,'."\n"
+ .'5697053,'."\n"
+ .'8357518,'."\n"
+ .'8357519,'."\n"
+ .'14964383'."\n"
+ .']', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'KillSuccessCount' => ['description' => 'The number of sessions that were terminated.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
+ 'KillFailCount' => ['description' => 'The number of sessions that failed to be terminated.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '9', 'title' => ''],
+ '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', 'title' => ''],
+ 'User' => ['description' => 'The account of the database.', 'type' => 'string', 'example' => 'testUser', 'title' => ''],
+ 'Host' => ['description' => 'The IP address and port number of the host that initiated the session.', 'type' => 'string', 'example' => '100.104.XX.XX:23428', 'title' => ''],
+ 'Db' => ['description' => 'The name of the database.', 'type' => 'string', 'example' => 'dbTest', 'title' => ''],
+ 'Command' => ['description' => 'The type of the command executed in the session.', 'type' => 'string', 'example' => 'Sleep', 'title' => ''],
+ 'Time' => ['description' => 'The execution duration. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'State' => ['description' => 'The status of the session.', 'type' => 'string', 'example' => 'Sending data', 'title' => ''],
+ 'Info' => ['description' => 'The SQL statement executed in the session.', 'type' => 'string', 'example' => 'SELECT sleep(60)', 'title' => ''],
+ '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', 'title' => ''],
+ 'TaskId' => ['description' => 'The ID of the subtask that terminates the session.', 'type' => 'string', 'example' => 'task_d9e94107-6116-4ac3-b874-81466aff****', 'title' => ''],
+ 'Reason' => ['description' => 'The description of the session when the session was terminated.'."\n"
+ ."\n"
+ .'- **SESSION\\_KILLED**: The session is terminated.'."\n"
+ ."\n"
+ .'- **SESSION\\_EXPIRED**: The session has expired.'."\n"
+ ."\n"
+ .'- **SESSION\\_NO\\_PERMISSION**: The account used to terminate the session has insufficient permissions.'."\n"
+ ."\n"
+ .'- **SESSION\\_ACCOUNT\\_ERROR**: The account or password used to terminate the session is invalid.'."\n"
+ ."\n"
+ .'- **SESSION\\_IGNORED\\_USER**: The session of the account does not need to be terminated.'."\n"
+ ."\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"
+ ."\n"
+ .'- **SESSION\\_KILL\\_TASK\\_TIMEOUT**: Timeout occurs when the session is terminated.'."\n"
+ ."\n"
+ .'- **SESSION\\_OTHER\\_ERROR**: Other errors occurred.', 'type' => 'string', 'example' => 'SESSION_KILLED', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
'example' => '',
],
- 'Code' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'Success' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'true',
- ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'GetKillInstanceSessionTaskResult',
+ 'summary' => 'Queries the results of a task that terminates sessions.',
+ 'description' => '- This operation is applicable only to ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters.'."\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.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetKillInstanceSessionTaskResult'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetKillInstanceSessionTaskResult',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- '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',
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
],
- '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',
- ],
+ 'GetMongoDBCurrentOp' => [
+ 'summary' => 'Queries the current sessions of an ApsaraDB for MongoDB (MongoDB) instance.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -16508,67 +14614,29 @@
],
'operationType' => 'read',
'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'none',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '208479',
- 'abilityTreeNodes' => [
- 'FEATUREhdm7GLEEO',
- ],
- ],
+ 'systemTags' => ['riskType' => 'none', 'chargeType' => 'free'],
'parameters' => [
[
'name' => 'InstanceId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'pc-bp1u5mas9exx7****',
- ],
+ 'in' => 'query',
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'dds-uf6079bda570****', 'title' => ''],
],
[
'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',
- ],
+ '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.', 'type' => 'string', 'required' => false, 'example' => '23302531', 'title' => ''],
],
[
- 'name' => 'EndTime',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => true,
- 'example' => '1732069466000',
- ],
+ 'name' => 'Role',
+ 'in' => 'query',
+ 'schema' => ['description' => 'A reserved parameter. You do not need to specify the parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
- 'name' => 'Status',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'SUCCESS',
- ],
+ '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.', 'type' => 'string', 'required' => false, 'example' => '{ "active" : true }', 'title' => ''],
],
],
'responses' => [
@@ -16576,487 +14644,569 @@
'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',
- ],
+ 'Code' => ['description' => 'The response code.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'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' => 'The details of the sessions.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Timestamp' => ['description' => 'The time when the database sessions were returned. The value is in the UNIX timestamp format. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1692029584428', 'title' => ''],
+ 'SessionList' => [
+ 'description' => 'The sessions.',
+ 'type' => 'array',
+ 'items' => [
'description' => '',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '2',
+ 'type' => 'object',
+ 'properties' => [
+ 'OpId' => ['description' => 'The operation ID.', 'type' => 'string', 'example' => '14508', 'title' => ''],
+ 'Active' => ['description' => 'Indicates whether the operation is active. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'Command' => ['description' => 'The document that contains the complete command object associated with the operation.', 'type' => 'string', 'example' => '"command" : {'."\n"
+ .' "find" : "items",'."\n"
+ .' "filter" : {'."\n"
+ .' "sku" : 1403978'."\n"
+ .' },'."\n"
+ .' ...'."\n"
+ .' "$db" : "test"'."\n"
+ .'}', 'title' => ''],
+ 'Op' => ['description' => 'The type of the operation.', 'type' => 'string', 'example' => 'update', 'title' => ''],
+ 'SecsRunning' => ['description' => 'The duration of the operation. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '5', 'title' => ''],
+ 'PlanSummary' => ['description' => 'The description of the execution plan.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'Host' => ['description' => 'The host.', 'type' => 'string', 'example' => 'a79****.cloud.et15:3328', 'title' => ''],
+ 'Client' => ['description' => 'The IP address of the client.', 'type' => 'string', 'example' => '219.143.XX.XX:52324', 'title' => ''],
+ 'Desc' => ['description' => 'The description of the connection.', 'type' => 'string', 'example' => 'conn1013858', 'title' => ''],
+ 'Ns' => ['description' => 'The namespace.', 'type' => 'string', 'example' => 'admin.cmd', 'title' => ''],
+ 'ConnectionId' => ['description' => 'The connection ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '66378736', 'title' => ''],
+ 'Driver' => ['description' => 'The driver for MongoDB.', 'type' => 'string', 'example' => 'mongo-java-driver|legacy@3.11.2', 'title' => ''],
+ 'OsType' => ['description' => 'The type of the operating system.', 'type' => 'string', 'example' => 'Linux', 'title' => ''],
+ 'OsName' => ['description' => 'The name of the operating system.', 'type' => 'string', 'example' => 'Linux', 'title' => ''],
+ 'OsArch' => ['description' => 'The architecture of the operating system.', 'type' => 'string', 'example' => 'AMD64', 'title' => ''],
+ 'Platform' => ['description' => 'The platform.', 'type' => 'string', 'example' => 'Java/Alibaba/1.8.0_152-b5', 'title' => ''],
+ 'KillPending' => ['description' => 'Indicates whether the operation is marked as terminated.'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'Shard' => ['description' => 'The ID of the data shard.'."\n"
+ ."\n"
+ .'> This parameter is returned for sharded cluster instances.', 'type' => 'string', 'example' => 'd-bp1689995b78****', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
- 'Status' => [
- 'title' => '任务状态 (SUCCESS: 诊断完成, FAILED: 诊断异常/失败)',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'SUCCESS',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'SessionStat' => [
+ 'description' => 'The statistics on the sessions.',
+ 'type' => 'object',
+ 'properties' => [
+ 'ActiveCount' => ['description' => 'The number of active sessions.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'TotalCount' => ['description' => 'The total number of sessions.', 'type' => 'integer', 'format' => 'int64', 'example' => '11', 'title' => ''],
+ 'LongestSecsRunning' => ['description' => 'The longest duration of a session. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'ClientStats' => [
+ 'description' => 'The statistics on the IP addresses of the clients.',
+ 'type' => 'object',
+ 'additionalProperties' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ActiveCount' => ['description' => 'The number of clients whose IP addresses are active.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'TotalCount' => ['description' => 'The total number of IP addresses of clients.', 'type' => 'integer', 'format' => 'int64', 'example' => '11', 'title' => ''],
+ ],
+ 'description' => 'The details of the IP addresses of the clients.',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'DbStats' => [
+ 'description' => 'The statistics on the namespaces.',
+ 'type' => 'object',
+ 'additionalProperties' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ActiveCount' => ['description' => 'The number of active namespaces.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'TotalCount' => ['description' => 'The total number of namespaces.', 'type' => 'integer', 'format' => 'int64', 'example' => '11', 'title' => ''],
+ ],
+ 'description' => 'The details of the namespaces.',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'FC6C0929-29E1-59FD-8DFE-70D9D41E****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
+ ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'GetMongoDBCurrentOp',
+ 'description' => '- This operation is applicable only to MongoDB instances.'."\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 API operations of DAS, you must set the region to cn-shanghai.',
+ 'responseParamsDescription' => 'For more information, see the data returned by running the currentOp command of MongoDB.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetMongoDBCurrentOp'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => '',
+ 'ramAction' => [
+ 'action' => 'hdm:GetMongoDBCurrentOp',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
],
- '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',
+ '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|legacy@3.11.2\\",\\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"}]',
],
- 'GetInstanceMissingIndexList' => [
- 'summary' => 'Queries the details of all missing indexes of an instance.',
- 'methods' => [
- 'get',
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ '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',
- 'systemTags' => [
- 'operationType' => 'list',
- ],
+ 'deprecated' => false,
+ 'systemTags' => ['operationType' => 'get'],
'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-************',
- ],
+ 'schema' => ['description' => 'The instance ID.'."\n"
+ ."\n"
+ .'> Only ApsaraDB RDS for MySQL, PolarDB for MySQL, and PolarDB-X 2.0 instances are supported.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****'."\n", 'title' => ''],
],
[
- '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',
+ 'name' => 'NodeId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The query condition based on the table size.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '>=|100',
- ],
+ '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.', 'type' => 'string', 'required' => false, 'example' => 'pi-wz954ryd8f893****', 'title' => ''],
],
[
- 'name' => 'RowCount',
+ 'name' => 'ResultId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The query condition based on the number of table rows.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '>=|100000',
- ],
+ '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.', 'type' => 'string', 'required' => false, 'example' => 'async__507044db6c4eadfa2dab9b084e80****', 'title' => ''],
],
- [
- 'name' => 'ReservedPages',
- 'in' => 'query',
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => 'The query condition based on the total number of pages.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '>=|100',
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'Data' => [
+ 'description' => 'The data returned.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Fail' => ['description' => 'Indicates whether the asynchronous request failed. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
+ 'SessionData' => [
+ 'description' => 'The session data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'TotalSessionCount' => ['description' => 'The total number of sessions.', 'type' => 'integer', 'format' => 'int64', 'example' => '988', 'title' => ''],
+ 'ActiveSessionCount' => ['description' => 'The total number of active sessions.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'MaxActiveTime' => ['description' => 'The maximum execution duration of an active session. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '6', 'title' => ''],
+ 'SessionList' => [
+ 'description' => 'The sessions.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'SessionId' => ['description' => 'The session ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '14521783', 'title' => ''],
+ 'User' => ['description' => 'The username of the database account.', 'type' => 'string', 'example' => 'testUser', 'title' => ''],
+ 'Client' => ['description' => 'The IP address of the client.', 'type' => 'string', 'example' => '47.100.XX.XX', 'title' => ''],
+ 'DbName' => ['description' => 'The database name.', 'type' => 'string', 'example' => 'dbTest', 'title' => ''],
+ 'Command' => ['description' => 'The type of the command executed in the session.', 'type' => 'string', 'example' => 'Query', 'title' => ''],
+ 'Time' => ['description' => 'The execution duration of the session. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '6', 'title' => ''],
+ 'State' => ['description' => 'The status of the session.', 'type' => 'string', 'example' => 'starting', 'title' => ''],
+ 'SqlText' => ['description' => 'The SQL statement executed in the session.', 'type' => 'string', 'example' => 'INSERT INTO ...', 'title' => ''],
+ 'UserClientAlias' => ['description' => 'The alias of the IP address of the client.', 'type' => 'string', 'example' => 'master-shanghai', 'title' => ''],
+ 'TrxId' => ['description' => 'The ID of the transaction to which the session belongs.', 'type' => 'string', 'example' => '754300775132', 'title' => ''],
+ 'TrxDuration' => ['description' => 'The duration of the transaction. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '6', 'title' => ''],
+ 'SqlTemplateId' => ['description' => 'The SQL template ID.'."\n"
+ ."\n"
+ .'> This parameter is returned only when you use a PolarDB-X 2.0 instance.', 'type' => 'string', 'example' => 'a7cac1a9', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'UserStats' => [
+ 'description' => 'The sessions that are counted by database account.',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => ['description' => 'The database account.', 'type' => 'string', 'example' => 'testUser', 'title' => ''],
+ 'TotalCount' => ['description' => 'The total number of sessions within the account.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'ThreadIdList' => [
+ 'description' => 'The IDs of the sessions within the account.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The session IDs.', 'type' => 'integer', 'format' => 'int64', 'example' => '[14525727,14526269]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'UserList' => [
+ 'description' => 'The database accounts to which the sessions belong.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The database account.', 'type' => 'string', 'example' => '[\'testUser\']', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ '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.', 'type' => 'string', 'example' => '47.100.XX.XX', 'title' => ''],
+ 'TotalCount' => ['description' => 'The total number of sessions that belong to the client IP address.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'ThreadIdList' => [
+ 'description' => 'The IDs of the sessions that belong to the client IP address.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The session IDs.', 'type' => 'integer', 'format' => 'int64', 'example' => '[14526018,14525956]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'UserList' => [
+ 'description' => 'The database accounts to which the sessions belong.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The database account.', 'type' => 'string', 'example' => '[\'testUser\']', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'DbStats' => [
+ 'description' => 'The sessions that are counted by database.',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => ['description' => 'The database name.', 'type' => 'string', 'example' => 'dbTest', 'title' => ''],
+ 'TotalCount' => ['description' => 'The total number of sessions of the database.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'ThreadIdList' => [
+ 'description' => 'The IDs of the sessions of the database.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The session IDs.', 'type' => 'integer', 'format' => 'int64', 'example' => '[14525727,14526269]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'UserList' => [
+ 'description' => 'The database accounts to which the sessions belong.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The database account.', 'type' => 'string', 'example' => '[\'testUser\']', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1659581514000020', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'ResultId' => ['description' => 'The ID of the asynchronous request.', 'type' => 'string', 'example' => 'async__507044db6c4eadfa2dab9b084e80****', 'title' => ''],
+ 'IsFinish' => ['description' => 'Indicates whether the asynchronous request was complete. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'State' => ['description' => 'The state of the asynchronous request. Valid values:'."\n"
+ ."\n"
+ .'- **RUNNING**'."\n"
+ ."\n"
+ .'- **SUCCESS**'."\n"
+ ."\n"
+ .'- **FAIL**', 'type' => 'string', 'example' => 'SUCCESS', 'title' => ''],
+ 'Complete' => ['description' => 'Indicates whether the asynchronous request was complete. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1660100753556', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ ],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
- [
- 'name' => 'IndexCount',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The query condition based on the number of indexes.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '>=|8',
- ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
- [
- 'name' => 'UniqueCompiles',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The query condition based on the number of compilations.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '>=|10000',
- ],
+ 403 => [
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
- [
- 'name' => 'UserSeeks',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The query condition based on the number of seeks.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '>=|1000',
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ '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"
+ ."\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.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetMySQLAllSessionAsync'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetMySQLAllSessionAsync',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
+ ],
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ ],
+ 'GetPartitionsHeatmap' => [
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
+ 'security' => [
[
- 'name' => 'UserScans',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The query condition based on the number of scans.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '>=|10000',
- ],
+ 'AK' => [],
],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => ['operationType' => 'get'],
+ 'parameters' => [
[
- 'name' => 'AvgTotalUserCost',
+ 'name' => 'ConsoleContext',
'in' => 'query',
- 'schema' => [
- 'description' => 'The query condition based on the average cost savings.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '<=|8',
- ],
+ 'schema' => ['description' => 'The reserved parameter.'."\n", 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
- 'name' => 'AvgUserImpact',
+ 'name' => 'InstanceId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The query condition based on the performance improvement.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '>|10000',
- ],
+ 'schema' => ['description' => 'The instance ID.'."\n", 'type' => 'string', 'required' => false, 'example' => 'pxc-hzrciqy62c****', 'title' => ''],
],
[
- 'name' => 'StartTime',
+ 'name' => 'TimeRange',
'in' => 'query',
- 'schema' => [
- 'description' => 'The start time of the last seek.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '1679414400000',
- ],
+ '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', 'title' => ''],
],
[
- 'name' => 'EndTime',
+ 'name' => 'Type',
'in' => 'query',
- 'schema' => [
- 'description' => 'The end time of the last seek.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '1681869544000',
- ],
+ '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', 'title' => ''],
],
],
'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",
- '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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.'."\n", 'type' => 'string', 'example' => '200', 'title' => ''],
+ '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', 'title' => ''],
+ '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"
+ .'}', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'D00DB161-FEF6-5428-B37A-8D29A4C2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* **true**'."\n"
+ .'* **false**'."\n", 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'title' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ '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',
+ 'summary' => 'Queries access frequency statistics and hot data on partitions of a PolarDB-X 2.0 instance.',
+ '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",
+ 'changeSet' => [],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetPartitionsHeatmap',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- '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',
- ],
+ 'GetPfsMetricTrends' => [
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -17068,84 +15218,45 @@
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '236527',
- 'abilityTreeNodes' => [
- 'FEATUREhdmR88NLD',
- ],
+ 'abilityTreeNodes' => ['FEATUREhdmF0MV2I'],
],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'formData',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-2ze8g2am97624****'."\n",
- ],
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'rm-m5ea73876ukci****', 'title' => ''],
],
[
'name' => 'NodeId',
'in' => 'formData',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'r-****-db-0',
- ],
+ '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.', 'type' => 'string', 'required' => false, 'example' => 'r-x****-db-0', 'title' => ''],
],
[
- 'name' => 'StartTime',
+ 'name' => 'Metric',
'in' => 'formData',
- 'schema' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => true,
- 'example' => '1596177993000',
- ],
+ 'schema' => ['description' => 'The metric whose trend you want to query. Valid values:'."\n"
+ ."\n"
+ .'- **count**: the number of executions.'."\n"
+ ."\n"
+ .'- **avgRt**: the average execution duration.'."\n"
+ ."\n"
+ .'- **rtRate**: the execution duration percentage.'."\n"
+ ."\n"
+ .'- **rowsExamined**: the total number of scanned rows.', 'type' => 'string', 'required' => false, 'example' => 'Count', 'title' => ''],
],
[
- 'name' => 'EndTime',
+ 'name' => 'StartTime',
'in' => 'formData',
- 'schema' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => true,
- 'example' => '1662518540764',
- ],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1677461663092', 'title' => ''],
],
[
- 'name' => 'Filters',
+ 'name' => 'EndTime',
'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,
- ],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1678432430967', 'title' => ''],
],
],
'responses' => [
@@ -17153,960 +15264,88 @@
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
'Data' => [
- 'title' => 'AsyncResult<Histogram>',
- 'description' => 'AsyncResult<Histogram>。',
+ 'description' => 'The data returned.',
'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' => '',
+ 'additionalProperties' => [
+ 'type' => 'array',
+ 'items' => [
'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',
- ],
+ 'Timestamp' => ['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.', 'type' => 'string', 'example' => '1681975870000', 'title' => ''],
+ 'Value' => ['description' => 'The value of the metric.', 'type' => 'any', 'example' => '478.28', 'title' => ''],
],
- ],
- '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',
+ 'title' => '',
+ 'example' => '',
],
+ 'description' => 'The details of the data returned.',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'F4C27966-284E-51C4-9407-DB50CAB8****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- 'eventInfo' => [
- 'enable' => false,
- 'eventNames' => [],
+ 'title' => 'GetPfsMetricTrends',
+ 'summary' => 'Queries the trend of a metric for the new version of the performance insight feature of a database instance.',
+ '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"
+ .'- An ApsaraDB RDS for MySQL instance or a PolarDB for MySQL cluster is connected to DAS.'."\n"
+ ."\n"
+ .'- The new version of the performance insight feature is enabled for the database instance. For more information, see [Performance insight (new version)](~~469117~~).',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetPfsMetricTrends'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetPfsMetricTrends',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- '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',
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
],
- 'DescribeSlowLogStatistic' => [
- 'summary' => 'Queries statistical information about slow query logs.',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'GetPfsSqlSample' => [
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -18118,1076 +15357,168 @@
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '236526',
- 'abilityTreeNodes' => [
- 'FEATUREhdmR88NLD',
- ],
+ 'abilityTreeCode' => '152860',
+ 'abilityTreeNodes' => ['FEATUREhdmFT57I0'],
],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'formData',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-2ze1jdv45i7l6****',
- ],
+ 'schema' => ['description' => 'The instance ID.'."\n"
+ ."\n"
+ .'> Only ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters are supported', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
],
[
'name' => 'NodeId',
'in' => 'formData',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'r-x****-db-0',
- ],
+ '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.', 'type' => 'string', 'required' => false, 'example' => 'r-x****-db-0', 'title' => ''],
],
[
- 'name' => 'Type',
+ 'name' => 'SqlId',
'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',
- ],
+ 'schema' => ['description' => 'The SQL ID.', 'type' => 'string', 'required' => false, 'example' => '651b56fe9418d48edb8fdf0980ec****', 'title' => ''],
],
[
'name' => 'StartTime',
'in' => 'formData',
- 'schema' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => true,
- 'example' => '1568269711000',
- ],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1676511134614', 'title' => ''],
],
[
'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,
- ],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1678074351197', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
+ 'description' => 'The response parameters.',
'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',
- ],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '9CB97BC4-6479-55D0-B9D0-EA925AFE****', 'title' => ''],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'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',
+ 'description' => 'The SQL sample data.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'UserId' => ['description' => 'The user ID.', 'type' => 'string', 'example' => '196278346919****', 'title' => ''],
+ 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'r-x****-db-0', 'title' => ''],
+ 'LogicId' => ['description' => 'The ID of the logical database.', 'type' => 'string', 'example' => 'xxxxx', 'title' => ''],
+ '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', 'title' => ''],
+ 'SqlId' => ['description' => 'The SQL statement ID.', 'type' => 'string', 'example' => '651b56fe9418d48edb8fdf0980ec****', 'title' => ''],
+ 'Sql' => ['description' => 'The sample SQL statement.', 'type' => 'string', 'example' => 'select * from xxxx where ****', 'title' => ''],
+ 'ThreadId' => ['description' => 'The thread ID.', 'type' => 'integer', 'format' => 'int32', 'example' => '81751940', 'title' => ''],
+ 'EventId' => ['description' => 'The event ID.', 'type' => 'integer', 'format' => 'int32', 'example' => '63735293', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'EventName' => ['description' => 'The name of the event.', 'type' => 'string', 'example' => 'statement/sql/select', 'title' => ''],
+ 'Latency' => ['description' => 'The execution duration. Unit: millisecond.', 'type' => 'number', 'format' => 'double', 'example' => '0.199', 'title' => ''],
+ 'LockLatency' => ['description' => 'The lock wait duration. Unit: millisecond.', 'type' => 'number', 'format' => 'double', 'example' => '0.09', 'title' => ''],
+ 'Errors' => ['description' => 'The number of errors returned for the SQL statement.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'Warnings' => ['description' => 'The number of warnings returned for the SQL statement.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'RowsAffected' => ['description' => 'The number of rows affected by the SQL statement.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'RowsSent' => ['description' => 'The number of rows returned by the SQL statement.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'RowsExamined' => ['description' => 'The number of rows scanned by the SQL statement.', 'type' => 'integer', 'format' => 'int32', 'example' => '2048576', 'title' => ''],
+ 'CreateTmpDiskTables' => ['description' => 'The number of internal on-disk temporary tables that were created when the SQL statement was executed.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'CreateTmpTables' => ['description' => 'The number of internal temporary tables that were created when the SQL statement was executed.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'SelectFullRangeJoin' => ['description' => 'The number of joins that used ranges on referenced tables.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'SelectRange' => ['description' => 'The number of joins that used ranges on the first table.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'SelectScan' => ['description' => 'The number of scans.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'SortMergePasses' => ['description' => 'The number of merges that the sorting algorithm must perform.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'SortRange' => ['description' => 'The number of times the data was sorted by using ranges.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'SortRows' => ['description' => 'The number of sorted rows.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'SortScan' => ['description' => 'The number of sorts that were performed during table scans.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'NoIndexUsed' => ['description' => 'Indicates whether table scans were performed when indexes were not used. Valid values:'."\n"
+ ."\n"
+ .'- **1**: yes.'."\n"
+ ."\n"
+ .'- **0**: no.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ '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"
+ ."\n"
+ .'- **0**: no.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'Db' => ['description' => 'The name of the database.', 'type' => 'string', 'example' => 'testDB', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- 'eventInfo' => [
- 'enable' => false,
- 'eventNames' => [],
+ 'title' => 'GetPfsSqlSample',
+ 'summary' => 'Queries the SQL sample data for the new version of the performance insight feature of a database instance.',
+ '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"
+ ."\n"
+ .'- If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n"
+ ."\n"
+ .'- An ApsaraDB RDS for MySQL instance or a PolarDB for MySQL cluster is connected to DAS.'."\n"
+ ."\n"
+ .'- The new version of the performance insight feature is enabled for the database instance. For more information, see [Performance insight (new version)](~~469117~~).',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetPfsSqlSample'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetPfsSqlSample',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- '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',
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
],
- 'DescribeSlowLogRecords' => [
- 'summary' => 'Queries the slow logs of a database instance. You can filter and sort data by multiple conditions.',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'GetPfsSqlSummaries' => [
+ 'summary' => 'Call the GetPfsSqlSummaries API to query all request data using the SQL ID dimension in Performance Insight (New Version) for a database instance.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -19199,678 +15530,395 @@
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '236528',
- 'abilityTreeNodes' => [
- 'FEATUREhdmR88NLD',
- ],
- 'autoTest' => true,
+ 'abilityTreeNodes' => ['FEATUREhdmFT57I0'],
],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'formData',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-8vbk4xz99su8****',
- ],
+ 'schema' => ['description' => 'Database instance ID.', 'type' => 'string', 'required' => false, 'example' => 'rm-uf61swc4cru0b****', 'title' => ''],
],
[
'name' => 'NodeId',
'in' => 'formData',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'pi-d9j9fe7wq7t9i****'."\n",
- ],
+ 'schema' => ['description' => 'Node ID.'."\n"
+ ."\n"
+ .'> Provide a node ID for RDS MySQL Cluster Edition or PolarDB for MySQL database instances.', 'type' => 'string', 'required' => false, 'example' => 'r-****-db-0', 'title' => ''],
],
[
- 'name' => 'StartTime',
+ 'name' => 'SqlId',
'in' => 'formData',
- 'schema' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => true,
- 'example' => '1596177993000',
- ],
+ 'schema' => ['description' => 'SQL ID.'."\n"
+ ."\n"
+ .'> If you specify an SQL ID, the system returns statistics for that SQL ID only. If you leave this parameter empty, the system returns statistics for the entire database instance.', 'type' => 'string', 'required' => false, 'example' => '651b56fe9418d48edb8fdf0980ec****', 'title' => ''],
],
[
- 'name' => 'EndTime',
+ 'name' => 'Keywords',
'in' => 'formData',
- 'schema' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => true,
- 'example' => '1634972640000',
- ],
+ 'schema' => ['description' => 'Keywords in the SQL text. Separate multiple keywords with spaces.', 'type' => 'string', 'required' => false, 'example' => 'select update', 'title' => ''],
],
[
- 'name' => 'PageNumber',
+ 'name' => 'StartTime',
'in' => 'formData',
- 'schema' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '1',
- ],
+ 'schema' => ['description' => 'Start time of the query, in Unix timestamp format, in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1675833788056', 'title' => ''],
],
[
- 'name' => 'PageSize',
+ 'name' => 'EndTime',
'in' => 'formData',
- 'schema' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '10',
- ],
+ 'schema' => ['description' => 'End time of the query, in Unix timestamp format, in milliseconds.'."\n"
+ ."\n"
+ .'> The end time must be later than the start time. You can query data for any seven-day period within the last 30 days.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1679297005999', 'title' => ''],
],
[
- 'name' => 'Filters',
+ 'name' => 'OrderBy',
'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,
- ],
+ 'schema' => ['description' => 'Field to sort by. Default is **count**.'."\n"
+ ."\n"
+ .'- **count**: Number of executions.'."\n"
+ ."\n"
+ .'- **avgLatency**: Average execution time.'."\n"
+ ."\n"
+ .'- **rowsExamined**: Total number of scanned rows.'."\n"
+ ."\n"
+ .'- **rowsExaminedAvg**: Average number of scanned rows.'."\n"
+ ."\n"
+ .'- **rowsSentAvg**: Average number of returned rows.', 'type' => 'string', 'required' => false, 'example' => 'count', 'title' => ''],
],
[
- 'name' => 'OrderBy',
- 'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'QueryTimeSeconds',
- ],
+ 'name' => 'Asc',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'Sort in ascending order. Default is **false**.'."\n"
+ ."\n"
+ .'- **true**: Yes.'."\n"
+ ."\n"
+ .'- **false**: No.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
],
[
- 'name' => 'Asc',
- 'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
+ 'name' => 'PageNo',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'Page number for paged queries. Start from 1. Default is 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'Maximum number of records per page for paged queries. Default is 10. Maximum is 100.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
+ 'title' => 'ListResult<PfsSqlSummary>',
+ 'description' => 'List of SQL summaries.',
'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',
- ],
+ 'Message' => ['description' => 'Response message.'."\n"
+ ."\n"
+ .'> If the request succeeds, this parameter returns **Successful**. If it fails, it returns error details such as an error code.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'Request ID.', 'type' => 'string', 'example' => '54F3DBAE-9420-511A-9C29-265E8C04****', 'title' => ''],
'Data' => [
- 'title' => 'DBLogRecords<SlowLogItem>',
- 'description' => 'DBLogRecords<SlowLogItem>',
+ 'description' => 'Response data.',
'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' => '',
+ 'Total' => ['description' => 'Total number of records.', 'type' => 'integer', 'format' => 'int64', 'example' => '264', 'title' => ''],
+ 'List' => [
+ 'description' => 'Detailed information list.',
'type' => 'array',
'items' => [
- 'description' => '',
+ 'description' => 'List of returned items.',
'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',
+ 'UserId' => ['description' => 'User ID.', 'type' => 'string', 'example' => '196278346919****', 'title' => ''],
+ 'Psql' => ['description' => 'SQL template.', 'type' => 'string', 'example' => 'select ?', 'title' => ''],
+ 'InstanceId' => ['description' => 'Instance ID.', 'type' => 'string', 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
+ 'NodeId' => ['description' => 'Node ID.'."\n"
+ ."\n"
+ .'> This parameter is returned for ApsaraDB RDS for MySQL Cluster Edition or PolarDB for MySQL database instances.', 'type' => 'string', 'example' => 'r-x****-db-0', 'title' => ''],
+ 'SqlType' => ['description' => 'SQL type. Valid values:'."\n"
+ ."\n"
+ .'- **SELECT**'."\n"
+ ."\n"
+ .'- **UPDATE**'."\n"
+ ."\n"
+ .'- **DELETE**', 'type' => 'string', 'example' => 'SELECT', 'title' => ''],
+ 'LogicId' => ['description' => 'Logical database ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '58275984', 'title' => ''],
+ 'SqlId' => ['description' => 'SQL template ID.', 'type' => 'string', 'example' => '2e8147b5ca2dfc640dfd5e43d96a****', 'title' => ''],
+ 'Timestamp' => ['description' => 'Data timestamp in Unix time format, in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1643040000000', 'title' => ''],
+ 'RtRate' => ['description' => 'Percentage of total execution duration.', 'type' => 'number', 'format' => 'double', 'title' => '', 'example' => '0.1384'],
+ 'CountRate' => ['description' => 'Percentage of total executions.', 'type' => 'number', 'format' => 'double', 'title' => '', 'example' => '0.0586'],
+ 'FullScan' => ['description' => 'Indicates whether a full table scan occurred. Valid values:'."\n"
+ ."\n"
+ .'- **true**: Yes.'."\n"
+ ."\n"
+ .'- **false**: No.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'Count' => ['description' => 'Total number of executions.', 'type' => 'integer', 'format' => 'int64', 'example' => '100000', 'title' => ''],
+ 'ErrCount' => ['description' => 'Number of errors.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'WarnCount' => ['description' => 'Number of warnings.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'TotalLatency' => ['description' => 'Total execution duration, in milliseconds.', 'type' => 'number', 'format' => 'double', 'example' => '60913.256', 'title' => ''],
+ 'MaxLatency' => ['description' => 'Maximum execution duration, in milliseconds.', 'type' => 'number', 'format' => 'double', 'example' => '36.233', 'title' => ''],
+ 'AvgLatency' => ['description' => 'Average SQL execution duration, in milliseconds.', 'type' => 'number', 'format' => 'double', 'example' => '0.1717', 'title' => ''],
+ 'RowsSent' => ['description' => 'Number of rows returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'RowsSendAvg' => ['description' => 'Average number of rows sent.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''],
+ 'RowsExamined' => ['description' => 'Total number of rows scanned.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
+ 'RowsExaminedAvg' => ['description' => 'Average number of rows scanned.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''],
+ 'RowsAffected' => ['description' => 'Number of rows affected.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'RowsAffectedAvg' => ['description' => 'Average number of rows affected.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''],
+ 'TmpTables' => ['description' => 'Number of temporary tables.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'TmpDiskTables' => ['description' => 'Number of temporary disk tables.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'RowsSorted' => ['description' => 'Number of rows sorted.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'SortMergePasses' => ['description' => 'Number of merge passes required by the sort algorithm.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'PhysicalReads' => ['description' => 'Number of physical nodes.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'PhysicalAsyncReads' => ['description' => 'Number of physical asynchronous nodes.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'SemisyncDelayTime' => ['description' => 'Semi-synchronous replication delay, in milliseconds.', 'type' => 'number', 'format' => 'double', 'example' => '0.12', 'title' => ''],
+ 'RowsSentAvg' => ['description' => 'Average number of rows returned per SQL statement.', 'type' => 'number', 'format' => 'double', 'example' => '0.52', 'title' => ''],
+ 'LogicReads' => ['description' => 'Number of logical nodes.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'RedoWrites' => ['description' => 'Number of redo nodes.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'DataWriteTime' => ['description' => 'Data write time, in milliseconds.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''],
+ 'DataWrites' => ['description' => 'Number of writable data nodes.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'DataReadTime' => ['description' => 'Data read time, in milliseconds.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''],
+ 'DataReads' => ['description' => 'Number of readable data nodes.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'RwlockOsWaits' => ['description' => 'Indicates whether read/write splitting is enabled. Valid values:'."\n"
+ ."\n"
+ .'- **0**: Disabled.'."\n"
+ ."\n"
+ .'- **1**: Enabled.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'RwlockSpinRounds' => ['description' => 'Read/write splitting parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'RwlockSpinWaits' => ['description' => 'Indicates whether multiple index scans are enabled. Valid values:'."\n"
+ ."\n"
+ .'- **0**: Disabled.'."\n"
+ ."\n"
+ .'- **1**: Enabled.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'MutexWaits' => ['description' => 'Number of mutex waits.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'MutexSpins' => ['description' => 'Number of mutex spins.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'TransactionLockTime' => ['description' => 'Transaction lock time, in milliseconds.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''],
+ 'ServerLockTime' => ['description' => 'Server lock time, in milliseconds.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''],
+ 'CpuTime' => ['description' => 'CPU runtime, in milliseconds.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''],
+ 'ElapsedTime' => ['description' => 'Actual runtime, in milliseconds.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''],
+ 'Id' => ['description' => 'Primary key ID.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '26186357'],
+ 'SelectScanAvg' => ['description' => 'Average number of scans.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''],
+ 'SelectRangeAvg' => ['description' => 'Average range selection.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''],
+ 'SelectFullJoinAvg' => ['description' => 'The average number of connections that perform table scans without using an index.'."\n"
+ .'><notice>If this parameter value is not 0, carefully check the indexes of the table.></notice>', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''],
+ 'SelectFullRangeJoinAvg' => ['description' => 'Average number of range joins.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''],
+ 'SortScanAvg' => ['description' => 'Average number of sorted scans.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''],
+ 'SortRowsAvg' => ['description' => 'Average number of sorted rows.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''],
+ 'TmpTablesAvg' => ['description' => 'Average number of temporary tables.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''],
+ 'TmpDiskTablesAvg' => ['description' => 'Average number of temporary disk tables.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''],
+ 'FirstTime' => ['description' => 'First execution time, in Unix time format, in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1659308149000', 'title' => ''],
+ 'LastTime' => ['description' => 'Last update time, in Unix time format, in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1661306520000', 'title' => ''],
+ 'LockLatencyAvg' => ['description' => 'Average lock wait time, in milliseconds.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''],
+ 'TimerWaitAvg' => ['description' => 'Reserved parameter.', 'type' => 'number', 'format' => 'double', 'example' => 'None', 'title' => ''],
+ 'SortRangeAvg' => ['description' => 'Average number of range-based sorts.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''],
+ 'CpuRate' => ['description' => 'Ratio of CPU execution time to total SQL execution time.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''],
+ 'Db' => ['description' => 'Database name.', 'type' => 'string', 'example' => 'testDB', 'title' => ''],
+ 'Tables' => [
+ 'description' => 'Database table names.',
+ 'type' => 'array',
+ 'items' => ['description' => 'Database table name.', 'type' => 'string', 'example' => 'test_table', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
+ 'PageNo' => ['description' => 'Page number.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'PageSize' => ['description' => 'Maximum number of records per page.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'Extra' => ['description' => 'Reserved parameter.', 'type' => 'any', 'example' => 'None', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'Code' => ['description' => 'Response status code.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request succeeded:'."\n"
+ ."\n"
+ .'- **true**: Succeeded.'."\n"
+ ."\n"
+ .'- **false**: Failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'eventInfo' => [
- 'enable' => false,
- 'eventNames' => [],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ 'title' => 'GetPfsSqlSummaries',
+ 'description' => 'Prerequisites for using this API:'."\n"
+ ."\n"
+ .'- Use the latest version of the Alibaba Cloud or DAS SDK.'."\n"
+ ."\n"
+ .'- When calling the DAS service using the SDK, specify the region as cn-shanghai.'."\n"
+ ."\n"
+ .'- The target database instance is RDS MySQL or PolarDB MySQL.'."\n"
+ ."\n"
+ .'- The target database instance has Performance Insight (New Version) enabled. For more information, see [Performance Insight (New Version)](~~469117~~).',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetPfsSqlSummaries'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetPfsSqlSummaries',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- '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',
- ],
+ 'GetQueryOptimizeDataStats' => [
+ 'summary' => 'Returns SQL template statistics from query governance data.',
+ 'methods' => ['get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
- 'systemTags' => [
- 'operationType' => 'none',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREhdmTFSOG0',
- ],
- ],
+ 'operationType' => 'read',
+ 'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
- 'name' => 'ConsoleContext',
+ 'name' => 'Engine',
'in' => 'query',
- 'schema' => [
- 'description' => 'The reserved parameter.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'None',
- ],
+ 'schema' => ['description' => 'The database engine. Valid values:'."\n"
+ ."\n"
+ .'- **MySQL**'."\n"
+ ."\n"
+ .'- **PolarDBMySQL**'."\n"
+ ."\n"
+ .'- **PostgreSQL**', 'type' => 'string', 'required' => true, 'example' => 'MySQL', 'title' => ''],
],
[
'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****\']',
- ],
+ 'schema' => ['description' => 'The instance IDs. Separate multiple IDs with commas (,).', 'type' => 'string', 'required' => false, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
[
- 'name' => 'CpuUsage',
+ 'name' => 'TagNames',
'in' => 'query',
- 'schema' => [
- 'description' => 'The threshold for CPU utilization. Valid values: 70% to 100%.'."\n",
- 'type' => 'number',
- 'format' => 'double',
- 'required' => true,
- 'example' => '70',
- ],
+ 'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
- 'name' => 'CpuSessionRelation',
+ 'name' => 'Keywords',
'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',
- ],
+ 'schema' => ['description' => 'The keywords of the SQL template. Separate multiple keywords with spaces.', 'type' => 'string', 'required' => false, 'example' => 'select update', 'title' => ''],
],
[
- 'name' => 'ActiveSessions',
+ 'name' => 'LogicalOperator',
'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',
- ],
+ 'schema' => ['description' => 'The logical relationship between multiple keywords. Valid values:'."\n"
+ ."\n"
+ .'- **or**'."\n"
+ ."\n"
+ .'- **and**', 'type' => 'string', 'required' => false, 'example' => 'or', 'title' => ''],
],
[
- 'name' => 'AbnormalDuration',
+ 'name' => 'Rules',
'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',
- ],
+ 'schema' => ['description' => 'The tags that are used to filter SQL templates. Separate multiple tags with commas (,). For more information, see [Query governance](~~290038~~).', 'type' => 'string', 'required' => false, 'example' => 'DAS_NOT_IMPORTANT', 'title' => ''],
],
[
- 'name' => 'MaxThrottleTime',
+ 'name' => 'DbNames',
'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',
- ],
+ 'schema' => ['description' => 'The name of the database to be queried.', 'type' => 'string', 'required' => false, 'example' => 'testdb01', 'title' => ''],
],
[
- 'name' => 'AllowThrottleStartTime',
+ 'name' => 'Time',
'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',
- ],
+ 'schema' => ['description' => 'The time range to query. Specify the time in the UNIX timestamp format. Unit: milliseconds.', 'type' => 'string', 'required' => true, 'example' => '1642953600000', 'title' => ''],
],
[
- 'name' => 'AllowThrottleEndTime',
+ 'name' => 'PageSize',
'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',
- ],
+ 'schema' => ['description' => 'The number of entries per page. Default value: 10.', 'type' => 'string', 'required' => false, 'example' => '10', 'title' => ''],
],
[
- 'name' => 'AutoKillSession',
+ 'name' => 'PageNo',
'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',
- ],
+ 'schema' => ['description' => 'The page number. Pages start from page 1. Default value: 1.', 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''],
],
[
- 'name' => 'ResultId',
+ 'name' => 'OrderBy',
'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****',
- ],
+ 'schema' => ['description' => 'The field by which to sort the returned entries. Default value: **count**. Valid values:'."\n"
+ ."\n"
+ .'- **count**: the number of executions.'."\n"
+ ."\n"
+ .'- **maxQueryTime**: the longest execution time.'."\n"
+ ."\n"
+ .'- **avgQueryTime**: the average execution time.'."\n"
+ ."\n"
+ .'- **maxLockTime**: the longest lock wait time.'."\n"
+ ."\n"
+ .'- **avgLockTime**: the longest lock wait time.'."\n"
+ ."\n"
+ .'- **maxRowsExamined**: the largest number of scanned rows.'."\n"
+ ."\n"
+ .'- **avgRowsExamined**: the average number of scanned rows.'."\n"
+ ."\n"
+ .'- **maxRowsSent**: the largest number of returned rows.'."\n"
+ ."\n"
+ .'- **avgRowsSent**: the average number of returned rows.', 'type' => 'string', 'required' => false, 'example' => 'count', 'title' => ''],
+ ],
+ [
+ '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"
+ ."\n"
+ .'- **false**: does not sort the returned entries in ascending order.', 'type' => 'string', 'required' => false, 'example' => 'true', 'title' => ''],
+ ],
+ [
+ '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"
+ ."\n"
+ .'- **false**: does not query only SQL statements that need to be optimized.', 'type' => 'string', 'required' => false, 'example' => 'false', 'title' => ''],
+ ],
+ [
+ 'name' => 'SqlIds',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The SQL template ID. You can query the ID of a template by calling the [GetQueryOptimizeExecErrorStats](~~405235~~) operation.', 'type' => 'string', 'required' => false, 'example' => '2e8147b5ca2dfc640dfd5e43d96a****', 'title' => ''],
+ ],
+ [
+ 'name' => 'Region',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The region in which the instance resides. Valid values:'."\n"
+ ."\n"
+ .'- **cn-china**: Chinese mainland'."\n"
+ ."\n"
+ .'- **cn-hongkong**: China (Hong Kong)'."\n"
+ ."\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.', 'type' => 'string', 'required' => false, 'example' => 'cn-china', 'title' => ''],
+ ],
+ [
+ 'name' => 'User',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The account of the database to be queried.', 'type' => 'string', 'required' => false, 'example' => 'testUser', 'title' => ''],
],
],
'responses' => [
@@ -19878,239 +15926,193 @@
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The returned message.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'Data' => [
- 'description' => 'The data returned.'."\n",
+ 'description' => 'The data returned.',
'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"
+ 'Total' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'PageNo' => ['description' => 'The reserved parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => 'None', 'title' => ''],
+ 'PageSize' => ['description' => 'The reserved parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => 'None', 'title' => ''],
+ 'Extra' => ['description' => 'The reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ '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****', 'title' => ''],
+ 'Dbname' => ['description' => 'The name of the database to which the SQL template belongs.', 'type' => 'string', 'example' => 'testdb01', 'title' => ''],
+ 'SqlId' => ['description' => 'The SQL template ID.', 'type' => 'string', 'example' => '2e8147b5ca2dfc640dfd5e43d96a****', 'title' => ''],
+ 'SqlType' => ['description' => 'The type of the SQL statement.', 'type' => 'string', 'example' => 'INSERT', 'title' => ''],
+ 'Psql' => ['description' => 'The SQL template.', 'type' => 'string', 'example' => 'select 1', 'title' => ''],
+ 'SqlSample' => ['description' => 'The sample query that took the longest time to execute.', 'type' => 'string', 'example' => 'select 2', 'title' => ''],
+ 'Count' => ['description' => 'The number of times that the SQL template is executed.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''],
+ 'MaxQueryTime' => ['description' => 'The longest query execution time. Unit: seconds.', 'type' => 'number', 'format' => 'double', 'example' => '1.1', 'title' => ''],
+ 'AvgQueryTime' => ['description' => 'The average query execution time. Unit: seconds.', 'type' => 'number', 'format' => 'double', 'example' => '1.1', 'title' => ''],
+ 'MaxLockTime' => ['description' => 'The longest lock wait time. Unit: seconds.', 'type' => 'number', 'format' => 'double', 'example' => '0.1', 'title' => ''],
+ 'AvgLockTime' => ['description' => 'The average lock wait time. Unit: seconds.', 'type' => 'number', 'format' => 'double', 'example' => '0.1', 'title' => ''],
+ 'MaxRowsExamined' => ['description' => 'The largest number of scanned rows.', 'type' => 'integer', 'format' => 'int64', 'example' => '100000', 'title' => ''],
+ 'AvgRowsExamined' => ['description' => 'The average number of scanned rows.', 'type' => 'number', 'format' => 'double', 'example' => '100.1', 'title' => ''],
+ 'MaxRowsSent' => ['description' => 'The largest number of returned rows.', 'type' => 'integer', 'format' => 'int64', 'example' => '10000', 'title' => ''],
+ 'AvgRowsSent' => ['description' => 'The average number of returned rows.', 'type' => 'number', 'format' => 'double', 'example' => '100.1', 'title' => ''],
+ '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', 'title' => ''],
+ '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', 'title' => ''],
+ 'RuleList' => [
+ 'description' => 'The information about the rules.',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => ['description' => 'The rule name.', 'type' => 'string', 'example' => 'DAS_NOT_IMPORTANT', 'title' => ''],
+ 'Type' => ['description' => 'The type of the rule. Valid values:'."\n"
."\n"
- .'* **true**'."\n"
+ .'- **Predefined**'."\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',
+ .'- **UserDefined**', 'type' => 'string', 'example' => 'Predefined', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
+ 'User' => ['description' => 'The account of the database.', 'type' => 'string', 'example' => 'testUser', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
- ],
- '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',
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ '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"
- .'Before you call this operation, take note of the following items:'."\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 Database Autonomy Service (DAS), you must set the region ID to cn-shanghai.'."\n"
+ .'- If you use an SDK to call API operations of 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"
+ .'- This operation supports the following database engines:'."\n"
."\n"
- .'* The database instance that you want to manage must be of one of the following types:'."\n"
+ .' - ApsaraDB RDS for MySQL'."\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',
+ .' - PolarDB for MySQL'."\n"
+ ."\n"
+ .' - ApsaraDB RDS for PostgreSQL',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetQueryOptimizeDataStats'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetQueryOptimizeDataStats',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ ],
+ 'GetQueryOptimizeDataTop' => [
+ 'summary' => 'Returns the best- and worst-performing instances based on query governance data.',
+ 'methods' => ['get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
- 'systemTags' => [
- 'operationType' => 'none',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREhdmDSULQV',
- ],
- ],
+ 'operationType' => 'read',
+ 'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
- 'name' => 'ConsoleContext',
+ 'name' => 'Engine',
'in' => 'query',
- 'schema' => [
- 'description' => 'The reserved parameter.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'None',
- ],
+ 'schema' => ['description' => 'The database engine. Valid values:'."\n"
+ ."\n"
+ .'- **MySQL**'."\n"
+ ."\n"
+ .'- **PolarDBMySQL**'."\n"
+ ."\n"
+ .'- **PostgreSQL**', 'type' => 'string', 'required' => true, 'example' => 'MySQL', 'title' => ''],
],
[
'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****\']',
- ],
+ 'schema' => ['description' => 'The instance IDs. Separate multiple IDs with commas (,).', 'type' => 'string', 'required' => false, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
+ ],
+ [
+ 'name' => 'TagNames',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
+ ],
+ [
+ '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.', 'type' => 'string', 'required' => true, 'example' => '1642953600000', 'title' => ''],
+ ],
+ [
+ '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"
+ ."\n"
+ .'- **BLACK**: the worst-performing instances', 'type' => 'string', 'required' => true, 'example' => 'RED', 'title' => ''],
+ ],
+ [
+ 'name' => 'Region',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The region in which the instance resides. Valid values:'."\n"
+ ."\n"
+ .'- **cn-china**: Chinese mainland'."\n"
+ ."\n"
+ .'- **cn-hongkong**: China (Hong Kong)'."\n"
+ ."\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.', 'type' => 'string', 'required' => false, 'example' => 'cn-china', 'title' => ''],
],
],
'responses' => [
@@ -20118,181 +16120,158 @@
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The returned message.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'Data' => [
- 'description' => 'The returned data.'."\n",
+ 'description' => 'The detailed information.',
'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.',
+ 'Total' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'PageNo' => ['description' => 'The reserved parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => 'None', 'title' => ''],
+ 'PageSize' => ['description' => 'The reserved parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => 'None', 'title' => ''],
+ 'Extra' => ['description' => 'The reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'List' => [
+ 'description' => 'The information about the instances.',
'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****',
- ],
+ 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
+ 'Type' => ['description' => 'The metric name. Valid values:'."\n"
+ ."\n"
+ .'- **sqlExecuteCount**: the number of slow SQL executions.'."\n"
+ ."\n"
+ .'- **optimizedSqlExecuteCount**: the number of slow SQL executions that need to be optimized.', 'type' => 'string', 'example' => 'sqlExecuteCount', 'title' => ''],
+ 'Value' => ['description' => 'The metric value.', 'type' => 'number', 'format' => 'double', 'example' => '100', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ '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"
+ ."\n"
+ .' - PolarDB for MySQL'."\n"
+ ."\n"
+ .' - ApsaraDB RDS for PostgreSQL',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetQueryOptimizeDataTop'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetQueryOptimizeDataTop',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- '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",
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
],
- 'GetAutoThrottleRules' => [
- 'summary' => 'Queries the automatic SQL throttling rules of a database instance.',
- 'methods' => [
- 'get',
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'GetQueryOptimizeDataTrend' => [
+ 'summary' => 'Queries query governance trend data.',
+ 'methods' => ['get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
- 'systemTags' => [
- 'operationType' => 'none',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- ],
+ 'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
- 'name' => 'ConsoleContext',
+ 'name' => 'Engine',
'in' => 'query',
- 'schema' => [
- 'description' => 'The reserved parameter.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'None',
- ],
+ 'schema' => ['description' => 'The database engine. Valid values:'."\n"
+ ."\n"
+ .'- **MySQL**'."\n"
+ ."\n"
+ .'- **PolarDBMySQL**'."\n"
+ ."\n"
+ .'- **PostgreSQL**', 'type' => 'string', 'required' => true, 'example' => 'MySQL', 'title' => ''],
],
[
'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****\']',
- ],
+ 'schema' => ['description' => 'The instance IDs. Separate multiple IDs with commas (,).', 'type' => 'string', 'required' => false, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
+ ],
+ [
+ 'name' => 'TagNames',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
+ ],
+ [
+ '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.', 'type' => 'string', 'required' => true, 'example' => '1642435200000', 'title' => ''],
+ ],
+ [
+ '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.', 'type' => 'string', 'required' => true, 'example' => '1643040000000', 'title' => ''],
+ ],
+ [
+ 'name' => 'Region',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The region in which the instance resides. Valid values:'."\n"
+ ."\n"
+ .'- **cn-china**: Chinese mainland.'."\n"
+ ."\n"
+ .'- **cn-hongkong**: China (Hong Kong).'."\n"
+ ."\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**.', 'type' => 'string', 'required' => false, 'example' => 'cn-china', 'title' => ''],
],
],
'responses' => [
@@ -20300,312 +16279,151 @@
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The returned message.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'Data' => [
- 'description' => 'The returned data.'."\n",
+ 'description' => 'The detailed information.',
'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.',
+ 'Total' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'PageNo' => ['description' => 'The reserved parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => 'None', 'title' => ''],
+ 'PageSize' => ['description' => 'The reserved parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => 'None', 'title' => ''],
+ 'Extra' => ['description' => 'The reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'List' => [
+ 'description' => 'The details of the trend data.',
'type' => 'array',
'items' => [
+ 'description' => '',
'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',
- ],
+ 'Kpi' => ['description' => 'The name of the metric. Valid values:'."\n"
+ ."\n"
+ .'- **sqlExecuteCount**: the number of executions of slow SQL queries.'."\n"
+ ."\n"
+ .'- **sqlExecuteCountDiff**: the difference in the number of executions of slow SQL queries compared to the previous day.'."\n"
+ ."\n"
+ .'- **sqlCount**: the number of slow SQL templates.'."\n"
+ ."\n"
+ .'- **sqlCountDiff**: the difference in the number of slow SQL templates compared to the previous day.'."\n"
+ ."\n"
+ .'- **optimizedSqlExecuteCount**: the number of optimizable executions of slow SQL queries.'."\n"
+ ."\n"
+ .'- **optimizedSqlExecuteCountDiff**: the difference in the number of optimizable executions of slow SQL queries compared to the previous day.'."\n"
+ ."\n"
+ .'- **optimizedSqlCount**: the number of optimizable slow SQL templates.'."\n"
+ ."\n"
+ .'- **optimizedSqlCountDiff**: the difference in the number of optimizable slow SQL templates compared to the previous day.', 'type' => 'string', 'example' => 'sqlExecuteCount', 'title' => ''],
+ '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', 'title' => ''],
+ 'Value' => ['description' => 'The value of the metric.', 'type' => 'number', 'format' => 'double', 'example' => '1000', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
- ],
- '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****',
- ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ '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"
- .'* 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 version of your Database Autonomy Service (DAS) SDK must be V2.1.8 or later.'."\n"
."\n"
- .'* The database instance that you want to manage must be of one of the following types:'."\n"
+ .'- If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\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',
+ .'- This operation supports the following database engines:'."\n"
+ ."\n"
+ .' - ApsaraDB RDS for MySQL'."\n"
+ ."\n"
+ .' - PolarDB for MySQL'."\n"
+ ."\n"
+ .' - ApsaraDB RDS for PostgreSQL',
+ 'changeSet' => [],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetQueryOptimizeDataTrend',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- 'schemes' => [
- 'http',
- 'https',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetQueryOptimizeDataTrend'],
+ ],
],
+ ],
+ 'GetQueryOptimizeExecErrorSample' => [
+ 'summary' => 'Queries the failed SQL statements under a SQL template.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
+ 'operationType' => 'read',
'systemTags' => [
- 'operationType' => 'update',
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => ['FEATUREhdmTQGIFY'],
],
'parameters' => [
[
- 'name' => 'Instances',
+ 'name' => 'Engine',
'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****',
- ],
+ 'schema' => ['description' => 'The database engine. Valid values:'."\n"
+ ."\n"
+ .'- **MySQL**'."\n"
+ ."\n"
+ .'- **PolarDBMySQL**'."\n"
+ ."\n"
+ .'- **PostgreSQL**', 'type' => 'string', 'required' => true, 'example' => 'MySQL', 'title' => ''],
],
[
- 'name' => 'Status',
+ 'name' => 'InstanceId',
'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',
- ],
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
+ ],
+ [
+ 'name' => 'SqlId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The SQL template ID. You can call the [GetQueryOptimizeExecErrorStats](~~405235~~) operation to obtain the SQL template ID.', 'type' => 'string', 'required' => true, 'example' => '2e8147b5ca2dfc640dfd5e43d96a****', 'title' => ''],
+ ],
+ [
+ '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.', 'type' => 'string', 'required' => true, 'example' => '1642953600000', 'title' => ''],
],
],
'responses' => [
@@ -20613,190 +16431,186 @@
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The returned message.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'Data' => [
- 'description' => 'The returned data.'."\n",
+ 'description' => 'The detailed information.',
'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',
+ 'Total' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''],
+ 'PageNo' => ['description' => 'A reserved parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => 'None', 'title' => ''],
+ 'PageSize' => ['description' => 'A reserved parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => 'None', 'title' => ''],
+ 'Extra' => ['description' => 'A reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ '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', 'title' => ''],
+ 'User' => ['description' => 'The username of the client that executes the SQL statement.', 'type' => 'string', 'example' => 'test01', 'title' => ''],
+ 'Dbname' => ['description' => 'The name of the database.', 'type' => 'string', 'example' => 'testdb01', 'title' => ''],
+ 'SqlId' => ['description' => 'The SQL template ID.', 'type' => 'string', 'example' => '2e8147b5ca2dfc640dfd5e43d96a****', 'title' => ''],
+ 'SqlText' => ['description' => 'The content of the SQL statement that failed to be executed.', 'type' => 'string', 'example' => 'select * from test1', 'title' => ''],
+ 'ErrorCode' => ['description' => 'The error code returned.', 'type' => 'string', 'example' => '1146', 'title' => ''],
+ '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', 'title' => ''],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ '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"
- .'* 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 version of your Database Autonomy Service (DAS) SDK must be V2.1.8 or later.'."\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"
+ .'- If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n"
."\n"
- .'* The autonomy service must be enabled for the database instance. For more information, see [Autonomy center](~~152139~~).'."\n"
+ .'- This operation supports the following database engines:'."\n"
."\n"
- .'* This operation supports the following database engines:'."\n"
+ .' - ApsaraDB RDS for MySQL'."\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',
+ .' - PolarDB for MySQL'."\n"
+ ."\n"
+ .' - ApsaraDB RDS for PostgreSQL',
+ 'changeSet' => [],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetQueryOptimizeExecErrorSample',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- 'schemes' => [
- 'http',
- 'https',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetQueryOptimizeExecErrorSample'],
+ ],
],
+ ],
+ 'GetQueryOptimizeExecErrorStats' => [
+ 'methods' => ['get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
- 'systemTags' => [
- 'operationType' => 'get',
- ],
+ 'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
- 'name' => 'ConsoleContext',
+ 'name' => 'Engine',
'in' => 'query',
- 'schema' => [
- 'description' => 'The reserved parameter.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'None',
- ],
+ 'schema' => ['description' => 'The database engine. Valid values:'."\n"
+ ."\n"
+ .'- **MySQL**'."\n"
+ ."\n"
+ .'- **PolarDBMySQL**'."\n"
+ ."\n"
+ .'- **PostgreSQL**', 'type' => 'string', 'required' => true, 'example' => 'MySQL', 'title' => ''],
],
[
- 'name' => 'Engine',
+ 'name' => 'InstanceIds',
'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',
- ],
+ 'schema' => ['description' => 'The instance IDs. Separate multiple IDs with commas (,).', 'type' => 'string', 'required' => false, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
[
- 'name' => 'InstanceIds',
+ 'name' => 'Keywords',
'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****',
- ],
+ 'schema' => ['description' => 'The keywords of the SQL template. Separate multiple keywords with spaces.', 'type' => 'string', 'required' => false, 'example' => 'select update', 'title' => ''],
],
[
- 'name' => 'StartDt',
+ 'name' => 'LogicalOperator',
'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',
- ],
+ 'schema' => ['description' => 'The logical relationship between multiple keywords. Valid values:'."\n"
+ ."\n"
+ .'- **or**'."\n"
+ ."\n"
+ .'- **and**', 'type' => 'string', 'required' => false, 'example' => 'or', 'title' => ''],
],
[
- 'name' => 'EndDt',
+ 'name' => 'DbNames',
'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',
- ],
+ 'schema' => ['description' => 'The name of the database to be queried.', 'type' => 'string', 'required' => false, 'example' => 'testdb01', 'title' => ''],
+ ],
+ [
+ 'name' => 'Time',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The time range to query. Specify the time in the UNIX timestamp format. Unit: milliseconds.', 'type' => 'string', 'required' => true, 'example' => '1642953600000', 'title' => ''],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The number of entries per page. Default value: 10.', 'type' => 'string', 'required' => true, 'example' => '10', 'title' => ''],
+ ],
+ [
+ 'name' => 'PageNo',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The page number. Pages start from page 1. Default value: 1.', 'type' => 'string', 'required' => true, 'example' => '1', 'title' => ''],
+ ],
+ [
+ '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.', 'type' => 'string', 'required' => false, 'example' => 'error_count', 'title' => ''],
+ ],
+ [
+ '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"
+ ."\n"
+ .'- **false**: does not sort the returned entries in ascending order.', 'type' => 'string', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
'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',
- ],
+ 'schema' => ['description' => 'The region in which the instance resides. Valid values:'."\n"
+ ."\n"
+ .'- **cn-china**: Chinese mainland'."\n"
+ ."\n"
+ .'- **cn-hongkong**: China (Hong Kong)'."\n"
+ ."\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.', 'type' => 'string', 'required' => false, 'example' => 'cn-china', 'title' => ''],
],
],
'responses' => [
@@ -20804,621 +16618,380 @@
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The returned message.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'Data' => [
- 'description' => 'The detailed information, including the error codes and the number of entries that are returned.'."\n",
+ 'description' => 'The detailed information, including the error codes and the number of entries that are returned.',
'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****',
+ 'Total' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '19', 'title' => ''],
+ 'PageNo' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
+ 'Extra' => ['description' => 'The reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ '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****', 'title' => ''],
+ 'InstanceName' => ['description' => 'The alias of the database instance.', 'type' => 'string', 'example' => 'test01', 'title' => ''],
+ 'Dbname' => ['description' => 'The name of the database.', 'type' => 'string', 'example' => 'testdb01', 'title' => ''],
+ 'SqlId' => ['description' => 'The SQL template ID.', 'type' => 'string', 'example' => '2e8147b5ca2dfc640dfd5e43d96a****', 'title' => ''],
+ 'SqlText' => ['description' => 'The content of the SQL template.', 'type' => 'string', 'example' => 'select * from test1', 'title' => ''],
+ 'ErrorCode' => ['description' => 'The error code returned if the request failed.', 'type' => 'string', 'example' => '1146', 'title' => ''],
+ 'ErrorCount' => ['description' => 'The number of errors.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'title' => 'GetQueryOptimizeExecErrorStats',
+ 'summary' => 'Queries SQL templates that failed to be executed.',
+ '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"
- .'> You can call this operation to query only the optimization suggestions that are automatically generated by the SQL diagnostics feature.'."\n"
+ .'- If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n"
."\n"
- .'Before you call this operation, take note of the following items:'."\n"
+ .'- This operation supports the following database engines:'."\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',
+ .' - ApsaraDB RDS for MySQL'."\n"
+ ."\n"
+ .' - PolarDB for MySQL'."\n"
+ ."\n"
+ .' - ApsaraDB RDS for PostgreSQL',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetQueryOptimizeExecErrorStats'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetQueryOptimizeExecErrorStats',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ ],
+ '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',
- ],
+ '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',
+ 'name' => 'Engine',
'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',
- ],
+ 'schema' => ['description' => 'The database engine. Valid values:'."\n"
+ ."\n"
+ .'- **MySQL**'."\n"
+ ."\n"
+ .'- **PolarDBMySQL**'."\n"
+ ."\n"
+ .'- **PostgreSQL**', 'type' => 'string', 'required' => true, 'example' => 'MySQL', 'title' => ''],
],
[
- 'name' => 'NodeId',
+ 'name' => 'InstanceIds',
'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****',
- ],
+ 'schema' => ['description' => 'The instance IDs. Separate multiple IDs with commas (,).', 'type' => 'string', 'required' => false, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
[
- 'name' => 'Threshold',
+ 'name' => 'TagNames',
'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',
- ],
+ 'schema' => ['description' => 'A reserved parameter.', 'type' => 'string', 'title' => '', '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',
+ 'name' => 'Region',
'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',
- ],
+ 'schema' => ['description' => 'The region in which the instance resides. Valid values:'."\n"
+ ."\n"
+ .'- **cn-china**: Chinese mainland'."\n"
+ ."\n"
+ .'- **cn-hongkong**: China (Hong Kong)'."\n"
+ ."\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**.', 'type' => 'string', 'required' => false, 'example' => 'cn-china', 'title' => ''],
],
],
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The returned message.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'Data' => [
- 'description' => 'The details of the automatic SQL optimization events.'."\n",
+ 'description' => 'The detailed information.',
'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',
+ 'Total' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'PageNo' => ['description' => 'A reserved parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => 'None', 'title' => ''],
+ 'PageSize' => ['description' => 'A reserved parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => 'None', 'title' => ''],
+ 'Extra' => ['description' => 'A reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ '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', 'title' => ''],
+ 'Name' => ['description' => 'The name of the tag.', 'type' => 'string', 'example' => 'LARGE_ROWS_EXAMINED', 'title' => ''],
+ 'RuleId' => ['description' => 'A reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ '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"
- .'* 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',
+ .'- 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"
+ ."\n"
+ .' - PolarDB for MySQL'."\n"
+ ."\n"
+ .' - ApsaraDB RDS for PostgreSQL',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetQueryOptimizeRuleList'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetQueryOptimizeRuleList',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ ],
+ 'GetQueryOptimizeShareUrl' => [
+ 'summary' => 'Queries a share URL provided by the query governance feature.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
+ 'operationType' => 'read',
+ 'deprecated' => false,
'systemTags' => [
- 'operationType' => 'none',
+ 'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREhdm3TU4OK',
- ],
+ 'abilityTreeNodes' => ['FEATUREhdmTQGIFY'],
],
'parameters' => [
[
- 'name' => 'ConsoleContext',
+ 'name' => 'Engine',
'in' => 'query',
- 'schema' => [
- 'description' => 'The reserved parameter.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'None',
- ],
+ 'schema' => ['description' => 'The database engine. Valid values:'."\n"
+ ."\n"
+ .'- **MySQL**: ApsaraDB RDS for MySQL'."\n"
+ ."\n"
+ .'- **PolarDBMySQL**: PolarDB for MySQL'."\n"
+ ."\n"
+ .'- **PostgreSQL**: ApsaraDB RDS for PostgreSQL', 'type' => 'string', 'required' => true, 'example' => 'MySQL', 'title' => ''],
],
[
'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****\']',
- ],
+ 'schema' => ['description' => 'The instance IDs. Separate multiple IDs with commas (,).', 'type' => 'string', 'required' => false, 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
],
[
- 'name' => 'TableSpaceSize',
+ 'name' => 'TagNames',
'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',
- ],
+ 'schema' => ['description' => 'A reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
- 'name' => 'TableFragmentationRatio',
+ 'name' => 'Keywords',
'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',
- ],
+ 'schema' => ['description' => 'The keywords of the SQL template. Separate multiple keywords with spaces.', 'type' => 'string', 'required' => false, 'example' => 'select update', 'title' => ''],
],
[
- 'name' => 'ResultId',
+ 'name' => 'LogicalOperator',
'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****',
- ],
+ 'schema' => ['description' => 'The logical relationship between multiple keywords. Valid values:'."\n"
+ ."\n"
+ .'- **or**'."\n"
+ ."\n"
+ .'- **and**', 'type' => 'string', 'required' => false, 'example' => 'or', 'title' => ''],
],
- ],
- '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' => '',
- ],
+ [
+ '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~~).', 'type' => 'string', 'required' => false, 'example' => 'DAS_NOT_IMPORTANT', 'title' => ''],
],
- ],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ [
+ 'name' => 'DbNames',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The name of the database to be queried.', 'type' => 'string', 'required' => false, 'example' => 'testdb01', 'title' => ''],
],
- 403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ [
+ '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.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1642953600000', 'title' => ''],
],
- ],
- '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 &gt;= 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' => [],
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The number of entries per page. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''],
],
- ],
- 'operationType' => 'readAndWrite',
- 'systemTags' => [
- 'operationType' => 'none',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREhdmTFSOG0',
+ [
+ 'name' => 'PageNo',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The page number. Pages start from page 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
],
- ],
- 'parameters' => [
[
- 'name' => 'ConsoleContext',
+ 'name' => 'OrderBy',
'in' => 'query',
- 'schema' => [
- 'description' => 'The reserved parameter.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'None',
- ],
+ 'schema' => ['description' => 'The field by which to sort the returned entries. Default value: **count**. Valid values:'."\n"
+ ."\n"
+ .'- **count**: the number of executions.'."\n"
+ ."\n"
+ .'- **maxQueryTime**: the longest execution duration.'."\n"
+ ."\n"
+ .'- **avgQueryTime**: the average execution duration.'."\n"
+ ."\n"
+ .'- **maxLockTime**: the longest lock wait duration.'."\n"
+ ."\n"
+ .'- **avgLockTime**: the average lock wait duration.'."\n"
+ ."\n"
+ .'- **maxRowsExamined**: the largest number of scanned rows.'."\n"
+ ."\n"
+ .'- **avgRowsExamined**: the average number of scanned rows.'."\n"
+ ."\n"
+ .'- **maxRowsSent**: the largest number of returned rows.'."\n"
+ ."\n"
+ .'- **avgRowsSent**: the average number of returned rows.', 'type' => 'string', 'required' => false, 'example' => 'count', 'title' => ''],
],
[
- 'name' => 'InstanceIds',
+ 'name' => 'Asc',
'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****\']',
- ],
+ 'schema' => ['description' => 'Specifies whether to sort the returned entries in ascending order. Default value: **true**. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
+ ],
+ [
+ '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"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
+ ],
+ [
+ 'name' => 'SqlIds',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The SQL template IDs. You can call the [GetQueryOptimizeExecErrorStats](~~405261~~) operation to obtain the SQL template IDs.', 'type' => 'string', 'required' => false, 'example' => '6068ce044e3dc9b903979672fb0b69df,d12515c015fc9f41a0778a9e1de0****', 'title' => ''],
+ ],
+ [
+ 'name' => 'Region',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The region in which the instance resides. Valid values:'."\n"
+ ."\n"
+ .'- **cn-china**: Chinese mainland'."\n"
+ ."\n"
+ .'- **cn-hongkong**: China (Hong Kong)'."\n"
+ ."\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**.', 'type' => 'string', 'required' => false, 'example' => 'cn-china', 'title' => ''],
+ ],
+ [
+ 'name' => 'User',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The account of the database to be queried.', 'type' => 'string', 'required' => false, 'example' => 'testUser', 'title' => ''],
],
],
'responses' => [
@@ -21426,143 +16999,70 @@
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
+ 'Data' => ['title' => 'String', 'description' => 'The share URL.', 'type' => 'string', 'example' => 'https://hdm.console.aliyun.com/#/queryOptimize****'],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ '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"
+ ."\n"
+ .' - PolarDB for MySQL'."\n"
+ ."\n"
+ .' - ApsaraDB RDS for PostgreSQL',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetQueryOptimizeShareUrl'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetQueryOptimizeShareUrl',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- '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",
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
],
- 'GetAutoResourceOptimizeRules' => [
- 'summary' => 'Queries the automatic fragment recycling rules of database instances.',
- 'methods' => [
- 'get',
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'GetQueryOptimizeSolution' => [
+ 'summary' => 'Queries suggestions provided by query governance for optimizing an SQL template.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -21570,37 +17070,37 @@
],
'operationType' => 'read',
'systemTags' => [
- 'operationType' => 'none',
+ 'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
+ 'abilityTreeNodes' => ['FEATUREhdmTQGIFY'],
],
'parameters' => [
[
- 'name' => 'ConsoleContext',
+ 'name' => 'Engine',
'in' => 'query',
- 'schema' => [
- 'description' => 'The reserved parameter.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'None',
- ],
+ 'schema' => ['description' => 'The database engine. Valid values:'."\n"
+ ."\n"
+ .'- **MySQL**'."\n"
+ ."\n"
+ .'- **PolarDBMySQL**'."\n"
+ ."\n"
+ .'- **PostgreSQL**', 'type' => 'string', 'required' => true, 'example' => 'MySQL', 'title' => ''],
],
[
- 'name' => 'InstanceIds',
+ 'name' => 'SqlId',
'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****\']',
- ],
+ 'schema' => ['description' => 'The SQL template ID. You can call the [GetQueryOptimizeDataStats](~~405261~~) operation to query the SQL template ID.', 'type' => 'string', 'required' => true, 'example' => '05fecf7e7b3efd123c4d5197035f****', 'title' => ''],
+ ],
+ [
+ 'name' => 'RuleIds',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The tag ID. For more information, see [Query governance](~~290038~~).', 'type' => 'string', 'required' => true, 'example' => 'LARGE_ROWS_EXAMINED', 'title' => ''],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The instance ID. You can call the [GetQueryOptimizeDataStats](~~405261~~) operation to query the instance ID.', 'type' => 'string', 'required' => false, 'example' => 'rm-bp1o3z6beqpej****', 'title' => ''],
],
],
'responses' => [
@@ -21608,800 +17108,134 @@
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The returned message.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'Data' => [
- 'description' => 'The data returned.'."\n",
+ 'description' => 'The data returned.',
'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",
+ 'Total' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'PageNo' => ['description' => 'The reserved parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => 'None', 'title' => ''],
+ 'PageSize' => ['description' => 'The reserved parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => 'None', 'title' => ''],
+ 'Extra' => ['description' => 'The reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'List' => [
+ 'description' => 'The optimization suggestions.',
'type' => 'array',
'items' => [
+ 'description' => '',
'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****',
- ],
+ 'Level' => ['description' => 'The severity level. Valid values:'."\n"
+ ."\n"
+ .'- **INFO**'."\n"
+ ."\n"
+ .'- **WARN**', 'type' => 'string', 'example' => 'INFO', 'title' => ''],
+ 'RuleId' => ['description' => 'The tag ID.', 'type' => 'string', 'example' => 'LARGE_ROWS_EXAMINED', 'title' => ''],
+ 'Solution' => ['description' => 'The suggestion.', 'type' => 'string', 'example' => 'LARGE_ROWS_EXAMINED_SOLUTION', 'title' => ''],
+ 'SolutionExt' => ['description' => 'The reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
- ],
- '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****',
- ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '30FF4E40-17F3-5A51-AB23-43F30D9B****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ '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 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',
+ .'- 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"
+ ."\n"
+ .' - PolarDB for MySQL'."\n"
+ ."\n"
+ .' - ApsaraDB RDS for PostgreSQL',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetQueryOptimizeSolution'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetQueryOptimizeSolution',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ ],
+ 'GetQueryOptimizeTag' => [
+ 'summary' => 'Queries the tags of a SQL statement.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
+ 'operationType' => 'read',
+ 'deprecated' => false,
'systemTags' => [
- 'operationType' => 'update',
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => ['FEATUREhdmTQGIFY'],
],
'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',
+ 'name' => 'Engine',
'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,
- ],
+ 'schema' => ['description' => 'The database engine. Valid values:'."\n"
+ ."\n"
+ .'- **MySQL**: ApsaraDB RDS for MySQL'."\n"
+ ."\n"
+ .'- **PolarDBMySQL**: PolarDB for MySQL'."\n"
+ ."\n"
+ .'- **PostgreSQL**: ApsaraDB RDS for PostgreSQL', 'type' => 'string', 'required' => true, 'example' => 'MySQL', 'title' => ''],
],
[
- 'name' => 'Shard',
+ 'name' => 'SqlId',
'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,
- ],
+ 'schema' => ['description' => 'The SQL template ID. You can call the [GetQueryOptimizeDataStats](~~405261~~) operation to query the SQL template ID.', 'type' => 'string', 'required' => true, 'example' => '29d9fef63e347d39c3436658a5fe****', 'title' => ''],
],
[
- 'name' => 'Resource',
+ 'name' => 'InstanceId',
'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,
- ],
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
],
'responses' => [
@@ -22409,104 +17243,105 @@
'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',
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
+ 'Data' => [
+ 'title' => 'SqlTag',
+ 'description' => 'The returned SQL tag data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'SqlId' => ['description' => 'The SQL template ID.', 'type' => 'string', 'example' => '29d9fef63e347d39c3436658a5fe****', 'title' => ''],
+ 'Tags' => ['description' => 'The SQL tags. Multiple tags are separated by commas (,).', 'type' => 'string', 'title' => '', 'example' => 'DAS_IN_PLAN,DAS_NOT_IMPORTANT'],
+ 'Comments' => ['description' => 'The remarks.', 'type' => 'string', 'example' => 'Slow SQL from offline synchronization. No optimization needed.', 'title' => ''],
+ ],
+ 'example' => '',
],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ '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 \\"SqlId\\": \\"29d9fef63e347d39c3436658a5fe****\\",\\n \\"Tags\\": \\"DAS_IN_PLAN,DAS_NOT_IMPORTANT\\",\\n \\"Comments\\": \\"Slow SQL from offline synchronization. No optimization needed.\\"\\n }\\n}","type":"json"}]',
+ '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"
- .' * 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"
+ .'- If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n"
."\n"
- .'* You can modify the configurations of the **auto scaling feature for resources** for the following types of database instances:'."\n"
+ .'- This operation supports the following database engines:'."\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"
+ .' - ApsaraDB RDS for MySQL'."\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"
+ .' - PolarDB for MySQL'."\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',
+ .' - ApsaraDB RDS for PostgreSQL',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetQueryOptimizeTag'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetQueryOptimizeTag',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'translator' => 'manual',
+ ],
+ '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.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
+ ],
+ [
'name' => 'InstanceId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'pc-2ze1prap1k46r****',
- ],
+ 'schema' => ['description' => 'The database instance ID.', 'type' => 'string', 'required' => true, 'example' => 'r-2zemyfd1sh1u2i****', 'title' => ''],
],
],
'responses' => [
@@ -22514,396 +17349,198 @@
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'Data' => [
- 'description' => 'The configurations of the auto scaling feature for instances.'."\n",
+ 'description' => 'The session data.',
'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"
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1660100753556', 'title' => ''],
+ 'Total' => ['description' => 'The total number of sessions.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''],
+ 'Sessions' => [
+ 'description' => 'The information about the sessions.',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Sub' => ['description' => 'The number of subscribed channels.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'Psub' => ['description' => 'The number of subscriptions that match the pattern.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'Idle' => ['description' => 'The duration during which the session is in the idle state. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '8', 'title' => ''],
+ 'Flags' => ['description' => 'The client flag. Valid values:'."\n"
."\n"
- .'* **s**: seconds.'."\n"
- .'* **m**: minutes.'."\n"
- .'* **h**: hours.'."\n"
- .'* **d**: days.'."\n"
+ .'- **A**: The connection needs to be closed at the earliest opportunity.'."\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"
+ .'- **b**: The client is waiting for blocked events.'."\n"
."\n"
- .'* **s**: seconds.'."\n"
- .'* **m**: minutes.'."\n"
- .'* **h**: hours.'."\n"
- .'* **d**: days.'."\n"
+ .'- **c**: The connection is closed after all replies are written.'."\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"
+ .'- **d**: The monitored keys have been modified, and the `EXEC` command is about to fail.'."\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"
+ .'- **i**: The client is waiting for VM I/O operations. This value is no longer used.'."\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"
+ .'- **M**: The client is the primary node.'."\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**: No special flags are configured.'."\n"
."\n"
- .'* **s**: seconds.'."\n"
- .'* **m**: minutes.'."\n"
- .'* **h**: hours.'."\n"
- .'* **d**: days.'."\n"
+ .'- **O**: The client is in monitor mode.'."\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"
+ .'- **r**: The client is a cluster node in read-only mode.'."\n"
."\n"
- .'* **s**: seconds.'."\n"
- .'* **m**: minutes.'."\n"
- .'* **h**: hours.'."\n"
- .'* **d**: days.'."\n"
+ .'- **S**: The client is a replica node in normal mode.'."\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"
+ .'- **u**: The client is not blocked.'."\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"
+ .'- **U**: The client is connected by using UNIX domain sockets.'."\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"
+ .'- **x**: The client is executing a transaction.', 'type' => 'string', 'example' => 'N', 'title' => ''],
+ 'Oll' => ['description' => 'The number of objects contained in the output list.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'QbufFree' => ['description' => 'The remaining size of the input buffer. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'Multi' => ['description' => 'The number of commands in `MULTI` or `EXEC`.', 'type' => 'integer', 'format' => 'int64', 'example' => '-1', 'title' => ''],
+ 'Omem' => ['description' => 'The size of the output buffer. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'Qbuf' => ['description' => 'The size of the input buffer. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'Name' => ['description' => 'The name of the client.', 'type' => 'string', 'example' => 'test', 'title' => ''],
+ 'Obl' => ['description' => 'The size of the fixed output buffer. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'Client' => ['description' => 'The IP address of the client.', 'type' => 'string', 'example' => '172.16.XX.XX', 'title' => ''],
+ 'Cmd' => ['description' => 'The command that was last run.', 'type' => 'string', 'example' => 'PING', 'title' => ''],
+ 'Id' => ['description' => 'The client ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '9080586', 'title' => ''],
+ 'Addr' => ['description' => 'The IP address and port number of the client.', 'type' => 'string', 'example' => '172.16.XX.XX:53458', 'title' => ''],
+ 'NodeId' => ['description' => 'The node ID.', 'type' => 'string', 'example' => 'r-2zemyfd1sh1u2i****-proxy-14#1679****', 'title' => ''],
+ 'Age' => ['description' => 'The connection duration of the session. Unit: seconds.', 'type' => 'string', 'example' => '12', 'title' => ''],
+ 'Db' => ['description' => 'The ID of the database that the client is using.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'Events' => ['description' => 'The file descriptor event. Valid values:'."\n"
."\n"
- .'* **s**: seconds.'."\n"
- .'* **m**: minutes.'."\n"
- .'* **h**: hours.'."\n"
- .'* **d**: days.'."\n"
+ .'- **r**: Client sockets are readable in the event loop.'."\n"
."\n"
- .'> A value of **1d** indicates one day.'."\n",
- 'type' => 'string',
- 'example' => '1d',
+ .'- **w**: Client sockets are writable in the event loop.', 'type' => 'string', 'example' => 'r', 'title' => ''],
+ 'Fd' => ['description' => 'The file descriptor that is used by sockets.', 'type' => 'integer', 'format' => 'int64', 'example' => '73', 'title' => ''],
+ 'ClientDesc' => ['description' => 'The alias of the client.', 'type' => 'string', 'example' => 'prod ip', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
+ 'SourceStats' => [
+ 'description' => 'The statistics on the access source.',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => ['description' => 'The access source.', 'type' => 'string', 'example' => '172.16.XX.XX', 'title' => ''],
+ 'Count' => ['description' => 'The total number of sessions from the access source.', 'type' => 'string', 'example' => '1', 'title' => ''],
+ 'Ids' => [
+ 'description' => 'The client IDs.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The client ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '9080586', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '40C6E9AF-6C23-5614-AA83-34344CC6****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'GetRedisAllSession',
+ 'description' => '- This operation is applicable only to ApsaraDB for Redis instances.'."\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',
+ .'- 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.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetRedisAllSession'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetRedisAllSession',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ ],
+ 'GetRequestDiagnosisPage' => [
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- ],
+ 'systemTags' => ['operationType' => 'get'],
'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****',
- ],
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-0iwhhl8gx0ld6****', 'title' => ''],
],
[
- 'name' => 'AutoScalingTaskType',
+ 'name' => 'NodeId',
'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',
- ],
+ '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.', 'type' => 'string', 'required' => false, 'example' => '202****', 'title' => ''],
+ ],
+ [
+ 'name' => 'PageNo',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The page number. The value must be a positive integer. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '1', 'title' => ''],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The number of entries per page. The value must be a positive integer. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '10', 'title' => ''],
],
[
'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',
- ],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1633071840000', 'title' => ''],
],
[
'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',
- ],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1634972640000', 'title' => ''],
],
],
'responses' => [
@@ -22911,921 +17548,694 @@
'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',
- ],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '800FBAF5-A539-5B97-A09E-C63AB2F7****', 'title' => ''],
'Data' => [
- 'title' => 'AutoScalingInstanceHistory',
- 'description' => 'The history of auto scaling.'."\n",
+ 'description' => 'The returned data.',
'type' => 'object',
'properties' => [
- 'InstanceId' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'example' => 'rm-2ze1jdv45i7l6****',
- ],
- 'SpecHistory' => [
- 'description' => 'The history of automatic performance scaling.'."\n",
+ 'list' => [
+ 'description' => 'The SQL diagnostics records returned.',
'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',
- ],
+ 'messageId' => ['description' => 'The unique ID of the diagnostics task.', 'type' => 'string', 'example' => '61820b594664275c4429****', 'title' => ''],
+ 'uuid' => ['description' => 'The unique ID of the diagnostics instance.', 'type' => 'string', 'example' => 'hdm_51fe9bc19ec413f4d530431af87a****', 'title' => ''],
+ 'accountId' => ['description' => 'The user ID.', 'type' => 'string', 'example' => '2093****', 'title' => ''],
+ 'sqlId' => ['description' => 'The SQL template ID.', 'type' => 'string', 'example' => '0c95dae3afef77be06572612df9b****', 'title' => ''],
+ 'engine' => ['description' => 'The database engine. Valid values:'."\n"
+ ."\n"
+ .'- **MySQL**'."\n"
+ ."\n"
+ .'- **PostgreSQL**'."\n"
+ ."\n"
+ .'- **SQLServer**'."\n"
+ ."\n"
+ .'- **PolarDBMySQL**'."\n"
+ ."\n"
+ .'- **PolarDBOracle**'."\n"
+ ."\n"
+ .'- **MongoDB**', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
+ 'dbSchema' => ['description' => 'The name of the database.', 'type' => 'string', 'example' => 'das', 'title' => ''],
+ 'param' => ['description' => 'Additional information.', 'type' => 'string', 'example' => '{"":""}', 'title' => ''],
+ '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', 'title' => ''],
+ '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**: indicates whether the SQL diagnostics task is complete. Valid values:'."\n"
+ ."\n"
+ .' - **0001**: The SQL diagnostics task is complete.'."\n"
+ ."\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"
+ ."\n"
+ .' - **io**: the estimated I/O usage of the index.'."\n"
+ ."\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"
+ ."\n"
+ .' - **ddlAddIndex**: the DDL statement for the index.'."\n"
+ ."\n"
+ .' - **indexName**: the name of the index.'."\n"
+ ."\n"
+ .' - **schemaName**: the name of the database.'."\n"
+ ."\n"
+ .' - **tableName**: the name of the table.'."\n"
+ ."\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**: The SQL statement can be diagnosed.'."\n"
+ ."\n"
+ .' - **false**: The SQL statement cannot be diagnosed.'."\n"
+ ."\n"
+ .'- **tuningAdvices**: the SQL rewrite suggestions.', 'type' => 'string', 'example' => '{ "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":[ ] }', 'title' => ''],
+ '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', 'title' => ''],
+ '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', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
- ],
+ 'pageNo' => ['description' => 'The page number. The value must be a positive integer. Default value: 1.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'pageSize' => ['description' => 'The number of entries per page. The value must be a positive integer. Default value: 10.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''],
+ 'total' => ['description' => 'The total number of returned entries.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
+ 'extra' => ['description' => 'Additional information.', 'type' => 'string', 'example' => '{"":""}', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'title' => 'GetRequestDiagnosisPage',
+ 'summary' => 'Queries SQL diagnostics records by pages.',
+ '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"
+ ."\n"
+ .' - ApsaraDB RDS for PostgreSQL'."\n"
+ ."\n"
+ .' - ApsaraDB RDS for SQL Server'."\n"
+ ."\n"
+ .' - PolarDB for MySQL'."\n"
+ ."\n"
+ .' - PolarDB for PostgreSQL (Compatible with Oracle)'."\n"
+ ."\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~~).',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetRequestDiagnosisPage'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetRequestDiagnosisPage',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- '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",
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
],
- 'DisableInstanceDasConfig' => [
- 'summary' => 'Disables the auto scaling feature for a database instance.',
- 'methods' => [
- 'get',
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'GetRequestDiagnosisResult' => [
+ 'summary' => 'Call GetRequestDiagnosisResult to retrieve the SQL diagnosis results.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
- 'systemTags' => [
- 'operationType' => 'update',
- ],
+ 'operationType' => 'read',
+ 'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The database instance ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'r-bp1nti25tc7bq5****',
- ],
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-0iwhhl8gx0ld6****', 'title' => ''],
],
[
- 'name' => 'Engine',
+ 'name' => 'NodeId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The database engine. Set the value to Redis.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'Redis',
- ],
+ 'schema' => ['description' => 'The node ID.'."\n"
+ ."\n"
+ .'> This parameter is required for cluster instances such as PolarDB for MySQL, PolarDB for PostgreSQL (Oracle-compatible), and ApsaraDB for MongoDB.', 'type' => 'string', 'required' => false, 'example' => '202****', 'title' => ''],
],
[
- 'name' => 'ScaleType',
+ 'name' => 'MessageId',
'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',
- ],
- ],
+ 'schema' => ['description' => 'The unique diagnosis ID returned by the [CreateRequestDiagnosis](~~341609~~) operation.'."\n"
+ ."\n"
+ .'> If `MessageId` is the diagnosis ID for automatic SQL optimization, this operation does not return diagnosis results.', 'type' => 'string', 'required' => true, 'example' => '61820b594664275c4429****', 'title' => ''],
+ ],
+ [
+ 'name' => 'SqlId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The SQL template ID.'."\n"
+ ."\n"
+ .'> This parameter is for internal use by the DAS console. You do not need to specify this parameter.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'None'],
+ ],
+ [
+ 'name' => 'Source',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The source of the task.'."\n"
+ ."\n"
+ .'> This parameter is for internal use by the DAS console. You do not need to specify this parameter.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'None'],
],
],
'responses' => [
200 => [
+ 'headers' => [],
'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',
- ],
+ 'Message' => ['description' => 'The response message.'."\n"
+ ."\n"
+ .'> This parameter returns `Successful` if the request succeeds. If the request fails, it returns an error message, which may include an error code.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '800FBAF5-A539-5B97-A09E-C63AB2F7****', 'title' => ''],
'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' => 'The returned data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'messageId' => ['description' => 'The unique ID of the diagnosis.', 'type' => 'string', 'example' => '61820b594664275c4429****', 'title' => ''],
+ 'uuid' => ['description' => 'The unique identifier of the diagnosed instance.', 'type' => 'string', 'example' => 'hdm_51fe9bc19ec413f4d530431af87a****', 'title' => ''],
+ 'accountId' => ['description' => 'The user ID.', 'type' => 'string', 'example' => '2093****', 'title' => ''],
+ 'sqlId' => ['description' => 'The SQL template ID.', 'type' => 'string', 'example' => '0c95dae3afef77be06572612df9b****', 'title' => ''],
+ 'engine' => ['description' => 'The database engine. Valid values:'."\n"
+ ."\n"
+ .'- **MySQL**'."\n"
+ ."\n"
+ .'- **PostgreSQL**'."\n"
+ ."\n"
+ .'- **SQL Server**'."\n"
+ ."\n"
+ .'- **PolarDB-X**'."\n"
+ ."\n"
+ .'- **PolarDB for Oracle**'."\n"
+ ."\n"
+ .'- **MongoDB**', 'type' => 'string', 'example' => 'MySQL', 'title' => ''],
+ 'dbSchema' => ['description' => 'The database name.', 'type' => 'string', 'example' => 'das', 'title' => ''],
+ 'param' => ['description' => 'Additional information.', 'type' => 'string', 'example' => '{"":""}', 'title' => ''],
+ 'state' => ['description' => 'The diagnosis status. Valid values:'."\n"
+ ."\n"
+ .'- **0**: In progress.'."\n"
+ ."\n"
+ .'- **1**: Diagnosis error.'."\n"
+ ."\n"
+ .'- **2**: Completed.'."\n"
+ ."\n"
+ .'- **3**: SQL error.'."\n"
+ ."\n"
+ .'- **4**: Engine error.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''],
+ 'result' => ['description' => 'The details of the SQL diagnosis result, returned as a JSON-formatted string.'."\n"
+ ."\n"
+ .'- **endTime**: The end time of the SQL diagnosis.'."\n"
+ ."\n"
+ .'- **errorCode**: The error code.'."\n"
+ ."\n"
+ .' - **0001**: The diagnosis was successful.'."\n"
+ ."\n"
+ .' - **0003**: The diagnosis failed.'."\n"
+ ."\n"
+ .'- **errorMessage**: The error message.'."\n"
+ ."\n"
+ .'- **estimateCost**: The estimated cost.'."\n"
+ ."\n"
+ .' - **cpu**: The estimated CPU cost of the query.'."\n"
+ ."\n"
+ .' - **io**: The estimated I/O cost of the query.'."\n"
+ ."\n"
+ .' - **rows**: The estimated number of rows returned by the query.'."\n"
+ ."\n"
+ .'- **improvement**: The performance improvement ratio.'."\n"
+ ."\n"
+ .'- **indexAdvices**: The index suggestions.'."\n"
+ ."\n"
+ .' - **columns**: The index columns.'."\n"
+ ."\n"
+ .' - **ddlAddIndex**: The DDL statement for creating the index.'."\n"
+ ."\n"
+ .' - **indexName**: The index name.'."\n"
+ ."\n"
+ .' - **schemaName**: The schema name.'."\n"
+ ."\n"
+ .' - **tableName**: The table name.'."\n"
+ ."\n"
+ .' - **unique**: Indicates whether the index is a unique index.'."\n"
+ ."\n"
+ .'- **ip**: The instance IP address.'."\n"
+ ."\n"
+ .'- **messageId**: The diagnosis ID.'."\n"
+ ."\n"
+ .'- **port**: The instance port.'."\n"
+ ."\n"
+ .'- **sqlTag**: The SQL tags.'."\n"
+ ."\n"
+ .' - **PRED\\_EQUAL**: Equality predicate.'."\n"
+ ."\n"
+ .' - **CNT\\_QB**: Number of query blocks.'."\n"
+ ."\n"
+ .' - **CNT\\_TB**: Number of tables.'."\n"
+ ."\n"
+ .' - **JOIN\\_LEFT**: Left join.'."\n"
+ ."\n"
+ .' - **SEL\\_SMALL**: Small result set selection.'."\n"
+ ."\n"
+ .' - **AGGR\\_SEL**: Aggregate selection.'."\n"
+ ."\n"
+ .' - **PRED\\_LT\\_EQ / PRED\\_GT\\_EQ**: Less-than-or-equal-to / greater-than-or-equal-to predicate.'."\n"
+ ."\n"
+ .' - **PRED\\_LIKE\\_PREFIX**: LIKE prefix match.'."\n"
+ ."\n"
+ .' - **ORDER\\_BY**: Contains an ORDER BY clause.'."\n"
+ ."\n"
+ .' - **LIMIT**: Contains a LIMIT clause.'."\n"
+ ."\n"
+ .' - **GROUP\\_BY**: Contains a GROUP BY clause.'."\n"
+ ."\n"
+ .' - **JOIN\\_INNER**: Inner join.'."\n"
+ ."\n"
+ .' - **JOIN\\_RIGHT**: Right join.'."\n"
+ ."\n"
+ .' - **HAVING**: Contains a HAVING clause.'."\n"
+ ."\n"
+ .' - **UNION**: Contains a UNION operation.'."\n"
+ ."\n"
+ .'- **startTime**: The start time of the SQL diagnosis.'."\n"
+ ."\n"
+ .'- **success**: Indicates whether the diagnosis was successful.'."\n"
+ ."\n"
+ .'- **support**: Indicates whether the SQL statement can be diagnosed.'."\n"
+ ."\n"
+ .' - **true**: Supported.'."\n"
+ ."\n"
+ .' - **false**: Not supported.'."\n"
+ ."\n"
+ .'- **tuningAdvices**: The SQL rewrite suggestions.', 'type' => 'string', 'example' => '{ "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":[ ] }', 'title' => ''],
+ 'gmtCreate' => ['description' => 'The creation time of the SQL diagnosis, provided as a Unix timestamp in milliseconds.', 'type' => 'string', 'example' => '1633071840000', 'title' => ''],
+ 'gmtModified' => ['description' => 'The last modification time of the SQL diagnosis, provided as a Unix timestamp in milliseconds.', 'type' => 'string', 'example' => '1633071850000', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
+ 'Code' => ['description' => 'The status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request succeeded.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ 'title' => 'GetRequestDiagnosisResult',
+ 'description' => 'This API has the following prerequisites:'."\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',
+ .'- When you use an SDK to call the DAS service, you must set the region to cn-shanghai.'."\n"
+ ."\n"
+ .'- This API does not support querying diagnosis results for automatic SQL optimization.'."\n"
+ ."\n"
+ .'- This API supports the following database engines:'."\n"
+ ."\n"
+ .' - RDS MySQL'."\n"
+ ."\n"
+ .' - RDS PostgreSQL'."\n"
+ ."\n"
+ .' - RDS SQL Server'."\n"
+ ."\n"
+ .' - PolarDB for MySQL'."\n"
+ ."\n"
+ .' - PolarDB for PostgreSQL (Oracle-Compatible)'."\n"
+ ."\n"
+ .' - ApsaraDB for MongoDB'."\n"
+ ."\n"
+ .'> RDS PostgreSQL instances require minor kernel version 20220130 or later. To view and upgrade the minor kernel version, see [Upgrade the minor kernel version](~~146895~~).',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetRequestDiagnosisResult'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetRequestDiagnosisResult',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'GetRunningSqlConcurrencyControlRules' => [
+ 'summary' => 'Queries the throttling rules that are in effect.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
- 'systemTags' => [
- 'operationType' => 'get',
- ],
+ 'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'ConsoleContext',
'in' => 'query',
- 'schema' => [
- 'description' => 'The reserved parameter.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'None',
- ],
+ 'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
'name' => 'InstanceId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'pxc-hzrciqy62c****',
- ],
+ '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.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
],
[
- 'name' => 'TimeRange',
+ 'name' => 'PageNo',
'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',
- ],
+ 'schema' => ['description' => 'The page number. The value must be a positive integer. Default value: 1.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''],
],
[
- 'name' => 'Type',
+ 'name' => 'PageSize',
'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',
- ],
+ 'schema' => ['description' => 'The number of entries per page. The value must be a positive integer. Default value: 10.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10', 'title' => ''],
],
],
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'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',
+ 'description' => 'The detailed information, including the error codes and the number of entries that are returned.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Total' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''],
+ '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', 'title' => ''],
+ 'SqlType' => ['description' => 'The type of the SQL statements. Valid values:'."\n"
+ ."\n"
+ .'- **SELECT**'."\n"
+ ."\n"
+ .'- **UPDATE**'."\n"
+ ."\n"
+ .'- **DELETE**', 'type' => 'string', 'example' => 'SELECT', 'title' => ''],
+ 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
+ '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', 'title' => ''],
+ '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', 'title' => ''],
+ '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****', 'title' => ''],
+ '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', 'title' => ''],
+ 'UserId' => ['description' => 'The Alibaba Cloud account ID.', 'type' => 'string', 'example' => 'testxxx', 'title' => ''],
+ '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', 'title' => ''],
+ 'Status' => ['description' => 'The status of the throttling rule. The value of **Open** indicates that the throttling rule is in effect.', 'type' => 'string', 'example' => 'Open', 'title' => ''],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
+ ],
+ ],
+ 'title' => 'GetRunningSqlConcurrencyControlRules',
+ 'description' => 'This operation supports the following database engines:'."\n"
+ ."\n"
+ .'- ApsaraDB RDS for MySQL'."\n"
+ ."\n"
+ .'- PolarDB for MySQL',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetRunningSqlConcurrencyControlRules'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetRunningSqlConcurrencyControlRules',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
],
- '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",
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
],
- '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',
- ],
+ 'GetSqlConcurrencyControlKeywordsFromSqlText' => [
+ 'summary' => 'Generates a throttling keyword string based on an SQL statement.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '152860',
- 'abilityTreeNodes' => [
- 'FEATUREhdmFT57I0',
- ],
- ],
+ 'systemTags' => ['operationType' => 'get'],
'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' => 'ConsoleContext',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
- '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' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze5hpn2b99d2****', 'title' => ''],
],
[
- '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',
- ],
+ 'name' => 'SqlText',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The SQL statement based on which a throttling keyword string is to be generated.', 'type' => 'string', 'required' => true, 'example' => 'SELECT * FROM test where name = \'das\'', 'title' => ''],
],
],
'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',
- ],
- ],
- ],
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'Data' => ['description' => 'The throttling keyword string that was generated based on the SQL statement.', 'type' => 'string', 'example' => 'SELECT~FROM~test~where~name', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '30A643F5-D7A6-55F5-AB75-DF501427****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'title' => 'GetSqlConcurrencyControlKeywordsFromSqlText',
+ 'description' => 'This operation supports the following database engines:'."\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',
+ .'- ApsaraDB RDS for MySQL'."\n"
+ ."\n"
+ .'- PolarDB for MySQL',
+ '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`.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSqlConcurrencyControlKeywordsFromSqlText'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetSqlConcurrencyControlKeywordsFromSqlText',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ ],
+ 'GetSqlConcurrencyControlRulesHistory' => [
+ 'summary' => 'Queries the throttling rules that are being executed or have been triggered.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREhdmF0MV2I',
- ],
- ],
+ 'systemTags' => ['operationType' => 'get'],
'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' => 'ConsoleContext',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
- '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' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The instance ID.'."\n"
+ ."\n"
+ .'> Only ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters are supported.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
],
[
- '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' => 'PageNo',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The page number. The value must be an integer that is greater than 0. Default value: 1.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''],
],
[
- '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',
- ],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10', 'title' => ''],
],
],
'responses' => [
@@ -23833,736 +18243,281 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => 'The HTTP status code returned.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '200',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'Data' => [
- 'description' => 'The data returned.'."\n",
+ 'description' => 'The detailed information, including the error codes and the number of entries that are returned.',
'type' => 'object',
- 'additionalProperties' => [
- 'type' => 'array',
- 'items' => [
+ 'properties' => [
+ 'Total' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '4', 'title' => ''],
+ 'List' => [
'type' => 'object',
+ 'itemNode' => true,
'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',
+ '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', 'title' => ''],
+ 'SqlType' => ['description' => 'The type of the SQL statements. Valid values:'."\n"
+ ."\n"
+ .'- **SELECT**'."\n"
+ ."\n"
+ .'- **UPDATE**'."\n"
+ ."\n"
+ .'- **DELETE**', 'type' => 'string', 'example' => 'SELECT', 'title' => ''],
+ 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
+ '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', 'title' => ''],
+ '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', 'title' => ''],
+ '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****', 'title' => ''],
+ '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', 'title' => ''],
+ 'UserId' => ['description' => 'The user ID.', 'type' => 'string', 'example' => 'testxxx', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''],
+ 'Status' => ['description' => 'The state of the throttling rule. Valid values:'."\n"
+ ."\n"
+ .'- **Open**: The throttling rule is in effect.'."\n"
+ ."\n"
+ .'- **Closed**: The throttling rule was in effect.', 'type' => 'string', 'example' => 'Open', 'title' => ''],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
'description' => '',
+ 'title' => '',
+ 'example' => '',
],
- 'description' => 'The details of the data returned.',
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'title' => 'GetSqlConcurrencyControlRulesHistory',
+ 'description' => 'This operation supports the following database engines:'."\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',
+ .'- ApsaraDB RDS for MySQL'."\n"
+ ."\n"
+ .'- PolarDB for MySQL',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSqlConcurrencyControlRulesHistory'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetSqlConcurrencyControlRulesHistory',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ ],
+ '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',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREhdmFT57I0',
- ],
- ],
+ 'systemTags' => ['operationType' => 'get'],
'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' => 'ConsoleContext',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
- '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' => 'Engine',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The database engine. Valid values:'."\n"
+ ."\n"
+ .'- **MySQL**: ApsaraDB RDS for MySQL.'."\n"
+ ."\n"
+ .'- **PolarDBMySQL**: PolarDB for MySQL.', 'type' => 'string', 'required' => false, 'example' => 'MySQL', 'title' => ''],
],
[
- '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' => '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.', 'type' => 'string', 'required' => false, 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
],
[
- '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' => '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"
+ ."\n"
+ .'- The value must be earlier than the current day.', 'type' => 'string', 'required' => false, 'example' => '20210916', 'title' => ''],
],
[
- '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' => '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"
+ ."\n"
+ .'- The value must be earlier than the current day. The interval between the start date and the end date cannot exceed 30 days.', 'type' => 'string', 'required' => false, 'example' => '20210917', 'title' => ''],
],
[
- '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',
- ],
+ 'name' => 'Region',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The region in which the instance resides. Valid values:'."\n"
+ ."\n"
+ .'- **cn-china**: Chinese mainland.'."\n"
+ ."\n"
+ .'- **cn-hongkong**: China (Hong Kong).'."\n"
+ ."\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**.', 'type' => 'string', 'required' => false, 'example' => 'cn-china', 'title' => ''],
],
],
'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****',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'Data' => [
- 'description' => 'The returned data.'."\n",
+ 'description' => 'The detailed information, including the error codes and the number of entries that are returned.',
'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',
- ],
+ 'Status' => ['description' => 'The status of the task. Valid values:'."\n"
+ ."\n"
+ .'- **INIT**: The task is being initialized.'."\n"
+ ."\n"
+ .'- **RUNNING**: The task is running.'."\n"
+ ."\n"
+ .'- **FINISH**: The task is complete.'."\n"
+ ."\n"
+ .'- **FAILED**: The task failed.', 'type' => 'string', 'example' => 'FINISH', 'title' => ''],
+ 'StatusCode' => ['description' => 'The status code of the task. Valid values:'."\n"
+ ."\n"
+ .'- **NO\\_DATA**: No data is returned.'."\n"
+ ."\n"
+ .'- **INTERNAL\\_ERROR**: An internal error occurred.'."\n"
+ ."\n"
+ .'- **SUCCESS**: The task is successful.', 'type' => 'string', 'example' => 'SUCCESS', 'title' => ''],
+ 'DownloadUrl' => ['description' => 'The URL that is used to download the file.', 'type' => 'string', 'example' => 'https://das-sql-optimize.oss-cn-shanghai.aliyuncs.com/adb/oss_sql_optimize_advice/1083*******', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => '1632303861000', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => '1632563061000', 'title' => ''],
+ 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => '2021091710461519216****', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ '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"
- .'* 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',
+ .'> Returns only optimization suggestions that the SQL diagnostics feature automatically generates.'."\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"
+ ."\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"
+ ."\n"
+ .'- If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.',
+ 'changeSet' => [],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetSqlOptimizeAdvice',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- 'schemes' => [
- 'https',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSqlOptimizeAdvice'],
+ ],
],
+ ],
+ 'GetStorageAnalysisResult' => [
+ 'summary' => 'Queries the status and results of a storage analysis task.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -24574,256 +18529,257 @@
'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '235508',
- 'abilityTreeNodes' => [
- 'FEATUREhdmR88NLD',
- ],
- 'tenantRelevance' => 'tenant',
+ 'abilityTreeCode' => '204031',
+ 'abilityTreeNodes' => ['FEATUREhdm3TU4OK'],
],
'parameters' => [
[
'name' => 'InstanceId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'pc-bp1u5mas9exx7****',
- ],
+ 'in' => 'query',
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
],
[
'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',
- ],
+ 'in' => 'query',
+ 'schema' => ['description' => 'The node ID.'."\n"
+ ."\n"
+ .'> This parameter is reserved.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
- '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,
- ],
+ 'name' => 'TaskId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The task ID. You can obtain the task ID from the response of the [CreateStorageAnalysisTask](~~2639140~~) operation.', 'type' => 'string', 'required' => true, 'example' => '910f83f4b96df0524ddc5749f615****', 'title' => ''],
],
],
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'Data' => [
- 'title' => 'ListResult<VariableInspectionStrategy>',
- 'description' => '',
+ 'description' => 'The data returned.',
'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' => [
+ 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => '910f83f4b96df0524ddc5749f615****', 'title' => ''],
+ 'TaskFinish' => ['description' => 'Indicates whether the task is complete.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'TaskSuccess' => ['description' => 'Indicates whether the task is successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'TaskState' => ['description' => 'The status of the storage analysis task. Valid values:'."\n"
+ ."\n"
+ .'- **INIT**: The task is being initialized.'."\n"
+ ."\n"
+ .'- **PENDING**: The task is being queued for execution.'."\n"
+ ."\n"
+ .'- **RECEIVED**: The task is received for execution.'."\n"
+ ."\n"
+ .'- **RUNNING**: The task is being executed.'."\n"
+ ."\n"
+ .'- **RETRY**: The task is being retried.'."\n"
+ ."\n"
+ .'- **SUCCESS**: The task succeeds.'."\n"
+ ."\n"
+ .'- **FAILURE**: The task fails.', 'type' => 'string', 'example' => 'SUCCESS', 'title' => ''],
+ 'TaskProgress' => ['description' => 'The task progress.'."\n"
+ ."\n"
+ .'> Valid values are integers that range from 0 to 100.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
+ 'TotalDbCount' => ['description' => 'The number of databases that need to be analyzed in the storage analysis task.', 'type' => 'integer', 'format' => 'int64', 'example' => '32', 'title' => ''],
+ 'AnalyzedDbCount' => ['description' => 'The number of databases that have been analyzed.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''],
+ 'StorageAnalysisResult' => [
+ 'description' => 'The details of storage analysis.',
+ 'type' => 'object',
+ 'properties' => [
+ 'TotalStorageSize' => ['description' => 'The total size of instance storage.'."\n"
+ ."\n"
+ .'> Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '214748364800', 'title' => ''],
+ 'TotalUsedStorageSize' => ['description' => 'The size of used storage.'."\n"
+ ."\n"
+ .'> Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '68345135104', 'title' => ''],
+ 'TotalFreeStorageSize' => ['description' => 'The size of remaining storage.'."\n"
+ ."\n"
+ .'> Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '146403229696', 'title' => ''],
+ 'DailyIncrement' => ['description' => 'The estimated average daily growth of the used storage space in the previous seven days. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''],
+ 'EstimateAvailableDays' => ['description' => 'The estimated number of days for which the remaining storage space is available.', 'type' => 'integer', 'format' => 'int64', 'example' => '99', 'title' => ''],
+ 'AnalysisSuccess' => ['description' => 'Indicates whether the analysis on the database and table is successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ '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"
+ ."\n"
+ .'- **DB\\_NOT\\_EXIST**: The specified database does not exist.', 'type' => 'string', 'example' => 'DB_NOT_EXIST', 'title' => ''],
+ '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.',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'DbName' => ['description' => 'The name of the database.', 'type' => 'string', 'example' => 'testdb01', 'title' => ''],
+ 'TableName' => ['description' => 'The name of the table.', 'type' => 'string', 'example' => 'test_table', 'title' => ''],
+ '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"
+ ."\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%.', 'type' => 'string', 'example' => 'NEED_OPTIMIZE_TABLE', 'title' => ''],
+ '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"
+ ."\n"
+ .'- **NEED\\_OPTIMIZE\\_TABLE**: You can reclaim fragments during off-peak hours.'."\n"
+ ."\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"
+ ."\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"
+ ."\n"
+ .'- **DUPLICATE\\_INDEX**: Optimize indexes of tables. This is applicable only to ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters.'."\n"
+ ."\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"
+ ."\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"
+ ."\n"
+ .'- **STORAGE\\_USED\\_PERCENT**: Pay attention to the space usage to prevent the instance from being locked if the instance is full.', 'type' => 'string', 'example' => 'NEED_OPTIMIZE_TABLE', 'title' => ''],
+ 'AssociatedData' => ['description' => 'The data associated with the items to be optimized, which is in the JSON format.', 'type' => 'string', 'example' => '{'."\n"
+ .' "autoIncrementCurrentValue": 2147483647,'."\n"
+ .' "autoIncrementRatio": 1,'."\n"
+ .' "dbName": "testdb01",'."\n"
+ .' "maximumValue": 2147483647,'."\n"
+ .' "columnName": "id",'."\n"
+ .' "tableName": "test_table"'."\n"
+ .'}', 'title' => ''],
+ ],
'description' => '',
- 'type' => 'string',
- 'example' => 'conn18xxxxxx',
+ 'title' => '',
+ 'example' => '',
],
- 'Content' => [
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'TableStats' => [
+ 'description' => 'The information about the table.',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'DbName' => ['description' => 'The name of the database.', 'type' => 'string', 'example' => 'testdb01', 'title' => ''],
+ 'TableName' => ['description' => 'The name of the table.', 'type' => 'string', 'example' => 'test_table', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'BASE TABLE', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'InnoDB', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '3057655808', 'title' => ''],
+ '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**.', 'type' => 'integer', 'format' => 'int64', 'example' => '3012493312', 'title' => ''],
+ '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"
+ ."\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`.', 'type' => 'integer', 'format' => 'int64', 'example' => '3005153280', 'title' => ''],
+ 'IndexSize' => ['description' => 'The storage space occupied by indexes. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '1022296064', 'title' => ''],
+ '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"
+ ."\n"
+ .'- For ApsaraDB for MongoDB instances, this parameter indicates the size of uncompressed data, that is, the amount of data. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '1982857216', 'title' => ''],
+ '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`.', 'type' => 'integer', 'format' => 'int64', 'example' => '7340032', 'title' => ''],
+ 'TableRows' => ['description' => 'The number of rows in the table.', 'type' => 'integer', 'format' => 'int64', 'example' => '12794732', 'title' => ''],
+ 'AvgRowLength' => ['description' => 'The average length of rows. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '154', 'title' => ''],
+ '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`.', 'type' => 'integer', 'format' => 'int64', 'example' => '362221568', 'title' => ''],
+ ],
'description' => '',
- 'type' => 'string',
- 'example' => '2025-07-15T15:14:27.175188+08:00 0 [Note] [MY-012468] [InnoDB] Transactions deadlock detected, dumping detailed information.',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request is successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
+ ],
+ ],
+ '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"
+ ."\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"
+ ."\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"
+ ."\n"
+ .'- If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.',
+ 'changeSet' => [],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'hdm:GetStorageAnalysisResult',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetStorageAnalysisResult'],
+ ],
],
- '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',
- ],
+ 'GetYaoChiAgent' => [
+ 'path' => '/agent',
+ 'methods' => ['post'],
+ 'schemes' => ['https', 'sse'],
'security' => [
[
'AK' => [],
@@ -24835,783 +18791,728 @@
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREhdmB8MM4L',
- 'FEATUREhdmROFBLE',
- 'FEATUREhdm1XKIXR',
- 'FEATUREhdmR88NLD',
- 'FEATUREhdm3TU4OK',
- ],
- 'autoTest' => true,
- 'tenantRelevance' => 'tenant',
+ 'abilityTreeNodes' => ['FEATUREhdmROFBLE'],
],
'parameters' => [
[
'name' => 'Query',
'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'Are there any issues or abnormalities with my instance rm-xxx?',
- ],
+ 'schema' => ['description' => 'The natural language description of the question.', 'type' => 'string', 'required' => true, 'example' => 'Are there any issues or abnormalities with my instance rm-xxx?', 'title' => ''],
],
[
- 'name' => 'InstanceId',
+ 'name' => 'SessionId',
'in' => 'query',
- 'allowEmptyValue' => true,
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'rm-xxxx',
- ],
+ 'schema' => ['description' => 'The session ID in UUID string format. This parameter is optional. If you do not specify this parameter, a new session is created. To maintain context across a conversation, use the same session ID.', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-xxxxxxxxxxxx', 'title' => ''],
],
[
- 'name' => 'SessionId',
+ 'name' => 'Source',
'in' => 'query',
'schema' => [
- 'description' => '',
+ 'description' => 'The cloud service source that specifies which cloud service the question belongs to. This parameter is optional. Default value: yaochi.',
+ 'enumValueTitles' => ['tair' => 'tair', 'dbs' => 'dbs', 'polardb-ai' => 'polardb-ai', 'polarx' => 'polarx', 'yaochi' => 'yaochi', 'polarx-light' => 'polarx-light', 'lindorm' => 'lindorm', 'mongodb' => 'mongodb', 'polardb' => 'polardb'],
'type' => 'string',
'required' => false,
- 'example' => 'xxx-xxx-xxx',
+ 'example' => 'yaochi',
+ 'title' => '',
],
],
[
- 'name' => 'AgentId',
+ 'name' => 'ExtraInfo',
'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'ag-472T0DxtmjIxxxxx',
- ],
+ 'schema' => ['description' => 'The additional information in JSON string format. This parameter is optional.', 'type' => 'string', 'required' => false, 'example' => '{}', 'title' => ''],
+ ],
+ [
+ 'name' => 'ImageKeys',
+ 'in' => 'query',
+ 'schema' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
+ 'title' => '',
'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"]',
- ],
+ 'Content' => ['title' => '', 'description' => 'The response content.', 'type' => 'string', 'example' => 'xxx'],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '7172BECE-588A-5961-8126-C216E16B****', 'title' => ''],
+ 'ReasoningContent' => ['description' => 'The reasoning content of the model.', 'type' => 'string', 'example' => 'xxx', 'title' => ''],
+ 'Product' => ['description' => 'The cloud service type.', 'type' => 'string', 'example' => 'polardb', 'title' => ''],
+ 'FunctionCall' => [
+ 'description' => 'The tool calling invoke list.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The list of strings.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => ['description' => 'The name of the called tool.', 'type' => 'string', 'example' => 'sqlReview', 'title' => ''],
+ 'Arguments' => ['description' => 'The parameters of the called tool.', 'type' => 'string', 'example' => '{"arg": "xxx"}', 'title' => ''],
+ 'Id' => ['description' => 'The tool ID.', 'type' => 'string', 'example' => '12345', 'title' => ''],
+ 'Status' => ['description' => 'The tool calling invoke status.', 'type' => 'string', 'example' => 'RUNNING', 'title' => ''],
],
- 'RequestId' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '04930480-9404-50CB-8252-Axxxxxxxx',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'UiFunctionCall' => [
+ 'description' => 'The card tool calling invoke list.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The list of strings.',
+ 'type' => 'object',
+ 'properties' => [
+ 'ArgsText' => ['description' => 'The parameters of the card tool.', 'type' => 'string', 'example' => '{"arg": "xxx"}', 'title' => ''],
+ 'ToolName' => ['description' => 'The name of the card tool.', 'type' => 'string', 'example' => 'card', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
- 'Event' => [
- 'description' => '',
- 'type' => 'string',
- 'enumValueTitles' => [
- 'summary' => '',
- ' error ' => '',
- 'agent_message ' => '',
+ 'SessionId' => ['description' => 'The session ID. This value is the same as the SessionId request parameter.', 'type' => 'string', 'example' => '123e4567-e89b-12d3-a456-xxxxxxxxxxxx', 'title' => ''],
+ 'QueryId' => ['description' => 'The query ID. This value is the same as the QueryId request parameter.', 'type' => 'string', 'example' => '123e4567-e89b-12d3-a456-xxxxxxxxxxxx', 'title' => ''],
+ 'SubAgentCall' => [
+ 'description' => 'The list of sub-agent call information.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The list of strings.',
+ 'type' => 'object',
+ 'properties' => [
+ 'SubAgentId' => ['description' => 'The sub-agent ID.', 'type' => 'string', 'example' => '12345', 'title' => ''],
+ 'SubAgentName' => ['description' => 'The sub-agent name.', 'type' => 'string', 'example' => 'XX Agent', 'title' => ''],
+ 'Status' => ['description' => 'The sub-agent status.', 'type' => 'string', 'example' => 'running', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
- 'example' => 'summary',
+ 'title' => '',
+ 'example' => '',
],
+ 'ParentId' => ['description' => 'The ParentId field. This field exists only when the message is output by a sub-agent, and the value is the sub-agent ID.', 'type' => 'string', 'example' => '12345', 'title' => ''],
],
+ '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'],
+ 'title' => 'Call the apsaraDB agent foundation model capability interface',
+ 'summary' => 'Provides the Alibaba Cloud ApsaraDB Agent foundation model capability interface for AI chat, performance diagnostics, and other features.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
[
- [
- 'errorCode' => 'InstanceNotFound',
- 'errorMessage' => 'Requested instance not found.',
- ],
- ],
- 500 => [
- [
- 'errorCode' => 'Timeout',
- 'errorMessage' => 'The request processing has failed due to timeout.',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetYaoChiAgent',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
],
- '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"}]',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Content\\": \\"xxx\\",\\n \\"RequestId\\": \\"7172BECE-588A-5961-8126-C216E16B****\\",\\n \\"ReasoningContent\\": \\"xxx\\",\\n \\"Product\\": \\"polardb\\",\\n \\"FunctionCall\\": [\\n {\\n \\"Name\\": \\"sqlReview\\",\\n \\"Arguments\\": \\"{\\\\\\"arg\\\\\\": \\\\\\"xxx\\\\\\"}\\",\\n \\"Id\\": \\"12345\\",\\n \\"Status\\": \\"RUNNING\\"\\n }\\n ],\\n \\"UiFunctionCall\\": [\\n {\\n \\"ArgsText\\": \\"{\\\\\\"arg\\\\\\": \\\\\\"xxx\\\\\\"}\\",\\n \\"ToolName\\": \\"card\\"\\n }\\n ],\\n \\"SessionId\\": \\"123e4567-e89b-12d3-a456-xxxxxxxxxxxx\\",\\n \\"QueryId\\": \\"123e4567-e89b-12d3-a456-xxxxxxxxxxxx\\",\\n \\"SubAgentCall\\": [\\n {\\n \\"SubAgentId\\": \\"12345\\",\\n \\"SubAgentName\\": \\"XX Agent\\",\\n \\"Status\\": \\"running\\"\\n }\\n ],\\n \\"ParentId\\": \\"12345\\"\\n}","type":"json"}]',
],
- 'GetInstanceGroupInspectReportList' => [
- 'summary' => '查询实例组的报告信息',
- 'path' => '',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'KillInstanceAllSession' => [
+ 'summary' => 'Terminates all sessions on an instance.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREhdmJC65CS',
- ],
- 'tenantRelevance' => 'tenant',
- ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
- 'name' => 'GroupId',
+ 'name' => 'ConsoleContext',
'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'null',
- ],
+ 'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
- 'name' => 'AgentId',
+ 'name' => 'InstanceId',
'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',
- ],
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'r-8vbcyr4sw0c4yc****', 'title' => ''],
],
],
'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',
- ],
- ],
- ],
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'Data' => ['description' => 'The reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"Data\\": \\"None\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]',
+ 'title' => 'KillInstanceAllSession',
+ 'description' => '- This operation is applicable only to ApsaraDB for Redis.'."\n"
+ ."\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"
+ ."\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.',
+ 'changeSet' => [],
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'hdm:KillInstanceAllSession',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'KillInstanceAllSession'],
+ ],
],
- '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',
- ],
+ 'ModifyAutoScalingConfig' => [
+ 'summary' => 'Modifies the auto scaling configurations of an instance.',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREhdmJC65CS',
- ],
- 'tenantRelevance' => 'tenant',
- ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
- 'name' => 'ReportId',
- 'in' => 'formData',
- 'schema' => [
- 'title' => '报告ID',
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => '13f52040-5a6e-42c3-bb84-051f5d6d****',
- ],
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
[
- 'name' => 'AgentId',
+ 'name' => 'Spec',
'in' => 'query',
+ 'style' => 'flat',
'schema' => [
- 'type' => 'string',
- ],
- ],
- ],
- 'responses' => [
- 200 => [
- 'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response',
+ 'description' => 'The configuration item of the specification auto scaling feature.',
'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' => '',
- ],
- ],
+ 'Apply' => ['description' => 'Specifies whether to apply the **Spec** configuration of the specification auto scaling feature. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'default' => 'false', 'required' => false, 'example' => 'true', 'title' => ''],
+ 'Upgrade' => ['description' => 'Specifies whether to enable automatic specification scale-up. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'required' => false, 'default' => 'false', 'example' => 'true', 'title' => ''],
+ 'CpuUsageUpperThreshold' => [
+ 'description' => 'The average CPU utilization threshold that triggers automatic specification scale-up. Unit: %. Valid values:'."\n"
+ ."\n"
+ .'- **50**'."\n"
+ ."\n"
+ .'- **60**'."\n"
+ ."\n"
+ .'- **70**'."\n"
+ ."\n"
+ .'- **80**'."\n"
+ ."\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.',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'enum' => ['50', '60', '70', '80', '90'],
+ 'required' => false,
+ 'example' => '70',
+ 'title' => '',
],
+ 'MemUsageUpperThreshold' => [
+ 'description' => 'The average memory usage threshold that triggers automatic specification scale-up. Unit: %. Valid values:'."\n"
+ ."\n"
+ .'- **50**'."\n"
+ ."\n"
+ .'- **60**'."\n"
+ ."\n"
+ .'- **70**'."\n"
+ ."\n"
+ .'- **80**'."\n"
+ ."\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).',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'enum' => ['50', '60', '70', '80', '90'],
+ 'required' => false,
+ 'example' => '70',
+ 'title' => '',
+ ],
+ '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"
+ ."\n"
+ .'- ApsaraDB RDS for MySQL High-availability Edition instances that use standard SSDs or ESSDs: [Specifications](~~276974~~)', 'type' => 'string', 'required' => false, 'example' => 'polar.mysql.x8.12xlarge'."\n", 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int32', 'maximum' => '15', 'minimum' => '1', 'required' => false, 'example' => '10', 'title' => ''],
+ '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"
+ ."\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"
+ ."\n"
+ .'- Valid values for Tair (Redis OSS-compatible) Community Edition cloud-native instances: **5m**, **10m**, **15m**, and **30m**.', 'type' => 'string', 'required' => false, 'example' => '5m', 'title' => ''],
+ '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"
+ ."\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**.', 'type' => 'string', 'required' => false, 'example' => '5m', 'title' => ''],
+ 'Downgrade' => ['description' => 'Specifies whether to enable automatic specification scale-down. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\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.', 'type' => 'boolean', 'default' => 'false', 'required' => false, 'example' => 'true', 'title' => ''],
],
+ 'required' => false,
+ 'title' => '',
+ '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',
+ 'name' => 'Storage',
'in' => 'query',
- 'allowEmptyValue' => false,
+ 'style' => 'flat',
'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'cn-beijing',
+ 'description' => 'The configuration item of the automatic storage expansion feature.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Apply' => ['description' => 'Specifies whether to apply the **Storage** configuration of the automatic storage expansion feature. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'default' => 'false', 'required' => false, 'example' => 'true', 'title' => ''],
+ 'Upgrade' => ['description' => 'Specifies whether to enable automatic storage expansion. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'default' => 'false', 'required' => false, 'example' => 'true', 'title' => ''],
+ 'DiskUsageUpperThreshold' => [
+ 'description' => 'The average storage usage threshold that triggers automatic storage expansion. Unit: %. Valid values:'."\n"
+ ."\n"
+ .'- **50**'."\n"
+ ."\n"
+ .'- **60**'."\n"
+ ."\n"
+ .'- **70**'."\n"
+ ."\n"
+ .'- **80**'."\n"
+ ."\n"
+ .'- **90**',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'enum' => ['50', '60', '70', '80', '90'],
+ 'required' => false,
+ 'example' => '70',
+ 'title' => '',
+ ],
+ '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"
+ ."\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~~).', 'type' => 'integer', 'format' => 'int32', 'maximum' => '32000', 'minimum' => '20', 'required' => false, 'example' => '32000', 'title' => ''],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
[
- 'name' => 'GlobalIgName',
+ 'name' => 'Bandwidth',
'in' => 'query',
+ 'style' => 'flat',
'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'test_123',
+ 'description' => 'The configuration item of the bandwidth auto scaling feature.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Apply' => ['description' => 'Specifies whether to apply the **Bandwidth** configuration of the bandwidth auto scaling feature. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'default' => 'false', 'required' => false, 'example' => 'true', 'title' => ''],
+ 'Upgrade' => ['description' => 'Specifies whether to enable automatic bandwidth upgrade. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'default' => 'false', 'required' => false, 'example' => 'true', 'title' => ''],
+ 'BandwidthUsageUpperThreshold' => [
+ 'description' => 'The average bandwidth usage threshold that triggers automatic bandwidth upgrade. Unit: %. Valid values:'."\n"
+ ."\n"
+ .'- **50**'."\n"
+ ."\n"
+ .'- **60**'."\n"
+ ."\n"
+ .'- **70**'."\n"
+ ."\n"
+ .'- **80**'."\n"
+ ."\n"
+ .'- **90**'."\n"
+ ."\n"
+ .'- **95**',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'maximum' => '95',
+ 'minimum' => '50',
+ 'enum' => [],
+ 'required' => false,
+ 'example' => '70',
+ 'title' => '',
+ ],
+ '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"
+ ."\n"
+ .'- **5m**'."\n"
+ ."\n"
+ .'- **10m**'."\n"
+ ."\n"
+ .'- **15m**'."\n"
+ ."\n"
+ .'- **30m**',
+ 'type' => 'string',
+ 'enum' => ['1m', '5m', '10m', '15m', '30m'],
+ 'required' => false,
+ 'example' => '5m',
+ 'title' => '',
+ ],
+ 'Downgrade' => ['description' => 'Specifies whether to enable automatic bandwidth downgrade. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'default' => 'false', 'required' => false, 'example' => 'true', 'title' => ''],
+ 'BandwidthUsageLowerThreshold' => [
+ 'description' => 'The average bandwidth usage threshold that triggers automatic bandwidth downgrade. Unit: %. Valid values:'."\n"
+ ."\n"
+ .'- **10**'."\n"
+ ."\n"
+ .'- **20**'."\n"
+ ."\n"
+ .'- **30**',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'maximum' => '70',
+ 'minimum' => '10',
+ 'enum' => [],
+ 'required' => false,
+ 'example' => '30',
+ 'title' => '',
+ ],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
[
- 'name' => 'GIpList',
+ 'name' => 'Shard',
'in' => 'query',
+ 'style' => 'flat',
'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => '192.168.0.1',
- ],
- ],
- ],
- 'responses' => [
- 200 => [
- 'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response',
+ 'description' => 'The configuration item of the shard auto scaling feature.',
'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',
+ 'Apply' => ['description' => 'Specifies whether to apply the **Shard** configuration of the shard auto scaling feature. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\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).', 'type' => 'boolean', 'default' => 'false', 'required' => false, 'example' => 'true', 'title' => ''],
+ 'Upgrade' => ['description' => 'Specifies whether to enable automatic shard addition. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'default' => 'false', 'required' => false, 'example' => 'true', 'title' => ''],
+ 'MemUsageUpperThreshold' => [
+ 'description' => 'The average memory usage threshold that triggers automatic shard addition. Unit: %. Valid values:'."\n"
+ ."\n"
+ .'- **50**'."\n"
+ ."\n"
+ .'- **60**'."\n"
+ ."\n"
+ .'- **70**'."\n"
+ ."\n"
+ .'- **80**'."\n"
+ ."\n"
+ .'- **90**',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'enum' => ['50', '60', '70', '80', '90'],
+ 'required' => false,
+ 'example' => '70',
+ 'title' => '',
],
- 'RequestId' => [
- 'description' => '',
+ 'MaxShards' => ['description' => 'The maximum number of shards in the instance. The value must be a positive integer. Valid values: 4 to 32.', 'type' => 'integer', 'format' => 'int32', 'maximum' => '64', 'minimum' => '2', 'required' => false, 'example' => '16', 'title' => ''],
+ '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"
+ ."\n"
+ .'- **10m**'."\n"
+ ."\n"
+ .'- **15m**'."\n"
+ ."\n"
+ .'- **30m**',
'type' => 'string',
- 'example' => 'D578DB3C-06BF-54F2-A78F-C6C25Exxxxxx',
+ 'enum' => ['5m', '10m', '15m', '30m'],
+ 'required' => false,
+ 'example' => '5m',
+ 'title' => '',
+ ],
+ 'Downgrade' => ['description' => 'Specifies whether to enable automatic shard removal. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**'."\n"
+ ."\n"
+ .'> The automatic shard removal feature is in a canary release.', 'type' => 'boolean', 'default' => 'false', 'required' => false, 'example' => 'true', 'title' => ''],
+ 'MemUsageLowerThreshold' => [
+ 'description' => 'The average memory usage threshold that triggers automatic shard removal. Unit: %. Valid values:'."\n"
+ ."\n"
+ .'- **10**'."\n"
+ ."\n"
+ .'- **20**'."\n"
+ ."\n"
+ .'- **30**',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'enum' => ['10', '20', '30'],
+ 'required' => false,
+ 'example' => '30',
+ 'title' => '',
],
- 'Success' => [
- 'description' => '',
+ 'MinShards' => ['description' => 'The minimum number of shards in the instance. The value must be a positive integer. Valid values: 4 to 32.', 'type' => 'integer', 'format' => 'int32', 'maximum' => '64', 'minimum' => '2', 'required' => false, 'example' => '4', 'title' => ''],
+ '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"
+ ."\n"
+ .'- **2h**'."\n"
+ ."\n"
+ .'- **3h**'."\n"
+ ."\n"
+ .'- **1d**'."\n"
+ ."\n"
+ .'- **7d**',
'type' => 'string',
- 'example' => 'true',
+ 'enum' => ['1h', '2h', '3h', '1d', '7d'],
+ 'required' => false,
+ 'example' => '1h',
+ 'title' => '',
],
],
+ 'required' => false,
+ 'title' => '',
+ '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 \\"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',
+ 'name' => 'Resource',
'in' => 'query',
- 'allowEmptyValue' => false,
+ 'style' => 'flat',
'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'cn-shanghai',
+ 'description' => 'The configuration item of the resource auto scaling feature.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Apply' => ['description' => 'Specifies whether to apply the **Resource** configuration of the resource auto scaling feature. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'default' => 'false', 'required' => false, 'example' => 'true', 'title' => ''],
+ 'Enable' => ['description' => 'Specifies whether to enable resource auto scaling. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'default' => 'false', 'required' => false, 'example' => 'true', 'title' => ''],
+ 'CpuUsageUpperThreshold' => [
+ 'description' => 'The average CPU utilization threshold that triggers automatic resource scale-out. Unit: %. Valid values:'."\n"
+ ."\n"
+ .'- **70**'."\n"
+ ."\n"
+ .'- **80**'."\n"
+ ."\n"
+ .'- **90**',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'enum' => ['70', '80', '90'],
+ 'required' => false,
+ 'example' => '70',
+ 'title' => '',
+ ],
+ '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"
+ ."\n"
+ .'- **3m**'."\n"
+ ."\n"
+ .'- **5m**'."\n"
+ ."\n"
+ .'- **10m**'."\n"
+ ."\n"
+ .'- **20m**'."\n"
+ ."\n"
+ .'- **30m**',
+ 'enumValueTitles' => ['30m' => '30m', '5m' => '5m', '3m' => '3m', '1m' => '1m', '10m' => '10m', '20m' => '20m'],
+ 'type' => 'string',
+ 'enum' => ['1m', '3m', '5m', '10m', '20m', '30m'],
+ 'required' => false,
+ 'example' => '5m',
+ 'title' => '',
+ ],
+ '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"
+ ."\n"
+ .'- **3m**'."\n"
+ ."\n"
+ .'- **5m**'."\n"
+ ."\n"
+ .'- **10m**'."\n"
+ ."\n"
+ .'- **20m**'."\n"
+ ."\n"
+ .'- **30m**',
+ 'type' => 'string',
+ 'enum' => ['1m', '3m', '5m', '10m', '20m', '30m'],
+ 'required' => false,
+ 'example' => '5m',
+ 'title' => '',
+ ],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
],
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'title' => 'ModifyAutoScalingConfig',
+ 'description' => 'Modifies the following auto scaling configurations for 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"
+ ."\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.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ModifyAutoScalingConfig'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'hdm:ModifyAutoScalingConfig',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- '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"}]',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"B6D17591-B48B-4D31-9CD6-9B9796B2****\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]',
],
- 'DescribeSecurityIPGroupRelation' => [
- 'summary' => '展示用户跨产品白名单模板与实例绑定信息',
+ 'ModifySecurityIPGroup' => [
+ 'summary' => 'Modifies a cross-product whitelist template.',
'path' => '',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -25620,13 +19521,11 @@
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'get',
+ 'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '247410',
- 'abilityTreeNodes' => [
- 'FEATUREhdmQULC0I',
- ],
+ 'abilityTreeNodes' => ['FEATUREhdmQULC0I'],
'tenantRelevance' => 'tenant',
],
'parameters' => [
@@ -25634,125 +19533,129 @@
'name' => 'RegionName',
'in' => 'query',
'allowEmptyValue' => false,
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'cn-shanghai',
- ],
+ 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai', 'title' => ''],
],
[
- 'name' => 'InstanceId',
+ 'name' => 'GlobalIgName',
'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-2zegsc57ofexxxxx',
- ],
+ 'schema' => ['description' => 'The name of the IP address whitelist template. The name must meet the following requirements:'."\n"
+ ."\n"
+ .'- It can contain lowercase letters, digits, and underscores (\\_).'."\n"
+ ."\n"
+ .'- It must start with a letter and end with a letter or a digit.'."\n"
+ ."\n"
+ .'- It must be 2 to 120 characters in length.'."\n"
+ ."\n"
+ .'> This parameter overwrites the initial value.', 'type' => 'string', 'required' => true, 'example' => 'test_123', 'title' => ''],
+ ],
+ [
+ 'name' => 'GIpList',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The IP addresses in the whitelist template.'."\n"
+ ."\n"
+ .'> Separate multiple IP addresses with commas (,). A maximum of 1,000 IP addresses or CIDR blocks can be added to all IP address whitelists.', 'type' => 'string', 'required' => true, 'example' => '192.168.0.1', 'title' => ''],
+ ],
+ [
+ 'name' => 'GlobalSecurityGroupId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The ID of the IP address whitelist template.', 'type' => 'string', 'required' => true, 'example' => 'g-9ubyrqeoko****,g-pdxlrvn13k****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '200',
- ],
+ 'Code' => ['description' => 'The status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'Data' => [
- 'title' => 'ListResult<InstanceSSL>',
- 'description' => 'ListResult<InstanceSSL>',
'type' => 'object',
'properties' => [
- 'GlobalSecurityIPGroupRel' => [
- 'description' => '',
+ 'GlobalSecurityIPGroup' => [
'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',
- ],
+ 'SecurityIpType' => ['description' => 'The IP type.', 'type' => 'string', 'example' => 'ipv4', 'title' => ''],
+ 'RegionId' => ['description' => 'The region ID.'."\n"
+ ."\n"
+ .'Example: cn-hangzhou', 'type' => 'string', 'example' => 'cn-beijing', 'title' => ''],
+ 'GlobalIgName' => ['description' => 'The name of the IP address whitelist template.', 'type' => 'string', 'example' => 'test', 'title' => ''],
+ 'GlobalSecurityGroupId' => ['description' => 'The ID of the IP address whitelist template.', 'type' => 'string', 'example' => 'g-b1asblm5ae****', 'title' => ''],
+ 'WhitelistNetType' => ['description' => 'The network type of the whitelist.', 'type' => 'string', 'example' => 'mix', 'title' => ''],
+ 'GIpList' => ['description' => 'The IP addresses in the whitelist template.'."\n"
+ ."\n"
+ .'> Separate multiple IP addresses with commas. All IP address whitelists support a combined total of 1,000 IP addresses or address segments.', 'type' => 'string', 'example' => '192.168.0.1', 'title' => ''],
],
+ 'description' => 'Information about the cross-product whitelist template.',
+ 'title' => '',
+ 'example' => '',
],
- ],
- 'InstanceId' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'rm-2ze1jdv45i7l6****',
+ 'description' => 'The information about the cross-product whitelist template.',
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'description' => 'The returned data.',
+ 'example' => '',
],
- 'Message' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'Successful',
- ],
- 'RequestId' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'A6D1C8EE-013C-541F-83EB-B13C8xxxxxx',
- ],
- 'Success' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'true',
- ],
+ 'Message' => ['description' => 'The returned message.'."\n"
+ ."\n"
+ .'> If the request is successful, **Successful** is returned. If the request fails, an error message is returned, such as an error code.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
+ 'title' => '',
+ 'description' => 'The response parameters.',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'description' => 'Before you call this operation, note the following:'."\n"
+ ."\n"
+ .'- Use the latest version of the Alibaba Cloud SDK or DAS SDK.'."\n"
+ ."\n"
+ .'- When you use an SDK to call the DAS service, specify the cn-shanghai region.'."\n"
+ ."\n"
+ .'- This operation uses the latest supported version by default. For more information about the databases and regions that are supported by different versions of DAS Enterprise Edition, see [DAS editions and supported features](~~156204~~).',
+ 'title' => 'ModifySecurityIPGroup',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'hdm:ModifySecurityIPGroup',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- '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"}]',
+ '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"}]',
],
- 'ModifySecurityIPGroup' => [
- 'summary' => '修改用户跨产品白名单模板',
+ 'ModifySecurityIPGroupRelation' => [
+ 'summary' => 'Attaches or detaches a cross-product whitelist template.',
'path' => '',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -25765,9 +19668,7 @@
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '247410',
- 'abilityTreeNodes' => [
- 'FEATUREhdmQULC0I',
- ],
+ 'abilityTreeNodes' => ['FEATUREhdmQULC0I'],
'tenantRelevance' => 'tenant',
],
'parameters' => [
@@ -25775,661 +19676,777 @@
'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',
- ],
+ 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai', 'title' => ''],
],
[
- 'name' => 'GIpList',
+ 'name' => 'InstanceId',
'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => '192.168.0.1',
- ],
+ 'schema' => ['description' => 'The database instance ID.', 'type' => 'string', 'required' => true, 'example' => 'pc-bp1u5mas9exx7****', 'title' => ''],
],
[
'name' => 'GlobalSecurityGroupId',
'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'g-9ubyrqeoko****,g-pdxlrvn13k****',
- ],
+ 'schema' => ['description' => 'The ID of the IP address whitelist template.', 'type' => 'string', 'required' => true, 'example' => 'g-ggh7qvrrwikyxe****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '200',
- ],
+ 'Code' => ['description' => 'The status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'Data' => [
- 'title' => 'ListResult<InstanceSSL>',
- 'description' => 'ListResult<InstanceSSL>',
'type' => 'object',
'properties' => [
- 'GlobalSecurityIPGroup' => [
- 'description' => '',
+ 'GlobalSecurityIPGroupRel' => [
'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',
- ],
+ 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-shanghai', 'title' => ''],
+ 'GlobalIgName' => ['description' => 'The name of the IP address whitelist template. The name must meet the following requirements:'."\n"
+ ."\n"
+ .'- It must consist of lowercase letters, digits, and underscores (\\_).'."\n"
+ ."\n"
+ .'- It must start with a letter and end with a letter or a digit.'."\n"
+ ."\n"
+ .'- It must be 2 to 120 characters in length.', 'type' => 'string', 'example' => 'saas_jump', 'title' => ''],
+ 'GlobalSecurityGroupId' => ['description' => 'The ID of the IP address whitelist template.', 'type' => 'string', 'example' => 'g-v8kwereyd6u7kx****', 'title' => ''],
+ 'GIpList' => ['description' => 'The IP addresses in the whitelist template.'."\n"
+ ."\n"
+ .'> Separate multiple IP addresses with commas (,). A maximum of 1,000 IP addresses or CIDR blocks can be added to all IP address whitelists.', 'type' => 'string', 'example' => '192.168.0.1,192.168.100.0/24', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'description' => 'The information about the cross-product IP address whitelist template that is attached to the instance.',
+ 'title' => '',
+ 'example' => '',
],
+ 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
],
+ 'title' => '',
+ 'description' => 'The returned data.',
+ 'example' => '',
],
- 'Message' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'Successful',
- ],
- 'RequestId' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****',
- ],
- 'Success' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'true',
- ],
+ 'Message' => ['description' => 'The returned message.'."\n"
+ ."\n"
+ .'> If the request is successful, Successful is returned. If the request fails, an error message, such as an error code, is returned.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '840F51F7-9C01-538D-94F6-AE712905****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- true: The request was successful.'."\n"
+ ."\n"
+ .'- false: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
+ 'title' => '',
+ 'description' => 'The response parameters.',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'description' => '- Use the latest version of the Alibaba Cloud or DAS software development kit (SDK).'."\n"
+ ."\n"
+ .'- When you use the SDK to call the DAS service, set the region to cn-shanghai.'."\n"
+ ."\n"
+ .'- For more information about the supported database instances, see [Overview of features](~~92561~~) for SQL Insight and Audit.'."\n"
+ ."\n"
+ .'- The SQL Insight and Audit (Legacy) feature is enabled for the destination database instance. For more information about how to enable this feature, see [Enable SQL Insight and Audit](~~92561~~).',
+ 'title' => 'ModifySecurityIPGroupRelation',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'hdm:ModifySecurityIPGroupRelation',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- '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"}]',
+ '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"}]',
],
- 'ModifySecurityIPGroupRelation' => [
- 'summary' => '绑定/解绑用户跨产品白名单模板',
- 'path' => '',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'ModifySqlLogConfig' => [
+ 'summary' => 'Use the `ModifySqlLogConfig` operation to enable or configure DAS Enterprise Edition for a database instance.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
+ 'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '247410',
- 'abilityTreeNodes' => [
- 'FEATUREhdmQULC0I',
- ],
- 'tenantRelevance' => 'tenant',
+ 'abilityTreeCode' => '198880',
+ 'abilityTreeNodes' => ['FEATUREhdmPGXCEW', 'FEATUREhdmFT57I0'],
],
'parameters' => [
[
- 'name' => 'RegionName',
- 'in' => 'query',
- 'allowEmptyValue' => false,
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'cn-shanghai',
- ],
+ 'name' => 'InstanceId',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The ID of the database instance.', 'type' => 'string', 'required' => true, 'example' => 'rr-2ze770smbq3tp****', 'title' => ''],
],
[
- 'name' => 'InstanceId',
+ 'name' => 'Enable',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'Indicates whether to enable DAS Enterprise Edition. Valid values:'."\n"
+ ."\n"
+ .'- **true**: enables DAS Enterprise Edition.'."\n"
+ ."\n"
+ .'- **false**: disables DAS Enterprise Edition.'."\n"
+ ."\n"
+ .'> This parameter is required when you enable DAS Enterprise Edition. By default, this operation enables the latest supported version.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
+ ],
+ [
+ 'name' => 'RequestEnable',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'Indicates whether to enable SQL Explorer. Valid values:'."\n"
+ ."\n"
+ .'- **true**: enables SQL Explorer.'."\n"
+ ."\n"
+ .'- **false**: disables SQL Explorer.'."\n"
+ ."\n"
+ .'> This parameter is required only if you enable DAS Enterprise Edition V3.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
+ ],
+ [
+ 'name' => 'Retention',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The data retention period, in days. Valid values:'."\n"
+ ."\n"
+ .'- 7'."\n"
+ ."\n"
+ .'- 30'."\n"
+ ."\n"
+ .'- 180'."\n"
+ ."\n"
+ .'- 365'."\n"
+ ."\n"
+ .'> If you enable DAS Enterprise Edition V3, the value of this parameter must be 30 or greater.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '30', 'title' => ''],
+ ],
+ [
+ 'name' => 'HotRetention',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The hot storage retention period, in days. The value must be an integer from 1 to 7.'."\n"
+ ."\n"
+ .'> This parameter is required only if you enable DAS Enterprise Edition V3.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
+ ],
+ [
+ 'name' => 'Filters',
'in' => 'query',
+ 'style' => 'repeatList',
'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'pc-bp1u5mas9exx7****',
+ 'description' => 'A reserved parameter.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'A reserved parameter.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => ['description' => 'A reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
+ 'Value' => ['description' => 'A reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ 'title' => '',
+ 'example' => '',
],
],
[
- 'name' => 'GlobalSecurityGroupId',
+ 'name' => 'EnableAudit',
'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'g-ggh7qvrrwikyxe****',
- ],
+ 'schema' => ['description' => 'Indicates whether to enable security audit.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '200',
- ],
+ 'Code' => ['description' => 'The status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The response message.'."\n"
+ ."\n"
+ .'> If the request is successful, **Successful** is returned. Otherwise, an error message is returned.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '03C88D8E-1541-518E-8BFF-BEC6589B6334', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'false', 'title' => ''],
'Data' => [
- 'title' => 'ListResult<InstanceSSL>',
- 'description' => 'ListResult<InstanceSSL>',
+ 'title' => 'SqlLogConfig',
+ 'description' => 'The returned data.',
'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****',
- ],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1683712800000', 'title' => ''],
+ 'RequestStopTime' => ['description' => 'The expiration time of DAS Enterprise Edition. 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' => '1715335200000', 'title' => ''],
+ 'CollectorVersion' => ['description' => 'The version of the database collector. Valid values:'."\n"
+ ."\n"
+ .'- **MYSQL\\_V0**: MySQL V0'."\n"
+ ."\n"
+ .'- **MYSQL\\_V1**: MySQL V1'."\n"
+ ."\n"
+ .'- **MYSQL\\_V2**: MySQL V2'."\n"
+ ."\n"
+ .'- **MYSQL\\_V3**: MySQL V3'."\n"
+ ."\n"
+ .'- **PG\\_V1**: PostgreSQL V1'."\n"
+ ."\n"
+ .'- **rdspg\\_v1**: ApsaraDB RDS for PostgreSQL V1'."\n"
+ ."\n"
+ .'- **polarpg\\_v1**: PolarDB for PostgreSQL V1', 'type' => 'string', 'example' => 'MYSQL_V3', 'title' => ''],
+ 'SupportVersion' => ['description' => 'The latest supported version of DAS Enterprise Edition. Valid values:'."\n"
+ ."\n"
+ .'- **SQL\\_LOG\\_V0**: DAS Enterprise Edition V0'."\n"
+ ."\n"
+ .'- **SQL\\_LOG\\_V1**: DAS Enterprise Edition V1'."\n"
+ ."\n"
+ .'- **SQL\\_LOG\\_V2**: DAS Enterprise Edition V2'."\n"
+ ."\n"
+ .'- **SQL\\_LOG\\_V3**: DAS Enterprise Edition V3'."\n"
+ ."\n"
+ .'- **SQL\\_LOG\\_NOT\\_ENABLE**: DAS Enterprise Edition is not enabled.'."\n"
+ ."\n"
+ .'- **SQL\\_LOG\\_NOT\\_SUPPORT**: DAS Enterprise Edition is not supported.', 'type' => 'string', 'title' => '', 'example' => 'SQL_LOG_V3'],
+ 'ColdRetention' => ['description' => 'The retention period of the cold data. Unit: day. This value is calculated by using the following formula: `Retention - HotRetention`.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '23'],
+ 'SqlLogEnable' => ['description' => 'Indicates whether DAS Enterprise Edition is enabled.'."\n"
+ ."\n"
+ .'- **true**: Enabled.'."\n"
+ ."\n"
+ .'- **false**: Disabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'Retention' => ['description' => 'The total retention period of data. Unit: day.', 'type' => 'integer', 'format' => 'int32', 'example' => '30', 'title' => ''],
+ 'HotRetention' => ['description' => 'The retention period of the hot data. Unit: day.', 'type' => 'integer', 'format' => 'int32', 'example' => '7', 'title' => ''],
+ 'RequestEnable' => ['description' => 'Indicates whether SQL Explorer is enabled.'."\n"
+ ."\n"
+ .'- **true**: Enabled.'."\n"
+ ."\n"
+ .'- **false**: Disabled.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
+ 'Version' => ['description' => 'The current version of DAS Enterprise Edition. Valid values:'."\n"
+ ."\n"
+ .'- **SQL\\_LOG\\_V0**: DAS Enterprise Edition V0'."\n"
+ ."\n"
+ .'- **SQL\\_LOG\\_V1**: DAS Enterprise Edition V1'."\n"
+ ."\n"
+ .'- **SQL\\_LOG\\_V2**: DAS Enterprise Edition V2'."\n"
+ ."\n"
+ .'- **SQL\\_LOG\\_V3**: DAS Enterprise Edition V3'."\n"
+ ."\n"
+ .'- **SQL\\_LOG\\_NOT\\_ENABLE**: DAS Enterprise Edition is not enabled.'."\n"
+ ."\n"
+ .'- **SQL\\_LOG\\_NOT\\_SUPPORT**: DAS Enterprise Edition is not supported.', 'type' => 'string', 'title' => '', 'example' => 'SQL_LOG_V3'],
+ 'RequestStartTime' => ['description' => 'The time when SQL Explorer was enabled. 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' => '1683712800000', 'title' => ''],
+ 'HotEnable' => ['description' => 'Indicates whether the hot data storage is enabled.'."\n"
+ ."\n"
+ .'- **true**: Enabled.'."\n"
+ ."\n"
+ .'- **false**: Disabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1683712800000', 'title' => ''],
+ 'ColdEnable' => ['description' => 'Indicates whether the cold data storage is enabled.'."\n"
+ ."\n"
+ .'- **true**: Enabled.'."\n"
+ ."\n"
+ .'- **false**: Disabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1683712800000', 'title' => ''],
+ 'SqlLogState' => ['description' => 'The data migration state. Valid values:'."\n"
+ ."\n"
+ .'- **FINISH**: The historical data is migrated.'."\n"
+ ."\n"
+ .'- **RUNNING**: The historical data is being migrated.'."\n"
+ ."\n"
+ .'- **FAILURE**: The historical data fails to be migrated.', 'type' => 'string', 'example' => 'FINISH', 'title' => ''],
+ 'LogFilter' => ['description' => 'A reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
+ 'SqlLogSource' => ['description' => 'The source of the audit log.', 'type' => 'string', 'title' => '', 'example' => ''],
],
- ],
- 'Message' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'Successful',
- ],
- 'RequestId' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '840F51F7-9C01-538D-94F6-AE712905****',
- ],
- 'Success' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'true',
+ 'example' => '',
],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ '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 calling this operation, ensure you meet the following requirements:'."\n"
+ ."\n"
+ .'- Use the latest version of the Alibaba Cloud SDK or the DAS SDK.'."\n"
+ ."\n"
+ .'- When calling the DAS service with an SDK, set the region to cn-shanghai.'."\n"
+ ."\n"
+ .'- This operation enables the latest supported version of DAS Enterprise Edition by default. See [DAS editions and supported features](~~156204~~) for the databases and regions supported by each version of DAS Enterprise Edition.',
+ 'requestParamsDescription' => 'DAS Enterprise Edition is available in four versions: V0, V1, V2, and V3. By default, the latest supported version is enabled.'."\n"
+ ."\n"
+ .'- For a database instance that supports only DAS Enterprise Edition V0, specify only the **Enable** and **Retention** parameters.'."\n"
+ ."\n"
+ .'- For a database instance that supports DAS Enterprise Edition V1, specify only the **Enable** and **Retention** parameters. The system automatically enables SQL Explorer, which sets **RequestEnable** to **true** by default.'."\n"
+ ."\n"
+ .'- For a database instance that supports DAS Enterprise Edition V2, specify only the **Enable** and **Retention** parameters. The system automatically enables SQL Explorer, which sets **RequestEnable** to **true** by default. It also sets the hot data storage duration (**HotRetention**) to 7 days and the cold data storage duration to `Retention - 7` days.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ModifySqlLogConfig'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'hdm:ModifySqlLogConfig',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- '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',
- ],
+ 'RunCloudBenchTask' => [
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'delete',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '247410',
- 'abilityTreeNodes' => [
- 'FEATUREhdmQULC0I',
- ],
- 'tenantRelevance' => 'tenant',
- ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
- 'name' => 'RegionName',
- 'in' => 'query',
- 'allowEmptyValue' => false,
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'cn-shanghai',
- ],
- ],
- [
- 'name' => 'GlobalSecurityGroupId',
+ 'name' => 'TaskId',
'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'g-rcge12hbfooad3m****',
- ],
+ 'schema' => ['description' => 'The ID of the stress testing task. You can call the [DescribeCloudBenchTasks](~~230670~~) operation to obtain the task ID.', 'type' => 'string', 'required' => true, 'example' => 'e5cec704-0518-430f-8263-76f4dcds****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'Code' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '200',
- ],
+ 'Code' => ['description' => 'The returned status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The returned message.'."\n"
+ ."\n"
+ .'> If the request is successful, **Successful** is returned. If the request fails, an error message such as an error code is returned.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**: The request was successful.'."\n"
+ ."\n"
+ .'- **false**: The request failed.', 'type' => 'string', 'example' => 'true', 'title' => ''],
'Data' => [
- 'title' => 'ListResult<InstanceSSL>',
- 'description' => 'ListResult<InstanceSSL>',
'type' => 'object',
+ 'itemNode' => true,
'properties' => [
- 'GlobalSecurityIPGroup' => [
- 'description' => '',
+ 'PreCheckItem' => [
+ 'itemNode' => true,
+ 'description' => 'The list of detailed information, including the total number of information items, error codes, and more.',
+ 'title' => '',
'type' => 'array',
'items' => [
- 'description' => '',
'type' => 'object',
'properties' => [
- 'GlobalSecurityGroupId' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'g-1no2rzybnqcv0m****'."\n",
- ],
+ 'Status' => ['description' => 'The status of the task. Valid values:'."\n"
+ ."\n"
+ .'- **SUCCESS**: The task is successful.'."\n"
+ ."\n"
+ .'- **IGNORED**: The task is ignored.'."\n"
+ ."\n"
+ .'- **RUNNING**: The task is running.'."\n"
+ ."\n"
+ .'- **EXCEPTION**: The task is abnormal.', 'type' => 'string', 'example' => 'SUCCESS', 'title' => ''],
+ 'Order' => ['description' => 'The order of the check item. Valid values: **0** to **10**.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''],
+ 'Code' => ['description' => 'The returned status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
+ 'Message' => ['description' => 'The returned message.'."\n"
+ ."\n"
+ .'> If the request is successful, **Successful** is returned. If the request fails, an error message such as an error code is returned.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
+ 'Name' => ['description' => 'The check item. Valid values:'."\n"
+ ."\n"
+ .'- **SqlArchiveStatusChecker**: Checks whether the SQL insight data is available.'."\n"
+ ."\n"
+ .'- **BenchClientEnvChecker**: Checks whether the execution environment on the stress testing client is available.'."\n"
+ ."\n"
+ .'- **SpecChecker**: Checks whether the instance type of the destination instance and the instance type of the stress testing client are available.'."\n"
+ ."\n"
+ .'- **SourceInstanceChecker**: Checks whether the account and network of the source instance are available.'."\n"
+ ."\n"
+ .'- **BenchTargetChecker**: Checks whether the account and network of the destination instance are available.', 'type' => 'string', 'example' => 'BenchTargetChecker', 'title' => ''],
+ 'Details' => ['description' => 'The details of the check item.', 'type' => 'string', 'example' => '"Data": { "total": 1, "list":[...] }, "Code": 200, "Success": true }', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'example' => '',
],
],
- ],
- 'Message' => [
'description' => '',
- 'type' => 'string',
- 'example' => 'Successful',
- ],
- 'RequestId' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****',
- ],
- 'Success' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'true',
+ 'title' => '',
+ 'example' => '',
],
],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'title' => 'RunCloudBenchTask',
+ 'summary' => 'Calls the RunCloudBenchTask operation to execute a stress testing task.',
+ 'description' => 'Database Autonomy Service (DAS) provides the intelligent stress testing feature. This feature helps you determine whether your instance type needs to be scaled out to handle peak service traffic. For more information, see [Intelligent stress testing](~~155068~~).',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'RunCloudBenchTask'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:RunCloudBenchTask',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- '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"}]',
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
],
- 'GetHDMAliyunResourceSyncResult' => [
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'SetEventSubscription' => [
+ 'summary' => 'Configures the event subscription settings for a database instance.',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
+ 'operationType' => 'readAndWrite',
'systemTags' => [
- 'operationType' => 'get',
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => ['FEATUREhdmETIPZF'],
],
'parameters' => [
[
- 'name' => 'Uid',
+ 'name' => 'InstanceId',
'in' => 'query',
- 'schema' => [
- 'type' => 'string',
- 'required' => false,
- ],
+ 'schema' => ['title' => '', 'description' => 'The instance ID.'."\n", 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****'],
],
[
- 'name' => 'accessKey',
+ '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' => 'signature',
+ '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' => 'timestamp',
+ 'name' => 'MinInterval',
'in' => 'query',
- 'schema' => [
- 'type' => 'string',
- 'required' => false,
- ],
+ 'schema' => ['title' => '', 'description' => 'The minimum interval between consecutive event notifications. Unit: seconds.'."\n", 'type' => 'string', 'required' => false, 'example' => '60'],
],
[
- 'name' => '__context',
+ 'name' => 'ContactName',
'in' => 'query',
- 'schema' => [
- 'type' => 'string',
- 'required' => false,
- ],
+ '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' => 'skipAuth',
+ '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,
- 'default' => 'true',
+ 'enumValueTitles' => [],
+ 'example' => 'hdm_alarm_sms,dingtalk',
],
],
[
- 'name' => 'UserId',
+ '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' => 'TaskId',
+ '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"}', 'title' => ''],
+ ],
+ [
+ '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"}}', 'title' => ''],
+ ],
],
'responses' => [
200 => [
+ 'headers' => [],
'schema' => [
+ 'description' => 'The response parameters.'."\n",
'type' => 'object',
'properties' => [
- 'Message' => [
- 'type' => 'string',
- ],
- 'RequestId' => [
- 'type' => 'string',
- ],
- 'Synchro' => [
- 'type' => 'string',
- ],
+ 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '097F0C56-B252-515A-B602-FC56EF93EF8A', 'title' => ''],
+ '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', 'title' => ''],
'Data' => [
+ 'description' => 'The detailed information.'."\n",
'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',
- ],
+ 'userId' => ['title' => '', 'description' => 'The user ID.'."\n", 'type' => 'string', 'example' => '1088760496****'],
+ 'instanceId' => ['title' => '', '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'],
],
+ 'title' => '',
+ 'example' => '',
],
- 'Code' => [
- 'type' => 'string',
- ],
- 'Success' => [
- 'type' => 'string',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.'."\n", 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'* **true**'."\n"
+ .'* **false**'."\n", 'type' => 'string', 'example' => 'true', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- 'responseDemo' => null,
- ],
- 'GetEndpointSwitchTask' => [
- 'methods' => [
- 'post',
- 'get',
+ '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\\": \\"Default contact\\",\\n \\"contactGroupName\\": \\"Default contact group\\",\\n \\"channelType\\": \\"hdm_alarm_sms,dingtalk\\",\\n \\"level\\": \\"Optimization\\"\\n },\\n \\"Code\\": \\"200\\",\\n \\"Success\\": \\"true\\"\\n}","errorExample":""},{"type":"xml","example":"","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",
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SetEventSubscription'],
+ ],
],
- 'schemes' => [
- 'http',
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'hdm:SetEventSubscription',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'UpdateAutoResourceOptimizeRulesAsync' => [
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
+ 'operationType' => 'readAndWrite',
'systemTags' => [
- 'operationType' => 'get',
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => ['FEATUREhdm3TU4OK'],
],
'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',
+ 'name' => 'ConsoleContext',
'in' => 'query',
- 'schema' => [
- 'type' => 'string',
- 'required' => false,
- ],
+ 'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
- 'name' => '__context',
+ 'name' => 'InstanceIds',
'in' => 'query',
- 'schema' => [
- 'type' => 'string',
- 'required' => false,
- ],
+ '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\']`.', 'type' => 'string', 'required' => true, 'example' => '[\'rm-2ze8g2am97624****\',\'rm-2ze9xrhze0709****\']', 'title' => ''],
],
[
- 'name' => 'skipAuth',
+ 'name' => 'TableSpaceSize',
'in' => 'query',
- 'schema' => [
- 'type' => 'string',
- 'required' => false,
- 'default' => 'true',
- ],
+ 'schema' => ['description' => 'The minimum storage usage that triggers automatic fragment recycling of a single physical table. Valid values: **5** to **100**. Unit: GB.', 'type' => 'number', 'format' => 'double', 'required' => true, 'example' => '10', 'title' => ''],
],
[
- 'name' => 'UserId',
+ 'name' => 'TableFragmentationRatio',
'in' => 'query',
- 'schema' => [
- 'type' => 'string',
- 'required' => false,
- ],
+ 'schema' => ['description' => 'The fragmentation rate that triggers automatic fragment recycling of a single physical table. Valid values: **0.10** to **0.99**.', 'type' => 'number', 'format' => 'double', 'required' => true, 'example' => '0.2', 'title' => ''],
],
[
- 'name' => 'TaskId',
+ 'name' => 'ResultId',
'in' => 'query',
- 'schema' => [
- 'type' => 'string',
- 'required' => false,
- ],
+ '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.', 'type' => 'string', 'required' => false, 'example' => 'async__507044db6c4eadfa2dab9b084e80****', 'title' => ''],
],
],
'responses' => [
@@ -26437,142 +20454,179 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'Message' => [
- 'type' => 'string',
- ],
- 'RequestId' => [
- 'type' => 'string',
- ],
- 'Synchro' => [
- 'type' => 'string',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'Data' => [
+ 'description' => 'The data returned.',
'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',
+ 'Fail' => ['description' => 'Indicates whether the asynchronous request failed. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
+ '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.',
+ 'type' => 'object',
+ 'properties' => [
+ 'TotalInstanceCount' => ['description' => 'The total number of database instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''],
+ 'ConfigSuccessInstanceCount' => ['description' => 'The number of database instances for which the parameters are configured.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'ConfigFailInstanceCount' => ['description' => 'The number of database instances for which the parameters failed to be configured.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ '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', 'title' => ''],
+ 'InstanceId' => ['description' => 'The database instance ID.', 'type' => 'string', 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ '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', 'title' => ''],
+ 'InstanceId' => ['description' => 'The database instance ID.', 'type' => 'string', 'example' => 'rm-2ze9xrhze0709****', 'title' => ''],
+ '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', 'title' => ''],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
],
+ 'ResultId' => ['description' => 'The ID of the asynchronous request.', 'type' => 'string', 'example' => 'async__20ee808e72257f16a4fe024057ca****', 'title' => ''],
+ 'IsFinish' => ['description' => 'Indicates whether the asynchronous request was complete. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'State' => ['description' => 'The state of the asynchronous request. Valid values:'."\n"
+ ."\n"
+ .'- **RUNNING**'."\n"
+ ."\n"
+ .'- **SUCCESS**'."\n"
+ ."\n"
+ .'- **FAIL**', 'type' => 'string', 'example' => 'SUCCESS', 'title' => ''],
+ 'Complete' => ['description' => 'Indicates whether the asynchronous request was complete. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1645668213000', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
- 'Code' => [
- 'type' => 'string',
- ],
- 'Success' => [
- 'type' => 'string',
- ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '9CB97BC4-6479-55D0-B9D0-EA925AFE****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
+ ],
+ ],
+ 'title' => 'UpdateAutoResourceOptimizeRulesAsync',
+ 'summary' => 'Asynchronously configures parameters related to the automatic fragment recycling feature for multiple database instances at a time.',
+ '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"
+ ."\n"
+ .'- The database instances must be an ApsaraDB RDS for MySQL High-availability Edition instance.'."\n"
+ ."\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"
+ ."\n"
+ .'- The database instance has four or more CPU cores, and **innodb\\_file\\_per\\_table** is set to **ON**.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateAutoResourceOptimizeRulesAsync'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'hdm:UpdateAutoResourceOptimizeRulesAsync',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
],
- 'responseDemo' => null,
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
],
- 'GetHDMLastAliyunResourceSyncResult' => [
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'UpdateAutoSqlOptimizeStatus' => [
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'systemTags' => [
- 'operationType' => 'get',
- ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => ['operationType' => 'update'],
'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',
+ 'name' => 'Instances',
'in' => 'query',
- 'schema' => [
- 'type' => 'string',
- 'required' => false,
- 'default' => 'true',
- ],
+ 'schema' => ['description' => 'The database instance IDs. Separate multiple IDs with commas (,).'."\n"
+ ."\n"
+ .'> You can specify up to 50 instance IDs.', 'type' => 'string', 'required' => true, 'example' => 'rm-bp10usoc1erj7****,rm-bp10usoc1erj7****', 'title' => ''],
],
[
- 'name' => 'UserId',
+ 'name' => 'Status',
'in' => 'query',
- 'schema' => [
- 'type' => 'string',
- 'required' => false,
- ],
+ 'schema' => ['description' => 'The status of the automatic SQL optimization feature. Valid values:'."\n"
+ ."\n"
+ .'- **0**: The automatic SQL optimization feature is disabled.'."\n"
+ ."\n"
+ .'- **1**: **SQL diagnosis and automatic index creation** is specified.'."\n"
+ ."\n"
+ .'- **3**: **SQL diagnosis only** is specified.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '1', 'title' => ''],
],
],
'responses' => [
@@ -26580,222 +20634,182 @@
'schema' => [
'type' => 'object',
'properties' => [
- 'Message' => [
- 'type' => 'string',
- ],
- 'RequestId' => [
- 'type' => 'string',
- ],
- 'Synchro' => [
- 'type' => 'string',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'Data' => [
+ 'description' => 'The returned 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',
- ],
+ 'Success' => ['description' => 'Indicates whether the request initiated to configure the automatic SQL optimization feature was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'false', 'title' => ''],
+ 'ErrorCode' => ['description' => 'The error code. Valid values:'."\n"
+ ."\n"
+ .'- **-1001**: indicates that the specified parameter is invalid.'."\n"
+ ."\n"
+ .'- **-91029**: indicates that a system error occurred.', 'type' => 'string', 'example' => '-1001', 'title' => ''],
+ 'ErrorMsg' => ['description' => 'The error message.', 'type' => 'string', 'example' => 'invalid param', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
- 'Code' => [
- 'type' => 'string',
- ],
- 'Success' => [
- 'type' => 'string',
- ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'A52AD37C-35ED-581A-AC23-2232BE54****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
+ ],
+ ],
+ 'title' => 'UpdateAutoSqlOptimizeStatus',
+ 'summary' => 'Enables, modifies, or disables the automatic SQL optimization feature for multiple database instances at a time.',
+ '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"
+ ."\n"
+ .' - PolarDB for MySQL Cluster Edition',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateAutoSqlOptimizeStatus'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'hdm:UpdateAutoSqlOptimizeStatus',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
],
- 'responseDemo' => null,
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
],
- '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',
- ],
+ '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' => 'read',
- 'deprecated' => false,
+ 'operationType' => 'readAndWrite',
'systemTags' => [
- 'operationType' => 'list',
+ 'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '199697',
- 'abilityTreeNodes' => [
- 'FEATUREhdmFT57I0',
- ],
+ 'abilityTreeNodes' => ['FEATUREhdmTFSOG0'],
],
'parameters' => [
[
- 'name' => 'InstanceId',
- 'in' => 'formData',
- 'schema' => [
- 'description' => 'The database instance ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'pc-2ze8g2am97624****'."\n",
- 'title' => '实例ID',
- ],
+ 'name' => 'ConsoleContext',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
- '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' => '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\']`.', 'type' => 'string', 'required' => true, 'example' => '[\'rm-2ze8g2am97624****\',\'rm-2ze9xrhze0709****\']', 'title' => ''],
],
[
- 'name' => 'Role',
+ 'name' => 'CpuUsage',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The threshold for CPU utilization. Valid values: 70% to 100%.', 'type' => 'number', 'format' => 'double', 'required' => true, 'example' => '70', 'title' => ''],
+ ],
+ [
+ 'name' => 'CpuSessionRelation',
'in' => 'query',
'schema' => [
- 'description' => 'The role of the node of the PolarDB-X 2.0 instance. Valid values:'."\n"
+ '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"
."\n"
- .'* \\*\\*polarx_cn\\*\\*: compute node'."\n"
- .'* \\*\\*polarx_dn\\*\\*: data node'."\n",
+ .'- **OR**',
+ 'enumValueTitles' => [],
'type' => 'string',
- 'required' => false,
- 'example' => 'polarx_cn ',
+ 'required' => true,
+ 'example' => 'OR',
],
],
[
- 'name' => 'Filters',
+ 'name' => 'ActiveSessions',
'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,
- ],
+ '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"
+ ."\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.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '16', 'title' => ''],
],
[
- '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' => '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.', 'type' => 'number', 'format' => 'double', 'required' => true, 'example' => '2', 'title' => ''],
],
[
- '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' => 'MaxThrottleTime',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The maximum throttling duration. Set this parameter to a positive integer. Unit: minutes.', 'type' => 'number', 'format' => 'double', 'required' => true, 'example' => '10', 'title' => ''],
],
[
- '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' => 'AllowThrottleStartTime',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The start time of the throttling window. The time must be in UTC.', 'type' => 'string', 'required' => true, 'example' => '00:00Z', 'title' => ''],
],
[
- 'name' => 'PageSize',
- 'in' => 'formData',
- 'schema' => [
- 'description' => 'The number of entries per page. Default value: 10.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '10',
- ],
+ 'name' => 'AllowThrottleEndTime',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The end time of the throttling window. The time must be in UTC.', 'type' => 'string', 'required' => true, 'example' => '23:59Z', 'title' => ''],
+ ],
+ [
+ '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"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'required' => true, 'example' => 'true', 'title' => ''],
+ ],
+ [
+ '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.', 'type' => 'string', 'required' => false, 'example' => 'async__507044db6c4eadfa2dab9b084e80****', 'title' => ''],
],
],
'responses' => [
@@ -26803,2853 +20817,1758 @@
'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',
- ],
+ 'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', 'title' => ''],
+ '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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'Data' => [
- 'title' => 'SqlLogDetailResult',
- 'description' => 'The data that is returned.'."\n",
+ 'description' => 'The data returned.',
'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",
+ 'Fail' => ['description' => 'Indicates whether the asynchronous request failed. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
+ '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.',
'type' => 'object',
'properties' => [
- 'SQLLogRecord' => [
- 'description' => 'The SQL log data.'."\n",
+ 'TotalInstanceCount' => ['description' => 'The total number of database instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''],
+ 'ConfigSuccessInstanceCount' => ['description' => 'The number of database instances for which the parameters are configured.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'ConfigFailInstanceCount' => ['description' => 'The number of database instances for which the parameters failed to be configured.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ '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', 'title' => ''],
+ 'InstanceId' => ['description' => 'The database instance ID.', 'type' => 'string', 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
+ ],
'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'ConfigFailInstanceList' => [
+ 'description' => 'The database instances for which the parameters failed to be configured.',
+ 'type' => 'array',
+ 'items' => [
'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"]',
- ],
+ 'ConfigSuccess' => ['description' => 'Indicates whether the parameters are configured. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
+ 'InstanceId' => ['description' => 'The database instance ID.', 'type' => 'string', 'example' => 'rm-2ze9xrhze0709****', 'title' => ''],
+ 'ErrorMessage' => ['description' => 'The error message returned.', 'type' => 'string', 'example' => 'instance das autonomy service is off or can not find instance', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
- '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',
- ],
+ 'ResultId' => ['description' => 'The ID of the asynchronous request.', 'type' => 'string', 'example' => 'async__665ee69612f1627c7fd9f3c85075****', 'title' => ''],
+ 'IsFinish' => ['description' => 'Indicates whether the asynchronous request was complete. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'State' => ['description' => 'The state of the asynchronous request. Valid values:'."\n"
+ ."\n"
+ .'- **RUNNING**'."\n"
+ ."\n"
+ .'- **SUCCESS**'."\n"
+ ."\n"
+ .'- **FAIL**', 'type' => 'string', 'example' => 'SUCCESS', 'title' => ''],
+ 'Complete' => ['description' => 'Indicates whether the asynchronous request was complete. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ '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.', 'type' => 'integer', 'format' => 'int64', 'example' => '1645668213000', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
+ 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ ."\n"
+ .'- **true**'."\n"
+ ."\n"
+ .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
- 'description' => '',
- 'title' => '根节点或根目录',
+ 'description' => 'The response parameters.',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
- ],
+ ['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
- ],
+ ['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
- '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"
+ 'responseDemo' => '[{"errorExample":"","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}","type":"json"}]',
+ '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"
- .'* 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' => [],
+ .'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"
+ ."\n"
+ .' - PolarDB for MySQL Cluster Edition that runs MySQL 5.6, MySQL 5.7, or MySQL 8.0',
+ 'changeSet' => [],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'hdm:UpdateAutoThrottleRulesAsync',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
],
],
- 'operationType' => 'readAndWrite',
- 'systemTags' => [
- 'operationType' => 'create',
- 'abilityTreeCode' => '23825',
- 'abilityTreeNodes' => [
- 'FEATUREhdm543Z01',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateAutoThrottleRulesAsync'],
],
],
- '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****',
+ ],
+ ],
+ 'endpoints' => [
+ ['regionId' => 'cn-shanghai', 'regionName' => 'China (Shanghai)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'das.cn-shanghai.aliyuncs.com', 'endpoint' => 'das.cn-shanghai.aliyuncs.com', 'vpc' => 'das.vpc-proxy.aliyuncs.com'],
+ ['regionId' => 'cn-north-2-gov-1', 'regionName' => 'Beijing Government Cloud', 'areaId' => 'industryCloud', 'areaName' => 'Industry Cloud', 'public' => 'das.aliyuncs.com', 'endpoint' => 'das.aliyuncs.com', 'vpc' => ''],
+ ],
+ 'errorCodes' => [
+ ['code' => '-1005', 'message' => 'Service request timed out. Please try again later.', 'http_code' => 503, 'description' => 'The backend API query timed out.'],
+ ['code' => '-10200017', 'message' => 'The instance already enable other version audit.', 'http_code' => 517, 'description' => 'Another version of the audit log is already enabled for this instance.'],
+ ['code' => '-10200030', 'message' => 'Invalid query parameter.', 'http_code' => 432, 'description' => 'The audit log query parameters are invalid.'],
+ ['code' => '-1120002', 'message' => 'Node ID is duplicate. Please check and try again.', 'http_code' => 438, 'description' => 'The node ID is duplicate. Check the node ID and try again.'],
+ ['code' => '-1150006', 'message' => 'Auto-scaling system error. Please contact support.', 'http_code' => 512, 'description' => 'An internal error occurred in elastic scaling.'],
+ ['code' => '-1170007', 'message' => 'Query time out of hot records range.', 'http_code' => 433, 'description' => 'The query time range exceeds the warm data range.'],
+ ['code' => '-404', 'message' => 'Resource not found.', 'http_code' => 516, 'description' => 'The entity was not found.'],
+ ['code' => '-40402', 'message' => 'Instance not found.', 'http_code' => 515, 'description' => 'The instance was not found.'],
+ ['code' => '-5001', 'message' => 'Task run error. Please check the task configuration.', 'http_code' => 514, 'description' => 'The task failed to be executed.'],
+ ['code' => '-80000', 'message' => 'Analysis task threshold exceeds the limit. Please adjust the threshold.', 'http_code' => 513, 'description' => 'The number of storage analysis tasks exceeds the threshold. You can create only one task within 30 minutes.'],
+ ['code' => '-8063', 'message' => 'Invalid result ID. Please check and try again.', 'http_code' => 439, 'description' => 'The asynchronous task result ID is invalid.'],
+ ['code' => '-90005', 'message' => 'Unsupported engine minor version. Please upgrade or downgrade to a supported version.', 'http_code' => 518, 'description' => 'The minor engine version is not supported.'],
+ ['code' => '-9006', 'message' => 'Request is not enabled. Please enable the related feature first.', 'http_code' => 437, 'description' => 'SQL Explorer is not enabled.'],
+ ['code' => '-91007', 'message' => 'DAS Pro is not enabled. Please enable DAS Pro first.', 'http_code' => 402, 'description' => 'DAS Professional Edition (Enterprise Edition) is not purchased.'],
+ ['code' => '-91023', 'message' => 'SQL log detail archive exceeds the limit. Please clean up the archive.', 'http_code' => 435, 'description' => 'The SQL archive has reached the upper limit.'],
+ ['code' => '-91045', 'message' => 'Page number is too large. Please use a smaller page number.', 'http_code' => 434, 'description' => 'The PageNo value for pagination is too large.'],
+ ['code' => '-996', 'message' => 'Operation is too fast. Please try again later.', 'http_code' => 429, 'description' => 'The operation is too frequent.'],
+ ['code' => '-998', 'message' => 'Unsupported operation. Please check the operation type.', 'http_code' => 405, 'description' => 'The operation type is not supported.'],
+ ['code' => '-999', 'message' => 'Can not get endpoint.', 'http_code' => 452, 'description' => 'The endpoint cannot be obtained.'],
+ ['code' => '2', 'message' => 'Time not match the format: yyyyMMdd.', 'http_code' => 440, 'description' => 'The time parameter format is invalid.'],
+ ['code' => '400', 'message' => 'The provided API key is malformed. Please check the format of the key and ensure it is correctly configured.', 'http_code' => 441, 'description' => 'The provided key is invalid.'],
+ ['code' => '500', 'message' => 'The request processing has failed due to timeout.', 'http_code' => 519, 'description' => 'The access request timed out.'],
+ ['code' => 'InstanceNotFound', 'message' => 'Requested instance not found.', 'http_code' => 404, 'description' => 'The corresponding instance ID cannot be found.'],
+ ['code' => 'InstanceNotFound', 'message' => 'The specified instance does not exist.', 'http_code' => 404, 'description' => 'The instance does not exist.'],
+ ['code' => 'InvalidParams', 'message' => 'The request parameters are invalid.', 'http_code' => 400, 'description' => 'The request parameters are invalid.'],
+ ['code' => 'NoPermission', 'message' => 'You are not authorized to do this action.', 'http_code' => 403, 'description' => 'You do not have the permissions to perform this operation.'],
+ ['code' => 'Timeout', 'message' => 'The request processing has failed due to timeout.', 'http_code' => 500, 'description' => 'Request processing failed due to timeout.'],
+ ],
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetAutoResourceOptimizeRules'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetFullRequestSampleByInstanceId'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetQueryOptimizeExecErrorStats'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetPartitionsHeatmap'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetFullRequestStatResultByInstanceId'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetMongoDBCurrentOp'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetMySQLAllSessionAsync'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetRequestDiagnosisResult'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetQueryOptimizeDataStats'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DisableAutoResourceOptimizeRules'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetAutonomousNotifyEventsInRange'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetDasSQLLogHotData'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetFullRequestOriginStatByInstanceId'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetAutoIncrementUsageStatistic'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetQueryOptimizeDataTop'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateSqlLogTask'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DisableInstanceDasConfig'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'EnableDasPro'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetQueryOptimizeSolution'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSqlConcurrencyControlKeywordsFromSqlText'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DisableAutoThrottleRules'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeSqlLogRecords'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateCacheAnalysisJob'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeCloudBenchTasks'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateDiagnosticReport'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetDeadLockDetailList'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeSqlLogStatistic'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetErrorRequestSample'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetQueryOptimizeExecErrorSample'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetDBInstanceConnectivityDiagnosis'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetAsyncErrorRequestListByCode'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'RunCloudBenchTask'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'EnableSqlConcurrencyControl'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetAsyncErrorRequestStatResult'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetRedisAllSession'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetHDMAliyunResourceSyncResult'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetAutoThrottleRules'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetInstanceMissingIndexList'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'AddHDMInstance'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetDeadLockDetail'],
+ ['threshold' => '-1', 'countWindow' => 1, 'regionId' => '*'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DisableSqlConcurrencyControl'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSqlOptimizeAdvice'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeDiagnosticReportList'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetQueryOptimizeDataTrend'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeCacheAnalysisJob'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetDasProServiceUsage'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeSlowLogHistogramAsync'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetKillInstanceSessionTaskResult'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateAutoResourceOptimizeRulesAsync'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeHotKeys'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetQueryOptimizeRuleList'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DisableAllSqlConcurrencyControlRules'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeAutoScalingConfig'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeSqlLogTasks'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetPfsSqlSample'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetStorageAnalysisResult'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetInstanceInspections'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetEndpointSwitchTask'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SetEventSubscription'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateKillInstanceSessionTask'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateLatestDeadLockAnalysis'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetDeadlockHistogram'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'KillInstanceAllSession'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetRequestDiagnosisPage'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ModifyAutoScalingConfig'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateStorageAnalysisTask'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetRunningSqlConcurrencyControlRules'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeSqlLogConfig'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateQueryOptimizeTag'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeInstanceDasPro'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeHotBigKeys'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateRequestDiagnosis'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeTopBigKeys'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DisableDasPro'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeTopHotKeys'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetHDMLastAliyunResourceSyncResult'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetAutonomousNotifyEventContent'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetPfsSqlSummaries'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeSlowLogStatistic'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteStopGateway'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetBlockingDetailList'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetEventSubscription'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeCloudbenchTask'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeSlowLogRecords'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeCloudbenchTaskConfig'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetQueryOptimizeTag'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetDeadLockHistory'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeCacheAnalysisJobs'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetAsyncErrorRequestStatByCode'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateCloudBenchTasks'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeAutoScalingHistory'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSqlConcurrencyControlRulesHistory'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateAutoThrottleRulesAsync'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetPfsMetricTrends'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetInstanceSqlOptimizeStatistic'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeSqlLogTask'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteCloudBenchTask'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetQueryOptimizeShareUrl'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ModifySqlLogConfig'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateAutoSqlOptimizeStatus'],
+ ],
+ ],
+ 'ram' => [
+ 'productCode' => 'DAS',
+ 'productName' => 'Database Autonomy Service',
+ 'ramCodes' => ['hdm'],
+ 'ramLevel' => 'OPERATION',
+ 'ramConditions' => [],
+ 'ramActions' => [
+ [
+ 'apiName' => 'GetAsyncErrorRequestStatResult',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetAsyncErrorRequestStatResult',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- 'name' => 'InstanceId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The database instance ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-2ze8g2am97624****',
+ ],
+ [
+ 'apiName' => 'GetDeadlockHistogram',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'hdm:GetDeadlockHistogram',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- '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',
+ ],
+ [
+ 'apiName' => 'DescribeCacheAnalysisJob',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeCacheAnalysisJob',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- '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' => '',
+ [
+ 'apiName' => 'GetRunningSqlConcurrencyControlRules',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetRunningSqlConcurrencyControlRules',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
+ [
+ 'apiName' => 'GetAutoIncrementUsageStatistic',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'hdm:GetAutoIncrementUsageStatistic',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- 403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
+ ],
+ [
+ 'apiName' => 'GetAutoThrottleRules',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'hdm:GetAutoThrottleRules',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- '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' => [],
+ [
+ 'apiName' => 'DescribeSqlLogTasks',
+ 'description' => '',
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeSqlLogTasks',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
- '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****',
+ [
+ 'apiName' => 'GetPartitionsHeatmap',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetPartitionsHeatmap',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- 'name' => 'InstanceId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The database instance ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-2ze8g2am97624****',
+ ],
+ [
+ 'apiName' => 'GetYaoChiAgent',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetYaoChiAgent',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- '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' => '',
+ [
+ 'apiName' => 'GetPfsMetricTrends',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetPfsMetricTrends',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
+ [
+ 'apiName' => 'KillInstanceAllSession',
+ 'description' => '',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'hdm:KillInstanceAllSession',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
- [
- 'errorCode' => '-1020004',
- 'errorMessage' => 'the dbconfig is applying',
+ ],
+ ],
+ [
+ 'apiName' => 'DescribeCacheAnalysisJobs',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeCacheAnalysisJobs',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- 403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
+ ],
+ [
+ 'apiName' => 'DisableInstanceDasConfig',
+ 'description' => '',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'hdm:DisableInstanceDasConfig',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- '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',
+ [
+ 'apiName' => 'GetMongoDBCurrentOp',
+ 'description' => '',
+ 'operationType' => '',
+ 'ramAction' => [
+ 'action' => 'hdm:GetMongoDBCurrentOp',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
],
- 'schemes' => [
- 'http',
- 'https',
+ [
+ 'apiName' => 'GetQueryOptimizeTag',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetQueryOptimizeTag',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
],
- 'security' => [
- [
- 'AK' => [],
+ [
+ 'apiName' => 'DescribeAutoScalingHistory',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeAutoScalingHistory',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
- 'operationType' => 'read',
- 'deprecated' => false,
- 'systemTags' => [
+ [
+ 'apiName' => 'GetAutonomousNotifyEventsInRange',
+ 'description' => '',
'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREhdm543Z01',
+ 'ramAction' => [
+ 'action' => 'hdm:GetAutonomousNotifyEventsInRange',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
- 'parameters' => [
- [
- 'name' => 'InstanceId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The database instance ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-2ze8g2am97624****',
+ [
+ 'apiName' => 'DescribeSqlLogConfig',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeSqlLogConfig',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- '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' => '',
+ [
+ 'apiName' => 'GetEventSubscription',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetEventSubscription',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
+ [
+ 'apiName' => 'GetDasAgentSSE',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetDasAgentSSE',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- 403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
+ ],
+ [
+ 'apiName' => 'DescribeSecurityIPGroup',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeSecurityIPGroup',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- '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',
+ [
+ 'apiName' => 'CreateDiagnosticReport',
+ 'description' => '',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'hdm:CreateDiagnosticReport',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
],
- 'schemes' => [
- 'http',
- 'https',
+ [
+ 'apiName' => 'UpdateAutoThrottleRulesAsync',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'hdm:UpdateAutoThrottleRulesAsync',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
],
- 'security' => [
- [
- 'AK' => [],
+ [
+ 'apiName' => 'CreateSecurityIPGroup',
+ 'description' => '',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'hdm:CreateSecurityIPGroup',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
- 'operationType' => 'read',
- 'deprecated' => false,
- 'systemTags' => [
+ [
+ 'apiName' => 'DescribeDiagnosticReportList',
+ 'description' => '',
'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****',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeDiagnosticReportList',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- 'name' => 'InstanceId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The database instance ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'rm-2ze8g2am97624****',
+ ],
+ [
+ 'apiName' => 'GetSqlConcurrencyControlRulesHistory',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetSqlConcurrencyControlRulesHistory',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- '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' => '',
+ [
+ 'apiName' => 'GetFullRequestOriginStatByInstanceId',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetFullRequestOriginStatByInstanceId',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
+ [
+ 'apiName' => 'GetDeadLockHistory',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'hdm:GetDeadLockHistory',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- 403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
+ ],
+ [
+ 'apiName' => 'GetBlockingDetailList',
+ 'description' => '',
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'hdm:GetBlockingDetailList',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- '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',
+ [
+ 'apiName' => 'CreateQueryOptimizeTag',
+ 'description' => '',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'hdm:CreateQueryOptimizeTag',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
],
- 'schemes' => [
- 'http',
- 'https',
+ [
+ 'apiName' => 'CreateCloudBenchTasks',
+ 'description' => '',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'hdm:CreateCloudBenchTasks',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
],
- 'security' => [
- [
- 'AK' => [],
+ [
+ 'apiName' => 'GetInstanceInspections',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetInstanceInspections',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
- 'operationType' => 'readAndWrite',
- 'systemTags' => [
+ [
+ 'apiName' => 'DescribeSqlLogStatistic',
+ 'description' => '',
'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeSqlLogStatistic',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
],
- '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****',
+ [
+ 'apiName' => 'CreateKillInstanceSessionTask',
+ 'description' => '',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'hdm:CreateKillInstanceSessionTask',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- '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' => '',
+ [
+ 'apiName' => 'GetAsyncErrorRequestListByCode',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetAsyncErrorRequestListByCode',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
+ [
+ 'apiName' => 'GetQueryOptimizeExecErrorSample',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetQueryOptimizeExecErrorSample',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- 403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
+ ],
+ [
+ 'apiName' => 'GetQueryOptimizeDataStats',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetQueryOptimizeDataStats',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- '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',
+ [
+ 'apiName' => 'DescribeCloudBenchTasks',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeCloudBenchTasks',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
],
- 'schemes' => [
- 'http',
- 'https',
+ [
+ 'apiName' => 'ModifySecurityIPGroup',
+ 'description' => '',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'hdm:ModifySecurityIPGroup',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
],
- 'security' => [
- [
- 'AK' => [],
+ [
+ 'apiName' => 'ModifyAutoScalingConfig',
+ 'description' => '',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'hdm:ModifyAutoScalingConfig',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
- 'systemTags' => [
+ [
+ 'apiName' => 'DescribeQueryExplain',
+ 'description' => '',
'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****',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeQueryExplain',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- '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' => '',
+ [
+ 'apiName' => 'GetQueryOptimizeShareUrl',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetQueryOptimizeShareUrl',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
+ [
+ 'apiName' => 'GetRequestDiagnosisPage',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetRequestDiagnosisPage',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- 403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
+ ],
+ [
+ 'apiName' => 'CreateSqlLogTask',
+ 'description' => '',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'hdm:CreateSqlLogTask',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- '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',
+ [
+ 'apiName' => 'GetInstanceMissingIndexList',
+ 'description' => '',
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'hdm:GetInstanceMissingIndexList',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
],
- 'security' => [
- [
- 'AK' => [],
+ [
+ 'apiName' => 'CreateLatestDeadLockAnalysis',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'hdm:CreateLatestDeadLockAnalysis',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
- 'systemTags' => [
+ [
+ 'apiName' => 'DescribeHotBigKeys',
+ 'description' => '',
'operationType' => 'get',
- 'abilityTreeCode' => '29456',
- 'abilityTreeNodes' => [
- 'FEATUREhdmB8MM4L',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeHotBigKeys',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
- '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',
+ [
+ 'apiName' => 'CreateRequestDiagnosis',
+ 'description' => '',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'hdm:CreateRequestDiagnosis',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- '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',
+ ],
+ [
+ 'apiName' => 'DescribeSqlLogRecords',
+ 'description' => '',
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeSqlLogRecords',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- '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',
+ ],
+ [
+ 'apiName' => 'CreateCacheAnalysisJob',
+ 'description' => '',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'hdm:CreateCacheAnalysisJob',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- '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',
+ ],
+ [
+ 'apiName' => 'DescribeAuditLogs',
+ 'description' => '',
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeAuditLogs',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- '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',
+ ],
+ [
+ 'apiName' => 'GetMySQLAllSessionAsync',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetMySQLAllSessionAsync',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- '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',
+ ],
+ [
+ 'apiName' => 'RunCloudBenchTask',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:RunCloudBenchTask',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- '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' => '',
+ [
+ 'apiName' => 'DeleteStopGateway',
+ 'description' => '',
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'hdm:DeleteStopGateway',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
+ [
+ 'apiName' => 'AddHDMInstance',
+ 'description' => '',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'hdm:AddHDMInstance',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- 403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
+ ],
+ [
+ 'apiName' => 'GetDeadLockDetail',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'hdm:GetDeadLockDetail',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- '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',
+ [
+ 'apiName' => 'GetDasSQLLogHotData',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetDasSQLLogHotData',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
],
- 'security' => [
- [
- 'AK' => [],
+ [
+ 'apiName' => 'GetInstanceGroupInspectReportList',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetInstanceGroupInspectReportList',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
- 'systemTags' => [
+ [
+ 'apiName' => 'EnableDasPro',
+ 'description' => '',
'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'hdm:EnableDasPro',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
],
- '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',
+ [
+ 'apiName' => 'GetQueryOptimizeRuleList',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetQueryOptimizeRuleList',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- '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****',
+ ],
+ [
+ 'apiName' => 'GetFullRequestStatResultByInstanceId',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetFullRequestStatResultByInstanceId',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- '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',
+ ],
+ [
+ 'apiName' => 'DescribeSlowLogRecords',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeSlowLogRecords',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- 'name' => 'SrcPublicIp',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The reserved parameter.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'None',
+ ],
+ [
+ 'apiName' => 'GetFullRequestSampleByInstanceId',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetFullRequestSampleByInstanceId',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- '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****',
+ ],
+ [
+ 'apiName' => 'CreateStorageAnalysisTask',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'hdm:CreateStorageAnalysisTask',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- '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****',
+ ],
+ [
+ 'apiName' => 'DisableAutoThrottleRules',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'hdm:DisableAutoThrottleRules',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- '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',
+ ],
+ [
+ 'apiName' => 'DescribeErrorLogRecords',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeErrorLogRecords',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- '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',
+ ],
+ [
+ 'apiName' => 'GetSqlOptimizeAdvice',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetSqlOptimizeAdvice',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- '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',
+ ],
+ [
+ 'apiName' => 'GetErrorRequestSample',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetErrorRequestSample',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- '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',
+ ],
+ [
+ 'apiName' => 'GetRequestDiagnosisResult',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetRequestDiagnosisResult',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- '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',
+ ],
+ [
+ 'apiName' => 'ModifySqlLogConfig',
+ 'description' => '',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'hdm:ModifySqlLogConfig',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- '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',
+ ],
+ [
+ 'apiName' => 'DescribeSecurityIPGroupRelation',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeSecurityIPGroupRelation',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- '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',
+ ],
+ [
+ 'apiName' => 'GetRedisAllSession',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetRedisAllSession',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- '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',
+ ],
+ [
+ 'apiName' => 'DescribeSlowLogHistogramAsync',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeSlowLogHistogramAsync',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- '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',
+ ],
+ [
+ 'apiName' => 'GetQueryOptimizeDataTrend',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetQueryOptimizeDataTrend',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- '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',
+ ],
+ [
+ 'apiName' => 'DescribeHotKeys',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeHotKeys',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- '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',
+ ],
+ [
+ 'apiName' => 'GetAutonomousNotifyEventContent',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetAutonomousNotifyEventContent',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- 'name' => 'DstSuperAccount',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The name of the privileged account for the destination instance.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'root',
+ ],
+ [
+ 'apiName' => 'DescribeAutoScalingConfig',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeAutoScalingConfig',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- 'name' => 'DstSuperPassword',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The password of the privileged account for the destination instance.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'test123',
+ ],
+ [
+ 'apiName' => 'GetKillInstanceSessionTaskResult',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetKillInstanceSessionTaskResult',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- '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',
+ ],
+ [
+ 'apiName' => 'UpdateAutoSqlOptimizeStatus',
+ 'description' => '',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'hdm:UpdateAutoSqlOptimizeStatus',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- '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',
+ ],
+ [
+ 'apiName' => 'GetQueryOptimizeSolution',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetQueryOptimizeSolution',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- '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',
+ ],
+ [
+ 'apiName' => 'GetAsyncErrorRequestStatByCode',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetAsyncErrorRequestStatByCode',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- 'name' => 'WorkDir',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The temporary directory generated for stress testing.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '/tmp/bench/',
+ ],
+ [
+ 'apiName' => 'GetDBInstanceConnectivityDiagnosis',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetDBInstanceConnectivityDiagnosis',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- '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',
+ ],
+ [
+ 'apiName' => 'GetQueryOptimizeExecErrorStats',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetQueryOptimizeExecErrorStats',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- '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',
+ ],
+ [
+ 'apiName' => 'DescribeCloudbenchTaskConfig',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeCloudbenchTaskConfig',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- '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',
+ ],
+ [
+ 'apiName' => 'DescribeSlowLogStatistic',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeSlowLogStatistic',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- [
- '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',
+ ],
+ [
+ 'apiName' => 'Chat',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:Chat',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- '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' => '',
+ [
+ 'apiName' => 'DescribeCloudbenchTask',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeCloudbenchTask',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
+ [
+ 'apiName' => 'GetInstanceGroupInspectReportDetail',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetInstanceGroupInspectReportDetail',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- 403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
+ ],
+ [
+ 'apiName' => 'DisableSqlConcurrencyControl',
+ 'description' => '',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'hdm:DisableSqlConcurrencyControl',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- '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',
+ [
+ 'apiName' => 'GetStorageAnalysisResult',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'hdm:GetStorageAnalysisResult',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
],
- 'schemes' => [
- 'http',
- 'https',
+ [
+ 'apiName' => 'DescribeTopBigKeys',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeTopBigKeys',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
],
- 'security' => [
- [
- 'AK' => [],
+ [
+ 'apiName' => 'DeleteCloudBenchTask',
+ 'description' => '',
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'hdm:DeleteCloudBenchTask',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
- 'operationType' => 'read',
- 'systemTags' => [
+ [
+ 'apiName' => 'DescribeInstanceDasPro',
+ 'description' => '',
'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeInstanceDasPro',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
],
- '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****',
+ [
+ 'apiName' => 'DescribeTopHotKeys',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeTopHotKeys',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- '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' => '',
+ [
+ 'apiName' => 'GetDasProServiceUsage',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetDasProServiceUsage',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
+ [
+ 'apiName' => 'GetInstanceSqlOptimizeStatistic',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetInstanceSqlOptimizeStatistic',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- 403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
+ ],
+ [
+ 'apiName' => 'GetSqlConcurrencyControlKeywordsFromSqlText',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetSqlConcurrencyControlKeywordsFromSqlText',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- '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****&amp;Expires=1622441372&amp;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 &gt; /tmp/das/cloudbench/null.log</BenchCmd>\\n <SqlFileOnOss>https://cb-rm-bp1w9g06h560l****.oss-cn-hangzhou.aliyuncs.com/cl-1621353601000-360****.sc?OSSAccessKeyId=LTAI5tKj8B4wikkVtupK****&amp;Expires=1622441372&amp;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 &amp;&amp; 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****&amp;Expires=1622441372&amp;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',
+ [
+ 'apiName' => 'UpdateAutoResourceOptimizeRulesAsync',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'hdm:UpdateAutoResourceOptimizeRulesAsync',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
],
- 'schemes' => [
- 'http',
- 'https',
+ [
+ 'apiName' => 'DisableAutoResourceOptimizeRules',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'hdm:DisableAutoResourceOptimizeRules',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
],
- 'security' => [
- [
- 'AK' => [],
+ [
+ 'apiName' => 'GetAutoResourceOptimizeRules',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'hdm:GetAutoResourceOptimizeRules',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
- 'operationType' => 'readAndWrite',
- 'systemTags' => [
+ [
+ 'apiName' => 'DisableDasPro',
+ 'description' => '',
'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****',
+ 'ramAction' => [
+ 'action' => 'hdm:DisableDasPro',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- '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' => '',
+ [
+ 'apiName' => 'GetDeadLockDetailList',
+ 'description' => '',
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'hdm:GetDeadLockDetailList',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
+ [
+ 'apiName' => 'ModifySecurityIPGroupRelation',
+ 'description' => '',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'hdm:ModifySecurityIPGroupRelation',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- 403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
+ ],
+ [
+ 'apiName' => 'GetPfsSqlSummaries',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetPfsSqlSummaries',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- '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',
+ [
+ 'apiName' => 'EnableSqlConcurrencyControl',
+ 'description' => '',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'hdm:EnableSqlConcurrencyControl',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
],
- 'schemes' => [
- 'http',
- 'https',
+ [
+ 'apiName' => 'SetEventSubscription',
+ 'description' => '',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'hdm:SetEventSubscription',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
],
- 'security' => [
- [
- 'AK' => [],
+ [
+ 'apiName' => 'DisableAllSqlConcurrencyControlRules',
+ 'description' => '',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'hdm:DisableAllSqlConcurrencyControlRules',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
- 'systemTags' => [
+ [
+ 'apiName' => 'DeleteSecurityIPGroup',
+ 'description' => '',
'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****',
+ 'ramAction' => [
+ 'action' => 'hdm:DeleteSecurityIPGroup',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- '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' => '',
+ [
+ 'apiName' => 'DescribeSqlLogTask',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:DescribeSqlLogTask',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'InvalidParams',
- 'errorMessage' => 'The request parameters are invalid.',
+ [
+ 'apiName' => 'GetPfsSqlSample',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetPfsSqlSample',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- 403 => [
- [
- 'errorCode' => 'NoPermission',
- 'errorMessage' => 'You are not authorized to do this action.',
+ ],
+ [
+ 'apiName' => 'GetQueryOptimizeDataTop',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'hdm:GetQueryOptimizeDataTop',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- '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',
+ 'resourceTypes' => [
+ ['validationType' => 'conditional', 'resourceType' => 'DBInstance', 'arn' => 'acs:rds:{#regionId}:{#accountId}:dbinstance/{#DbInstanceId}'],
+ ['validationType' => 'conditional', 'resourceType' => 'DBCluster', 'arn' => 'acs:polardb:{#regionId}:{#accountId}:dbcluster/{#DbClusterId}'],
+ ['validationType' => 'conditional', 'resourceType' => 'DBInstance', 'arn' => 'acs:drds:{#regionId}:{#accountId}:dbinstance/{#DBInstanceId}'],
+ ['validationType' => 'conditional', 'resourceType' => 'DBInstance', 'arn' => 'acs:kvstore:{#regionId}:{#accountId}:dbinstance/{#DBInstanceId}'],
+ ['validationType' => 'conditional', 'resourceType' => 'Instance', 'arn' => 'acs:mongodb:{#regionId}:{#accountId}:instance/{#InstanceId}'],
+ ['validationType' => 'conditional', 'resourceType' => 'PolarDBXInstance', 'arn' => 'acs:polardbx:{#RegionId}:{#accountId}:polardbxinstance/{#PolarDBXInstanceId}'],
+ ['validationType' => 'conditional', 'resourceType' => 'HDMInstance', 'arn' => 'acs:hdm::{#accountId}:hdminstance/*'],
+ ['validationType' => 'always', 'resourceType' => 'SwitchDasPro', 'arn' => 'acs:hdm::{#accountId}:switchdaspro/{#InstanceId}'],
+ ['validationType' => 'always', 'resourceType' => 'CloudbenchTask', 'arn' => 'acs:hdm:*:{#accountId}:cloudbenchtask/{#TaskId}'],
+ ['validationType' => 'always', 'resourceType' => 'SwitchDasPro', 'arn' => 'acs:hdm:*:{#accountId}:switchdaspro/{#InstanceId}'],
+ ['validationType' => 'always', 'resourceType' => 'InstanceMonitoringData', 'arn' => 'acs:hdm:*:{#accountId}:instancemonitoringdata/{#InstanceId}'],
+ ['validationType' => 'always', 'resourceType' => 'DBInstance', 'arn' => 'acs:hdm:{#regionId}:{#accountId}:dbinstance/*'],
+ ['validationType' => 'always', 'resourceType' => 'DBCluster', 'arn' => 'acs:hdm:{#regionId}:{#accountId}:dbcluster/*'],
+ ['validationType' => 'always', 'resourceType' => 'Instance', 'arn' => 'acs:hdm:{#regionId}:{#accountId}:instance/*'],
],
],
];