查询Nebula Graph监控指标
Nebula Graph支持多种方式查询服务的监控指标,本文将介绍最基础的方式,即通过HTTP端口查询。
监控指标说明
Nebula Graph的每个监控指标都由三个部分组成,中间用英文句号(.)隔开,例如num_queries.sum.600
。不同的Nebula Graph服务支持查询的监控指标也不同。指标结构的说明如下。
类别 | 示例 | 说明 |
---|---|---|
指标名称 | num_queries | 简单描述指标的含义。 |
统计类型 | sum | 指标统计的方法。当前支持SUM、COUNT、AVG、RATE和P分位数(P75、P95、P99、P99.9)。 |
统计时间 | 600 | 指标统计的时间范围,当前支持5秒、60秒、600秒和3600秒,分别表示最近5秒、最近1分钟、最近10分钟和最近1小时。 |
通过HTTP端口查询监控指标
语法
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格式返回。 |
说明:如果Nebula Graph服务部署在容器中,需要执行
docker-compose ps
命令查看映射到容器外部的端口,然后通过该端口查询。
示例
查询单个监控指标
查询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