You can call the DescribeDBInstancePerformance operation to query the performance metrics of an instance.

You can query the performance of an instance over a specific time range based on its performance metrics. Performance metrics are generated by using one of the following methods based on the database engine and version, RDS edition, monitoring frequency (ModifyDBInstanceMonitor), and query time range:

  • For instances that do not run MySQL on RDS High-availability Edition with standard SSDs or enhanced SSDs (ESSDs) and those that do not run MariaDB TX:
    • 5-second monitoring frequency
      • If the query time range is greater than seven days, performance metrics are collected at 1-day intervals.
      • If the query time range is greater than one day but less than or equal to seven days, performance metrics are collected at 1-hour intervals.
      • If the query time range is greater than or equal to an hour but less than or equal to one day, performance metrics are collected at 1-minute intervals.
      • If the query time range is less than an hour, performance metrics are collected at 5-second intervals.
    • 60-second monitoring frequency
      • If the query time range is greater than 30 days, performance metrics are collected at 1-day intervals.
      • If the query time range is greater than seven days but less than or equal to 30 days, performance metrics are collected at 1-hour intervals.
      • If the query time range is less than or equal to seven days, performance metrics are collected at 1-minute intervals.
    • 300-second monitoring frequency
      • If the query time range is greater than 30 days, performance metrics are collected at 1-day intervals.
      • If the query time range is greater than seven days but less than or equal to 30 days, performance metrics are collected at 1-hour intervals.
      • If the query time range is less than or equal to seven days, performance metrics are collected at 5-minute intervals.
  • For instances that are running MySQL on RDS High-availability Edition with standard SSDs or ESSDs and those that are running MariaDB TX:
    • If the query time range is greater than 30 days, performance metrics are collected at 1-day intervals.
    • If the query time range is greater than seven days but less than or equal to 30 days, performance metrics are collected at 1-hour intervals.
    • If the query time range is less than or equal to seven days, performance metrics are collected at 1-minute intervals.
  • For instances that run PostgreSQL with local SSDs, standard SSDs, or ESSDs:
    • If the query time range is less than or equal to an hour, performance metrics are collected at 5-second intervals.
    • If the query time range is less than or equal to 2 hours, performance metrics are collected at 10-second intervals.
    • If the query time range is less than or equal to 6 hours, performance metrics are collected at 30-second intervals.
    • If the query time range is less than or equal to 12 hours, performance metrics are collected at 1-minute intervals.
    • If the query time range is less than or equal to one day, performance metrics are collected at 2-minute intervals.
    • If the query time range is less than or equal to five days, performance metrics are collected at 10-minute intervals.
    • If the query time range is less than or equal to 15 days, performance metrics are collected at 30-minute intervals.
    • If the query time range is less than or equal to 30 days, performance metrics are collected at 1-hour intervals.

Debugging

OpenAPI Explorer automatically calculates the signature value. For your convenience, we recommend that you call this operation in OpenAPI Explorer. OpenAPI Explorer dynamically generates the sample code of the operation for different SDKs.

Request parameters

Parameter Type Required Example Description
Action String Yes DescribeDBInstancePerformance

The operation that you want to perform. Set the value to DescribeDBInstancePerformance.

DBInstanceId String Yes rm-uf6wjk5xxxxxxx

The ID of the instance. You can call the DescribeDBInstances operation to query the ID of the instance.

Key String Yes MySQL_Sessions

The performance metric that you want to query. If you enter more than one performance metric, separate them with commas (,). You can enter up to 30 performance metrics. For more information, see Performance parameters.

Note If you set the Key parameter to MySQL_SpaceUsage or SQLServer_SpaceUsage, you can query the performance metric only over one day.
StartTime String Yes 2012-06-08T15:00Z

The beginning of the time range to query. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mmZ format. The time must be in UTC.

Note The time span between the beginning time and the end time must be longer than the monitoring frequency. Otherwise, this operation may return an empty array.
EndTime String Yes 2012-06-18T15:00Z

The end of the time range to query. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mmZ format. The time is displayed in UTC.

Note The time span between the beginning time and the end time must be longer than the monitoring frequency. Otherwise, this operation may return an empty array.

Response parameters

Parameter Type Example Description
EndTime String 2012-06-19T15:00Z

The end of the time range that is queried. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mmZ format. The time is displayed in UTC.

StartTime String 2012-06-10T15:00Z

The beginning of the time range that is queried. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mmZ format. The time is displayed in UTC.

DBInstanceId String rm-uf6wjk5xxxxxxxxxx

The ID of the instance.

Engine String MySQL

The database engine of the instance.

RequestId String A5409D02-D661-4BF3-8F3D-0A814D0574E7

The ID of the request.

PerformanceKeys Array of PerformanceKey

An array that consists of performance metrics.

PerformanceKey
Key String MySQL_Sessions

The name of the performance metric.

ValueFormat String recv_k&sent_k

The format in which the value of the performance metric is returned. Multiple values of the performance metric are separated by the & string. Example: com_delete&com_insert&com_insert_select&com_replace.

Unit String KB

The unit of the performance metric.

Values Array of PerformanceValue

An array that consists of the values of the performance metric in the following format: {value1, value2, ...}.

PerformanceValue
Date String 2011-05-30T03:29:00Z

The date and time when the value of the performance metric was recorded. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.

Value String 0.0&13.6

The value of the performance metric.

Examples

Sample requests

http(s)://rds.aliyuncs.com/?Action=DescribeDBInstancePerformance
&DBInstanceId= rm-uf6wjk5xxxxxxx
&Key=MySQL_Sessions
&StartTime=2012-06-08T15:00Z
&EndTime=2012-06-18T15:00Z
&<Common request parameters>

Sample success responses

XML format

HTTP/1.1 200 OK
Content-Type:application/xml

<?xml version="1.0" encoding="UTF-8" ?>
<DescribeDBInstancePerformanceResponse>
	<RequestId>A5409D02-D661-4BF3-8F3D-0A814D0574E7</RequestId>
	<DBInstanceID> rm-uf6wjk5xxxxxxx</DBInstanceID>
	<StartTime>2012-06-11T15:00Z</StartTime>
	<EndTime>2013-10-17T15:00Z</EndTime>
	<Engine>MySQL</Engine>
	<PerformanceKeys>
		<PerformanceKey>
			<Key>MySQL_NetworkTraffic</Key>
			<Unit>KB</Unit>
			<ValueFormat>recv_k&amp;sent_k</ValueFormat>
			<Values></Values>
		</PerformanceKey>
	</PerformanceKeys>
</DescribeDBInstancePerformanceResponse>

JSON format

HTTP/1.1 200 OK
Content-Type:application/json

{
  "RequestId" : "A5409D02-D661-4BF3-8F3D-0A814D0574E7",
  "DBInstanceID" : " rm-uf6wjk5xxxxxxx",
  "StartTime" : "2012-06-11T15:00Z",
  "EndTime" : "2013-10-17T15:00Z",
  "Engine" : "MySQL",
  "PerformanceKeys" : {
    "PerformanceKey" : [ {
      "Key" : "MySQL_NetworkTraffic",
      "Unit" : "KB",
      "ValueFormat" : "recv_k&sent_k",
      "Values" : {
        "PerformanceValue" : [ ]
      }
    } ]
  }
}

Error codes

For a list of error codes, visit the API Error Center.