Token导航 LogoToken导航

Agent Skill · 研究检索

hap-mongodb-slowlog-analysis(HAP MongoDB slowlog analysis 搜索)

用于辅助数据库表结构、查询语句、迁移脚本和数据维护任务。它适合让 Agent 分析 schema、编写 SQL、排查查询问题、整理索引或生成迁移建议。使用时需要明确数据库类型、连接环境和目标表,区分只读分析与写入变更;涉及删除、更新、迁移和批量导入时,应优先 dry-run、备份或事务保护,避免误操作。

hap-mongodb-slowlog-analysis 是研究检索类 Agent Skill,可用宿主为 OpenClaw,通过ClawHub获取,权限为执行命令;许可证为 MIT-0,第三方扫描已通过,按安装量在研究检索类的 73,675 个 Skill 里排第 21,462。

总安装 4,867周安装 195GitHub Stars 公开资料未说明下载 1,576核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
MIT-0
版本
1.0.2

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:hap-mongodb-slowlog-analysis(HAP MongoDB slowlog analysis 搜索)
来源仓库:https://github.com/1447443432/hap-mongodb-slowlog-analysis
安装命令:
openclaw skills install hap-mongodb-slowlog-analysis
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install hap-mongodb-slowlog-analysis

这个 Skill 是做什么的

研究检索类 Skill 主要解决「找资料、核对事实、把来源整理清楚」的问题,通常会让助手先检索再总结。

用于分析 MongoDB 慢查询日志并提供优化建议。支持从文本、文件或日志内容中提取关键指标。生成索引建议与语句改写方案。适用于数据库性能调优场景。hap-mongodb-slowlog-analysis 属于研究检索类 Skill,可作为该场景下的辅助能力补充。操作前应备份数据并避免直接修改生产环境。

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 OpenClaw;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 openclaw skills install hap-mongodb-slowlog-analysis;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要执行命令,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

hap-mongodb-slowlog-analysis 怎么安装?

在终端执行 openclaw skills install hap-mongodb-slowlog-analysis。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

hap-mongodb-slowlog-analysis 支持哪些 AI 工具?

公开资料标注支持 OpenClaw。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

hap-mongodb-slowlog-analysis 需要什么权限?

权限级别是执行命令。安装流程涉及命令执行,可能通过 openclaw skills install hap-mongodb-slowlog-analysis 联网下载 Skill 或依赖。用户安装前应确认命令来源、仓库内容和执行环境。

hap-mongodb-slowlog-analysis 是免费的吗?

来源标注的许可证是 MIT-0。本站不代收任何费用,也不托管安装包;能否商用、要不要署名,以许可证原文为准。

hap-mongodb-slowlog-analysis 用的人多吗?

公开数据是累计安装 4,867 次,近一周安装 195 次,下载 1,576 次。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

hap-mongodb-slowlog-analysis 安全吗?

第三方扫描结果为通过,但这只覆盖已知的静态检查项,不能替代自己读一遍源码和安装命令。

值得选的地方和要先想清楚的地方

值得选的地方

  • 专注 OpenClaw 一种宿主,触发方式和使用习惯不用来回切换。
  • 许可证明确为 MIT-0,商用和分发边界好判断。
  • 第三方扫描已通过,常见的高风险行为没有命中。

先想清楚的地方

  • 需要执行命令,装到常用环境前要先评估影响面。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 OpenClaw,想直接扩展它能力的人。
  • 需要处理研究检索类任务、又不想每次都手写提示词的人。
  • 需要许可证清楚、并且有第三方扫描结果的团队项目。

不太适合

  • 不能接受 Skill 在你机器上执行命令的人。
  • 需要厂商级技术支持和 SLA 的生产系统。

研究检索类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
find-skills

寻找技能 · Codex、Claude

31,199,81316,486操作浏览器MIT有提醒
self-improving-agent

自我改进 Agent · OpenClaw

16,464,0023,396接触敏感数据MIT-0通过
soultrace

灵魂追踪 · Codex、Claude

7,588,94412需要联网未明确有提醒
self-improving

自我完善 · OpenClaw

6,829,2841,046需要联网MIT-0通过
microsoft-foundry

微软代工厂 · Codex、Claude

6,614,144764调用外部服务未明确有提醒
hap-mongodb-slowlog-analysis

HAP MongoDB slowlog analysis 搜索 · 本页

4,867—执行命令MIT-0通过

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

