qdrant-monitoring-debugging
Diagnoses Qdrant production issues using metrics and observability tools. Use when someone reports 'optimizer stuck', 'indexing too slow', 'memory too high', 'OOM crash', 'queries are slow', 'latency spike', or 'search was fast now it's slow'. Also use when performance degrades without obvious config changes.
适合你,如果正在排查 Qdrant 集群的性能瓶颈或异常
/ 通过 npx 安装 校验哈希
npx oh-my-skill add qdrant/skills/qdrant-monitoring-debugging/ 通过 bash 安装
curl -fsSL https://oh-my-skill.com/install.sh | bash -s -- qdrant/skills/qdrant-monitoring-debugging/ 已经装过?验证本机副本,不用重装
npx oh-my-skill verify qdrant/skills/qdrant-monitoring-debugging安装目标可用 --agent / --scope 或 --to 明确指定;省略时只会在唯一已存在的 agent 目录上自动选择,零命中或多命中会停止并提示。content_hash 缺失或不一致均拒装。
–GitHub stars
~702上下文体积 · 单文件
索引托管
怎么用
技能原文 SKILL.md
How to Debug Qdrant with Metrics
First check optimizer status. Most production issues trace back to active optimizations competing for resources. If optimizer is clean, check memory, then request metrics.
Optimizer Stuck or Too Slow
Use when: optimizer running for hours, not finishing, or showing errors.
- Use
/collections/{collection_name}/optimizationsendpoint (v1.17+) to check status Optimization monitoring - Query with optional detail flags:
?with=queued,completed,idle_segments - Returns: queued optimizations count, active optimizer type, involved segments, progress tracking
- Web UI has an Optimizations tab with timeline view and per-task duration metrics Web UI
- If
optimizer_statusshows an error in collection info, check logs for disk full or corrupted segments - Large merges and HNSW rebuilds legitimately take hours on big datasets. Check progress before assuming it's stuck.
Memory Seems Too High
Use when: memory exceeds expectations, node crashes with OOM, or memory keeps growing.
- Process memory metrics available via
/metrics(RSS, allocated bytes, page faults) - Qdrant uses two types of RAM: resident memory (data structures, quantized vectors) and OS page cache (cached disk reads). Page cache filling available RAM is normal. Memory article
- If resident memory (RSSAnon) exceeds 80% of total RAM, investigate
- Check
/telemetryfor per-collection breakdown of point counts and vector configurations - Estimate expected memory:
num_vectors * dimensions * 4 bytes * 1.5for vectors, plus payload and index overhead Capacity planning - Common causes of unexpected growth: quantized vectors with
always_ram=true, too many payload indexes, largemax_segment_sizeduring optimization
Queries Are Slow
Use when: queries slower than expected and you need to identify the cause.
- Track
rest_responses_avg_duration_secondsandrest_responses_max_duration_secondsper endpoint - Use histogram metric
rest_responses_duration_seconds(v1.8+) for percentile analysis in Grafana - Equivalent gRPC metrics with
grpc_responses_prefix - Check optimizer status first. Active optimizations compete for CPU and I/O, degrading search latency.
- Check segment count via collection info. Too many unmerged segments after bulk upload causes slower search.
- Compare filtered vs unfiltered query times. Large gap means missing payload index. Payload index
What NOT to Do
- Ignore optimizer status when debugging slow queries (most common root cause)
- Assume memory leak when page cache fills RAM (normal OS behavior)
- Make config changes while optimizer is running (causes cascading re-optimizations)
- Blame Qdrant before checking if bulk upload just finished (unmerged segments)
按 Apache-2.0 许可原样转载,未经改动 · 在 GitHub 查看 →
评论
登录即可评论;带「已验证安装」的,是发布者名下有本店的安装或持有记录。
…