有奖捉虫:云通信与企业服务文档专题,速来> HOT
云数据库 MongoDB 提供的监控功能可以实时查看实例资源的监控指标数据,通过可视化图形、表格、大屏、多种方式统计监控数据,并支持设置告警规格,通过消息推送的方式帮助您第一时间了解数据库服务的异常,及时调整业务,保障业务稳定运行。

监控粒度

云数据库 MongoDB 暂不支持监控数据采集粒度的自定义选择,自适应策略如下表所示:
时间跨度
监控粒度
保留时长
0天 - 1天
5秒
1天
0天 - 1天
1分钟
15天
0天 - 1天
5分钟
31天
0天 - 1天
1小时
93天
0天 - 1天
1天
186天
0天 - 7天
1小时
93天
0天 - 7天
1天
186天
7天 - 30天
1小时
93天
7天 - 30天
1天
186天

监控说明

云数据库 MongoDB 副本集架构通过部署多个服务器存储数据副本来达到高可用的能力,每一个副本集实例由一个 Primary 节点和一个或多个 Secondary 节点组成。云数据库 MongoDB 分片集群(Sharded Cluster)架构在副本集的基础上,通过多组复制集群的组合,实现数据的横向扩展。每一个分片集群实例由 mongos 节点、config server、shard 节点等组件组成。具体信息,请参见 系统架构
云数据库 MongoDB 依据集群架构及请求下发及返回的链路,监控数据库的多项性能指标,包含:资源使用情况、请求时延、请求量统计和网络出入流量等。具体信息,请参见下表。
监控类别
监控范围
实例(主实例、只读实例、灾备实例)
节点
Mongod
Mongos
资源监控
统计整个集群的所有节点 CPU 与内存的最大使用率、平均使用率,及其磁盘使用率。
统计集群中存储文档的 Mongod 节点的 CPU、内存及磁盘的使用率。
统计集群中存储文档的 Mongos 节点的 CPU 与内存的使用率。
网络监控
统计整个集群出入流量的字节数、及其客户端连接数量。
统计 Mongod 节点出入的字节数。
统计 Mongos 节点出入的字节数。
时延监控
统计请求从下发到集群至最终返回所产生的耗时。
统计请求到达 Mongod 节点再从 Mongod 返回整个过程的平均耗时。
统计请求到达 Mongos 节点,经 Mongos 路由至 Mongod,再经过 mongod 计算处理,最终从 Mongos 返回整个过程的平均耗时。
请求监控
统计所有下发至集群的请求数量及每秒的请求数量。
统计访问 Mongod 的请求数量及每秒的请求数量。
统计 Mongos 节点收到的请求数量及每秒收到请求数量。
内核监控
-
统计包含:活跃读写请求数量、读写排队长度、TTL、主从延迟、Cache 命中率等
-


监控指标

云数据库 MongoDB 所有性能监控指标及其含义,请参见下表。

实例