name
hap-mongodb-slowlog-analysis
description
Analyze MongoDB 4.4.x slow logs from pasted slow-log text, uploaded log files, or mongodb.log content and produce practical query optimization advice, index recommendations, evidence-backed reasoning, and ready-to-run Mongo shell index commands. The skill is AI-first and should analyze logs directly in conversation without relying on local PowerShell by default. It should also be able to group repeated entries by namespace, deduplicate repeated query shapes, and summarize repeated patterns before giving advice. Only treat DOCX or PDF export as optional conversion steps that may require local tooling. Prefer Chinese output by default, but support English when requested. Treat ctime as already indexed and never recommend a new index on it. Treat status as a low-cardinality field with only 1 and 9, where 1 means active/in-use, and do not include status in recommended index definitions.

MongoDB Slowlog Analysis

Overview

默认优先由 AI 直接在对话中分析慢日志,不依赖本地 PowerShell。这个 skill 的主体能力是:

  • 直接读取用户粘贴的慢日志文本
  • 直接读取用户上传的 mongodb.log、.log、.txt、.jsonl 等文件内容
  • 直接在对话中给出分析结论
  • 对批量慢日志按集合(ns)归类,并按“查询形态”去重汇总
  • 直接生成 Markdown 或 HTML 内容
  • 只在必要时把 DOCX / PDF 视为可选转换结果,而不是默认能力

也就是说,这个 skill 的核心不是“运行脚本”,而是“AI 直接分析并输出结构化结果”。

Default Mode

默认模式是“纯 AI 分析优先”:

  1. 用户直接粘贴一段慢日志
  2. 用户上传一个日志文件
  3. 直接在对话中分析,不要求用户先保存文件
  4. 直接输出结构化结论
  5. 如有必要,再补充可执行的 Mongo Shell createIndex(...) 命令
  6. 如果用户要求 md 或 html,优先由 AI 直接生成对应内容

在这个模式下:

  • 不要求先运行本地脚本
  • 不要求先解析成中间文件
  • 不要求先落地 PowerShell 产物
  • 用户上传文件时,也应优先直接读取文件内容并在对话中分析
  • 批量日志应优先做“按表归类 + 按查询形态去重”的 AI 汇总
  • 应优先把注意力放在执行计划、过滤条件、排序方式、扫描量和查询形态上

Output Strategy

按优先级使用下面这套策略:

  1. 对话分析

- 默认方式 - 直接输出分析结果

  1. Markdown

- 优先由 AI 直接生成 - 不依赖 PowerShell 也可以完成

  1. HTML

- 优先由 AI 直接生成 HTML 内容 - 如需落文件,可以把 AI 生成的 HTML 保存到工作区

  1. DOCX / PDF

- 不作为 skill 的默认能力承诺 - 如果用户明确需要真正的文件格式,可以说明这一步通常需要本地转换工具 - 这属于可选增强,而不是主路径

When to Use Tools

默认不要把脚本当作分析入口。

只有在下面场景下,才可以考虑使用本地工具或脚本:

  • 用户明确要求把结果落成文件
  • 用户明确要求批量处理整个 mongodb.log
  • 用户明确要求把 Markdown / HTML 自动写入某个文件
  • 用户明确要求尝试导出 DOCX / PDF

如果只是单条、少量、临时分析,或者上传文件后只需要直接分析,优先用 AI 完成。

Workflow

  1. 接受三类输入:

- 用户直接粘贴的慢日志文本 - 用户上传的日志文件内容 - 一个 mongodb.log 文件路径或一段日志文件内容

  1. 如果输入里包含多条慢日志,应先做批量归类:

- 先按 ns 归类 - 再按“查询形态”去重 - 每组保留代表性样本,并统计重复次数

  1. “查询形态”去重时,优先忽略具体常量值,重点看这些结构是否相同:

- operation (find / aggregate) - ns - filter 的字段结构和操作符结构 - sort - projection - limit - pipeline 的阶段结构 - planSummary

  1. 先尽量识别这些关键信号:

- ns - planSummary - keysExamined - docsExamined - nreturned - durationMillis - find / aggregate - filter - sort - projection - limit - $group - $or - $regex - $ne/$nin/$not/$size

  1. 重点判断这些性能模式:

- 全表扫描 COLLSCAN - 当前索引主要在服务排序,而不是先过滤 - limit: 1 但扫描很多文档 - $or 不同分支需要不同索引 - $ne、$nin、$not、$size 这类负向条件拖慢查询 - 正则、包含搜索这类普通索引收益很差的查询 - aggregate 首段 $match 不够收敛 - $group 放大上游扫描成本

  1. 给出结构化建议,并明确说明应当:

- 先改查询条件 - 或者可以直接尝试加索引

Output Contract

