监控与遥测

Qdrant 以 Prometheus/OpenMetrics 格式公开其指标,因此您可以轻松地将其与兼容工具集成,并使用自己的监控系统监控 Qdrant。您可以利用 /metrics 端点并将其配置为抓取目标(scrape target)。

指标端点: https://:6333/metrics

通过 Prometheus 和 Grafana 可以轻松配置与 Qdrant 的集成。

度量

Qdrant 以 Prometheus/OpenMetrics 格式公开各种指标,通常与 Grafana 配合用于监控。

提供两个端点:

  • /metrics:用于 Qdrant 节点/对等节点的指标,请参阅所有指标

  • /sys_metrics(仅限 Qdrant Cloud):用于关于集群的指标,如 CPU、内存、磁盘利用率、集合指标和负载均衡器遥测。有关更多信息,请参阅 Qdrant 云监控

请注意,/metrics 仅报告所连接的对等节点的指标。因此,即使涉及负载均衡器,分别从每个对等节点进行抓取也非常重要。

节点指标 /metrics

每个 Qdrant 节点都会公开以下指标。

计数器(例如创建的快照数量)在节点重启时会重置。

应用程序指标

名称类型含义
app_info仪表盘 (gauge)Qdrant 服务器名称和版本
app_status_recovery_mode仪表盘 (gauge)是否以恢复模式启动

集合指标

名称类型含义
collections_total仪表盘 (gauge)集合数量
collection_points仪表盘 (gauge)点数,按集合统计 (v1.16+)
collection_vectors仪表盘 (gauge)向量数量,按集合和向量名称统计 (v1.16+)
collections_vector_total仪表盘 (gauge)所有集合中的向量总数
collection_indexed_only_excluded_points仪表盘 (gauge)indexed_only 搜索中排除的点数,按集合和向量名称统计 (v1.16+)
collection_active_replicas_min仪表盘 (gauge)所有集合和分片中活动副本的最小值 (v1.16+)
collection_active_replicas_max仪表盘 (gauge)所有集合和分片中活动副本的最大值 (v1.16+)
collection_dead_replicas仪表盘 (gauge)所有集合和分片中非活动副本的数量 (v1.16+)
collection_running_optimizations仪表盘 (gauge)正在运行的优化任务数量,按集合统计 (v1.16+)
collection_hardware_metric_cpu计数器 (counter)集合的 CPU 测量值,按集合统计 (v1.13+) 1
collection_hardware_metric_payload_io_read计数器 (counter)有效载荷 IO 读取操作测量值,按集合统计 (v1.13+) 1
collection_hardware_metric_payload_io_write计数器 (counter)有效载荷 IO 写入操作测量值,按集合统计 (v1.13+) 1
collection_hardware_metric_payload_index_io_read计数器 (counter)有效载荷索引读取操作测量值,按集合统计 (v1.13+) 1
collection_hardware_metric_payload_index_io_write计数器 (counter)有效载荷索引写入操作测量值,按集合统计 (v1.13+) 1
collection_hardware_metric_vector_io_read计数器 (counter)向量 IO 读取操作测量值,按集合统计 (v1.13+) 1
collection_hardware_metric_vector_io_write计数器 (counter)向量 IO 写入操作测量值,按集合统计 (v1.13+) 1

快照指标

名称类型含义
snapshot_creation_running仪表盘 (gauge)正在创建的快照数量,按集合统计 (v1.16+)
snapshot_recovery_running仪表盘 (gauge)正在恢复的快照数量,按集合统计 (v1.16+)
snapshot_created_total计数器 (counter)自启动以来创建的快照总数,按集合统计 (v1.16+)

API 响应指标

名称类型含义
rest_responses_total计数器 (counter)REST API 的响应总数
rest_responses_fail_total计数器 (counter)REST API 的失败响应总数
rest_responses_avg_duration_seconds仪表盘 (gauge)REST API 的平均响应时长
rest_responses_min_duration_seconds仪表盘 (gauge)REST API 的最小响应时长
rest_responses_max_duration_seconds仪表盘 (gauge)REST API 的最大响应时长
rest_responses_duration_seconds直方图 (histogram)REST API 响应时长的直方图 (v1.8+)
grpc_responses_total计数器 (counter)gRPC API 的响应总数
grpc_responses_fail_total计数器 (counter)REST API 的失败响应总数
grpc_responses_avg_duration_seconds仪表盘 (gauge)gRPC API 的平均响应时长
grpc_responses_min_duration_seconds仪表盘 (gauge)gRPC API 的最小响应时长
grpc_responses_max_duration_seconds仪表盘 (gauge)gRPC API 的最大响应时长
grpc_responses_duration_seconds直方图 (histogram)gRPC API 响应时长的直方图 (v1.8+)