监控维度
监控指标中文名称
监控指标英文名称
单位
指标说明
CPU 监控
Mongod 最大 CPU 使用率
mongod_max_cpu_usage
%
集群所有 Mongod 节点最大的 CPU 使用率。
Mongod 平均 CPU 使用率
monogd_avg_cpu_usage
%
集群所有 Mongod 节点 CPU 使用率取平均值。
Mongos 最大 CPU 使用率
monogs_max_cpu_usage
%
分片集群所有 Mongos 节点最大的 CPU 使用率。
Mongos 平均 CPU 使用率
monogs_avg_cpu_usage
%
分片集群所有 Mongos 节点 CPU 使用率取平均值。
内存监控
Mongod 最大内存使用率
mongod_max_mem_usage
%
集群所有 Mongod 节点最大的内存使用率。
Mongod 平均内存使用率
mongod_avg_mem_usage
%
集群所有 Mongod 节点内存使用率取平均值。
Mongos 最大内存使用率
mongos_max_mem_usage
%
分片集群所有 Mongos 节点最大的内存使用率。
Mongos 平均内存使用率
mongos_avg_mem_usage
%
分片集群所有 Mongos 节点内存使用率取平均值。
磁盘监控
磁盘空间利用率
disk_usage
%
实际磁盘使用量与申请的磁盘空间的占比。
网络监控
连接数量
cluster_conn
连接到实例的 TCP 连接数量。
连接百分比
connper
%
当前集群的连接数量与最大连接数的比例。
入流量
cluster_view
Bytes
集群的入流量字节数统计。
出流量
cluster_netout
Bytes
集群的出流量字节数统计。
时延监控
所有请求平均时延
avg_all_request_delay
ms
集群所有请求执行的平均时延。
更新平均延迟
avg_update_delay
ms
集群更新请求的平均时延。
插入平均延迟
avg_insert_delay
ms
集群插入请求的平均时延。
读平均时延
avg_read_delay
ms
集群读请求的平均时延。
聚合请求平均时延
avg_aggregate_delay
ms
集群聚合请求的平均时延。
Count 的平均延迟
avg_count_delay
ms
集群 Count 请求的平均时延。 Count 用于统计集合中满足指定条件的文档数量。
Getmore 平均延迟
avg_getmore_delay
ms
集群 Getmore 请求的平均时延。
删除平均延迟
avg_delete_delay
ms
集群删除请求的平均时延。
Command 平均时延
avg_command_delay
ms
集群 Command 请求的平均时延。Command 为除 insert、update、delete、query 以外命令的总称。
10毫秒 - 50毫秒
10ms
执行时间在10毫秒和50毫秒之间的请求次数。
50毫秒 - 100毫秒
50ms
执行时间在50毫秒和100毫秒之间的请求次数。
100毫秒
100ms
执行时间超过100毫秒的请求次数。
请求监控
总请求量
success_per_second
次/秒
集群每秒所有请求执行成功的次数。
插入请求
insert_per_second
次/秒
集群每秒插入请求执行次数。
读请求
read_per_second
次/秒
集群每秒读请求执行次数。
更新请求
update_per_second
次/秒
集群每秒更新请求执行次数。
删除请求
delete_per_second
次/秒
集群每秒删除请求执行次数。
count 请求
count_per_second
次/秒
集群每秒收到的 Count 请求的次数。
Getmore 请求
getmore_per_second
次/秒
集群每秒收到的 Getmore 请求的次数。
Aggregates 请求
aggregate_per_second
次/秒
集群每秒聚合请求的次数。
Command 请求
command_per_second
次/秒
集群每秒收到的 Command 请求的次数。Command 为除 insert、update、delete、query 以外命令的总称。
请求量
总请求量
node_success
集群所有请求的次数。
插入请求
node_inserts
集群收到的插入请求的次数。
读请求
node_reads
集群收到的读请求的次数。
更新请求
node_updates
集群更新请求的次数。
删除请求
node_deletes
集群删除请求的次数。
count 请求
node_counts
集群收到的 Count 请求的次数。
Getmore 请求
node_getmores
集群收到的 Getmore 请求的次数。
Aggregates 请求
node_aggregates
集群聚合所有请求的次数。
Command 请求
node_commands
集群收到的 Command 请求的次数。Command 为除 insert、update、delete、query 以外命令的总称。


Mongod 节点

