查询 NebulaGraph 监控指标Graph
NebulaGraph 支持多种方式查询服务的监控指标,本文将介绍最基础的方式,即通过 HTTP 端口查询。
监控指标结构说明Graph
NebulaGraph 的每个监控指标都由三个部分组成,中间用英文句号(.)隔开,例如num_queries.sum.600
。不同的 NebulaGraph 服务支持查询的监控指标也不同。指标结构的说明如下。
类别 | 示例 | 说明 |
---|---|---|
指标名称 | num_queries |
简单描述指标的含义。 |
统计类型 | sum |
指标统计的方法。当前支持 SUM、AVG、RATE 和 P 分位数(P75、P95、P99、P999)。 |
统计时间 | 600 |
指标统计的时间范围,当前支持 5 秒、60 秒、600 秒和 3600 秒,分别表示最近 5 秒、最近 1 分钟、最近 10 分钟和最近 1 小时。 |
图空间监控指标Graph
Graph 服务支持一系列基于图空间的监控指标(Space Level Metrics),对不同图空间的数据分别记录。
如需开启图空间监控指标,先在 Graph 服务的配置文件中将enable_space_level_metrics
参数的值修改为true
,再启动 NebulaGraph。修改配置的详细方式参见Graph。
Note
图空间指标只能通过查询所有监控指标的形式查询到,例如curl -G "http://192.168.8.40:19559/stats"
,返回结果中以{space=space_name}
的形式包含图空间名称,例如num_active_queries{space=basketballplayer}.sum.5=0
。
通过 HTTP 端口查询监控指标Graph
语法Graph
curl -G "http://<ip>:<port>/stats?stats=<metric_name_list> [&format=json]"
选项 | 说明 |
---|---|
ip |
服务器的 IP 地址,可以在安装目录内查看配置文件获取。 |
port |
服务器的 HTTP 端口,可以在安装目录内查看配置文件获取。默认情况下,Meta 服务端口为 19559,Graph 服务端口为 19669,Storage 服务端口为 19779。 |
metric_name_list |
监控指标名称,多个监控指标用英文逗号(,)隔开。 |
&format=json |
将结果以 JSON 格式返回。 |
Note
如果 NebulaGraph 服务部署在容器中,需要执行docker-compose ps
命令查看映射到容器外部的端口,然后通过该端口查询。
示例Graph
-
查询单个监控指标
查询 Graph 服务中,最近 10 分钟的请求总数。
$ curl -G "http://192.168.8.40:19669/stats?stats=num_queries.sum.600" num_queries.sum.600=400
-
查询多个监控指标
查询 Meta 服务中,最近 1 分钟的心跳平均延迟和最近 10 分钟 P99 心跳(1%最慢的心跳)的平均延迟。
$ curl -G "http://192.168.8.40:19559/stats?stats=heartbeat_latency_us.avg.60,heartbeat_latency_us.p99.600" heartbeat_latency_us.avg.60=281 heartbeat_latency_us.p99.600=985
-
查询监控指标并以 JSON 格式返回
查询 Storage 服务中,最近 10 分钟新增的点数量,并以 JSON 格式返回结果。
$ curl -G "http://192.168.8.40:19779/stats?stats=num_add_vertices.sum.600&format=json" [{"value":1,"name":"num_add_vertices.sum.600"}]
-
查询服务器的所有监控指标
不指定查询某个监控指标时,会返回该服务器上所有的监控指标。
$ curl -G "http://192.168.8.40:19559/stats" heartbeat_latency_us.avg.5=304 heartbeat_latency_us.avg.60=308 heartbeat_latency_us.avg.600=299 heartbeat_latency_us.avg.3600=285 heartbeat_latency_us.p75.5=652 heartbeat_latency_us.p75.60=669 heartbeat_latency_us.p75.600=651 heartbeat_latency_us.p75.3600=642 heartbeat_latency_us.p95.5=930 heartbeat_latency_us.p95.60=963 heartbeat_latency_us.p95.600=933 heartbeat_latency_us.p95.3600=929 heartbeat_latency_us.p99.5=986 heartbeat_latency_us.p99.60=1409 heartbeat_latency_us.p99.600=989 heartbeat_latency_us.p99.3600=986 num_heartbeats.rate.5=0 num_heartbeats.rate.60=0 num_heartbeats.rate.600=0 num_heartbeats.rate.3600=0 num_heartbeats.sum.5=2 num_heartbeats.sum.60=40 num_heartbeats.sum.600=394 num_heartbeats.sum.3600=2364 ...
监控指标说明Graph
GraphGraph
参数 | 说明 |
---|---|
num_active_queries |
当前正在执行的查询数。 |
num_active_sessions |
当前活跃的会话数量。 |
num_aggregate_executors |
聚合(Aggregate)算子执行时间。 |
num_auth_failed_sessions_bad_username_password |
因用户名密码错误导验证失败的会话数量。 |
num_auth_failed_sessions_out_of_max_allowed |
因为超过FLAG_OUT_OF_MAX_ALLOWED_CONNECTIONS 参数导致的验证登录的失败的 session 数量。 |
num_auth_failed_sessions |
登录验证失败的会话数量。 |
num_indexscan_executors |
索引扫描(IndexScan)算子执行时间。 |
num_killed_queries |
被终止的查询数量。 |
num_opened_sessions |
服务端建立过的会话数量。 |
num_queries |
查询次数。 |
num_query_errors_leader_changes |
因查询错误而导致的 Leader 变更的次数。 |
num_query_errors |
查询错误次数。 |
num_reclaimed_expired_sessions |
服务端主动回收的过期的会话数量。 |
num_rpc_sent_to_metad_failed |
Graphd 服务发给 Metad 的 RPC 请求失败的数量。 |
num_rpc_sent_to_metad |
Graphd 服务发给 Metad 服务的 RPC 请求数量。 |
num_rpc_sent_to_storaged_failed |
Graphd 服务发给 Storaged 服务的 RPC 请求失败的数量。 |
num_rpc_sent_to_storaged |
Graphd 服务发给 Storaged 服务的 RPC 请求数量。 |
num_sentences |
Graphd 服务接收的语句数。 |
num_slow_queries |
慢查询次数。 |
num_sort_executors |
排序(Sort)算子执行时间。 |
optimizer_latency_us |
优化器阶段延迟时间。 |
query_latency_us |
查询平均延迟时间。 |
slow_query_latency_us |
慢查询平均延迟时间。 |
num_queries_hit_memory_watermark |
达到内存水位线的语句的数量。 |
MetaGraph
参数 | 说明 |
---|---|
commit_log_latency_us |
Raft 协议中 Commit 日志的延迟时间。 |
commit_snapshot_latency_us |
Raft 协议中 Commit 快照的延迟时间。 |
heartbeat_latency_us |
心跳延迟时间。 |
num_heartbeats |
心跳次数。 |
num_raft_votes |
Raft 协议中投票的次数。 |
transfer_leader_latency_us |
Raft 协议中转移 Leader 的延迟时间。 |
num_agent_heartbeats |
AgentHBProcessor 心跳次数。 |
agent_heartbeat_latency_us |
AgentHBProcessor 延迟时间。 |
StorageGraph
参数 | 说明 |
---|---|
add_edges_atomic_latency_us |
添加边单次延迟。 |
add_edges_latency_us |
添加边的平均延迟时间。 |
add_vertices_latency_us |
添加点的平均延迟时间。 |
commit_log_latency_us |
Raft 协议中 Commit 日志的延迟时间。 |
commit_snapshot_latency_us |
Raft 协议中 Commit 快照的延迟时间。 |
delete_edges_latency_us |
删除边的平均延迟时间。 |
delete_vertices_latency_us |
删除点的平均延迟时间。 |
get_neighbors_latency_us |
查询邻居平均延迟时间。 |
num_get_prop |
GetPropProcessor 执行的次数。 |
num_get_neighbors_errors |
GetNeighborsProcessor 执行出错的次数。 |
get_prop_latency_us |
GetPropProcessor 执行的延迟时间。 |
num_edges_deleted |
删除的边数量。 |
num_edges_inserted |
插入的边数量。 |
num_raft_votes |
Raft 协议中投票的次数。 |
num_rpc_sent_to_metad_failed |
Storaged 服务发给 Metad 服务的 RPC 请求失败的数量。 |
num_rpc_sent_to_metad |
Storaged 服务发给 Metad 服务的 RPC 请求数量。 |
num_tags_deleted |
删除的 Tag 数量。 |
num_vertices_deleted |
删除的点数量。 |
num_vertices_inserted |
插入的点数量。 |
transfer_leader_latency_us |
Raft 协议中转移 Leader 的延迟时间。 |
lookup_latency_us |
LookupProcessor 执行的延迟时间。 |
num_lookup_errors |
LookupProcessor 执行时出错的次数。 |
num_scan_vertex |
ScanVertexProcessor 执行的次数。 |
num_scan_vertex_errors |
ScanVertexProcessor 执行时出错的次数。 |
update_edge_latency_us |
UpdateEdgeProcessor 执行的延迟时间。 |
num_update_vertex |
UpdateVertexProcessor 执行的次数。 |
num_update_vertex_errors |
UpdateVertexProcessor 执行时出错的次数。 |
kv_get_latency_us |
Getprocessor 的延迟时间。 |
kv_put_latency_us |
PutProcessor 的延迟时间。 |
kv_remove_latency_us |
RemoveProcessor 的延迟时间。 |
num_kv_get_errors |
GetProcessor 执行出错次数。 |
num_kv_get |
GetProcessor 执行次数。 |
num_kv_put_errors |
PutProcessor 执行出错次数。 |
num_kv_put |
PutProcessor 执行次数。 |
num_kv_remove_errors |
RemoveProcessor 执行出错次数。 |
num_kv_remove |
RemoveProcessor 执行次数。 |
forward_tranx_latency_us |
传输平均延迟时间。 |
图空间级别监控指标Graph
参数 | 说明 |
---|---|
num_active_queries |
当前正在执行的查询数。 |
num_queries |
查询次数。 |
num_sentences |
Graphd 服务接收的语句数。 |
optimizer_latency_us |
优化器阶段延迟时间。 |
query_latency_us |
查询平均延迟时间。 |
num_slow_queries |
慢查询次数。 |
num_query_errors |
查询报错语句数量。 |
num_query_errors_leader_changes |
因查询错误而导致的 Leader 变更的次数。 |
num_killed_queries |
被终止的查询数量。 |
num_aggregate_executors |
聚合(Aggregate)算子执行时间。 |
num_sort_executors |
排序(Sort)算子执行时间。 |
num_indexscan_executors |
索引扫描(IndexScan)算子执行时间。 |
num_oom_queries |
导致内存耗尽的语句数量。 |