进程指标

名称类型含义
memory_active_bytes仪表盘 (gauge)应用程序分配的活动页面中的总字节数 (参考)
memory_allocated_bytes仪表盘 (gauge)应用程序分配的总字节数 (参考)
memory_metadata_bytes仪表盘 (gauge)专用于分配器元数据的总字节数 (参考)
memory_resident_bytes仪表盘 (gauge)映射的物理常驻数据页中的最大字节数 (参考)
memory_retained_bytes仪表盘 (gauge)虚拟内存映射中的总字节数 (参考)
process_threads仪表盘 (gauge)使用的系统线程数 (v1.16+)
process_open_mmaps仪表盘 (gauge)打开的内存映射数量 (v1.16+)
system_max_mmaps仪表盘 (gauge)系统范围内允许打开的内存映射最大数量 (v1.16+)
process_open_fds仪表盘 (gauge)打开的文件描述符数量 (v1.16+)
process_max_fds仪表盘 (gauge)允许打开的文件描述符最大数量 (v1.16+)
process_minor_page_faults_total计数器 (counter)进程遇到的次要页面错误数量 (v1.16+)
process_major_page_faults_total计数器 (counter)进程遇到的主要页面错误数量 (v1.16+)

集群指标(共识)

报告节点当前集群共识状态的指标。仅在启用分布式模式时公开。

名称类型含义
cluster_enabled仪表盘 (gauge)是否启用了分布式模式 2
cluster_peers_total仪表盘 (gauge)集群对等节点数量 2
cluster_term计数器 (counter)Raft 共识任期 2
cluster_commit计数器 (counter)Raft 共识提交 - 最后提交的操作 2
cluster_pending_operations_total仪表盘 (gauge)待处理的共识操作数量 2
cluster_voter仪表盘 (gauge)是否为共识投票者 (1) 或学习者 (0) 2

指标配置

自 v1.16.0 起可用

在自托管环境中,您有更多指标配置选项。

默认情况下,所有 Qdrant 指标都没有应用程序命名空间前缀。您可以在配置中使用 service.metrics_prefix 设置前缀。

要实现此目的,例如您可以使用以下环境变量

QDRANT__SERVICE__METRICS_PREFIX="qdrant_"

遥测端点

Qdrant 还提供了一个 /telemetry 端点,提供有关数据库当前状态的信息,包括向量数量、分片数量和其他有用信息。您可以在 API 参考中找到该端点的完整文档。

集群范围遥测

/telemetry 端点从被查询的对等节点的角度进行报告。Qdrant 还提供了一个 /cluster/telemetry 端点,它会聚合来自所有对等节点的遥测数据。

这包含的信息比 /telemetry 少,但能更可靠地提供分片传输进度等信息。您可以在 API 参考中找到该端点的完整文档。

Kubernetes 健康检查端点

自 v1.5.0 起可用

Qdrant 公开三个端点,即 /healthz/livez/readyz,用于指示 Qdrant 服务器的当前状态。

这些目前提供最基础的状态响应,如果 Qdrant 已启动并可供使用,则返回 HTTP 200。

无论是否配置了 API 密钥,这些端点始终可访问。

您可以在此处阅读有关 Kubernetes 健康检查端点的更多信息。


  1. 仅在配置中启用了硬件指标时报告。请参阅配置中的 service.hardware_reporting。 ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

  2. 仅在启用了分布式模式(集群模式)时报告。在所有 Qdrant Cloud 环境中默认启用。请参阅配置中的 cluster.enabled。 ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

此页面有用吗?

感谢您的反馈!🙏

很遗憾听到这个消息。😔 您可以在 GitHub 上编辑此页面,或创建 GitHub Issue。