监控维度
监控指标中文名称
监控指标英文名称
单位
指标说明
CPU 监控
CPU 使用率
cpuusage
%
Mongod 节点 CPU 正在执行进程所占用的时间占 CPU 总时间的百分比。
内存监控
内存使用率
memusage
%
Mongod 节点的内存中已被使用的空间占内存总容量的百分比。
磁盘监控
磁盘空间使用量
diskusage
MBytes
Mongod 节点当前磁盘已被使用的空间占总空间的百分比。
磁盘读次数
ioread
次/秒
Mongod 节点磁盘每秒读的次数。
磁盘写次数
iowrite
次/秒
Mongod 节点磁盘每秒读的次数。
网络监控
入流量
netin
Bytes
Mongod 节点入流量字节数统计。
出流量
netout
Bytes
Mongod 节点的出流量字节数统计。
请求平均延迟监控
所有请求平均时延
node_avg_all_requests_delay
ms
Mongod 节点收到的所有请求平均时延。
更新平均延迟
node_avg_update_delay
ms
Mongod 节点 update 请求时延平均值。
插入平均延迟
node_avg_insert_delay
ms
Mongod 节点 insert 请求时延平均值。
读平均时延
node_avg_read_delay
ms
Mongod 节点读请求时延平均值。
聚合请求平均时延
node_avg_aggregate_delay
ms
Mongod 节点聚合请求时延平均值。
Count 的平均延迟
node_avg_count_delay
ms
Mongod 节点 Count 请求时延平均值。
Getmore 平均延迟
node_avg_getmore_delay
ms
Mongod 节点 Getmore 请求时延平均值。
删除平均延迟
node_avg_delete_delay
ms
Mongod 节点删除请求时延平均值。
Command 平均时延
node_avg_command_delay
ms
Mongod 节点 Command 请求时延平均值。
10-50毫秒
10ms
执行时间在10毫秒和50毫秒之间的请求次数。
50-100毫秒
50ms
执行时间在50毫秒和100毫秒之间的请求次数。
100毫秒
100ms
执行时间超过100毫秒的请求次数。
请求监控
总请求
node_success_per_second
次/秒
Mongod 节点每秒所有请求的次数。
插入请求
node_insert_per_second
次/秒
Mongod 节点每秒插入请求的次数。
读请求
node_read_per_second
次/秒
Mongod 节点每秒读请求的次数。
更新请求
node_update_per_second
次/秒
Mongod 节点每秒更新请求的次数。
删除请求
node_delete_per_second
次/秒
Mongod 节点每秒删除请求的次数。
Count 请求
node_count_per_second
次/秒
Mongod 节点每秒收到的 Count 请求的次数。
Getmore 请求
node_getmore_per_second
次/秒
Mongod 节点每秒收到的 Getmore 请求的次数。
Aggregates 请求
node_aggregate_per_second
次/秒
Mongod 节点每秒聚合请求的次数。
Command 请求
node_command_per_second
次/秒
Mongod 节点每秒收到的 Command 请求的次数。Command 为除 insert、update、delete、query 以外命令的总称
内核监控
活跃写请求
ar
Mongod 节点数据在内存中被写请求的个数。
活跃读请求
aw
Mongod 节点数据在内存中被读请求的个数。
排队读请求
qr
队列中 Read 请求的等待个数。
排队写请求
qw
队列中 Write 请求的等待个数。
TTL 删除数据条数
ttl_deleted
在TTL过期后,数据库自动删除的数据条数。
TTL 发起次数
ttl_pass
指在数据库中设置的TTL时间内,数据被检查的次数。
活跃 session 数量
active_session
Session表示客户端与服务器之间的一次会话。在客户端与服务器建立连接后,可以通过创建一个session来进行数据的读写操作。当session被创建后,它会一直保持活跃状态,直到客户端主动关闭连接或者超时断开连接。该指标监控当前 Mongod 节点活跃的 session 数量。
Oplog 保存时长
node_oplog_reserved_time
小时
Oplog 用于记录数据库的操作日志,该指标统计其保存时长。
主从延迟
node_slavedelay
从节点定期轮询主节点的 oplog(操作日志)来复制 Primary 节点的数据,该指标统计主从同步数据的时延。
Cache 命中率
replicaset_node
%
当前集群 Cache 的命中率。
Cache 使用百分比
node_cache_used
%
Cache 使用量占总量的百分比。
Cache脏数据百分比
node_cache_dirty
%
Cache 脏数据占总量的百分比。
请求量
总请求量
node_success
集群总请求次数。
插入请求量
node_inserts
集群插入请求的次数。
读请求量
node_reads
集群读请求的次数。
更新请求量
replicaset_node
集群更新请求的次数。
删除请求量
node_deletes
集群删除请求的次数。
Count 请求量
node_counts
集群收到的 Count 请求的次数。
Getmore 请求量
node_getmores
集群收到的 Getmore 请求的次数。
Aggregates 请求量
node_aggregates
集群聚合请求的次数。
Command 请求量
node_commands
集群收到的 Command 请求的次数。Command 为除 insert、update、delete、query 以外命令的总称。


