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:
- 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.
- 5-second monitoring frequency
- For instances that are running MySQL on RDS High-availability Edition with standard SSDs or ESSDs and those that are running MariaDB:
- 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
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&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.