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.
  • 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

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

ParameterTypeRequiredExampleDescription
ActionStringYesDescribeDBInstancePerformance

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

DBInstanceIdStringYes rm-uf6wjk5xxxxxxx

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

KeyStringYesMySQL_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.
StartTimeStringYes2012-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.
EndTimeStringYes2012-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

ParameterTypeExampleDescription
EndTimeString2012-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.

StartTimeString2012-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.

DBInstanceIdStringrm-uf6wjk5xxxxxxxxxx

The ID of the instance.

EngineStringMySQL

The database engine of the instance.

RequestIdStringA5409D02-D661-4BF3-8F3D-0A814D0574E7

The ID of the request.

PerformanceKeysArray of PerformanceKey

An array that consists of performance metrics.

PerformanceKey
KeyStringMySQL_Sessions

The name of the performance metric.

ValueFormatStringrecv_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.

UnitStringKB

The unit of the performance metric.

ValuesArray of PerformanceValue

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

PerformanceValue
DateString2011-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.

ValueString0.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.