Mongos 节点(分片集群)

监控维度
监控指标中文名称
监控指标中文名称
单位
指标说明
CPU 监控
CPU 使用率
cpuusage
%
Mongos节点的 CPU 使用率。
内存监控
内存使用率
memusage
%
Mongos 节点的内存使用率。
网络监控
内网入流量
netin
Bytes
Mongos 节点入流量字节数统计。
内网出流量
netout
Bytes
Mongos 节点的出流量字节数统计。
时延监控
所有请求平均时延
node_avg_all_request_delay
ms
Mongos 节点收到的所有请求平均时延。
更新平均延迟
node_avg_update_delay
ms
Mongos 节点更新命令时延平均值。
插入平均延迟
replicaset_node
ms
Mongos 节点插入命令时延平均值。
读平均时延
node_avg_read_delay
ms
Mongos 节点读命令时延平均值。
聚合请求平均时延
node_avg_aggregate_delay
ms
Mongos 节点 aggregate 命令时延平均值。
Count 的平均延迟
node_avg_count_delay
ms
Mongos 节点 counts 命令时延平均值。
Getmore 平均延迟
node_avg_getmore_delay
ms
Mongos 节点 Getmore 命令时延平均值。
删除平均延迟
node_avg_delete_delay
ms
Mongos 节点删除命令时延平均值。
Command 平均时延
node_avg_command_delay
ms
Mongos 节点 Command 命令时延平均值。Command 为除 insert、update、delete、query 以外命令的总称。
10-50毫秒
10ms
执行时间在10毫秒和50毫秒之间每秒请求次数。
50-100毫秒
50ms
执行时间在50毫秒和100毫秒之间每秒请求次数。
100毫秒
100ms
执行时间超过100毫秒每秒请求次数。
请求监控
总请求
qps
次/秒
Mongos 节点每秒所有请求的次数。
插入请求
inserts
次/秒
Mongos 节点每秒插入请求的次数。
读请求
reads
次/秒
Mongos 节点每秒读请求的次数。
更新请求
updates
次/秒
Mongos 节点每秒更新请求的次数。
删除请求
deletes
次/秒
Mongos 节点每秒删除请求的次数。
Count 请求
counts
次/秒
Mongos 节点每秒收到的 Count 请求的次数。
Getmore 请求
getmores
次/秒
Mongos 节点每秒收到的 Getmore 请求的次数。
Aggregates 请求
aggregates
次/秒
Mongos 节点每秒聚合请求的次数。
Command 请求
commands
次/秒
Mongos 节点每秒收到的 Command 请求的次数。Command 为除 insert、update、delete、query 以外命令的总称。
请求量
总请求量
node_success
Mongos 节点收到的总请求次数。
插入请求量
node_inserts
Mongos 节点收到的插入请求的次数。
读请求量
node_reads
Mongos 节点收到的读请求的次数。
更新请求量
node_updates
Mongos 节点收到的更新请求的次数。
删除请求量
node_deletes
Mongos 节点收到的删除请求的次数。
Count 请求量
node_counts
Mongos 节点收到的 Count 请求的次数。
Getmore 请求量
node_getmores
Mongos节点收到的 Getmore 请求的次数。
Aggregates 请求量
node_aggregates
Mongos 节点收到的聚合请求的次数。
Command 请求量
node_commands
Mongos 节点收到的 Command 请求的次数。Command 为除 insert、update、delete、query 以外命令的总称。
说明:
对 MongoDB 4.4(WT.44.13.1)及以上版本实例,插入请求是按实际插入行数统计,比如 insertMany() 实际插入10条记录,则监控会统计10次插入请求。

监控与告警

查看各个监控指标的监控数据及视图,请参见 查看监控数据
可配置告警的监控指标以及如何配置告警,请参见 配置指标告警
可配置的告警的实践以及如何创建事件规则,请参见 配置事件告警