默认输出顺序如下:

  1. 摘要 / Summary
  2. 归类与去重摘要 / Grouping & Dedup Summary(批量日志时必须出现)
  3. 处理优先级 / Action Priority
  4. 证据 / Evidence
  5. 查询条件 / Query Shape
  6. 为什么慢 / Why It Is Slow
  7. 索引建议 / Index Advice
  8. 索引创建命令 / Index Commands
  9. 可执行优化路径 / Practical Optimization Paths
  10. 查询优化建议 / Query Advice
  11. 验证建议 / Validation
  12. 参考文档 / References\ \

\ \ 报告中应尽量解释:

  • 为什么慢
  • 为什么当前计划不理想
  • 为什么是“先改查询”还是“先试索引”
  • 如果建议索引,为什么是这个字段顺序
  • 如果不建议先加索引,为什么普通索引收益不高
  • 对于“先改查询”的场景,最好额外给一节 可执行优化路径 / Practical Optimization Paths
  • 这一节应至少拆成:不改 schema 可做项、允许新增辅助字段时可做项
  • 查询条件本身长什么样,最好以 JSON 形式展示
  • 如果是批量日志,先告诉用户:哪些集合重复出现、哪些查询形态重复最多、每组重复了多少次

References in Output

每次完整报告都应固定带一个“参考文档 / References”小节,至少包含:

如果是 HTML 输出,应把这个链接做成可点击超链接。

HTML Expectations

如果用户要求 HTML 内容或 HTML 文件,输出应尽量满足这些要求:

  • 文首固定免责声明:

- 声明:内容由 AI 生成。尽管已努力确保信息的合理性,但 AI 模型仍可能产生不准确、过时或存在偏差的内容。请在执行关键操作前,务必对照 官方文档 进行核实校验。

  • 官方文档应为可点击链接
  • 查询条件应单独展示,优先用 JSON 代码块
  • HTML 应自动生成目录(Table of Contents / 目录),桌面端默认放在左侧并支持点击跳转到各节,移动端可回退到顶部区块
  • 索引创建命令应使用代码块
  • 如果支持交互增强,代码块右上角应有复制按钮

HTML 目录交互规范(必须遵守)

