日志排查 Skill 如何与其他技能协作:交接格式与顺序
运维与平台工程师经常要做「日志排查」这类事:从大量日志中找出错误模式与首次出现时间。每次都从头写提示词,结果时好时坏;把它做成智能体 Skill,就能让智能体每次按同一套步骤执行,输出结构也更稳定。
单个技能解决一个环节,把几个技能串起来,才能覆盖一整段工作。本文示范「日志排查」与三个相关技能的组合。
组合方案
| 顺序 | 技能 | 作用 | 交给下一步的东西 |
|---|---|---|---|
| 1 | 事故时间线整理 | 根据告警、聊天记录与日志整理事故时间线 | 事故时间线 |
| 2 | 日志排查 | 从大量日志中找出错误模式与首次出现时间 | 错误摘要与时间线 |
| 3 | 备份可用性验证 | 定期抽查备份能否恢复,并记录结果 | 验证记录 |
| 4 | 权限逻辑审查 | 检查接口是否存在越权访问风险 | 风险清单 |
交接格式是关键
技能之间靠“上一步的输出就是下一步的输入”衔接。建议约定:
- 每个技能的输出都带固定标题,便于下一个技能定位内容
- 不确定项统一放在“需人工确认”小节,后续技能不得把它当作确定事实
- 「日志排查」接收的是日志文件或查询结果,如果上一步给的格式不同,先做一次转换
怎么编排
有三种常见方式:
- 人工串联:每一步结束后由人确认,再触发下一个技能,最稳妥
- 编排指令:写一个总技能,列出调用顺序与交接要求,由智能体依次执行
- 工作流平台:在 Dify、扣子、n8n 等平台中把每个技能做成节点,用条件分支处理异常
编排指令示例(示意)
# 组合流程:事故时间线整理 → 日志排查 → 备份可用性验证 → 权限逻辑审查
1. 调用 incident-timeline,保存输出为 step1
2. 以 step1 为输入调用 log-triage,保存为 step2
3. 以 step2 为输入调用 backup-verify
4. 调用 authz-review 做收尾
- 任一步出现“需人工确认”时暂停,等待用户回复后再继续
注意事项
- 链条越长,错误越容易被放大,关键节点要有人看
- 风险较低,但输出仍需快速过目再使用
- 每个技能单独测试通过后再组合
相关技能
常见变体
同一个技能可以按使用场景派生出几个变体:
- 简版:只保留核心步骤(过滤错误级别、关联部署时间),适合快速过一遍
- 详版:每一步都写出理由与依据,适合交给他人复核或留档
- 批量版:一次处理多份日志文件或查询结果,输出汇总表,适合定期集中处理
变体之间共享同一套约束,只在步骤详略和输出格式上有差异。可以在一个技能里用参数区分,也可以拆成几个名称明确的技能。
什么时候用这个技能
- 手头有日志文件或查询结果,需要在较短时间内得到错误摘要与时间线
- 同类任务每周出现多次,希望每次处理方式一致
- 结果要交给同事或上级复核,需要统一的结构和清楚的依据
- 新人接手这类工作,需要一个可以照着做的标准流程
反过来,如果只是偶尔做一次,或者任务高度依赖现场判断,直接和服务器、容器与部署流水线里的智能体对话即可,不必专门封装成技能。
延伸阅读
- 日志排查 · 效果评估
- 日志排查 · Claude Code Skill 版
- 日志排查 · GitHub Copilot 指令与提示文件 版
- 运维手册编写 · 组合用法
- 发布检查清单 · 组合用法
- 智能体Skills 分类:625 个技能 × 32 个角度
说明:文中的配置、代码与目录结构均为示意,用于说明思路;各平台的入口、字段名与能力会更新,落地前请以对应官方文档为准。示例中的数据与场景为虚构,不代表真实案例。