DescribeDBInstancePerformance接口用于查询实例性能数据。调用该接口时,您需要指定待查询的时间段(StartTime与EndTime)、待查询实例(DBInstanceId)和待查询的性能指标(Key)。对于不同的数据库类型,待查询性能指标(Key)的取值和返回值均不同:
MySQL与MariaDB
RDS MySQL和RDS MariaDB使用相同的性能参数名。
| 返回指标及含义 |
MySQL_NetworkTraffic | 实例平均每秒钟的输入流量,实例平均每秒钟的输出流量。单位:KB/秒。 |
MySQL_QPSTPS | 平均每秒SQL语句执行次数(单位:次/秒),平均每秒事务数(单位:个/秒)。 |
MySQL_Sessions | 当前活跃连接数,当前总连接数。单位:个。 |
MySQL_InnoDBBufferRatio | InnoDB缓冲池的读命中率,InnoDB缓冲池的使用率,InnoDB缓冲池脏块的百分比。单位:百分比(%)。 |
MySQL_InnoDBDataReadWriten | InnoDB平均每秒钟读取的数据量,InnoDB平均每秒钟写入的数据量。单位:KB。 |
MySQL_InnoDBLogRequests | 平均每秒向InnoDB缓冲池的读次数,平均每秒向InnoDB缓冲池的写次数。单位:次/秒。 |
MySQL_InnoDBLogWrites | 平均每秒日志写请求数,平均每秒向日志文件的物理写次数,平均每秒向日志文件完成的 |
MySQL_TempDiskTableCreates | 执行语句时在硬盘上自动创建的临时表的数量。单位:个。 |
MySQL_MyISAMKeyBufferRatio | MyISAM平均每秒Key Buffer使用率、MyISAM平均每秒Key Buffer读命中率和MyISAM平均每秒Key Buffer写命中率。单位:百分比(%)。 |
MySQL_MyISAMKeyReadWrites | MyISAM平均每秒钟从缓冲池中的读取次数、MyISAM平均每秒钟从缓冲池中的写入次数、MyISAM平均每秒钟从硬盘上读取的次数和MyISAM平均每秒钟从硬盘上写入的次数。单位:次/秒。 |
MySQL_COMDML | 平均每秒Delete语句执行次数、平均每秒Insert语句执行次数、 平均每秒Insert_Select语句执行次数、平均每秒Replace语句执行次数、平均每秒Replace_Select语句执行次数、平均每秒Select语句执行次数和平均每秒Update语句执行次数。单位:次/秒。 |
MySQL_RowDML | 平均每秒从InnoDB表读取的行数、平均每秒从InnoDB表更新的行数、平均每秒从InnoDB表删除的行数、平均每秒从InnoDB表插入的行数和平均每秒向日志文件的物理写入次数。单位:行/秒或次/秒。 |
MySQL_MemCpuUsage(非Serverless使用) | 非Serverless实例CPU使用率(占操作系统总数)和MySQL实例内存使用率(占操作系统总数)。单位:百分比(%)。 |
MySQL_RCU_MemCpuUsage(Serverless使用) | Serverless实例CPU使用率(占操作系统总数)和MySQL实例内存使用率(占操作系统总数)。单位:百分比(%)。 |
MySQL_IOPS | 实例的IOPS(每秒IO请求次数)。单位:次/秒。 |
MySQL_DetailedSpaceUsage | 实例总空间使用量、数据空间、日志空间、临时空间和系统空间。单位:MB。 |
slavestat | 只读实例延迟。单位:秒。 |
MySQL_ThreadStatus | 活跃线程和线程连接数。单位:个。 |
MySQL_ReplicationDelay | 备实例的复制延迟。单位:秒。 |
MySQL_ReplicationThread | IO复制线程状态和SQL复制线程状态。1表示正常,0表示线程丢失。 |
MySQL_ROW_LOCK | 最大等待行级锁时间(单位:毫秒)、平均等待行级锁时间(单位:毫秒)以及等待行级锁的次数(单位:次)。 |
MySQL_SelectScan | 实例进行全表扫描的次数。单位:次。 |
MySQL_MBPS | 实例每秒读写吞吐量。单位:Byte/秒。 |
SQL Server
若单个Key下有多个返回指标,则会以&分隔。
| 返回指标 | 指标含义 |
SQLServer_RCU | rcu | RDS Capacity Unit |
SQLServer_DetailedSpaceUsage | ins_size | 实例总空间使用量。 |
log_size | 日志空间使用量。 | |
data_size | 数据空间使用量。 | |
other_size | 系统空间使用量。 | |
tmp_size | 临时空间使用量。 | |
disk_mastersize | 存储SQL Server系统数据库master的空间大小。 | |
disk_modelsize | 存储model数据库的磁盘空间大小,model数据库是每个新数据库的模板。 | |
disk_msdbsize | 存储msdb数据库的磁盘空间大小,msdb用于管理SQL Server Agent作业、备份历史信息等。 | |
disk_errorlog | 错误日志文件占用的磁盘空间。您可以通过控制台或API清理实例的错误日志。 | |
disk_xel | Extended Event日志文件占用的磁盘空间大小。 | |
disk_trace | 存储SQL Server跟踪文件(如SQL Profiler trace)的磁盘空间。 | |
disk_dump | SQL Server内核产生异常时,产生Dump文件所占用的空间。 | |
SQLServer_InstanceDiskUsage | InstanceDiskUsage | 磁盘空间使用率。 |
SQLServer_IndexUsage | Index_Searches_per_sec | 每秒索引搜索次数。 |
Forwarded_Records_per_sec | 每秒访问转发记录的次数。 | |
SQLServer_BufferHit | Cache_Hit_Ratio | 高速缓存命中率。 |
sqlserver_bufferpool | 在缓冲区高速缓存中找到而不需要从磁盘中读取的页的百分比。 | |
SQLServer_InstanceMemUsage | sqlserver_insmem | 实例内存使用率。 |
SQLServer_NetworkTraffic | read_kb | 实例平均每秒钟的输出流量。 |
write_kb | 实例平均每秒钟的输入流量。 | |
SQLServer_Alarm | alarm_abnormal_db | 数据库镜像配置异常或镜像同步失败的数据库数量。 |
SQLServer_Sessions | Active_Temp_Tables | 当前活跃临时表数。 |
Active_Transactions | 当前活跃事务数。 | |
Active_cursors | 当前活跃游标数。 | |
sqlserver_activesession | 当前活跃线程数。 | |
sqlserver_connectionreset | 每秒从连接池启动的登录总次数。 | |
sqlserver_sessions | 当前总连接数。 | |
SQLServer_Transactions | sqlserver_transactions | 平均每秒事务数。 |
sqlserver_write_transactions | 平均每秒写事务数。 | |
SQLServer_Cache | Cache_Object_Counts | 缓存中的对象总数。 |
Cache_Objects_in_use | 当前正在使用的缓存对象数量。 | |
Cache_Pages | 缓存占用的页面数。 | |
SQLServer_AdvancedMemUsage | CACHESTORE_SQLCP_KB | SQL编译计划缓存占用的内存(KB)。 |
CACHESTORE_PHDR_KB | 物理驱动程序缓存占用的内存(KB)。 | |
CACHESTORE_OBJCP_KB | 对象编译计划缓存占用的内存(KB)。 | |
MEMORYCLERK_SOSNODE_KB | 操作系统节点内存分配(KB)。 | |
MEMORYCLERK_SQLCLR_KB | CLR(公共语言运行时)占用的内存(KB)。 | |
MEMORYCLERK_SQLSTORENG_KB | SQL存储引擎占用的内存(KB)。 | |
USERSTORE_SCHEMAMGR_KB | 用户架构管理器占用的内存(KB)。 | |
MEMORYCLERK_SOSMEMMANAGER | 操作系统内存管理器占用的内存(KB)。 | |
CACHESTORE_SQLCP_VMCommitted_KB | 虚拟内存中的计划缓存(SQL Plan)。 | |
CACHESTORE_PHDR_VMCommitted_KB | 虚拟内存中algebrizer树的临时内存缓存。 | |
CACHESTORE_OBJCP_VMCommitted_KB | 虚拟内存中的计划缓存(Object Plan)。 | |
MEMORYCLERK_SOSNODE_VMCommitted_KB | 虚拟内存中SOSNODE(SQLOS的一部分)。 | |
MEMORYCLERK_SQLCLR_VMCommitted_KB | 虚拟内存中SQLCLR。 | |
MEMORYCLERK_SQLSTORENG_VMCommitted_KB | 虚拟内存中存储引擎组件。 | |
USERSTORE_SCHEMAMGR_VMCommitted_KB | 虚拟内存中数据库对象的不同类型的元数据信息。 | |
MEMORYCLERK_SOSMEMMANAGER_VMCommitted_KB | 虚拟内存中SOSMEMMANAGER(SQLOS的一部分)。 | |
SQLServer_BackupPerf | Backup_per_Restore_Throughput_per_sec | 每秒备份或恢复处理的字节数(吞吐量)。 |
SQLServer_MemUsage | Lock_Memory_KB | 锁结构占用的内存(KB)。 |
Connection_Memory_KB | 连接占用的内存(KB)。 | |
Database_Cache_Memory_KB | 数据库缓冲池占用的内存(KB)。 | |
Free_Memory_KB | 可用内存(KB)。 | |
Optimizer_Memory_KB | 查询优化器占用的内存(KB)。 | |
Total_Server_Memory_KB | SQL Server当前占用的总内存(KB)。 | |
SQL_Cache_Memory_KB | SQL计划缓存占用的内存(KB)。 | |
Stolen_Server_Memory_KB | 被其他用途占用的内存(KB)。 | |
SQLServer_AGPerf | sqlserver_alwayson_lagsecs | SQLServer AlwaysOn主从延迟。 |
sqlserver_alwayson_redoqueuesize_kb | 副本待重做的日志队列大小(KB)。 | |
sqlserver_alwayson_sendqueuesize_kb | 主副本待发送到副本的日志队列大小(KB)。 | |
Bytes_Received_from_Replica_per_sec | 每秒从副本接收的字节数。 | |
ag_unhealthydb_count | 可用性组中不健康数据库的数量。 | |
ag_db_not_in_ag_count | 不在可用性组中的数据库数量。 | |
ag_redo_finish_time | 副本完成重做的时间戳。 | |
Bytes_Sent_to_Replica_per_sec | 每秒发送到副本的字节数。 | |
Flow_Control_Time_ms_per_sec | 每秒限流持续时间(毫秒)。 | |
Flow_Control_per_sec | 每秒限流触发次数。 | |
SQLServer_SQLCompilations | sqlserver_sqlcompilations | 每秒的 SQL 编译次数。 |
sqlserver_resqlcompilations | 每秒语句重新编译的次数。 | |
Safe_AutoParams_per_sec | 每秒安全自动参数化尝试次数。 | |
Failed_AutoParams_per_sec | 每秒自动参数化尝试失败次数。 | |
Forced_Parameterizations_per_sec | 每秒成功执行的强制参数化次数。 | |
Unsafe_AutoParams_per_sec | 每秒不安全的自动参数化尝试次数。 | |
AutoParam_Attempts_per_sec | 每秒的自动参数化尝试次数。 | |
SQLServer_InstanceIOPSUsage | InstanceIOPSUsageBurst | 实际IOPS使用率。 |
InstanceIOPSUsageNoBurst | 假定实例未开启IO突发时的IOPS使用率。 | |
InstanceIOPSBurstRatio | 开启IO突发对IOPS的提升率。 | |
SQLServer_LockTimeout | sqlserver_locktimeout | 每秒超时的锁请求数,包括对 NOWAIT 锁的请求。 |
SQLServer_MirrorPerf | sqlserver_log_send_queue | 主副本待发送到副本的日志字节数。 |
sqlserver_redo_queue | 副本待重做的日志字节数。 | |
Redo_Bytes_Remaining | 副本还需重做的日志字节数。 | |
Redone_Bytes_per_sec | 副本每秒重做的日志字节数。 | |
SQLServer_LogGrowth | Log_Shrinks | 事务日志收缩的次数。 |
Log_Truncations | 事务日志被截断的次数。 | |
Log_Growths | 事务日志自动增长的次数。 | |
SQLServer_PageLife | sqlserver_pagelife | 平均每个缓存的数据页在内存中驻留的时间。 |
SQLServer_OptimizeConcurrent | Version_Cleanup_rate_KB_per_s | 每秒清理的行版本存储大小(KB)。 |
Version_Generation_rate_KB_per_s | 每秒生成的行版本存储大小(KB)。 | |
SQLServer_Block | Wait_for_the_worker | 工作线程等待队列的长度。 |
uncommited_tran | 未提交事务的数量。 | |
Longest_Transaction_Running_Time | 运行时间最长的事务的持续时间。 | |
Processes_blocked | 被阻塞的进程数量。 | |
SQLServer_FullScans | sqlserver_fullscans | 平均每秒全表扫描次数。 |
SQLServer_LogPerf | Log_Bytes_Flushed_per_sec | 每秒写入磁盘的日志字节数(事务日志物理写入)。 |
Log_Bytes_Received_per_sec | 每秒接收的日志字节数(事务日志生成速率)。 | |
Log_Cache_Reads_per_sec | 每秒从日志缓存读取的次数(不需要从磁盘读)。 | |
Log_buffer_waits | 等待日志缓冲区的次数。指标偏高时表示日志缓冲区竞争严重,需要增加日志缓冲区大小或优化事务。 | |
Log_Flushes_per_sec | 每秒日志刷盘的次数。指标偏高时表示事务频繁,可能需要优化批量操作。 | |
Log_Pool_Requests_per_sec | 每秒请求日志缓冲区的次数,表示监控日志缓冲区的使用压力。 | |
SQLServer_InstanceMBPSUsage | mBps_usage_no_burst | 假定实例未开启IO突发时的磁盘IO吞吐使用率。 |
mBps_usage_burst | 实际磁盘IO吞吐使用率。 | |
mBps_burst_ratio | 开启IO突发对磁盘IO吞吐的提升率。 | |
SQLServer_IOPS | db_io_read | 每秒读IO请求次数。 |
db_io | 每秒IO请求次数。 | |
db_io_write | 每秒写IO请求次数。 | |
iops_of_ecs | 计算侧限制的IOPS上限。 | |
iops_of_disk | 存储侧限制的IOPS上限。 | |
iops_no_burst | 假定实例未开启IO突发时的IOPS上限。 | |
iops_burst | IOPS上限。 | |
SQLServer_QPS | sqlserver_qps | 平均每秒SQL语句执行次数。 |
SQLServer_CheckPoint | sqlserver_lazy_writes | 每秒写入磁盘的次数。 |
sqlserver_checkpoint | 每秒检查点写入Page数。 | |
SQLServer_Deadlock | sqlserver_deadlock | 每秒死锁发生的次数。 |
SQLServer_LockWaits | Lock_Requests_per_sec | 每秒钟SQL Server收到的锁请求总数。 |
Lock_Wait_Time_ms | 平均锁等待时间。 | |
sqlserver_lockwaits | 每秒调用者等待的锁请求数。 | |
Table_Lock_Escalations_per_sec | 表上的锁升级到TABLE或HoBT粒度的次数。 | |
Average_Latch_Wait_Time | 请求闩锁资源的平均等待时间。 | |
Average_Lock_Wait_Time | 请求锁资源的平均等待时间。 | |
Total_Latch_Wait_Time_ms | 锁在最后一秒内的总等待时间。 | |
sqlserver_latchwaits | 每秒未能立即授予闩锁请求次数。 | |
Lock_waits | 等待锁的进程的统计信息。 | |
SQLServer_PagePerf | Page_lookups_per_sec | 每秒钟查询缓冲池中的页面次数。 |
sqlserver_pagereads | 每秒从磁盘读取的数据页数(物理I/O)。 | |
sqlserver_pagewrites | 每秒写入磁盘的数据页数(物理I/O)。 | |
Pages_compressed_per_sec | 每秒被压缩的数据页数。 | |
Page_IO_latch_waits | 等待获取页面I/O latch的次数。 | |
sqlserver_pagesplits | 每秒发生的页面分裂次数。 | |
Readahead_pages_per_sec | 每秒进行预读操作的页面数。 | |
Background_writer_pages_per_sec | 后台写入进程每秒写入磁盘的页面数。 | |
Page_latch_waits | 等待获取页面latch的总数。 | |
SQLServer_InstanceCPUUsage | sqlserver_inscpu | 实例CPU使用率(占操作系统总数)。 |
SQLServer_MBPS | mBps_total | 每秒磁盘IO吞吐量。 |
mBps_read | 每秒磁盘读IO吞吐量。 | |
mBps_write | 每秒磁盘写IO吞吐量。 | |
mBps_of_ecs | 计算侧限制的每秒磁盘IO吞吐量上限。 | |
mBps_of_disk | 存储侧限制的每秒磁盘IO吞吐量上限。 | |
mBps_no_burst | 假定实例未开启IO突发时的每秒磁盘IO吞吐量上限。 | |
mBps_burst | 每秒磁盘IO吞吐量上限。 | |
SQLServer_Logins | sqlserver_logins | 每秒登录次数。 |
sqlserver_logout | 每秒登出次数。 |
PostgreSQL
RDS PostgreSQL提供查看增强监控功能,您可以在控制台查看更多精细化的监控指标。下表同时展示DescribeDBInstancePerformance接口中Key的取值与增强监控中各指标的对应关系。
| 返回指标及含义 | 对应增强监控中的指标 |
MemoryUsage | 内存使用率。单位:百分比(%)。 | os.mem_usage.total.avg |
CpuUsage | CPU使用率。单位:百分比(%)。 | os.cpu_usage.total.avg |
PgSQL_SpaceUsage | 实例空间占用。单位:byte。 | os.fs_size.wal_dir.avg + os.fs_size.base_dir.avg 单位:MB |
PgSQL_IOPS | IOPS(每秒IO请求次数)。单位:次/秒。 | (os.iops.data.avg+os.iops.wal.avg) / os.iops.total.avg * 100 |
PgSQL_Session | 当前总连接数。单位:个。 | db.connections.total.avg |
PolarDBConnections | 返回的参数和含义如下:
|
|
PolarDBRowDML | 返回的参数和含义如下:
|
|
PolarDBQPSTPS | 返回的参数和含义如下:
|
|
PolarDBSwellTime | 实例进行垃圾回收的时间点(膨胀点),即多少秒之前的垃圾可以被回收。 | db.swell.swell_time.avg |
PolarDBCPU | CPU使用率。 |
|
PolarDBMemory | 内存使用率。 | os.mem_usage.total.avg |
PolarDBReplication | 返回的参数和含义如下:
| / |
PolarDBLongSQL | 返回的参数和含义如下:
|
|
PolarDBLongIdleTransaction | 返回的参数和含义如下:
|
|
PolarDBLongTransaction | 返回的参数和含义如下:
|
|
PolarDBLongTwoPCTransaction | 返回的参数和含义如下:
|
|
PolarDBLocalIOSTAT | 返回的参数和含义如下:
|
|
PolarDBLocalDiskUsage | 返回的参数和含义如下:
|
|