生成 HTML 时,目录(TOC)必须满足以下所有要求,否则视为不合格输出:

  1. 锚点完整性:每个 TOC 链接的 href(如 #g2)必须在正文中存在对应的 id 属性。

- 生成 HTML 后必须自检:遍历所有 TOC 链接,确认每个 href 去掉 # 后都能在 DOM 中找到对应元素。 - 如果 TOC 链接指向分组(如 G1-G18),必须给每个分组的容器元素(如 <div class="group-section" id="g2">)加上对应 id。 - 不允许只给第一个分组加 id 而遗漏其余分组。

  1. 平滑滚动:CSS 必须包含:
   html {
     scroll-behavior: smooth;
     scroll-padding-top: 20px;
   }
  1. TOC 滚动高亮兼容性:

- 侧边栏通常是 position: sticky 布局。 - 判断当前可见章节时,必须使用 getBoundingClientRect().top 而非 element.offsetTop,因为 offsetTop 在 sticky 容器下会返回错误值。 - 正确写法示例:

     sections.forEach(s => {
       if (s.getBoundingClientRect().top <= 120) {
         current = s.id;
       }
     });
  1. 目标元素间距:被跳转到的目标元素应设置 scroll-margin-top,确保不会被页面顶部遮挡:
   h2[id], h3[id], .group-section[id] {
     scroll-margin-top: 20px;
   }
  1. 自检清单:生成 HTML 后,在最终写入文件前,用以下清单自检:

- [ ] 每个 TOC <a href="#xxx"> 是否都有对应的 id="xxx" 元素 - [ ] 是否包含 scroll-behavior: smooth - [ ] 是否包含 scroll-padding-top 或 scroll-margin-top - [ ] TOC 高亮是否使用 getBoundingClientRect 而非 offsetTop

如果 HTML 已写入文件,任务完成时可以提供一个最小化交付提示,但不要默认增加单独的“交付结果 / Deliverables”小节。\ \ \ \ 默认只需要:\ \ \ \

  • 在最终回复里给出最重要产物的可点击文件路径\ \
  • 如有必要,再补一个可点击目录路径\ \
  • 如果是 HTML,可选补一个本地打开示例\ \

\ \ 如果用户没有要求展示目录或打开方式,不要额外展开太多交付说明。\ \ \ \ 在 Codex 桌面环境里,优先使用简洁的可点击路径。

Batch Output Compatibility

批量日志分析时,不能因为做了“按表归类 + 查询形态去重”就丢掉老的细节输出。必须同时满足这两层:

  1. 汇总层 / Summary Layer
  • 先给出按 ns 归类、按查询形态去重后的总览
  • 说明哪些集合重复最多、哪些查询形态重复最多、每组出现多少次
  1. 细节层 / Detail Layer
  • 每个分组下面仍然必须保留一个“代表性样本 / Representative Sample”
  • 这个代表性样本应继续使用单条慢日志分析时的老结构,至少包含:

- 证据 / Evidence - 查询条件 / Query Shape - 为什么慢 / Why It Is Slow - 索引建议 / Index Advice - 索引创建命令 / Index Commands - 查询优化建议 / Query Advice

  • 查询条件 / Query Shape 不允许省略;优先展示格式化 JSON
  • 如果是 find,至少展示:

- filter - sort - projection(如果存在) - limit(如果存在)

  • 如果是 aggregate,至少展示:

- pipeline - 如能拆出首段 $match,应单独展示 match JSON

  • 如果同一分组的建议一致,可以合并文字说明,但查询字段结构和代表性样本不能只剩一句摘要

也就是说:

  • 新功能保留:按表归类、按查询形态去重、重复次数统计
  • 老功能保留:像手动输入单条慢日志那样,继续看到完整查询字段、证据、索引命令和优化建议
  • 推荐的最终结构应是:先汇总,再按分组展开细节

Batch Analysis Rules

当输入是整份日志文件、长文本、或多条慢日志时,默认按下面方式处理:

  1. 先按 ns 归类
  2. 再按“查询形态”去重
  3. 对每组输出:

- 所属集合 - 出现次数 - 查询形态摘要 - 代表性慢日志特征 - 代表性样本的查询条件 JSON - 是否建议先改查询还是先试索引 - 如果能给索引建议,仍然要保留完整 createIndex(...) 或“当前不建议直接执行 createIndex”的模板

  1. 如果多个重复样本的建议一致,应合并输出,不要逐条重复写相同建议
  2. 如果同一集合里存在多种不同查询形态,应分成多个子组输出

Uploaded File Handling

如果用户上传了日志文件,默认应:

  • 直接读取用户上传文件的内容
  • 优先按 AI 方式分析,不要求用户先运行本地脚本
  • 先做归类和去重,再输出结果
  • 但输出时必须保留代表性样本的详细结构,不能只剩汇总摘要
  • 只有在用户明确要求落地导出文件时,才考虑可选脚本或本地工具

如果用户上传文件后又要求导出结果:\ \ \ \

  • 默认把结果写到工作区内可访问目录\ \
  • 输入来源在报告中默认只显示文件名,不显示完整本地路径\ \
  • 例如应显示 mongodb.log,而不是 C:\\Users\\admin\\Downloads\\mongodb.log\ \
  • 完成后默认只返回最重要产物的可点击路径;除非用户要求,否则不要额外展开“交付结果”说明\ \

\ \

Index Recommendation Rules

统一遵循这些规则:

  • 等值过滤字段优先作为复合索引前缀。
  • 排序字段只有在慢日志显示排序成本明显时才纳入建议。
  • 范围字段一般放在复合索引后部,除非证据明确支持别的顺序。
  • 如果查询有 $or 且不同分支走不同字段,优先考虑“每个分支一套可命中的索引”。
  • 参考这篇经验文档:MongoDB 慢查询优化

- 不等于、不包含、开头不是等否定条件,通常不走索引 - 包含、为空、正则搜索、$or 条件,通常不走索引或索引收益很差 - 这类查询应优先改写条件或增加专门检索字段,而不是盲目补普通索引

  • 明确排除以下字段:

- ctime - status

  • 不要为低基数字段单独建议索引。
  • 如果查询里出现 status,可以解释它是业务过滤条件,但不要把它纳入推荐索引定义。
  • 如果查询里出现 ctime,要说明它已存在索引,不需要重复建议。
  • 生成索引命令时:

- 不要给索引名 - 默认使用后台创建参数 background: true

Ambiguity Handling

如果日志格式不完整、JSON 不标准、或过滤条件无法完全结构化提取:

  • 允许直接从原始日志文本中推断 $group、$or、$regex、$not、$size 等特征
  • 允许给出“基于当前可见信号”的保守结论
  • 不要虚构不存在的字段
  • 如果证据不足,应明确写出“不建议先补索引”或“仅能给出临时候选建议”

Optional Local Tools

本 skill 可以带脚本,但脚本只是可选增强:

  1. scripts/extract-slowlog-signals.ps1

- 适合批量抽取日志信号 - 适合文件输入

  1. scripts/generate-slowlog-report.ps1

- 适合把结果落地成文件 - 适合作为可选导出工具 - 不应替代 AI 的默认分析路径

如果用户只是贴一段慢日志,或者上传一个日志文件需要直接分析,不需要主动调用这些脚本。

Examples

直接 AI 分析:

  • 用 $mongodb-slowlog-analysis 分析下面这段 MongoDB 4.4 慢日志,中文输出
  • 分析这条慢日志,告诉我为什么慢、索引怎么加、查询条件怎么改
  • 分析这个上传的 mongodb.log,按表归类并对重复查询去重汇总
  • 不要生成文件,直接在对话里分析

直接让 AI 生成 Markdown / HTML 内容:

  • 用 $mongodb-slowlog-analysis 生成一份 markdown 报告内容
  • 用 $mongodb-slowlog-analysis 生成 html 报告内容,不依赖本地脚本

如果用户明确要求尝试真实文件导出,再说明:

  • md/html 可以直接由 AI 生成并保存
  • docx/pdf 通常需要本地转换工具,这属于可选增强

Reference

需要复查规则时,读取 references/mongodb-4.4-slowlog-guidelines.md。重点关注:

  • MongoDB 4.4 慢日志信号如何解读
  • 候选索引字段如何排序
  • 为什么本项目要排除 ctime 和 status
  • MongoDB 慢查询优化 中关于否定条件、$or、正则查询和后台创建索引的经验规则

Index Output Template

索引相关输出必须走下面两种模板之一,不要混用,也不要只给一个孤立的 use 库名:

  1. 可直接建索引

- 索引建议:给出候选索引形态 - 索引创建命令:给出完整 Mongo Shell 命令,至少包含: - use 库名 - db.getCollection("集合名").createIndex(..., { background: true })

  1. 暂不建议直接建索引

- 索引建议:明确写“当前不建议直接创建普通索引” - 索引创建命令:明确写“当前不建议直接执行 createIndex,请先改写查询条件” - 不要只输出 use 库名 - 如果确实需要补充,也只能补“改写完成后再回到这里生成候选索引命令”的说明

补充规则:

  • 如果当前判断是“先改查询条件”,则不要伪造 createIndex(...) 命令来凑模板。
  • 这类场景必须明确写出“当前不建议直接执行 createIndex,请先改写查询条件”。
  • 不允许只输出一个孤立的 use 库名。

Post-Rewrite Candidates

如果当前结论是“暂不建议直接建索引”,但日志里仍然能看出较明确的正向过滤字段、范围字段或排序字段,则报告应额外给出一个:

  • 改写后候选索引 / Post-Rewrite Candidate Indexes

这一节的作用是:

  • 先明确“不是现在就执行 createIndex”
  • 再保留“等你把查询改写成正向可索引条件后,优先测试哪组索引”的方向

输出要求:

  • 这一节只能给“候选索引形态”,不能伪装成当前可直接执行的索引命令
  • 如果是 $or 场景,可以额外给出“分支索引”示例
  • 如果存在较明确的单一路径候选,应标记为 主候选索引 / Primary candidate index
  • 如果存在 $or 分支拆分后的候选,应标记为 分支候选索引 / Branch candidate indexes
  • 这一节应放在 索引创建命令 之后、查询优化建议 之前

Fixed Keys Rule

对于这类 MongoDB 动态业务字段,默认视为:

  • 字段 key 固定
  • 不允许为了优化慢查询而随意重命名已有字段 key

因此在给建议时必须遵守:

  • 不要建议“把现有字段改名”
  • 不要把“重命名原字段 key”当作优化方案
  • 如果同一字段在日志里同时出现等值判断和 $size/$not/$ne 等复杂谓词,应把它标记为“混合约束字段”,不要把它直接当作可建索引前缀
  • 对混合约束字段,只能建议:保留原字段 key 不变;若业务允许,增加辅助字段来承接这些复杂判断
  • 如果业务允许,可以建议“在保留原字段 key 不变的前提下新增辅助字段/派生字段”
  • 如果业务也不允许新增字段,则应优先建议:

- 收敛查询条件 - 预聚合 - 报表中间表 - 专门检索方案

在 aggregate 场景下尤其要注意:

  • regex
  • $ne/$nin/$not/$size
  • 复杂 $or

这些场景可以建议“新增辅助字段”,但不能建议“改原字段 key”。

平台分布

OpenClaw

74.18%
按下载量换算1,169

安全审计

VirusTotal

通过

ClawScan

通过

Static analysis

通过

权限和风险

执行命令

安装流程涉及命令执行,可能通过 openclaw skills install hap-mongodb-slowlog-analysis 联网下载 Skill 或依赖。用户安装前应确认命令来源、仓库内容和执行环境。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills