'1.0',
'info' => ['style' => 'RPC', 'product' => 'DAS', 'version' => '2020-01-16'],
'directories' => [
[
'children' => ['AddHDMInstance'],
'type' => 'directory',
'title' => 'Instance access',
],
[
'children' => ['GetInstanceInspections'],
'type' => 'directory',
'title' => 'Inspection and scoring',
],
[
'children' => ['SetEventSubscription', 'GetEventSubscription', 'GetAutonomousNotifyEventContent', 'GetAutonomousNotifyEventsInRange'],
'type' => 'directory',
'title' => 'Event notification',
],
[
'children' => ['CreateDiagnosticReport', 'DescribeDiagnosticReportList'],
'type' => 'directory',
'title' => 'Diagnostic report',
],
[
'children' => ['CreateCacheAnalysisJob', 'DescribeCacheAnalysisJob', 'DescribeCacheAnalysisJobs'],
'type' => 'directory',
'title' => 'Cache analysis',
],
[
'children' => ['EnableSqlConcurrencyControl', 'DisableSqlConcurrencyControl', 'DisableAllSqlConcurrencyControlRules', 'GetRunningSqlConcurrencyControlRules', 'GetSqlConcurrencyControlRulesHistory', 'GetSqlConcurrencyControlKeywordsFromSqlText'],
'type' => 'directory',
'title' => 'SQL throttling',
],
[
'children' => ['CreateRequestDiagnosis', 'GetRequestDiagnosisResult', 'GetRequestDiagnosisPage', 'DescribeQueryExplain'],
'type' => 'directory',
'title' => 'SQL diagnostics',
],
[
'children' => ['DescribeHotBigKeys', 'DescribeTopHotKeys', 'DescribeTopBigKeys', 'DescribeHotKeys'],
'type' => 'directory',
'title' => 'Key analysis',
],
[
'children' => ['CreateQueryOptimizeTag', 'GetQueryOptimizeExecErrorStats', 'GetQueryOptimizeExecErrorSample', 'GetQueryOptimizeSolution', 'GetQueryOptimizeRuleList', 'GetQueryOptimizeDataTrend', 'GetQueryOptimizeDataTop', 'GetQueryOptimizeDataStats', 'GetQueryOptimizeTag', 'GetQueryOptimizeShareUrl'],
'type' => 'directory',
'title' => 'Query governance',
],
[
'children' => ['GetErrorRequestSample', 'GetAsyncErrorRequestStatResult', 'GetAsyncErrorRequestListByCode', 'GetAsyncErrorRequestStatByCode', 'GetFullRequestOriginStatByInstanceId', 'GetFullRequestStatResultByInstanceId', 'GetFullRequestSampleByInstanceId'],
'type' => 'directory',
'title' => 'SQL explorer',
],
[
'children' => ['DescribeSqlLogConfig', 'ModifySqlLogConfig', 'DescribeSqlLogStatistic', 'GetDasSQLLogHotData', 'CreateSqlLogTask', 'DescribeSqlLogTask', 'DescribeSqlLogTasks'],
'type' => 'directory',
'title' => 'Enterprise edition management',
],
[
'children' => ['GetRedisAllSession', 'GetMongoDBCurrentOp', 'KillInstanceAllSession', 'CreateKillInstanceSessionTask', 'GetKillInstanceSessionTaskResult', 'GetMySQLAllSessionAsync'],
'type' => 'directory',
'title' => 'Instance session',
],
[
'children' => ['CreateStorageAnalysisTask', 'GetStorageAnalysisResult', 'GetAutoIncrementUsageStatistic'],
'type' => 'directory',
'title' => 'Storage analysis',
],
[
'children' => ['GetDeadLockDetailList', 'GetBlockingDetailList', 'CreateLatestDeadLockAnalysis', 'GetDeadLockHistory', 'GetDeadLockDetail', 'GetDeadlockHistogram'],
'type' => 'directory',
'title' => 'Locking optimization',
],
[
'children' => ['GetInstanceMissingIndexList'],
'type' => 'directory',
'title' => 'Index diagnostics',
],
[
'children' => ['DescribeSlowLogHistogramAsync', 'DescribeSlowLogStatistic', 'DescribeSlowLogRecords'],
'type' => 'directory',
'title' => 'Slow log',
],
[
'children' => ['UpdateAutoThrottleRulesAsync', 'DisableAutoThrottleRules', 'GetAutoThrottleRules'],
'type' => 'directory',
'title' => 'Automatic SQL throttling',
],
[
'children' => ['UpdateAutoSqlOptimizeStatus', 'GetSqlOptimizeAdvice', 'GetInstanceSqlOptimizeStatistic'],
'type' => 'directory',
'title' => 'Automatic SQL optimization',
],
[
'children' => ['UpdateAutoResourceOptimizeRulesAsync', 'DisableAutoResourceOptimizeRules', 'GetAutoResourceOptimizeRules'],
'type' => 'directory',
'title' => 'Automatic space optimization',
],
[
'children' => ['ModifyAutoScalingConfig', 'DescribeAutoScalingConfig', 'DescribeAutoScalingHistory', 'DisableInstanceDasConfig'],
'type' => 'directory',
'title' => 'Automatic elastic scaling',
],
[
'children' => ['GetPfsSqlSample', 'GetPfsMetricTrends', 'GetPfsSqlSummaries'],
'type' => 'directory',
'title' => 'Performance insight (New version)',
],
[
'children' => ['DescribeErrorLogRecords'],
'type' => 'directory',
'title' => 'Error log',
],
[
'children' => ['Chat', 'GetInstanceGroupInspectReportList', 'GetInstanceGroupInspectReportDetail'],
'type' => 'directory',
'title' => 'DAS Agent',
],
[
'children' => ['CreateSecurityIPGroup', 'DescribeSecurityIPGroup', 'DescribeSecurityIPGroupRelation', 'ModifySecurityIPGroup', 'ModifySecurityIPGroupRelation', 'DeleteSecurityIPGroup'],
'type' => 'directory',
'title' => 'Cross-product whitelist',
],
[
'children' => ['GetDasAgentSSE', 'GetHDMAliyunResourceSyncResult', 'DescribeSqlLogRecords', 'EnableDasPro', 'DisableDasPro', 'DescribeInstanceDasPro', 'GetDasProServiceUsage', 'RunCloudBenchTask', 'DescribeCloudbenchTask', 'DescribeCloudBenchTasks', 'CreateCloudBenchTasks', 'DescribeCloudbenchTaskConfig', 'DeleteCloudBenchTask', 'DeleteStopGateway', 'GetYaoChiAgent', 'DescribeAuditLogs', 'GetDBInstanceConnectivityDiagnosis', 'GetPartitionsHeatmap'],
'type' => 'directory',
'title' => 'Others',
],
],
'components' => [
'schemas' => [],
],
'apis' => [
'AddHDMInstance' => [
'summary' => 'Adds a database instance to Database Autonomy Service (DAS).',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'create'],
'parameters' => [
[
'name' => '__context',
'in' => 'query',
'schema' => ['description' => 'The reserved parameter.', '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"
."\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.', '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.', '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.', 'type' => 'string', 'required' => false, 'example' => '3306', 'title' => ''],
],
[
'name' => 'Engine',
'in' => 'query',
'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.', 'type' => 'string', 'required' => false, 'example' => 'test****', 'title' => ''],
],
[
'name' => 'Password',
'in' => 'query',
'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.', 'type' => 'string', 'required' => false, 'example' => 'yuecq--test****', 'title' => ''],
],
[
'name' => 'NetworkType',
'in' => 'query',
'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.', 'type' => 'string', 'required' => false, 'example' => 'vpc-m5e666n89m2bx8jar****', 'title' => ''],
],
[
'name' => 'Region',
'in' => 'query',
'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.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
],
'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.', '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.',
'type' => 'object',
'properties' => [
'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.', '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' => ''],
],
],
'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"
."\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' => '*'],
],
],
],
],
'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' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREhdmB8MM4L', 'FEATUREhdmROFBLE', 'FEATUREhdm1XKIXR', 'FEATUREhdmR88NLD', 'FEATUREhdm3TU4OK'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'Message',
'in' => 'query',
'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' => 'SessionId',
'in' => 'query',
'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' => 'AgentId',
'in' => 'query',
'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' => 'Summary',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to return summary information.', 'type' => 'string', 'required' => false, 'example' => 'false', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'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' => ''],
],
[
['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' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the ApsaraDB for Redis instance.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'r-bp18ff4a195d****', 'title' => ''],
],
[
'name' => 'NodeId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data node on the instance. You can specify this parameter to query the monitoring information about the specified node.'."\n"
."\n"
.'> If you specify the BackupSetId parameter, the system ignores the NodeId parameter. You can call the [DescribeLogicInstanceTopology](~~473786~~) operation to query the node ID.', 'type' => 'string', 'required' => false, 'example' => 'r-x****-db-0', 'title' => ''],
],
[
'name' => 'BackupSetId',
'in' => 'query',
'schema' => ['description' => 'The ID of the backup file. You can call the [DescribeBackups](~~473823~~) operation to query the ID.'."\n"
."\n"
.'- If you need to specify multiple backup file IDs, separate them with commas (,). For example, you can set this parameter to `12345,67890`.'."\n"
."\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' => [
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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6D17591-B48B-4D31-9CD6-9B9796B2****', 'title' => ''],
'Data' => [
'description' => 'The detailed information.',
'type' => 'object',
'properties' => [
'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' => [
'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' => '',
],
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
'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.', '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' => ''],
],
],
'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"
.'- 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.'."\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' => '*'],
],
],
],
],
'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' => [],
],
],
'systemTags' => ['operationType' => 'create'],
'parameters' => [
[
'name' => 'TaskType',
'in' => 'query',
'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' => 'SrcInstanceId',
'in' => 'query',
'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' => 'Description',
'in' => 'query',
'allowEmptyValue' => false,
'schema' => ['description' => 'The description of the stress testing task.', 'type' => 'string', 'required' => true, 'example' => 'test-das-bench-0501', 'title' => ''],
],
[
'name' => 'SrcPublicIp',
'in' => 'query',
'schema' => ['description' => 'Reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
'name' => 'DstInstanceId',
'in' => 'query',
'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' => 'GatewayVpcId',
'in' => 'query',
'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' => 'GatewayVpcIp',
'in' => 'query',
'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' => 'ClientType',
'in' => 'query',
'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' => 'RequestStartTime',
'in' => 'query',
'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' => 'RequestEndTime',
'in' => 'query',
'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' => 'RequestDuration',
'in' => 'query',
'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 => [
'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, **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' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'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' => '',
],
],
'description' => '',
'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' => '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"
.'- 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"}]',
],
'CreateDiagnosticReport' => [
'summary' => 'Creates a diagnostic report.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'systemTags' => ['operationType' => 'create'],
'parameters' => [
[
'name' => 'DBInstanceId',
'in' => 'query',
'schema' => ['description' => 'The instance ID.', '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' => 'readAndWrite',
'systemTags' => ['operationType' => 'create'],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'query',
'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 => [
'schema' => [
'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 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' => '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 \\"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"
."\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' => '*'],
],
],
],
],
'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' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREhdm7GLEEO'],
],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'formData',
'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"
.'> Required for PolarDB for MySQL clusters.', 'type' => 'string', 'required' => false, 'example' => 'pi-bp16v3824rt73****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'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' => 'Indicates whether the task is created. Valid values:'."\n"
."\n"
.'- **true**: The task is created.'."\n"
."\n"
.'- **false**: The task fails to be created.',
'enumValueTitles' => ['执行成功' => 'true', '执行失败' => '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' => ''],
],
],
'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"
.'### Prerequisites'."\n"
."\n"
.'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' => 'write',
'deprecated' => false,
'systemTags' => ['operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free'],
'parameters' => [
[
'name' => 'Engine',
'in' => 'query',
'schema' => ['description' => 'The database engine. Valid values:'."\n"
."\n"
.'- **MySQL**: ApsaraDB RDS for MySQL'."\n"
."\n"
.'- **PolarDBMySQL**: PolarDB for MySQL'."\n"
."\n"
.'- **PostgreSQL**: ApsaraDB RDS for PostgreSQL', 'type' => 'string', 'required' => true, 'example' => 'MySQL', 'title' => ''],
],
[
'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 (,).', 'type' => 'string', 'required' => true, 'example' => '6068ce044e3dc9b903979672fb0b69df,d12515c015fc9f41a0778a9e1de0****', 'title' => ''],
],
[
'name' => 'Tags',
'in' => 'query',
'schema' => [
'description' => 'The SQL tags. Separate multiple SQL tags with commas (,). Valid values:'."\n"
."\n"
.'- **DAS\\_IMPORTANT**: The SQL template is important.'."\n"
."\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' => 'DAS_IN_PLAN,DAS_NOT_IMPORTANT',
'title' => '',
],
],
[
'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' => [
'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 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' => 'Database',
'in' => 'query',
'schema' => ['description' => 'The name of the database.', 'type' => 'string', 'required' => true, 'example' => 'das', 'title' => ''],
],
[
'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' => [
'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' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'create',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '247410',
'abilityTreeNodes' => ['FEATUREhdmQULC0I'],
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'RegionName',
'in' => 'query',
'allowEmptyValue' => false,
'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing', 'title' => ''],
],
[
'name' => 'GlobalIgName',
'in' => 'query',
'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' => 'GIpList',
'in' => 'query',
'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' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'Code' => ['description' => 'The HTTP status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
'Data' => [
'type' => 'object',
'properties' => [
'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' => '',
],
'description' => 'The information about the cross-product whitelist template.',
'title' => '',
'example' => '',
],
],
'title' => '',
'description' => 'The list of results.',
'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, 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' => ''],
],
'title' => '',
'description' => 'The response parameters.',
'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'],
'description' => 'The maximum number of concurrent executions is 10.'."\n"
."\n"
.'- Use the latest version of the Alibaba Cloud or DAS SDK.'."\n"
."\n"
.'- 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' => '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 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' => '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 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' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'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' => [
'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' => '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' => ''],
],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Successful\\",\\n \\"RequestId\\": \\"83D9D59B-057A-54A9-BFF9-CF2B42F05645\\",\\n \\"Success\\": \\"true\\",\\n \\"Data\\": {\\n \\"TaskId\\": \\"54f8041743ca3a9ac5cb9342d050527c\\",\\n \\"InstanceId\\": \\"pc-2ze8g2am97624****\\",\\n \\"Name\\": \\"Export_test\\",\\n \\"Start\\": 1596177993000,\\n \\"End\\": 1608888296000,\\n \\"Status\\": \\"COMPLETED\\",\\n \\"CreateTime\\": 1681363254423\\n }\\n}","type":"json"}]',
'title' => 'CreateSqlLogTask',
'description' => 'Before you call this operation, take note of the following items:'."\n"
."\n"
.'- If you use an Alibaba Cloud SDK or DAS SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n"
."\n"
.'- If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n"
."\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"
.'- **KeyWords**: the keywords. You can specify multiple keywords that are separated by spaces.'."\n"
."\n"
.'- **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' => 'readAndWrite',
'deprecated' => false,
'systemTags' => ['operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free'],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
],
[
'name' => 'NodeId',
'in' => 'query',
'schema' => ['description' => 'The node ID. For ApsaraDB for MongoDB instances, you can use this parameter to specify a node for storage analysis. You can call the [DescribeRoleZoneInfo](~~123802~~) operation to query the information about nodes of an ApsaraDB for MongoDB instance.'."\n"
."\n"
.'- If you set this parameter to a value in the **InsName** format, such as `d-bp1872fa24d5****`, you can call this operation to analyze the hidden node that corresponds to the node ID.'."\n"
."\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' => 'DbName',
'in' => 'query',
'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' => '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' => [
'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' => [
[
'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' => [
'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' => [
'Code' => ['description' => 'The status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'Data' => [
'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' => ''],
],
'title' => '',
'description' => 'The response parameters.',
'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'],
'description' => '- This operation deletes the metadata of released database gateways from intelligent stress testing tasks created by the [CreateCloudBenchTasks](~~230665~~) operation.'."\n"
."\n"
.'- When you use an SDK to call the DAS service, set the region to cn-shanghai.'."\n"
."\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"}]',
],
'DeleteStopGateway' => [
'summary' => 'Deletes the metadata of a stopped database gateway.',
'methods' => ['get', 'post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'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' => [],
],
],
'operationType' => 'read',
'systemTags' => [
'operationType' => 'list',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '212859',
'abilityTreeNodes' => ['FEATUREhdmQULC0I'],
'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
'name' => 'Lang',
'in' => 'query',
'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' => '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' => [
'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' => [
'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' => [
'description' => 'The configurations of the auto scaling feature for instances.',
'type' => 'object',
'properties' => [
'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' => '',
],
'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' => '',
],
'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' => '',
],
'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' => '',
],
'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' => '',
],
],
'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' => ''],
],
],
'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 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' => '*'],
],
],
],
],
'flowControl' => [
'flowControlList' => [
['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeAutoScalingConfig'],
],
],
],
'DescribeAutoScalingHistory' => [
'methods' => ['get'],
'schemes' => ['https', 'http'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free'],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The instance ID.'."\n"
."\n"
.'> Only ApsaraDB RDS for MySQL instances are supported.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
[
'name' => 'AutoScalingTaskType',
'in' => 'query',
'schema' => ['description' => 'The type of the auto scaling task that you want to query. Set the value to **SPEC**, which indicates that you can query the history of only automatic performance scaling tasks.', 'type' => 'string', 'required' => true, 'example' => 'SPEC', '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.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1675833788056', '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' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1676605305796', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'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' => [
'title' => 'AutoScalingInstanceHistory',
'description' => 'The history of auto scaling.',
'type' => 'object',
'properties' => [
'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' => '',
],
'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' => '',
],
'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' => '',
],
],
'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' => ''],
],
],
'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"
."\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' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'abilityTreeCode' => '23813',
'abilityTreeNodes' => ['FEATUREhdmJC65CS'],
],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the instance.', '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.', 'type' => 'string', 'required' => true, 'example' => 'sf79-sd99-sa37-****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'Message' => ['description' => 'The message that is returned for the request.'."\n"
."\n"
.'> If the request is successful, **Successful** is returned. If the request fails, an error message that contains information such as an error code is returned.', '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.',
'type' => 'object',
'properties' => [
'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.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'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',
'itemNode' => true,
'properties' => [
'Prefix' => [
'description' => 'The prefixes of the keys.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'KeyNum' => ['description' => 'The number of keys that contain the prefix.', '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.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'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.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'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.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'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****', '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.',
'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.', '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', '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.', 'description' => ''],
],
403 => [
['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
'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"
."\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' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The instance ID.', '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.', '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.', '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.', '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' => ''],
],
],
'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.', '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.',
'type' => 'object',
'properties' => [
'List' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'CacheAnalysisJob' => [
'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"
."\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,
'properties' => [
'KeyInfo' => [
'description' => 'The details about the large keys.'."\n"
."\n"
.'> The sub-parameters of this parameter and the content of the sub-parameters are not returned. To query the detailed information about the cache analysis tasks, call the [DescribeCacheAnalysisJob](~~443012~~) operation.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'Type' => ['description' => 'The data type of the instance.', 'type' => 'string', 'example' => 'hash', '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****', '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.', '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.', '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' => '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"
."\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' => [],
],
],
'systemTags' => [
'operationType' => 'get',
'abilityTreeCode' => '29456',
'abilityTreeNodes' => ['FEATUREhdmB8MM4L'],
],
'parameters' => [
[
'name' => 'Status',
'in' => 'query',
'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' => 'TaskType',
'in' => 'query',
'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' => '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' => false, 'example' => '1596177993000', 'title' => ''],
],
[
'name' => 'EndTime',
'in' => 'query',
'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' => 'PageNo',
'in' => 'query',
'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 to return on each page. The value must be a positive integer. Default value: 10.', 'type' => 'string', 'required' => false, 'example' => '10', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'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 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' => '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' => ''],
],
],
'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' => '*'],
],
],
],
],
],
'DescribeCloudbenchTask' => [
'summary' => 'Queries a specific stress testing task.',
'methods' => ['get', 'post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'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' => [
'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' => '',
],
],
],
'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' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'TaskId',
'in' => 'query',
'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' => [
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' => ''],
'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 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' => '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' => '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' => '[{"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"}]',
],
'DescribeDiagnosticReportList' => [
'summary' => 'Queries diagnostics reports.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'DBInstanceId',
'in' => 'query',
'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
[
'name' => 'PageNo',
'in' => 'query',
'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' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'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' => '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' => 'DescribeDiagnosticReportList',
'description' => 'Before you call this operation, take note of the following items:'."\n"
."\n"
.'- If you use an Alibaba Cloud SDK or a Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n"
."\n"
.'- If you use an SDK to call operations of DAS, you must set the region ID to cn-shanghai.'."\n"
."\n"
.'- This operation is applicable to the following database engines:'."\n"
."\n"
.' - ApsaraDB RDS for MySQL'."\n"
."\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' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '235508',
'abilityTreeNodes' => ['FEATUREhdmR88NLD'],
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'formData',
'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => 'pc-bp1u5mas9exx7****'],
],
[
'name' => 'NodeId',
'in' => 'formData',
'schema' => ['description' => 'The node ID.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'pi-bp16v3824rt73****'],
],
[
'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"
.'>'."\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"
.'', '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"
.'>'."\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"
.'', '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' => '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 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,
'maxItems' => 100,
'title' => '',
'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
'title' => '',
'description' => 'The returned data.',
'type' => 'object',
'properties' => [
'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' => [
'title' => '',
'description' => 'The data details.',
'type' => 'object',
'properties' => [
'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"
.'>'."\n"
."\n"
.'For ApsaraDB for MongoDB instances, the time is in the yyyy-MM-ddTHH:mm:ssZ format (UTC).'."\n"
."\n"
.'', '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' => '',
],
],
'example' => '',
],
],
'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' => 'DescribeErrorLogRecords',
'description' => 'This operation queries the error log details of an instance within a specified time range.'."\n"
."\n"
.'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.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The instance ID of the Redis instance.', 'type' => 'string', 'required' => true, 'example' => 'r-bp18ff4a195d****', 'title' => ''],
],
[
'name' => 'NodeId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data shard in the Redis instance.', 'type' => 'string', 'required' => false, 'example' => 'r-****-db-0', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'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 details.',
'type' => 'object',
'properties' => [
'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' => '',
],
'BigKeys' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'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' => [
'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' => '',
],
'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.', 'description' => 'The request parameters are invalid.'],
],
403 => [
['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => 'You do not have the permissions to perform this operation.'],
],
],
'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"
.'- 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' => [],
],
],
'operationType' => 'read',
'systemTags' => ['operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free'],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Redis instance.', 'type' => 'string', 'required' => true, 'example' => 'r-bp18ff4a195d****', 'title' => ''],
],
[
'name' => 'NodeId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data shard of the Redis instance.', 'type' => 'string', 'required' => false, 'example' => 'r-x****-db-0', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'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' => [
'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.', 'description' => ''],
],
403 => [
['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
'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"
.'* 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'],
],
],
'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' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREhdm543Z01'],
],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The database instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
],
'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.', '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' => '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' => '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"
.'- 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"
.'> 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' => 'formData',
'schema' => ['description' => 'The ID of the instance.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
[
'name' => 'NodeId',
'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' => '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' => 'DbName',
'in' => 'formData',
'schema' => ['description' => 'The name of the database.', 'type' => 'string', 'required' => false, 'example' => 'dbtest01', 'title' => ''],
],
[
'name' => 'Schema',
'in' => 'formData',
'schema' => ['description' => 'Schema information. This is a reserved parameter.', 'type' => 'string', 'required' => false, 'example' => '无', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'title' => 'Schema of Response',
'description' => 'Response schema',
'type' => 'object',
'properties' => [
'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' => [
'title' => 'List',
'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' => '',
],
'example' => '',
],
],
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'InvalidParams', 'errorMessage' => 'The request parameters are invalid.', 'description' => ''],
],
],
'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"
.'- When using the Alibaba Cloud or DAS SDK, use the latest version.'."\n"
."\n"
.'- 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' => 'RegionName',
'in' => 'query',
'allowEmptyValue' => false,
'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'Code' => ['description' => 'The status code returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
'Data' => [
'type' => 'object',
'properties' => [
'SecurityIpGroups' => [
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'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' => '',
],
'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' => '',
],
'description' => 'A list of all cross-product whitelist templates in the specified region.',
'title' => '',
'example' => '',
],
],
'title' => '',
'description' => 'ListResult',
'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, 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' => ''],
],
'title' => '',
'description' => 'The response schema.',
'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' => 'DescribeSecurityIPGroup',
'description' => 'Note the following before you call this operation:'."\n"
."\n"
.'- Use the latest version of the Alibaba Cloud software development kit (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' => [],
],
'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"}]',
],
'DescribeSecurityIPGroupRelation' => [
'path' => '',
'methods' => ['post', 'get'],
'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '247410',
'abilityTreeNodes' => ['FEATUREhdmQULC0I'],
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'RegionName',
'in' => 'query',
'allowEmptyValue' => false,
'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai', 'title' => ''],
],
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2zegsc57ofexxxxx', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'Code' => ['description' => 'The HTTP status code that is returned.', 'type' => 'string', 'example' => '200', 'title' => ''],
'Data' => [
'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' => ''],
],
'description' => '',
'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.', 'description' => ''],
],
403 => [
['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
'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 \\"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"}]',
],
'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',
'abilityTreeCode' => '236527',
'abilityTreeNodes' => ['FEATUREhdmR88NLD'],
],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'formData',
'schema' => ['description' => 'The ID of the database instance.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****'."\n", 'title' => ''],
],
[
'name' => 'NodeId',
'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' => '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,
'maxItems' => 100,
'title' => '',
'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'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' => [
'title' => 'AsyncResult',
'description' => 'The detailed data of the asynchronous task.',
'type' => 'object',
'properties' => [
'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',
'properties' => [
'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' => ['description' => 'The number of slow query logs.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
'title' => '',
'example' => '',
],
'Ts' => [
'title' => '',
'description' => 'This parameter is returned only for relational databases.',
'type' => 'array',
'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' => '',
],
'TsEnd' => [
'description' => 'This parameter is reserved.',
'type' => 'array',
'items' => ['description' => 'The end timestamp of the query.', 'type' => 'integer', 'format' => 'int64', 'example' => '暂无', 'title' => ''],
'title' => '',
'example' => '',
],
'Item' => [
'description' => 'The trend metrics.',
'type' => 'array',
'items' => [
'description' => 'The name of the project.',
'type' => 'object',
'properties' => [
'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' => '',
],
'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' => '',
],
'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'],
],
'example' => '',
],
],
'description' => '',
'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' => ''],
],
],
'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"
.'The following prerequisites must be met:'."\n"
."\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"
.'- 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, set the region to cn-shanghai.'."\n"
."\n"
.'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',
'abilityTreeCode' => '236528',
'abilityTreeNodes' => ['FEATUREhdmR88NLD'],
'autoTest' => true,
],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'formData',
'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-8vbk4xz99su8****', 'title' => ''],
],
[
'name' => 'NodeId',
'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 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,
'maxItems' => 100,
'title' => '',
'example' => '',
],
],
[
'name' => 'OrderBy',
'in' => 'query',
'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"
.'>'."\n"
."\n"
.'RDS for PostgreSQL, PolarDB for PostgreSQL, and SQL Server do not support sorting.'."\n"
."\n"
.'>', 'type' => 'string', 'required' => false, 'example' => 'QueryTimeSeconds', 'title' => ''],
],
[
'name' => 'Asc',
'in' => 'query',
'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 => [
'schema' => [
'type' => 'object',
'properties' => [
'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',
'properties' => [
'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' => [
'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' => '',
],
],
'example' => '',
],
],
'description' => '',
'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'],
'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"
.'- `StartTime` and `EndTime` specify the required query time range.'."\n"
."\n"
.'- Use `PageNumber` and `PageSize` to paginate the results.'."\n"
."\n"
.'- Use `OrderBy` to sort the results. For a list of sortable fields, refer to the documentation.'."\n"
."\n"
.'- Use `Filters` to refine query conditions, such as filtering by host address or SQL ID.'."\n"
."\n\n"
.' >'."\n"
."\n"
.' 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"
.' >',
'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' => 'InstanceId',
'in' => 'formData',
'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
],
[
'name' => 'NodeId',
'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 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' => 'SQL',
'title' => '',
],
],
[
'name' => 'TemplateId',
'in' => 'formData',
'schema' => ['description' => 'The template ID.', 'type' => 'string', 'required' => false, 'example' => '04ea3310df40c3fa8a6b4854db49f79a', 'title' => ''],
],
[
'name' => 'StartTime',
'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' => '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 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 => [
'schema' => [
'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 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>',
'description' => 'AsyncResult\\>',
'type' => 'object',
'properties' => [
'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"
.'>'."\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"
.'>', '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'],
],
'example' => '',
],
],
'description' => '',
'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' => ''],
],
],
'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"
.'Before you call this operation, make sure that the following requirements are met:'."\n"
."\n"
.'- Alibaba Cloud Managed Services is enabled for the instance.'."\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.'."\n"
."\n"
.'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' => 'formData',
'schema' => ['description' => 'The ID of the database instance.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'Code' => ['description' => 'The response code.', 'type' => 'string', 'example' => '200', 'title' => ''],
'Data' => [
'title' => 'SqlLogConfig',
'description' => 'The data that is returned.',
'type' => 'object',
'properties' => [
'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' => '',
],
'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' => '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' => 'DescribeSqlLogConfig',
'description' => 'Before you call this operation, take note of the following items:'."\n"
."\n"
.'- If you use an Alibaba Cloud SDK or a DAS SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n"
."\n"
.'- 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' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'list',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '199697',
'abilityTreeNodes' => ['FEATUREhdmFT57I0'],
],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'formData',
'schema' => ['description' => 'The ID of the database instance.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => 'pc-2ze8g2am97624****'."\n"],
],
[
'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' => 'Role',
'in' => 'query',
'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' => 'Filters',
'in' => 'query',
'style' => 'repeatList',
'schema' => [
'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' => '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' => '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' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'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' => '',
'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' => 'The root node.',
'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\\": \\"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"
.'- When you use an Alibaba Cloud or Database Autonomy Service (DAS) SDK, we recommend that you use the latest version.'."\n"
."\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"
.'- **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' => 'InstanceId',
'in' => 'formData',
'schema' => ['description' => 'The database instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'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' => '',
],
],
],
'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\\": {\\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' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '213185',
'abilityTreeNodes' => ['FEATUREhdmFT57I0'],
],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'formData',
'schema' => ['description' => 'The database instance ID.', 'type' => 'string', 'required' => false, 'example' => 'r-bp1nti25tc7bq5****'."\n", 'title' => ''],
],
[
'name' => 'TaskId',
'in' => 'formData',
'schema' => ['description' => 'The task ID.', 'type' => 'string', 'required' => false, 'example' => 'a4f5c4494dbd6713185d87a97aa53e8'."\n", 'title' => ''],
],
[
'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' => 'PageSize',
'in' => 'formData',
'schema' => ['description' => 'The page size. Maximum value: 100. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'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' => [
'title' => 'SqlLogTaskDetail',
'description' => 'The returned data.',
'type' => 'object',
'properties' => [
'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' => '',
],
'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' => 'The result of the offline query task.',
'type' => 'object',
'properties' => [
'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/****"'],
],
'example' => '',
],
],
'description' => 'The root node of the response.',
'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' => ''],
],
],
'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"
.'- We recommend using the latest version of the Alibaba Cloud SDK or DAS SDK.'."\n"
."\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"
.'- **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' => 'list',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '199696',
'abilityTreeNodes' => ['FEATUREhdmFT57I0'],
],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'formData',
'schema' => ['description' => 'The ID of the database instance.', 'type' => 'string', 'required' => false, 'example' => 'r-bp1nti25tc7bq5****', 'title' => ''],
],
[
'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' => 'Filters',
'in' => 'formData',
'style' => 'repeatList',
'schema' => [
'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' => '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' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'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' => [
'title' => 'ListResult',
'description' => 'The returned data.',
'type' => 'object',
'properties' => [
'List' => [
'description' => 'The list of tasks.',
'type' => 'array',
'items' => [
'description' => 'The details of an offline task.',
'type' => 'object',
'properties' => [
'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' => ''],
],
'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' => ''],
],
],
'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"
.'- We recommend that you 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 set the region to `cn-shanghai`.',
'requestParamsDescription' => 'The **Key** parameter supports the following values:'."\n"
."\n"
.'- **taskId**: The task ID.'."\n"
."\n"
.'- **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' => [],
],
],
'operationType' => 'read',
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREhdmTQGIFY'],
],
'parameters' => [
[
'name' => 'ConsoleContext',
'in' => 'query',
'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the ApsaraDB for Redis instance.', 'type' => 'string', 'required' => true, 'example' => 'r-bp18ff4a195d****', 'title' => ''],
],
[
'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', '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' => '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' => [
'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' => [
'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', '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' => '',
],
'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' => '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 Alibaba Cloud SDK, make sure that the aliyun-sdk-core version is later than 4.3.3. We recommend that you use the latest version.'."\n"
."\n"
.'- The version of Database Autonomy Service (DAS) SDK must be 1.0.2 or later.'."\n"
."\n"
.'- If you use an SDK to call API operations of DAS, you must set the region ID to cn-shanghai.'."\n"
."\n"
.'- This operation is available only for an ApsaraDB for Redis instance of one of the following versions:'."\n"
."\n"
.' - The instance is ApsaraDB for Redis Community Edition instances that use a major version of 5.0 or later or a performance-enhanced instance of the ApsaraDB for Redis Enhanced Edition (Tair).'."\n"
."\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' => [],
],
],
'operationType' => 'read',
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREhdmROFBLE'],
],
'parameters' => [
[
'name' => 'ConsoleContext',
'in' => 'query',
'schema' => ['description' => 'A reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Redis instance.', 'type' => 'string', 'required' => true, 'example' => 'r-bp18ff4a195d****', 'title' => ''],
],
[
'name' => 'NodeId',
'in' => 'query',
'schema' => ['description' => 'The ID of the data shard of the Redis instance.', 'type' => 'string', 'required' => false, 'example' => 'r-****-db-0', 'title' => ''],
],
[
'name' => 'StartTime',
'in' => 'query',
'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' => [
'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' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'HotKey' => [
'description' => 'The list of hot keys.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'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' => '',
],
'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' => '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' => ''],
],
],
'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"
.'- 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"
.'- The DAS SDK version must be 1.0.2 or later.'."\n"
."\n"
.'- When calling the DAS service with an SDK, set the region to cn-shanghai.'."\n"
."\n"
.'- 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' => 'readAndWrite',
'systemTags' => ['operationType' => 'update'],
'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"
."\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' => [
'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' => '',
],
],
],
'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' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'systemTags' => [
'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREhdmTFSOG0'],
],
'parameters' => [
[
'name' => 'ConsoleContext',
'in' => 'query',
'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
'name' => 'InstanceIds',
'in' => 'query',
'schema' => ['description' => 'The database instance ID.'."\n"
."\n"
.'> Set this parameter to a JSON array that consists of multiple instance IDs. Separate instance IDs with commas (,). Example: `[\'Instance ID1\', \'Instance ID2\']`.', 'type' => 'string', 'required' => true, 'example' => '[\'rm-2ze8g2am97624****\',\'rm-2ze9xrhze0709****\']', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'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' => [
'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' => [
'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.', '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.', 'description' => ''],
],
403 => [
['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' => '[{"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"}]',
],
'DisableAutoThrottleRules' => [
'summary' => 'Disables the automatic SQL throttling feature for multiple database instances at a time.',
'methods' => ['get', 'post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'systemTags' => [
'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREhdmDSULQV'],
],
'parameters' => [
[
'name' => 'ConsoleContext',
'in' => 'query',
'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', '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\']`.', 'type' => 'string', 'required' => true, 'example' => '[\'rm-2ze8g2am97624****\',\'rm-2ze9xrhze0709****\']', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'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 returned data.',
'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 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' => '',
],
'ConfigFailInstanceList' => [
'description' => 'The database instances for which the automatic SQL throttling feature failed to be disabled.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'ConfigSuccess' => ['description' => 'Indicates whether the automatic SQL throttling feature is disabled. Valid values:'."\n"
."\n"
.'- **true**'."\n"
."\n"
.'- **false**', 'type' => 'boolean', 'example' => 'false', '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.', '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.', 'description' => ''],
],
403 => [
['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' => '[{"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"}]',
],
'DisableDasPro' => [
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'systemTags' => ['operationType' => 'delete'],
'parameters' => [
[
'name' => 'UserId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account that is used to create the database instance.'."\n"
."\n"
.'> This parameter is optional. The system can automatically obtain the account ID based on the value of InstanceId that you set when you call this operation.', 'type' => 'string', 'required' => false, 'example' => '196278346919****', 'title' => ''],
],
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The database instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'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' => '',
],
],
],
'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' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'systemTags' => ['operationType' => 'update'],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The database instance ID.', 'type' => 'string', 'required' => true, 'example' => 'r-bp1nti25tc7bq5****', 'title' => ''],
],
[
'name' => 'Engine',
'in' => 'query',
'schema' => ['description' => 'The database engine. Set the value to Redis.', 'type' => 'string', 'required' => true, 'example' => 'Redis', 'title' => ''],
],
[
'name' => 'ScaleType',
'in' => 'query',
'schema' => [
'description' => 'The type of auto scaling. Valid values:'."\n"
."\n"
.'- **specScale**: The specifications of a database instance are automatically scaled up or down.'."\n"
."\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,
'enum' => ['specScale', 'shardScale', 'bandwidthScale'],
'example' => 'bandwidthScale',
'title' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
'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' => '',
],
],
],
'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' => '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' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'systemTags' => ['operationType' => 'update'],
'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"
."\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' => 'ItemId',
'in' => 'query',
'schema' => ['description' => 'The ID of the throttling rule that is applied to the instance. You can call the [GetRunningSqlConcurrencyControlRules](~~223538~~) operation to query the ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'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' => '',
],
],
],
'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' => 'DisableSqlConcurrencyControl',
'description' => 'This operation is applicable to the following database engines:'."\n"
."\n"
.'- ApsaraDB RDS for MySQL'."\n"
."\n"
.'- 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' => 'readAndWrite',
'systemTags' => [
'operationType' => 'create',
'abilityTreeCode' => '23825',
'abilityTreeNodes' => ['FEATUREhdm543Z01'],
],
'parameters' => [
[
'name' => 'UserId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account that is used to create the database instance.'."\n"
."\n"
.'> This parameter is optional. The system can automatically obtain the account ID based on the value of InstanceId when you call this operation.', 'type' => 'string', 'required' => false, 'example' => '196278346919****', 'title' => ''],
],
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The database instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
[
'name' => 'SqlRetention',
'in' => 'query',
'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' => [
200 => [
'schema' => [
'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 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' => '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' => ''],
],
],
'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 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~~).',
'changeSet' => [],
'ramActions' => [
[
'operationType' => 'create',
'ramAction' => [
'action' => 'hdm:EnableDasPro',
'authLevel' => 'resource',
'actionConditions' => [],
'resources' => [
['validationType' => 'always', 'product' => 'DAS', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
'flowControl' => [
'flowControlList' => [
['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'EnableDasPro'],
],
],
],
'EnableSqlConcurrencyControl' => [
'methods' => ['get', 'post'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'readAndWrite',
'systemTags' => ['operationType' => 'create'],
'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"
."\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' => 'SqlType',
'in' => 'query',
'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' => 'MaxConcurrency',
'in' => 'query',
'schema' => ['description' => 'The maximum number of concurrent SQL statements. Set this parameter to a positive integer.'."\n"
."\n"
.'> When the number of concurrent SQL statements that contain the specified keywords reaches this upper limit, the throttling rule is triggered.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '3', 'title' => ''],
],
[
'name' => 'SqlKeywords',
'in' => 'query',
'schema' => ['description' => 'The keywords that are used to identify the SQL statements that need to be throttled.'."\n"
."\n"
.'> If you specify multiple SQL keywords, separate them with tildes (\\~). If the number of concurrent SQL statements that contain all the specified SQL keywords reaches the specified upper limit, the throttling rule is triggered.', 'type' => 'string', 'required' => true, 'example' => 'call~open~api~test~4~from~POP', 'title' => ''],
],
[
'name' => 'ConcurrencyControlTime',
'in' => 'query',
'schema' => ['description' => 'The duration within which the SQL throttling rule takes effect. Unit: seconds.'."\n"
."\n"
.'> The throttling rule takes effect only within this duration.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '300', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'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' => '',
],
],
],
'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' => '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' => [
[
'AK' => [],
],
],
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'query',
'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.', '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.', '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.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1642566830000', 'title' => ''],
],
[
'name' => 'ErrorCode',
'in' => 'query',
'schema' => ['description' => 'The error code. You can call the [GetAsyncErrorRequestStatByCode](~~409804~~) operation to query the MySQL error codes that may be generated in the SQL Explorer results of an instance.', 'type' => 'string', 'required' => false, 'example' => '1064', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'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' => ''],
'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' => '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' => 'GetAsyncErrorRequestListByCode',
'summary' => 'Asynchronously queries the IDs of SQL statements that generate a MySQL error code in the SQL Explorer results of a database instance.',
'description' => '> GetAsyncErrorRequestListByCode is an asynchronous operation. After a request is sent, the complete results are not returned immediately. If the value of the **isFinish** parameter is **false** in the response, wait for 1 second and then send a request again. If the value of the **isFinish** parameter is **true**, the complete results are returned.'."\n"
."\n"
.'- This API operation supports only ApsaraDB RDS for MySQL instances and PolarDB for MySQL clusters for which Database Autonomy Service (DAS) Enterprise Edition is enabled. For more information, see [Enable and manage DAS Economy Edition and DAS Enterprise Edition](~~163298~~).'."\n"
."\n"
.'- If you use an SDK to call the API operations of 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' => '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'],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'query',
'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 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.', '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.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1642566830000', 'title' => ''],
],
[
'name' => 'DbName',
'in' => 'query',
'schema' => ['description' => 'The name of a database.', 'type' => 'string', 'required' => false, 'example' => 'testdb01', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'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' => ''],
'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' => '',
],
'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 }',
'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' => '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' => '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"
."\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' => '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' => [],
],
],
'operationType' => 'read',
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREhdmFT57I0'],
],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the instance.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
[
'name' => 'NodeId',
'in' => 'query',
'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' => '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 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 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.', 'type' => 'string', 'required' => false, 'example' => 'testdb01', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'description' => 'The returned data.',
'type' => 'object',
'properties' => [
'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 returned data.',
'type' => 'object',
'properties' => [
'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 data returned by the asynchronous request.',
'type' => 'object',
'items' => [
'description' => 'The data returned.'."\n",
'type' => 'object',
'additionalProperties' => [
'type' => 'object',
'properties' => [
'sqlId' => ['name' => 'sqlId', 'type' => 'string', 'backendName' => 'sqlId', 'example' => 'ad78a4e7d3ce81590c9dc2d5f4bc****', 'description' => 'The SQL ID.'."\n"],
'instanceId' => ['name' => 'instanceId', 'type' => 'string', 'backendName' => 'instanceId', 'example' => 'rm-2ze8g2am97624****', 'description' => 'The instance ID.'."\n"],
'count' => ['name' => 'count', 'type' => 'integer', 'format' => 'int32', 'backendName' => 'count', 'description' => 'The number of failed executions.'."\n", 'example' => '1'],
],
'description' => 'The returned data of the asynchronous request.'."\n",
],
'extendType' => 'true',
],
'additionalProperties' => [
'type' => 'object',
'properties' => [
'sqlId' => ['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 }',
'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.', 'description' => ''],
],
403 => [
['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
'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' => '> 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 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' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free'],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
[
'name' => 'DbNames',
'in' => 'query',
'schema' => ['description' => 'The database name. If you specify a database, the operation queries the usage of auto-increment table IDs in the specified database. Otherwise, the operation queries the usage of auto-increment table IDs in all databases on the instance.'."\n"
."\n"
.'> Specify the parameter value as a JSON array, such as \\[\'db1\',\'db2\']. Separate multiple database names with commas (,).', 'type' => 'string', 'required' => false, 'example' => '[\'db1\',\'db2\']', '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.', 'type' => 'number', 'format' => 'double', 'required' => true, 'example' => '0.9', 'title' => ''],
],
[
'name' => 'RealTime',
'in' => 'query',
'schema' => ['description' => 'Specifies whether to query real-time data. Valid values:'."\n"
."\n"
.'- **true**: queries data in real time except for data generated in the last 10 minutes.\\*\\*\\*\\*'."\n"
."\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' => [
200 => [
'schema' => [
'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' => [
'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' => [
'type' => 'object',
'properties' => [
'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' => '',
],
'title' => '',
'example' => '',
],
],
'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' => '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' => 'GetAutoIncrementUsageStatistic',
'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 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' => [],
],
],
'operationType' => 'read',
'systemTags' => ['operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free'],
'parameters' => [
[
'name' => 'ConsoleContext',
'in' => 'query',
'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
'name' => 'InstanceIds',
'in' => 'query',
'schema' => ['description' => 'The database instance IDs.'."\n"
."\n"
.'- Specify the parameter value as a JSON array, such as `[\'Database account 1\',\'Database account 2\']`. Separate database instance IDs with commas (,).'."\n"
."\n"
.'- By default, if you leave this parameter empty, all database instances for which the automatic fragment recycling feature has been enabled within the current Alibaba Cloud account are returned. The following types of database instances are returned:'."\n"
."\n"
.' - Database instances for which the automatic fragment recycling feature is currently enabled.'."\n"
."\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' => [
200 => [
'schema' => [
'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' => [
'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' => '',
],
'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' => '',
],
'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.',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'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' => '',
],
],
'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' => '',
],
],
],
'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' => 'GetAutoResourceOptimizeRules',
'description' => 'Before you call this operation, take note of the following items:'."\n"
."\n"
.'- If you use an SDK to call API operations of Database Autonomy Service (DAS), you must set the region ID to cn-shanghai.'."\n"
."\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' => [],
],
],
'operationType' => 'read',
'systemTags' => ['operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free'],
'parameters' => [
[
'name' => 'ConsoleContext',
'in' => 'query',
'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', '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"
."\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' => [
'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 that contains information such as an error code is returned.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'Data' => [
'description' => 'The returned data.',
'type' => 'object',
'properties' => [
'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' => [
'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' => '',
],
'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' => '',
],
'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.', 'description' => ''],
],
403 => [
['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => 'GetAutoThrottleRules',
'description' => 'Before you call this operation, take note of the following items:'."\n"
."\n"
.'- If you use an SDK to call API operations of Database Autonomy Service (DAS), you must set the region ID to cn-shanghai.'."\n"
."\n"
.'- The database instance that you want to manage must be of one of the following types:'."\n"
."\n"
.' - ApsaraDB RDS for MySQL High-availability Edition or Enterprise Edition that runs MySQL 5.6, MySQL 5.7, or MySQL 8.0'."\n"
."\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' => [],
],
],
'operationType' => 'read',
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '23868',
'abilityTreeNodes' => ['FEATUREhdmETIPZF'],
],
'parameters' => [
[
'name' => '__context',
'in' => 'query',
'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-18ff4a195d****', '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.', 'type' => 'string', 'required' => true, 'example' => '7e7b2774-95b8-4fa3-bd9c-0ab47cb7****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'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' => '',
],
],
],
'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' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '23871',
'abilityTreeNodes' => ['FEATUREhdm56JBRC'],
],
'parameters' => [
[
'name' => '__context',
'in' => 'query',
'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'rm-18ff4a195d****', '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' => '1568269711000', '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' => '1568265711221', '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.', 'type' => 'string', 'required' => false, 'example' => 'r-x****-db-0', 'title' => ''],
],
[
'name' => 'EventContext',
'in' => 'query',
'schema' => ['description' => 'The reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
'name' => 'Level',
'in' => 'query',
'schema' => ['description' => 'The urgency level of the events. If you specify this parameter, the MinLevel parameter does not take effect. Valid values:'."\n"
."\n"
.'- **Notice**: events for which the system sends notifications.'."\n"
."\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' => 'MinLevel',
'in' => 'query',
'schema' => ['description' => 'The minimum urgency level of the events. Valid values:'."\n"
."\n"
.'- **Notice**: events for which the system sends notifications.'."\n"
."\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' => 'PageOffset',
'in' => 'query',
'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.', 'type' => 'string', 'required' => false, 'example' => '30', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'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.',
'type' => 'object',
'properties' => [
'Extra' => ['description' => 'The reserved parameter.', 'type' => 'string', 'example' => 'None', 'title' => ''],
'List' => [
'type' => 'object',
'itemNode' => true,
'properties' => [
'T' => [
'description' => 'The detailed information, including the error codes and the number of entries that are returned.',
'type' => 'array',
'items' => ['description' => 'The detailed information.', 'type' => 'string', 'example' => '"T": []', 'title' => ''],
'title' => '',
'example' => '',
],
],
'description' => '',
'title' => '',
'example' => '',
],
'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' => '',
],
'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.', 'description' => ''],
],
403 => [
['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
'title' => 'GetAutonomousNotifyEventsInRange',
'description' => 'Before you call this operation, take note of the following items:'."\n"
."\n"
.'- If you use Alibaba Cloud SDK or Database Autonomy Service (DAS) SDK to call this operation, we recommend that you use the latest version of the SDK.'."\n"
."\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' => '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',
'systemTags' => ['operationType' => 'list'],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The ID of the database instance.', 'type' => 'string', 'required' => true, 'example' => 'rm-t4nfalp2ap421****', 'title' => ''],
],
[
'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' => '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' => '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' => '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' => 'QueryHash',
'in' => 'query',
'schema' => ['description' => 'The hash value of the SQL statement. The hash values of SQL statements of the same type are the same.', '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' => [
200 => [
'schema' => [
'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 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' => [
'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' => '',
],
'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.', 'description' => ''],
],
403 => [
['errorCode' => 'NoPermission', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => 'GetBlockingDetailList',
'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' => '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',
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'InstanceId',
'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 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' => [
'description' => 'The detailed information.'."\n",
'type' => 'object',
'properties' => [
'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',
'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' => '',
],
'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' => ''],
],
'title' => '',
],
],
],
'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 \\"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 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' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREhdmB8MM4L', 'FEATUREhdmROFBLE', 'FEATUREhdm1XKIXR', 'FEATUREhdmR88NLD', 'FEATUREhdm3TU4OK'],
'autoTest' => true,
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'Query',
'in' => 'query',
'schema' => ['description' => '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' => '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' => 'SessionId',
'in' => 'query',
'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' => 'AgentId',
'in' => 'query',
'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' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'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' => [
'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' => '',
],
],
'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' => ''],
],
[
['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' => '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"
.'```'."\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"
.'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 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' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => ['operationType' => 'get'],
'parameters' => [
[
'name' => 'UserId',
'in' => 'query',
'schema' => ['description' => 'The ID of the Alibaba Cloud account that is used to create the database instance.'."\n"
."\n"
.'> This parameter is optional. The system can automatically obtain the account ID based on the value of InstanceId when you call this operation.', 'type' => 'string', 'required' => false, 'example' => '196278346919****', 'title' => ''],
],
[
'name' => 'InstanceId',
'in' => 'query',
'schema' => ['description' => 'The database instance ID.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze8g2am97624****', 'title' => ''],
],
],
'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.', 'type' => 'string', 'example' => 'Successful', 'title' => ''],
'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '7172BECE-588A-5961-8126-C216E16B****', 'title' => ''],
'Data' => [
'description' => 'The data returned.',
'type' => 'object',
'properties' => [
'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' => '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' => '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"
.'> 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' => 'Retrieves hot data from SQL audit logs.',
'methods' => ['post', 'get'],
'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '178715',
'abilityTreeNodes' => ['FEATUREhdmFT57I0'],
],
'parameters' => [
[
'name' => 'InstanceId',
'in' => 'formData',
'schema' => ['description' => 'The ID of the database instance.', 'type' => 'string', 'required' => true, 'example' => 'rm-2ze1jdv45i7l6****', 'title' => ''],
],
[
'name' => 'Start',
'in' => 'formData',
'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. 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 query keyword.'."\n"
."\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,
'example' => 'a1 b2',
'title' => '',
],
],
[
'name' => 'AccountName',
'in' => 'formData',
'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 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 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 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 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. 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 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. 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 SQL type.',
'enumValueTitles' => ['select' => 'SELECT statement', 'update' => 'UPDATE statement', 'delete' => 'DELETE statement'],
'type' => 'string',
'required' => false,
'example' => 'select',
'title' => '',
],
],
[
'name' => 'State',
'in' => 'formData',
'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. 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 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.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10', 'title' => ''],
],
[
'name' => 'SortKey',
'in' => 'formData',
'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 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 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' => 'A reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
'name' => 'TraceId',
'in' => 'formData',
'schema' => ['description' => 'A reserved parameter.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
'name' => 'MinRows',
'in' => 'formData',
'schema' => ['description' => 'A reserved parameter.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
'name' => 'MaxRows',
'in' => 'formData',
'schema' => ['description' => 'A reserved parameter.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
'name' => 'MinSpillCnt',
'in' => 'formData',
'schema' => ['description' => 'A reserved parameter.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
'name' => 'MaxSpillCnt',
'in' => 'formData',
'schema' => ['description' => 'A reserved parameter.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => 'None', 'title' => ''],
],
[
'name' => 'TransactionId',
'in' => 'formData',
'schema' => ['description' => 'The transaction ID.', 'type' => 'string', 'required' => false, 'example' => '0', 'title' => ''],
],
[
'name' => 'Fail',
'in' => 'formData',
'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' => [
200 => [
'schema' => [
'type' => 'object',
'properties' => [
'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